Registrarse

[RPGXP] Música especial para encuentros con NPC

Pableroski

Novato - Rpg en desarrollo
Buenas.
Hace tiempo hice un script muy sencillito que permite detener la música del mapa por otra que se reproduzca en bucle hasta que nosotros queramos. Entonces volvería a la del mapa.

Caso práctico: Vas andando y te encuentras al rival. Suena entonces la música del tema del rival hasta que este desaparece de la pantalla.
El essentials permite con pbTrainerIntro() reproducir un sonido (music effect - ME) antes de los combates pero al ser un ME no loopea (no entra en bucle). Si el evento tarda demasiado (sea porque es largo o el jugador tarda más que lo que dure el ME) volverá a la música del mapa.

Necesario:
-Que el archivo de audio sea legible por el juego y se encuentre en la carpeta Audio\BGM
-Una variable. Yo tengo la 66 pero podéis cambiarla.

Código:
Código:
def bgmA(musica=0)
if musica==0
   if $game_variables[66]!=0
     pbBGMPlay($game_variables[66])
   end
else
   $game_variables[66]=$game_system.playing_bgm
   pbBGMPlay(musica)
end
end
Juego:
BGM.PNG

En este ejemplo, bgmA('Rival_t') hará que suene el audio del tema del rival. Escribe "HOLA" y la música continuará.
Entra en el combate normal y continúa el evento. Entonces, cuando termine, llamo al scritp con bgmA() y volverá la música del mapa.

En la primera llamada tenéis que poner entre comillas ' ' el nombre de vuestro archivo sin la extensión.
La segunda sirve para volver a poner la música del mapa y se queda vacía ()

Y eso es todo. Se agradecerían créditos pero no los necesito.
 

Manurocker95

Doctorando en Ingeniería Biomédica & Game Dev
Miembro insignia
Buenas.
Hace tiempo hice un script muy sencillito que permite detener la música del mapa por otra que se reproduzca en bucle hasta que nosotros queramos. Entonces volvería a la del mapa.

Caso práctico: Vas andando y te encuentras al rival. Suena entonces la música del tema del rival hasta que este desaparece de la pantalla.
El essentials permite con pbTrainerIntro() reproducir un sonido (music effect - ME) antes de los combates pero al ser un ME no loopea (no entra en bucle). Si el evento tarda demasiado (sea porque es largo o el jugador tarda más que lo que dure el ME) volverá a la música del mapa.

Necesario:
-Que el archivo de audio sea legible por el juego y se encuentre en la carpeta Audio\BGM
-Una variable. Yo tengo la 66 pero podéis cambiarla.

Código:
Código:
def bgmA(musica=0)
if musica==0
   if $game_variables[66]!=0
     pbBGMPlay($game_variables[66])
   end
else
   $game_variables[66]=$game_system.playing_bgm
   pbBGMPlay(musica)
end
end
Juego:
Ver el archivo adjunto 18083
En este ejemplo, bgmA('Rival_t') hará que suene el audio del tema del rival. Escribe "HOLA" y la música continuará.
Entra en el combate normal y continúa el evento. Entonces, cuando termine, llamo al scritp con bgmA() y volverá la música del mapa.

En la primera llamada tenéis que poner entre comillas ' ' el nombre de vuestro archivo sin la extensión.
La segunda sirve para volver a poner la música del mapa y se queda vacía ()

Y eso es todo. Se agradecerían créditos pero no los necesito.
pbBGMPlay recibe un string por lo que es lo que en todo caso le deberías mandar al método. De todas formas, tener números mágicos y llamar al mismo método con y sin parámetros para dos cosas dierentes va a hacer que la gente que no controle mucho se líe más...
 
Arriba