Últimos temas
» [VX] Jikan: La Bruja del Tiempo
por kroko Jue Mayo 06, 2021 9:11 pm

» Cese de actividad del foro
por Muzgar Mar Abr 20, 2021 10:50 pm

» Escaping From The Dark - Juego de Misterio y Terror - [MZ] - Descarga disponible
por rstudios Jue Abr 15, 2021 11:27 pm

» Concursos anuales del foro 2021 [Resultados]
por Vesper Lun Abr 12, 2021 12:24 am

» Concursos anuales del foro 2021 [Votaciones]
por Lenny Sáb Abr 03, 2021 7:36 pm

» "El Destino de los 5 Libros"(Alfa)
por ShinZeta Jue Abr 01, 2021 4:56 am

» La Brújula de Zaza (JUEGO COMPLETO) (VXACE)
por Pocari Miér Mar 31, 2021 6:45 pm

» Ayuda con los puzzles de mi juego
por Chadoumaru Mar Mar 23, 2021 12:18 am

» RPGXP La maldición de Grim
por Alex1633 Sáb Mar 20, 2021 9:54 pm

» ¡Eventos y concursos anuales del foro! [2021]
por Lenny Sáb Mar 13, 2021 1:33 pm

» Los guerreros iluminados (Windows y android) Juego completo
por CalamarRojo Sáb Mar 13, 2021 12:14 am

» Laminación: Al otro lado de la brecha (NUEVO PROYECTO)
por Pocari Dom Mar 07, 2021 8:27 pm


Cambiar Los Cry Al Morir

Ir abajo

Cambiar Los Cry Al Morir Empty Cambiar Los Cry Al Morir

Mensaje por YoshuaACKS Lun Mayo 06, 2019 12:33 am

Cada pokemon tiene tiene un CRY (grito) que usa cuando aparece y tambien lo usa cuando muere, pues yo quiero saber como hacer para que cuando aparesca use el Cry normal pero que cuando muera use otro y no encuentro en el editor de Scripts como configurarlo. Uso RPG Maker XP, Pokemons Essentials

Dejo El Codigo donde creo que sale pero la verdad no estoy seguro.

def pbCryFile(pokemon)
  return nil if !pokemon
  if pokemon.is_a?(Numeric)
    filename=sprintf("Cries/%sCry",getConstantName(PBSpecies,pokemon)) rescue nil
    filename=sprintf("Cries/%03dCry",pokemon) if !pbResolveAudioSE(filename)
    return filename if pbResolveAudioSE(filename)
  elsif !pokemon.isEgg?
    filename=sprintf("Cries/%sCry_%d",getConstantName(PBSpecies,pokemon.species),(pokemon.form rescue 0)) rescue nil
    filename=sprintf("Cries/%03dCry_%d",pokemon.species,(pokemon.form rescue 0)) if !pbResolveAudioSE(filename)
    if !pbResolveAudioSE(filename)
      filename=sprintf("Cries/%sCry",getConstantName(PBSpecies,pokemon.species)) rescue nil
    end
    filename=sprintf("Cries/%03dCry",pokemon.species) if !pbResolveAudioSE(filename)
    return filename if pbResolveAudioSE(filename)
  end

YoshuaACKS
PJ de Relleno
PJ de Relleno

Argentina
RPG Maker : Xp
Mensajes : 1
Monedas : 3
Reputación : 0

Volver arriba Ir abajo

Cambiar Los Cry Al Morir Empty Re: Cambiar Los Cry Al Morir

Mensaje por TurbiGRF Lun Mayo 06, 2019 3:44 pm

¡Hola, Yoshua!

Tengo que pedirte que introduzcas el código entre estas dos balizas:
Código:
[code]CÓDIGO AQUÍ[/code]
.

Así mismo, según voy viendo... primero se necesitaría algo que determinara una condición cuando el Pokémon muriera, cosa que creo que no aparece en el código de ninguna forma. xD

¿Podrías proporcionar el resto del código en cuestión? A ver si podemos sacar algo (o alguien más puede echarte una mano)

_________________

Asegúrate de leer las reglas antes de postear.
No me hagas sacar el banlátigo.

TurbiGRF
TurbiGRF
Admin
Admin

Femenino
Rmakercom
RPG Maker : Ace
Mensajes : 1265
Monedas : 4205
Reputación : 210
Localización : En el glorioso y magistral Zulo.

Volver arriba Ir abajo

Cambiar Los Cry Al Morir Empty Re: Cambiar Los Cry Al Morir

Mensaje por Alojzy Lun Mayo 06, 2019 9:50 pm

Vamos a ver...

Estuve viendo y en el PSystem_Utilities está el script que estás mencionando. Aquí está:

