Registrarse

Script Apply? o se puede hacer de otra forma?

Estado
Cerrado para nuevas respuestas.

Kay_hack

Usuario mítico
Buenas, tengo una duda y nosè como poder hacerlo...

Pasa que trabajo con el rom base Fire red, y tengo una duda, es un script (Normal, de estos al pisar "S") que al ejecutarlo, lo tengo para que aparezca después de un dialogo un minisprite de Pikachu, con el comando createsprite que seria el siguiente..

createsprite 0x78 0xF 0x8004 0x8005 0x35 0x0

al hacer esto, todo bien, me crea el sprite de pikachu y no desaparece hasta que salga del mapa (en este caso laboratorio)... pero? como es un create, el mini no se mueve y puedo pasar por encima de el... por lo que quiero hacer, es que después de que termine un dialogo, aparezca un minisprite, "mire alrededor", le pueda hablar, pero al salir del mapa desaparezca...

como puedo hacer esto?, necesito que llame a un "minisprite"que este escondido en el mapa? en este caso pikachu? al igual como si fuera un applymovement normal? ese es mi pregunta... saludos!
 

Laquin

Usuario mítico
Lo que debes hacer es un script de nivel que sea de un hidesprite(los parámetros te los da el XSE) y despues en ese script un showsprite. Como los nombres indican, hidesprite oculta el sprite, y showsprite lo muestra. Creo que esto funciona...
Yo haría eso, pero hace tiempo que no hackeo, seguramente haya alguna idea mejor.

¡Saludos!
 

Sayer301!

UnityLord!
Miembro de honor
A ver lo del script de nivel que te dice es relativo, puedes hacerlo donde te de la gana, pero a parte de eso, tienes que usar flags.


Primero de todo, pon un mini de Pikachu en el lab, donde quieres que aparezca, y donde pone People ID, le asignas una flag que no esté usada.

En un script anterior a poder entrar al laboratorio (a ser posible que sea obligatorio hacerlo), tienes que ocultar el mini. ¿Como? Activando la flag.

Es decir en algún script anterior a poder entrar al laboratorio, tienes que poner este comando:

Setflag 0x(flag que le asignaste a pikachu)

y luego en el propio script de pikachu, el de la S, quita el createsprite, que es una mierda y pon:

Clearflag 0x(Flag asignada a pikachu)
Showsprite 0x(nº de mini)

y luego ya lo que quieras hacer con el, cuando lo quieras volver a ocultar para siempre, usas:

Setflag 0x(flag asignada a pikachu)
hidesprite 0x(nº de mini)


Espero que te sirva de ayuda!
 

Kay_hack

Usuario mítico
A ver lo del script de nivel que te dice es relativo, puedes hacerlo donde te de la gana, pero a parte de eso, tienes que usar flags.


Primero de todo, pon un mini de Pikachu en el lab, donde quieres que aparezca, y donde pone People ID, le asignas una flag que no esté usada.

En un script anterior a poder entrar al laboratorio (a ser posible que sea obligatorio hacerlo), tienes que ocultar el mini. ¿Como? Activando la flag.

Es decir en algún script anterior a poder entrar al laboratorio, tienes que poner este comando:

Setflag 0x(flag que le asignaste a pikachu)

y luego en el propio script de pikachu, el de la S, quita el createsprite, que es una mierda y pon:

Clearflag 0x(Flag asignada a pikachu)
Showsprite 0x(nº de mini)

y luego ya lo que quieras hacer con el, cuando lo quieras volver a ocultar para siempre, usas:

Setflag 0x(flag asignada a pikachu)
hidesprite 0x(nº de mini)


Espero que te sirva de ayuda!

Bueno, lo pude hacer!, pero me surgieron 2 problemas... que aun no logro como solucionar...

Cuando le puse el showsprite al script y todo, funciona, pero no muestra el sprite al tiro después del dialogo, sino que termina la conversación, me muevo para abajo y ahí recién aparece el mini?, también quería ver la posición del minisprite, ya que son 2 Script es decir
que aparezca en (X/Y) 0004/0009 y en el script 2 en (X/Y)0005/0009

Ojo que esos 2 scripts van juntos... no se si me entiendo, si quieres les pongo el script y vean lo que pasa, saludos!


EDITO-----------


El problema que tengo al hacer el script, es que despues de terminar el dialogo y mover el minisprite player, aparece recien el minisprite pikachu, pero si no me muevo no aparece...

lo que quiero hace es que despues que oak dice : What... aparezca altiro el minisprite de pikachu, pero no lo hace... lo hace hasta al final y despues de avanzar 1 paso.. que es lo que podria estar mal en mi script de nivel?

;-----------------------------------

#org 0x900DD9
setvar 0x4055 0x4
setflag 0x258
applymovement MOVE_PLAYER 0x89010CA
waitmovement 0x0
msgbox 0x89010BD MSG_NORMAL '"OAK: What?"
closeonkeypress
clearflag 0x1200
showsprite 0x14
applymovement 0x4 0x8900FE5
waitmovement 0x0
sound 0x33
msgbox 0x8900FEE MSG_NORMAL '"OAK: Would you look at that!\pIt's..."
closeonkeypress
applymovement 0x4 0x8900FE9
waitmovement 0x0
releaseall
end

;-------------------------------
 

Cheve

MoonLover~
Miembro de honor
Debes refrescar la pantalla para que se vean los cambios, te recomiendo usar fadescreen ;D
 
Estado
Cerrado para nuevas respuestas.
Arriba