Registrarse

[RH - Scripting] ¿Como hacer al alto mando?

Estado
Cerrado para nuevas respuestas.
Bien, en primer lugar hola y muchas gracias al que me pueda ayudar con esta duda.
Por ahora no es un alto mando como tal pero supongo que el script del alto mando será el mismo, la duda es como hacer que cuando un entrenador te derrote se reinicie, estoy haciendo un punto en el que el protagonista está en un desafío donde debe derrotar a 5 entrenadores seguidos en una cueva para continuar pero si es derrotado, debe empezar desde el inicio. ¿Como sería el script para que al ser derrotado te vuelvan a retar? Gracias!!
 

hacanoca

Héroe de WaH
Bueno, debes jugar con las trainerflags de los entrenadores:
Digamos que los 5 entrenadores de las cuevas son los combates..qué se yo 0x100 a 0x104 (Me refiero al número del combate, el que ubicas en el comando trainerbattle 0x0 0xYY ....)
Puedes hacer que el script del último entrenador no sea un trainerbattle 0x0 (que finaliza tras ganar el combate) sino un trainerbattle 0x1 ó 0x2 (que continúan el script tras ganar el combate), de tal forma que tras ganarle al 5to entrenador continues el script para setear una flag o bien aumentar el valor de una Vble (esto último puede ser mejor para no gastar una flag; mientras que con cuidado puedes seguir usando la vble para otras cosas)
Entonces, para dejar el ejemplo, tras ganarle al entrenador, aumentas el valor de la variable 0x40FF a 0x1.
Ahora, logras que el evento se reinicie haciendo un script de nivel 3 en ese mapa (estos scripts sólo se activan al entrar al mapa, no se activan cuando entras/sales de opciones del menú)
En este script de nivel pones la siguiente condición:
"compare 0x40FF 0x1
if 0x0 goto @reiniciar
...

#org @reiniciar
settrainerflag 0x100
settrainerflag 0x101
settrainerflag 0x102
settrainerflag 0x103
settrainerflag 0x104
end"

Así, a no ser que la Vble0x40FF tenga valores mayores a 1 (lo cual sólo sucedería tras ganarle al quinto entrenador, cada vez que entres al mapa se modificará las trainerflags de los entrenadores de forma tal que queden listos para pelear)

Bueno, esa es la opción que se me ocurre para el evento que piensas desarrollar.
 

Wistons7

¡¡CASI EXPERTO!!
Bien, en primer lugar hola y muchas gracias al que me pueda ayudar con esta duda.
Por ahora no es un alto mando como tal pero supongo que el script del alto mando será el mismo, la duda es como hacer que cuando un entrenador te derrote se reinicie, estoy haciendo un punto en el que el protagonista está en un desafío donde debe derrotar a 5 entrenadores seguidos en una cueva para continuar pero si es derrotado, debe empezar desde el inicio. ¿Como sería el script para que al ser derrotado te vuelvan a retar? Gracias!!
Para lo que dices pues no es mas que crear un escrip con una flag o variable.
que al derrotar a los 5 entrenadores actives la flag o varible y ya no se vuelvan a
repetir el escrip.

Algo asi:


#dynamic 0x800000

#org @inicio
checkflag 0x1230
if 0x1 goto @derrotados
call @peleas

#org @peleas
msgbox @la
trainerbattle 0x3 0x0 0x0 @iniciar @perder
msgbox @la1 0x6
trainerbattle 0x3 0x0 0x0 @iniciar @perder
msgbox @la1 0x6
trainerbattle 0x3 0x0 0x0 @iniciar @perder
msgbox @la1 0x6
trainerbattle 0x3 0x0 0x0 @iniciar @perder
msgbox @la1 0x6
trainerbattle 0x3 0x0 0x0 @iniciar @perder
msgbox @la2 0x6
setflag 0x1230
release
end

#org @la
= Para seguir adelante tienes que\nderrotarnos a todos.

#org @la1
= Eres fuerte. Pero aun no nos\nderrotas a todos.

#org @la2
= Nos derrotaste a todos pudes\nseguir.

#org @iniciar
= Anda vamos a luchar.

#org @perder
= Oh me has derrotado.


Te explico al inicio hay un Checkflag. este va a ver si la flag esta activa si lo esta quiere decir que le ganaste a los entrenadores y va a hacer que el escrip no se repita.
Pero si no esta activada quiere decir que no has derrotado a los 5 entrenadores y te llevara a las batallas.
 
Estado
Cerrado para nuevas respuestas.
Arriba