Holi.
Queria intentar ayudar a el usuario "cristofers" con su problema pero me veo incapaz.
Ya que Fel!x aportó una solución con Variables, yo queria aportar una con Flags, pero algo está saliendo mal y no entiendo muy bien el qué :/
El script como tal, es el siguiente:
Ahora bien.. el efecto es sencillo de explicar:
Parte 1:
Comprueba si el jugador tiene o no tiene la Medalla de Brock.
Parte 2:
Si la tiene, se activará un msgbox, se entregará un objeto y se activará la Flag 8D3 que repito, por defecto está libre.
Si no la tiene, se activará un msgbox y acabará el script.
Parte 3:
Si se vuelve a interactuar con el NPC, automaticamente deberia ser enviado a "@medallaconseguida" todo el tiempo.
Pero algo está saliendo mal y no entiendo el qué ;_; ...
Siempre se activa el msgbox "@hola", como si ignorase totalmente el checkflag, el envio de secciones dentro del propio script, es como tener un hijo en su etapa de rebeldia.. creo.. ;_; ..
Y quisiera ayuda con esta tonteria para referencias futuras, principalmente xD
De antemano muchisimas gracias <3
EDITO:
Odio. A los malditos. Taggeos de usuarios que arruinan la lectura del script.
;_; ..
Queria intentar ayudar a el usuario "cristofers" con su problema pero me veo incapaz.
Ya que Fel!x aportó una solución con Variables, yo queria aportar una con Flags, pero algo está saliendo mal y no entiendo muy bien el qué :/
El script como tal, es el siguiente:
#dynamic 0x0800000
#org @inicio
lock
faceplayer
checkflag 0x820 <-- Comprueba el estado de la Flag de la Medalla de Brock
compare LASTRESULT 0x1 <-- Si está Activada..
if 0x1 goto @premio <-- El script te enviará a la sección "@premio"
msgbox @hola 0x6 <-- Si no, el script seguirá normalmente.
release
end
#org @premio
checkflag 0x8D3 <-- Comprueba el estado de la Flag 8D3 que por defecto está libre.
compare LASTRESULT 0x1 <-- Si está activada..
if 0x1 goto @medallaconseguida <-- El script te enviará a la sección "@medallaconseguida"
msgbox @regalo 0x6 <-- Si no, el script seguirá normalmente.
giveitem 0x1 0x1 MSG_OBTAIN
msgbox @suerte 0x6
closeonkeypress
setflag 0x8D3 <-- Aqui es cuando se activa la Flag, cosa que si ya has accedido a esta parte una vez, no podras volver a acceder nunca mas, ya que todo el rato deberias estar siendo enviado a la sección "@medallaconseguida"
release
end
#org @medallaconseguida
msgbox @hola2 0x6
release
end
#org @hola
= Hola [player].
#org @regalo
= Tienes la Medalla de Brock.
#org @suerte
= Buena suerte en tu viaje.
#org @hola2
= Hola [player].
#org @inicio
lock
faceplayer
checkflag 0x820 <-- Comprueba el estado de la Flag de la Medalla de Brock
compare LASTRESULT 0x1 <-- Si está Activada..
if 0x1 goto @premio <-- El script te enviará a la sección "@premio"
msgbox @hola 0x6 <-- Si no, el script seguirá normalmente.
release
end
#org @premio
checkflag 0x8D3 <-- Comprueba el estado de la Flag 8D3 que por defecto está libre.
compare LASTRESULT 0x1 <-- Si está activada..
if 0x1 goto @medallaconseguida <-- El script te enviará a la sección "@medallaconseguida"
msgbox @regalo 0x6 <-- Si no, el script seguirá normalmente.
giveitem 0x1 0x1 MSG_OBTAIN
msgbox @suerte 0x6
closeonkeypress
setflag 0x8D3 <-- Aqui es cuando se activa la Flag, cosa que si ya has accedido a esta parte una vez, no podras volver a acceder nunca mas, ya que todo el rato deberias estar siendo enviado a la sección "@medallaconseguida"
release
end
#org @medallaconseguida
msgbox @hola2 0x6
release
end
#org @hola
= Hola [player].
#org @regalo
= Tienes la Medalla de Brock.
#org @suerte
= Buena suerte en tu viaje.
#org @hola2
= Hola [player].
Ahora bien.. el efecto es sencillo de explicar:
Parte 1:
Comprueba si el jugador tiene o no tiene la Medalla de Brock.
Parte 2:
Si la tiene, se activará un msgbox, se entregará un objeto y se activará la Flag 8D3 que repito, por defecto está libre.
Si no la tiene, se activará un msgbox y acabará el script.
Parte 3:
Si se vuelve a interactuar con el NPC, automaticamente deberia ser enviado a "@medallaconseguida" todo el tiempo.
Pero algo está saliendo mal y no entiendo el qué ;_; ...
Siempre se activa el msgbox "@hola", como si ignorase totalmente el checkflag, el envio de secciones dentro del propio script, es como tener un hijo en su etapa de rebeldia.. creo.. ;_; ..
Y quisiera ayuda con esta tonteria para referencias futuras, principalmente xD
De antemano muchisimas gracias <3
EDITO:
Odio. A los malditos. Taggeos de usuarios que arruinan la lectura del script.
;_; ..
Última edición: