Tutorial válido sólo para Pokémon Essentials
¿Qué son los personajes especiales?
Los personajes especiales son aquellos que te ayudan en un aventura de una forma secundaria, un ejemplo puede ser el tutor de movimientos o el inspector de motes.
En este tutorial os enseñaré a crear los personajes especiales que salen en todo juego de Pokémon.
1. Tutor de Movimientos
Nos servirá para enseñar a un Pokémon un movimiento que no puede aprender de ninguna otra forma.
Primero crearemos un evento y le pondremos el gráfico que queramos, a continuación iremos a "Condiciones y Eventos" y allí buscaremos la opción de Scripts (pestaña 4).
Allí vamos a poner este código:
pbMoveTutorChoose(PBMoves::X)
Y sustituimos la X por el nombre del movimiento (en Inglés, sin separaciones y en mayúsculas), por ejemplo, yo voy a enseñar el movimiento "Enfado".
pbMoveTutorChoose(PBMoves::OUTRAGE)
Aceptamos y tendremos algo como esto:
Ahora simplemente vamos a poner lo que queramos que pase si lo aprendemos y lo que queramos que pase por el contrario, por ejemplo, si queremos que nos diga un texto cuando lo aprendamos y otro cuando cancelemos quedaría así:
2. Quita-movimientos
El quita-movimientos, como su nombre indica, quitará un movimiento a nuestro Pokémon.
Es bastante dificil de hacer por evento por lo que he hecho un Script para que sea más fácil, simplemente hay que copiarlo en el Editor de Scripts.
# Script hecho por Rafael-animal para Hoko.
# Créditos por uso.
def pbQuitaMovimientos
pbChoosePokemon(1,3)
if $game_variables[1] < 0
Kernel.pbMessage("Vuelve cuando quieras")
break
else
if pbGetPokemon(1).egg?
Kernel.pbMessage("¡Esto es un Huevo Pokémon!")
break
elsif pbNumMoves(pbGetPokemon(1))==1
Kernel.pbMessage("Este Pokémon sólo conoce un movimiento...")
break
end
Kernel.pbMessage("¿Qué movimiento quieres eliminar?")
pbChooseMove(pbGetPokemon(1),2,4)
if $game_variables[2] < 0
pbChoosePokemon(1,3)
else
if Kernel.pbConfirmMessage(_INTL("¿Estás seguro de que quieres eliminar este movimiento?"))
pbWait(80)
pbDeleteMove(pbGetPokemon(1),pbGet(2))
return true
else
Kernel.pbMessage("Vuelve cuando quieras")
return false
end
break
end
end
end
Una vez copiado, aceptamos y salimos del Editor de Scripts.
Ahora vamos a crear un evento y le pondremos un gráfico cualquiera, en Contenidos de Evento nos iremos a "Llamar Script" (pestaña 3) y pondremos este código:
pbQuitaMovimientos
3. Recordador de Movimientos
El recordador de movimientos recordará un movimiento que nuestro Pokémon había aprendido pero que ya no tiene.
Es bastante dificil de hacer por evento por lo que he hecho un Script para que sea más fácil, simplemente hay que copiarlo en el Editor de Scripts.
def pbRecordadorMovimientos
# Script hecho por Rafael-animal para Hoko.
# Créditos por uso.
if $PokemonBag.pbQuantity(PBItems::HEARTSCALE)>0
if Kernel.pbConfirmMessage("¿!Eso es una Escama Corazón!? ¿Quieres aprender un Movimiento?")
Kernel.pbMessage("¿A qué Pokémon se lo quieres enseñar?")
pbChoosePokemon(1,3,proc{|p|
pbHasRelearnableMove?(p)
},true)
if $game_variables[1] < 0
Kernel.pbMessage("Vuelve cuando quieras")
break
else
if pbGetPokemon(1).egg?
Kernel.pbMessage("¡Esto es un Huevo Pokémon!")
end
if !pbHasRelearnableMove?(pbGetPokemon(1))
Kernel.pbMessage("Lo siento pero no tengo ningún movimiento para enseñar a este Pokémon.")
end
Kernel.pbMessage("¿Qué movimiento quieres aprender?")
if pbRelearnMoveScreen(pbGetPokemon(1))
$PokemonBag.pbDeleteItem(PBItems::HEARTSCALE)
Kernel.pbMessage("Le has entregado una Escama Corazón a cambio de que recuerde un Movimiento.")
Kernel.pbMessage("¡Vuelve cuando quieras!")
end
end
return true
else
Kernel.pbMessage("Vuelve cuando quieras.")
return false
end
else
Kernel.pbMessage("Vuelve con una Escama Corazón.")
end
end
Una vez copiado, aceptamos y salimos del Editor de Scripts.
Ahora vamos a crear un evento y le pondremos un gráfico cualquiera, en Contenidos de Evento nos iremos a "Llamar Script" (pestaña 3) y pondremos este código:
pbRecordadorMovimientos
____________________________________________________
Y como siempre, postead cualquier duda o error ;).