Registrarse

Que tengo malo en el script

Estado
Cerrado para nuevas respuestas.
hola a todos
mi problema es que el script no se termina de aplicar, solo llega a cierto punto, el rival camina hacia mi y luchamos pero al finalizar la idea es q se vaya por la derecha y no sucede.

Aparte el script se repite una y otra vez de una forma peculiar, al pisar el Script de gatillo, apesar que mi rival esta delante mio (despues de ganarle) al pisar el aplica los movimiento hacia abajo, tantas veces como pise el script gatillo

#dynamic 0x800000

#org @script1
msgbox @texto1 0x6
applymovement 0x1 @move1
waitmovement 0x5
trainerbattle 0x0 0x06A 0x0 @empezar @perdidaenlucha
msgbox @eperdido 0x6
applymovement 0x1 @move2
waitmovement 0x1
end

#org @empezar
= Te pille

#org @perdidaenlucha
= me has ganado

#org @eperdido
= me has ganado

#org @texto1
= [player] detente ahí

#org @move1
#raw 0x10 'Paso Abajo
#raw 0x10 'Paso Abajo
#raw 0x10 'Paso Abajo
#raw 0x10 'Paso Abajo
#raw 0x10 'Paso Abajo
#raw 0xFE 'Finalizar Movimientos


#org @move2
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0xFE 'Finalizar Movimientos
 

.Areku_Sama

Old school ROM-Hacker EST. 2006
Revisa el Pokemon Shiny Gold el primer pueblo el script de la batalla contra Carlos con Advancemap y xse.
Te vas a dar una idea de como sucede.
 
hasta el momento me quedo asi el script:

#dynamic 0x800000

#org @script1
if 0x1 call 0x871CF30
setflag 0x1007
nop1
msgbox 0x871CEF0 MSG_FACE '"Hey tu!!! "
applymovement 0x1 @move1
pause 0x90
trainerbattle 0x9 0x6A 0x0 0x871CF20 0x871CF20
pause 0x20
msgbox 0x8189DCE MSG_FACE '"[.] \pSoy CARLOS, pronto pele..."
applymovement 0x1 @move2
pause 0x90
release
end

'---------------
#org 0x71CF30
release
end

'---------
' Strings
'---------
#org 0x71CEF0
= [player] detente ahí

#org 0x71CF20
= que pokemon es ese [player]

#org 0x189DCE
= [player] el gimnasio de aqui es\ndebil, nos vemos [player]\l

'-----------
' Movements
'-----------
#org @move1
#raw 0x10 'Paso Abajo
#raw 0x10 'Paso Abajo
#raw 0x10 'Paso Abajo
#raw 0x10 'Paso Abajo
#raw 0x10 'Paso Abajo
#raw 0xFE 'Finalizar Movimientos

#org @move2
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0xFE 'Finalizar Movimientos




lo que logro hacer (gracias a uds) que viene a mi el rival, luchamos y se va. desaparece el minisprite....
pero cuando piso de nuevo peleo de nuevo sin importa si el rival esta en otro lado del mapa, AHI SE QUE DEBO COLOCAR EL CHECKFLAG PERO

¿DONDE LO COLOCO?

PUES SI LO COLOCO ANTES DEL IF, SOLO EL RIVAL VIENE PELEA Y SE QUEDA AHI...

LO OTRO EL COMANDO HIPESPRITE DONDE SE COLOCA, PUES CADA VEZ QUE ENTRO A UNA CASA Y SALGO AL MAPA, ESTA EL MINISPRITE

Y TAMBIEN ME PASA LO MISMO CON EL SCRIPT DEL PROFESOR, TODO BIEN ME DA EL POKEMON, ME DICE LA FRASE FINAL Y CADA VEZ QUE HABLO CON EL, ME DICE LO QUE COLOQUE.... PERO CADA VEZ QUE ENTRO AL LABORATORIO SE REPITE LO MISMO Y ESTE LO HICE CON VARIABLE
 
Última edición:

Laquin

Usuario mítico
hasta el momento me quedo asi el script:

#dynamic 0x800000

#org @script1
if 0x1 call 0x871CF30
setflag 0x1007
nop1
msgbox 0x871CEF0 MSG_FACE '"Hey tu!!! "
applymovement 0x1 @move1
pause 0x90
trainerbattle 0x9 0x6A 0x0 0x871CF20 0x871CF20
pause 0x20
msgbox 0x8189DCE MSG_FACE '"[.] \pSoy CARLOS, pronto pele..."
applymovement 0x1 @move2
pause 0x90
release
end

