Registrarse

¿como hago un script de esos?

Estado
Cerrado para nuevas respuestas.

Shido

comiendo personas
miren quiero hacer un script en el que un mini no deje avanzar al jugador hasta que cumpla un objetivo.

un ejemplo es el niño en pkmn ruby que no te deja avanzar hasta que hables con aura.

otro ejemplo es cuando tu madre no te deja salir del cuarto hasta que lo pongas en hora.

mi duda es ¿como hago un script de esos?
 
para no gastar flags innecesariamente, puedes poner por ejemplo (si es para salir del pueblo principal) la condición de la flag de la Pokédex, Pokémon o Deportivas, porque tendrás que usarlas obligatoriamente...

Si por ejemplo, es la Pokédex, cuando la cojas, en el script activas la flag (que en Rojo Fuego es 0x829). En el script de gatillo para no salir del pueblo sin la Pokédex tan solo tienes que comprobar si la flag está activada, mediante el comando "checkflag 0x(flag antes activada, en este caso 0x829)"...

Sería así:

#dynamic 0x800000

#org @inicio
checkflag 0x829
if 0x1 goto @fin
msgbox @1 0x2
applymovement 0xFF @atrás
waitmovement 0x0
end

#org @1
= ¡Ups, se me olvidaba la Pokédex!

#org @atrás
#raw 0x(Movimiento hacia atrás)
#raw 0xFE (fin de movimientos)

#org @fin
release
end


-"if 0x1 goto @fin" ---> Se traduce con lógica. "if" en inglés es "si... (condición)". "0x1" significa SI (afirmación), mientras que NO (negación) sería "0x0". "goto" significar "ir a" y "@fin" es la dirección a la que quieres que vaya... es decir, le estás diciendo al script que cuando lo compruebe: si la flag SI está activada, ir a @fin.

-Luego tendrás que crear la dirección de @fin. Le pones "release" y "end". ¿Por qué no se pone nada más? Porque si has llegado a esa parte del script, quiere decir que la flag está activada, lo cual quiere decir que tienes la Pokédex y que nada te ata a estar en ese pueblo. Si solo le pones "release" y "end", ocurrirá eso: nada, y podrás seguir adelante.

-Ese "applymovement" es para que te eche hacia atrás. Si no te echa hacia atrás, al final del script podrás pasar, y no quieres eso... el "0xFF" es el héroe (tu personaje).
 

RedMort

Aprendiendo Decomp
Lo mejor para esto es que empieces con los scripts de gatillo gastando flags como un loco.
Que lo vayas repitiendo a lo largo de tu hack y te des cuenta de como se puede hacer realmente ahorrando, y lo hagas a tu manera, como hemos hecho todos.
El mejor caso que se me ocurre es que le pongas al script de gatillo que no se active hasta que cierta variable esté en el valor que tú le pongas.
Y que al hacer eso que tu quieres que se haga antes, haga setvar 0x el valor que tenga el script de gatillo.
En el script de gatillo, importante, debe de haber otro setvar 0x que le de un valor cualquiera y así no se repita más.
Como ves, solo con una variable se puede, espero que te sirva : )

P.D: No estoy seguro, pero si al script de gatillo le pones checkflag se te detendrá un milisegundo cada vez que pases por ahi, mientras que con la variable, si no esta en el valor adecuado automaticamente no checkea nada y sigue a su rollo.
 
Respuesta: Re: ¿como hago un script de esos?

M̶e̶ ̶c̶o̶p̶i̶o̶;279063 dijo:
http://whackahack.com/foro/t-12807/tutorial-sobre-scripts
Lee la primera parte, y lo sabrás ;)

PD: @Ervaet, ¿y el setflag? E intenta usar vars ;)
No no, el setflag 0x829 es el de la Pokédex. Cuando anteriormente hayas cogido la Pokédex, se activará ese setflag... en este script solo está la comprobación, no hay que poner el setflag...

Bueno, como al chaval lo veo un poco perdido respecto a usar flags, es mejor no decirle nada aun sobre variables xD (yo uso variables, excepto en este ejemplo, ya que tendrás que usar esta flag por huevos xD)
 

Shido

comiendo personas
ok ya entendi todo sobre las flags y variables gracias a todos por responder.
bien ya pueden cerrar el tema.
 
Estado
Cerrado para nuevas respuestas.
Arriba