Registrarse

Legendario no desaparece tras combate

Estado
Cerrado para nuevas respuestas.
Hola.
El título lo dice todo, Celebi me gana pero sigue ahí esperando, he probado varias cosas que creo de deberían de funcionar pero no, ahora he probado ésta que dejo:

#dynamic 0x800000

'---------------
#org @start
checkflag 0x530
if 0x1 goto @snippet1
msgbox @String1 MSG_NORMAL '"CELEBI: Biiii!!!"
wildbattle 0xFB 0x1E 0x0
setflag 0x530
hidesprite LASTTALKED
setflag 0x200
release
end

'---------------
#org @snippet1
release
end


'---------
' Strings
'---------
#org @String1
= CELEBI: Biiii!!!


antes probé ésto:

checkflag 0x820
compare lastresult 0x1
if 0x1 goto @nopok
msgbox @frase 0x6
wildbattle 0xFB 0x1E 0x0
setflag 0x820
hidesprite 0x200
release
end
#org @nopok
release
end
#org @frase
= CELEBI: Biii!!

Ésta la he escrito ahora aquí a mano, pero también la he usado y hace lo mismo que el otro...
¿cómo se hace para que pase lo que pase el legendario se vaya?

gracias!!!
 

Xabier2012

Usuario mítico
1-Si el evento se produce al hablar con el minisprite, entonces el hidesprite LASTTALKED está bien, en caso contrario pon su número correcto en hexadecimal

2-Primero tienes que poner el setflag y luego el hidesprite.

El script antiguo, primero, ese 200 no sé por qué, por un número bajo y recuerda que tiene que estar en hexadecimal, y luego, la flag que utilizas para hacer desaparecer al minisprite en una flag que no se recomienda usar al no ser segura.
 

kakarotto

Leyenda de WaH
Has puesto el numero de esta flag en advance map?
Desde la logica entiendo que compares la variable lastresult, te devuelve 1 derrotado 0 no
If 0x1 goto @algo

En @algo debes comprobar si la flag esta seteada o no
 
Respuesta: Re: Legendario no desaparece tras combate

1-Si el evento se produce al hablar con el minisprite, entonces el hidesprite LASTTALKED está bien, en caso contrario pon su número correcto en hexadecimal

2-Primero tienes que poner el setflag y luego el hidesprite.

El script antiguo, primero, ese 200 no sé por qué, por un número bajo y recuerda que tiene que estar en hexadecimal, y luego, la flag que utilizas para hacer desaparecer al minisprite en una flag que no se recomienda usar al no ser segura.
sí, tu llegas a él y le hablas y empieza la batalla, lo que al ganarme cuando vuelvo sigue ahí, he movido lo del setflag por delante del hidesprite pero cuando vuelvo del centro pokemon sigue ahí y para luchar :s


Has puesto el numero de esta flag en advance map?
Desde la logica entiendo que compares la variable lastresult, te devuelve 1 derrotado 0 no
If 0x1 goto @algo

En @algo debes comprobar si la flag esta seteada o no
sí he puesto el mismo número en la ID del a-map

mañana seguiré peleándome un poco ... xD
 
Última edición:

Xabier2012

Usuario mítico
Re: Respuesta: Re: Legendario no desaparece tras combate

sí, tu llegas a él y le hablas y empieza la batalla, lo que al ganarme cuando vuelvo sigue ahí, he movido lo del setflag por delante del hidesprite pero cuando vuelvo del centro pokemon sigue ahí y para luchar :s
Primeramente, el checkflag no hace falta porque si haces desaparecer al mini ya no interactuas con el script. Ten en cuenta que, si no le derrotas no desaparecerá, para que desaparezca pase lo que pase, pon el setflag al principio de todo y deja el hidesprite en su lugar. Y segundo, comprueba que los números que pones coinciden con los del advanced map y que están en hexadecimal (y que son válidos y seguros)
 
Respuesta: Re: Respuesta: Re: Legendario no desaparece tras combate

Primeramente, el checkflag no hace falta porque si haces desaparecer al mini ya no interactuas con el script. Ten en cuenta que, si no le derrotas no desaparecerá, para que desaparezca pase lo que pase, pon el setflag al principio de todo y deja el hidesprite en su lugar. Y segundo, comprueba que los números que pones coinciden con los del advanced map y que están en hexadecimal (y que son válidos y seguros)

Gracias! ya me va, como tu dijiste, quité el checkflag y poner el setflag al principio.
Lo dejo aquí que puede que algún otro le pueda ayudar.

#dynamic 0x800000

'---------------
#org @start
setflag 0x200
msgbox @String1 MSG_NORMAL '"CELEBI: Biiii!!!"
wildbattle 0xFB 0x1E 0x0
hidesprite LASTTALKED
release
end


'---------
' Strings
'---------
#org @String1
= CELEBI: Biiii!!!
 

MetalKaktus

A la luz del quinto día, mira al este
Miembro insignia
No se suele usar un compare LASTRESULT después de checkear una flag. Ya que eso sirve cuando modificas la variable 0x800D
 
Estado
Cerrado para nuevas respuestas.
Arriba