'---------------
#org 0x71CF30
release
end

'---------
' Strings
'---------
#org 0x71CEF0
= [player] detente ahí

#org 0x71CF20
= que pokemon es ese [player]

#org 0x189DCE
= [player] el gimnasio de aqui es\ndebil, nos vemos [player]\l

'-----------
' Movements
'-----------
#org @move1
#raw 0x10 'Paso Abajo
#raw 0x10 'Paso Abajo
#raw 0x10 'Paso Abajo
#raw 0x10 'Paso Abajo
#raw 0x10 'Paso Abajo
#raw 0xFE 'Finalizar Movimientos

#org @move2
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0x20 'Paso Derecha (Rápido)
#raw 0xFE 'Finalizar Movimientos




lo que logro hacer (gracias a uds) que viene a mi el rival, luchamos y se va. desaparece el minisprite....
pero cuando piso de nuevo peleo de nuevo sin importa si el rival esta en otro lado del mapa, AHI SE QUE DEBO COLOCAR EL CHECKFLAG PERO

¿DONDE LO COLOCO?

PUES SI LO COLOCO ANTES DEL IF, SOLO EL RIVAL VIENE PELEA Y SE QUEDA AHI...

LO OTRO EL COMANDO HIPESPRITE DONDE SE COLOCA, PUES CADA VEZ QUE ENTRO A UNA CASA Y SALGO AL MAPA, ESTA EL MINISPRITE

Y TAMBIEN ME PASA LO MISMO CON EL SCRIPT DEL PROFESOR, TODO BIEN ME DA EL POKEMON, ME DICE LA FRASE FINAL Y CADA VEZ QUE HABLO CON EL, ME DICE LO QUE COLOQUE.... PERO CADA VEZ QUE ENTRO AL LABORATORIO SE REPITE LO MISMO Y ESTE LO HICE CON VARIABLE
Porque pongas mayúsculas no te va a funcionar mejor;)

1)El setflag lo pones justo antes de que acabe el script.
2)El hidesprite hace desaparecer a un mini pero no eternamente; cuando vuelvas al mapa el sprite estará ahí. Para que esto no suceda, debes activar una flag en el script junto al hidesprite, y asignar esa flag al mini. Luego, tienes que hacer un script de nivel en el mapa y hacer un hidesprite en él.
3)He visto que has puesto un nop1. ¿Por qué? No sirve para nada(y literalmente, no hace nada xD)

Saludos :D
 

.Areku_Sama

Old school ROM-Hacker EST. 2006
En People ID debes asignar el numero de flag al mini que quieres que desaparezca. (ese sí está hexadecimal, así que puedes ponerlo tal cual viene en el setflag que utilizaste)
De esta manera la desaparición del mini será permanenente.
 
1.- checkflag lo coloco despues de los move o antes de release y end.
pues hasta el momento he logrado hacer casi todo salvo que se desactive el
gatillo

2.- coloque el hidesprite asi :
applymovement 0x1 @move2
pause 0x90
hidesprite 0x1
release
end
y a resultado cambio de mapa, entro a casas y no aparece mas el minisprite

3.- estaba en la estructura que me recomendo @Areku_Sama
@Areku_Sama
al minisprite en el ID le asigne el numero del trainer y me sirvio

todabia me falta donde coloco el checkflag para desactivar el script de gatillo

logre desactivar el gatillo pero ahora se queda pegado donde esta el gatillo

#dynamic 0x800000

#org @script1
if 0x1 call 0x871CF30
setflag 0x1007
nop1
msgbox 0x871CEF0 MSG_FACE '"Hey tu!!! "
applymovement 0x1 @move1
pause 0x90
trainerbattle 0x9 0x6A 0x0 0x871CF20 0x871CF20
pause 0x20
msgbox 0x8189DCE MSG_FACE '"[.] \pSoy CARLOS, pronto pele..."
applymovement 0x1 @move2
pause 0x90
hidesprite 0x1
checkflag 0x1007
release
end

gracias! a todos
pude desactivar el gatillo, desaparecer el minisprite aunq no de la forma que me indicaron, y todo okey

gracias!
 
Última edición:
Estado
Cerrado para nuevas respuestas.
Arriba