qna_rh
Thread Id: 8617
Thread Name: checkflag, ayuda.
#0
Zarokken 14930
Miren, escribí este script pero vuelve a repetirse y no se porque:(con XSE)

#dynamic 0x6B2646

#org @start
checkflag 0x2000
if 0x1 0x6B2647
applymovement 0x8 @move
waitmovement 0x0
release
end

#org @move
#raw 0x56
#raw 0x04
#raw 0x04
#raw 0x04
#raw 0x04
#raw 0x42
#raw 0x42
#raw 0xFE

#org 0x6B2647
release
end

Diganme el problema por favor.
#1
eing 12479
#dynamic 0x6B2646

#org @start
checkflag 0x2000
if 0x1 0x6B2647
applymovement 0x8 @move
waitmovement 0x0
release
end

#org @move
#raw 0x56
#raw 0x04
#raw 0x04
#raw 0x04
#raw 0x04
#raw 0x42
#raw 0x42
#raw 0xFE

#org 0x6B2647
release
end
Has puesto despues del checkflag ,
if 0x1 0xoffset
Lo que viene a ser, si la flag está activada..OFFSET.
WTF?
Eso que es?
Tienes que ponerlo así..

if 0x1 goto 0xoffset

Y también, por supuesto, un setflag 0xmisma flag.
Al final del script, si quieres que no se repita DESPUES de que se ejecute ese script, u otro.
#2
Loony Boo♪ 12263
Iniciado por Zarokken

Miren, escribí este script pero vuelve a repetirse y no se porque:(con XSE)

#dynamic 0x6B2646

#org @start
lock
checkflag 0x2000
if 0x1 0x6B2647
applymovement 0x8 @move
waitmovement 0x0
setflag 0x2000
release
end

#org @move
#raw 0x56
#raw 0x04
#raw 0x04
#raw 0x04
#raw 0x04
#raw 0x42
#raw 0x42
#raw 0xFE

#org 0x6B2647
release
end

Diganme el problema por favor.


1º ¿Qué pasa, el release puede irse independientemente del lock? ¡Pues no! Si hay lock, también hay release.
2º Te puse un setflag para que el script no se vuelva a repetir, pero si lo que quieres es que se desactive el script cuando hayas hecho una determinada cosa, por ejemplo, cuando hablas con el Profesor Oak en Pueblo Primavera, debes incluir el setflag en el script del Profesor Oak.
3º ¿No te parece más bonito y útil un setvar? Así no tendrías ni siquiera que poner los comandos subrayados. Y, además, podrías usar la misma variable otra vez (añadiéndole, claro está, un valor superior).

Saludos.