Código:

def pbPlayCry(pokemon,volume=90,pitch=nil)
  return if !pokemon
  if pokemon.is_a?(Numeric)
    pkmnwav=pbCryFile(pokemon)
    if pkmnwav
      pbSEPlay(RPG::AudioFile.new(pkmnwav,volume,pitch ? pitch : 100)) rescue nil
    end
  elsif !pokemon.isEgg?
    if pokemon.respond_to?("chatter") && pokemon.chatter
      pokemon.chatter.play
    else
      pkmnwav=pbCryFile(pokemon)
      if pkmnwav
        pbSEPlay(RPG::AudioFile.new(pkmnwav,volume,
           pitch ? pitch : (pokemon.hp*25/pokemon.totalhp)+75)) rescue nil
      end
    end
  end
end

def pbCryFile(pokemon)
  return nil if !pokemon
  if pokemon.is_a?(Numeric)
    filename=sprintf("Cries/%sCry",getConstantName(PBSpecies,pokemon)) rescue nil
    filename=sprintf("Cries/%03dCry",pokemon) if !pbResolveAudioSE(filename)
    return filename if pbResolveAudioSE(filename)
  elsif !pokemon.isEgg?
    filename=sprintf("Cries/%sCry_%d",getConstantName(PBSpecies,pokemon.species),(pokemon.form rescue 0)) rescue nil
    filename=sprintf("Cries/%03dCry_%d",pokemon.species,(pokemon.form rescue 0)) if !pbResolveAudioSE(filename)
    if !pbResolveAudioSE(filename)
      filename=sprintf("Cries/%sCry",getConstantName(PBSpecies,pokemon.species)) rescue nil
    end
    filename=sprintf("Cries/%03dCry",pokemon.species) if !pbResolveAudioSE(filename)
    return filename if pbResolveAudioSE(filename)
  end
  return nil
end

Ese es el que está por defecto. Lo que harás es copiar todo ese código en un nuevo script (o justo abajo del que está por defecto, como quieras), y realizarás las siguientes modificaciones:

- Donde dice "def pbPlayCry" y "def pbCryFile", lo cambias por un nombre que te indique que será para la muerte del pokemon. Por ejemplo, pbPlayCryDeath y pbCryFileDeath.

- Donde dice "pkmnwav=pbCryFile(pokemon)" (en todos los lugares en los que salga eso en el código que te puse arriba), reemplazas pbCryFile por pbCryFileDeath (o el nombre que le hayas puesto en la definición).

- Crea una nueva carpeta en Audio/SE con el nombre que quieras que llame el script (por ejemplo, CriesDeath).

- En todos los lugares del "def pbCryFile" que digan "filename=sprintf" y después te pongan "Cries", reemplazas Cries por CriesDeath, que es el nombre de tu nueva carpeta.

- Los nombres de los archivos de sonido de esta carpeta deberán ser los mismos que los de la otra: "ID del pokemon" seguido de "Cry"; si quieres cambiarlo, en la misma línea del "filename=sprintf" cambias el texto que dice "Cry" que está seguido por un signo "%" por el nombre que quieras (por ejemplo, CryDeath). Si haces esto, tus archivos deberán tener el nombre "ID del pokemon" seguido de CryDeath. Haz lo que más te acomode.

Ahora, te vas al script "PokeBattle_Scene", línea 2731. Dejo el código acá:

Código:

# This method is called whenever a Pokémon faints.
  def pbFainted(pkmn)
    frames=pbCryFrameLength(pkmn.pokemon)
    pbPlayCry(pkmn.pokemon)
    frames.times do
      pbGraphicsUpdate
      pbInputUpdate
      pbFrameUpdate
    end

Lo que vas a hacer es cambiar "pbPlayCry(pkmn.pokemon)" por "pbPlayCryDeath(pkmn.pokemon)", que es la definición que le dimos al comienzo a los Cry de los pokemon muertos.

No lo he probado por mí mismo, sólo estuve escudriñando un poco los scripts junto a otras dudas que encontré por ahí, y llegué a esa solución. Espero te sirva, cualquier cosa avisas por acá (si me expliqué muy mal, si no te quedó claro un paso o si no funcionó).

Saludos.
Alojzy
Alojzy
Héroe
Héroe

Masculino
Chile
RPG Maker : Xp
Mensajes : 287
Monedas : 190
Reputación : 62
Edad : 29
Localización : Ginnungagap.

Volver arriba Ir abajo

Cambiar Los Cry Al Morir Empty Re: Cambiar Los Cry Al Morir

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Volver arriba


 
Permisos de este foro:
No puedes responder a temas en este foro.