Registrarse

Scripting XSE bug

Estado
Cerrado para nuevas respuestas.
Hola, soy un novato aprendiendo scripting y tengo un problema con xse. El caso es que he puesto a una persona que te da una poción usando el setflag y checkflag, pero en cuanto me da el objeto (en este caso una poción), empeza a caminar como si se fueran los comandos lock y faceplayer. Además, el mensaje de que el objeto ya ha sido recibido no aparece nunca. Este es el script:

#dynamic 0x800000

'---------------
#org @start
lock
faceplayer
checkflag 0x201
if 0x0 goto @snippet1
if 0x1 goto @snippet2
setflag 0x201
release
end

'---------------
#org @snippet1
msgbox @String1 MSG_NORMAL '"Hola, yo trabajo en la Tienda\nPok..."
giveitem 0xD 0x1 MSG_OBTAIN
msgbox @String2 MSG_NORMAL '"Pásate por ciudad verde cuando\nte..."
'---------------
#org @snippet2
msgbox @String3 MSG_NORMAL '"Ya tienes tu muestra gratuita.\pNo..."

'---------
' Strings
'---------
#org @String1
= Hola, yo trabajo en la Tienda\nPokémon que hay más arriba, en\lCiudad Verde. Toma una muestra\lgatuita.

#org @String2
= Pásate por ciudad verde cuando\ntengas tiempo.

#org @String3
= Ya tienes tu muestra gratuita.\pNo olvides pasarte por nuestra\ntienda.

Muchas gracias de antemano :D
 

Berserker1523

2-Intentando discernir qué es lo más importante...
No sé muy bien por qué tu error pero cuando hace los goto, en @snippet1 y 2 no tienes ningún release ni end al final de estis. Además el setflag se se debe hacer en @snippet1 ya que ahí es cuando te dan el objeto, ahí donde está nunca se va a activar.
 
Última edición:

BandeDollio

Extintor-Sama
Hola, soy un novato aprendiendo scripting y tengo un problema con xse. El caso es que he puesto a una persona que te da una poción usando el setflag y checkflag, pero en cuanto me da el objeto (en este caso una poción), empeza a caminar como si se fueran los comandos lock y faceplayer. Además, el mensaje de que el objeto ya ha sido recibido no aparece nunca. Este es el script:

#dynamic 0x800000

'---------------
#org @start
lock
faceplayer
checkflag 0x201
if 0x0 goto @snippet1
if 0x1 goto @snippet2
setflag 0x201
release
end

'---------------
#org @snippet1
msgbox @String1 MSG_NORMAL '"Hola, yo trabajo en la Tienda\nPok..."
giveitem 0xD 0x1 MSG_OBTAIN
msgbox @String2 MSG_NORMAL '"Pásate por ciudad verde cuando\nte..."
'---------------
#org @snippet2
msgbox @String3 MSG_NORMAL '"Ya tienes tu muestra gratuita.\pNo..."

'---------
' Strings
'---------
#org @String1
= Hola, yo trabajo en la Tienda\nPokémon que hay más arriba, en\lCiudad Verde. Toma una muestra\lgatuita.

#org @String2
= Pásate por ciudad verde cuando\ntengas tiempo.

#org @String3
= Ya tienes tu muestra gratuita.\pNo olvides pasarte por nuestra\ntienda.

Muchas gracias de antemano :D

Pues según lo que veo no "acabas" el script en ninguno de los casos (con el release y el end), además tampoco ejecutas el setflag, porque te vas a otra parte y por eso nunca sale el texto como que te ha dado el objeto.
 

Fran Agustín

Si el sol besa tus ojos, ni cuenta te das.
Miembro insignia
En primer lugar, pon los release y end que corresponden según te han dicho.
Luego, tu estructura condicional es bastante ilógica. Claramente el valor que devuelva checkflag vale 0 o vale 1. Entonces, jamás llegas al setflag y es absurdo el segundo if.

Yo lo dejaría así:
Código:
#dynamic 0x800000

'---------------
#org @start
lock
faceplayer
checkflag 0x201
if 0x0 goto @snippet1
[/PLAIN]
[B]msgbox [PLAIN] [MENTION=29127]String[/MENTION]3[/PLAIN] MSG_NORMAL '"Ya tienes tu muestra gratuita.\pNo..."
release
end[/B]
[PLAIN]

'---------------
#org @snippet1
msgbox        [MENTION=29127]String[/MENTION]1 MSG_NORMAL '"Hola, yo trabajo en la Tienda\nPok..."
giveitem 0xD 0x1 MSG_OBTAIN
msgbox String2 MSG_NORMAL '"Pásate por ciudad verde cuando\nte..."
[/PLAIN]
[B]setflag 0x201
release
end[/B][PLAIN]

'---------
' Strings
'---------
#org        [MENTION=29127]String[/MENTION]1
= Hola, yo trabajo en la Tienda\nPokémon que hay más arriba, en\lCiudad Verde. Toma una muestra\lgatuita.

#org        [MENTION=29127]String[/MENTION]2
= Pásate por ciudad verde cuando\ntengas tiempo.

#org        [MENTION=29127]String[/MENTION]3
= Ya tienes tu muestra gratuita.\pNo olvides pasarte por nuestra\ntienda.
Saludos, me avisas cualquier cosa.
 
Estado
Cerrado para nuevas respuestas.
Arriba