• Bitte schaltet eure Ad Blocker aus. SLinfo kann nur betrieben werden, wenn es durch Werbung Einnahmen erzielt. Vielen Dank!!
  • Wir freuen uns, wenn du dich in unserem Forum anmeldest. Bitte beachte, dass die Freigabe per Hand durchgeführt wird (Schutz vor Spammer). Damit kann die Freigabe bis zu 24 Stunden dauern.
  • Wir verwenden Cookies, um Inhalte und Anzeigen zu personalisieren, Funktionen für soziale Medien anbieten zu können und die Zugriffe auf unsere Website zu analysieren. Sie geben Einwilligung zu unseren Cookies, wenn Sie unsere Webseite weiterhin nutzen.

WAV Files im Objekt abspielen

Tina Capra

Aktiver Nutzer
Das Skript funktioniert einigermassen, wenn man das Objekt berührt, wird die Musik gespielt. Aber leider nur 4 der 10 Files.

Code:
default
{
    state_entry()
    {
        
    }

    touch_start(integer total_number)
    {
        llSetSoundQueueing(1);
        llPlaySound("iwas1",1);
        llPlaySound("iwas2",0.8);
        llPlaySound("iwas3",0.8);
        llPlaySound("iwas4",0.8);
        llPlaySound("iwas5",0.8);
        llPlaySound("iwas6",0.8);
        llPlaySound("iwas7",0.8);
        llPlaySound("iwas8",0.8);
        llPlaySound("iwas9",0.9);
        llPlaySound("iwas10",0.9);
        state endloop;
    }
}

state endloop
{
    touch_start(integer total_number)
    {
       
    llStopSound();
    state default;
}
}

LG
Tina
 
das mag am State-Wechsel liegen. Die Sounds werden ja in eine Queue gestellt. Dadurch werden die llPlaySound Kommandos ruckzuck abgearbeitet.

Wenn er dann beim 4ten Sound ist kommt der State-Wechsel und er verliert seine Sound-Queue.

Das habe ich jetzt nicht überprüft, ist aber eine Vermutung von mir.

Liebe Grüße
sam
 
Danke Sam, daran lag es.
Das fertige Skript sieht jetzt so aus:

Code:
default
{
    state_entry()
    {
        llSetSoundQueueing(1);
        llPlaySound("iwas1",1);
        llSleep(9);
        llPlaySound("iwas2",0.8);
        llSleep(9);
        llPlaySound("iwas3",0.8);
        llSleep(9);
        llPlaySound("iwas4",0.8);
        llSleep(9);
        llPlaySound("iwas5",0.8);
        llSleep(9);
        llPlaySound("iwas6",0.8);
        llSleep(9);
        llPlaySound("iwas7",0.8);
        llSleep(9);
        llPlaySound("iwas8",0.8);
        llSleep(9);
        llPlaySound("iwas9",0.9);
        llSleep(9);
        llPlaySound("iwas10",0.9);
    }

    touch_start(integer total_number)
    {
        
        
        state endloop;
    }
}

state endloop
{
    touch_start(integer total_number)
    {
       
    llStopSound();
    state default;
}
}

Die Sleep States mussten dazwischen, weil die Queue tatsächlich zu schnell arbeitet.

LG
Tina
 

Users who are viewing this thread

Zurück
Oben Unten