Evento in parallelo ad una switch
Sarebbe interessante capire come si attiva la switch, perché fintanto che la switch è ON quel codice viene eseguito di continuo.
Per come è scritto, il suono si sente sempre fintanto che non metti la switch che fa partire l'evento a OFF.
Dovresti rifarlo così:
Evento in parallelo ad una switch (mettiamo che sia la switch numero 1)
-------------------------------------------
-Variabile [level] = [Players]'s Level
--Conditional Branch : Variabile [Level] == 2
---Play SE : "SUONO"
---Wait : 100 frame(s) #Tempo di durata del suono
---Stop SE
---Switch [001] = OFF
--Else
---Label : 1
--Branch End
-----------------------------------------
(la condizione alternativa non ti serve)
Solo che così devi fare un Conditional Branch per ogni livello. Non mi sembra molto pratico.
Restando sugli eventi potresti fare un evento comune in processo parallelo che gira sempre (cioè che si attiva con una switch che non viene mai disattivata), fatto così:
-------------------------------------------
-Variabile [level] = [Players]'s Level
--Conditional Branch : Variabile [Level] > Variabile [livello iniziale]
---Play SE : "SUONO"
---Wait : 100 frame(s) #Tempo di durata del suono
---Stop SE
---Variabile [livello iniziale] = Variabile [livello]
--Branch End
-----------------------------------------
La variabile "livello iniziale" la imposti a inizio gioco uguale a 1 (o al livello iniziale del giocatore).
Via script invece puoi farlo così (è uno script a sé):
class Game_Map
alias my_initialize initialize
def initialize
my_initialize
@livello_iniziale = $game_party.actors[0].level
end
alias my_update update
def update
if ($game_party.actors[0].level > @livello_iniziale)
Audio.se_play("Audio/SE/abcde")
@livello_iniziale = $game_party.actors[0].level
end
end
end