qna_rh
Thread Id: 9111
Thread Name: Duda con un script applymovement
#0
Kuroneko 15436
La verdad es que estoy un poco verde con el tema de los scripts.
El problema es que he hecho un script de applymovement para hacer que un mini se mueva y desbloquee el camino, pero cada vez que vuelvo a entrar en el mapa el script se reinicia y aparece en el lugar inicial. ¿Cómo hago para que se mantenga en el sitio?¿:.
Lo siento si este tema no va aquí:s
Gracias de antemano!

*EDITO
Aquí está el script... No es gran cosa... La última flag está para corregir el error mientras que lo termino de hacer para que se pueda volver a pasar:
'---------------
#DYNAMIC 0X800000
#org @inicio
checkflag 0x1410
if 0x1 goto @inicio2
lock
faceplayer
msgbox @frase1 0x2
fanfare 0x13E
givepokemon 0x1 0x5 0x0 0x0 0x0 0x0
waitfanfare
Setflag 0x800
setflag 0x1410
end

#org @inicio2
lock
faceplayer
checkflag 0x1405
if 0x1 goto @inicio3
msgbox @frase2 0x2
applymovement 0x2 @mov1
waitmovement 0x2
msgbox @frase3 0x2
fadescreen 0x1
fadescreen 0x0
hidesprite 0x2
setflag 0x1405
release
end

#org @inicio3
lock
faceplayer
msgbox @frase4 0x2
applymovement 0x2 @mov2
waitmovement 0x2
release
end

#org @frase1
= [player]: ¿Dónde está todo el mundo?\p¡Oh! Partieron hacia Pueblo Orfano,\nya sabes, al norte.\pPor cierto... he estado cuidando\nde tu POKÉMON por ti.\p¡Aqui tienes tu Bulbasaur!

#org @frase2
= ¡Oh! Perdona, ya te dejo pasar.

#org @frase3
= [player]: ¡Se fue!

#org @frase4
= Abuelo: Jeje... ¡He vuelto!\n¿Pero quieres pasar?

#org @mov1
#raw 0x09 0x09 0x09 0x09 0x09 0x0B 0x0B 0x09 0x09 0xFE

#org @mov2
#raw 0x09 0x0B 0xFE
#1
War 16874
Bueno, creo que el error que has cometido, ha sido no colocar flags/variables en tu script...
Estas hacen que el script se repita una sola vez...
Espero que esto resuelva tu duda...
#2
Kuroneko 15436
El caso es que sí que tiene flags: el script consiste en que la primera vez que hablas con el hombre te da un bulbasaur, si vuelves a hablar se aparta del camino y si hablas una tercera vez te comenta algo, pero cada vez que vuelvo al mapa está en el sitio inicial y lo que hace es comentarme algo:s
#3
Javi4315♪ 13374
Vale, es una duda bastante común. Para solucionarlo debes utilizar el comando "movesprite2" (sin las comillas) con sus respectivos parámetros (míralos en XSE).

Cualquier problema, vuelve a postear.

Saludos!!
#4
Kuroneko 15436
Vale, ahora se va de la pantalla y cuando vas está en el otro sitio, pero si por ejemplo entro en una casa y vuelvo a salir, sigue bloqueando el camino y dice el último mensaje. Aquí está el nuevo script:
'---------------
#DYNAMIC 0X800000
#org @inicio
checkflag 0x1410
if 0x1 goto @inicio2
lock
faceplayer
msgbox @frase1 0x2
fanfare 0x13E
givepokemon 0x1 0x5 0x0 0x0 0x0 0x0
waitfanfare
Setflag 0x800
setflag 0x1410
end

#org @inicio2
lock
faceplayer
checkflag 0x1405
if 0x1 goto @inicio3
msgbox @frase2 0x2
applymovement 0x2 @mov1
waitmovement 0x2
msgbox @frase3 0x2
fadescreen 0x1
fadescreen 0x0
movesprite 0x2 0xD 0x3
setflag 0x1405
release
end

#org @inicio3
lock
faceplayer
msgbox @frase4 0x2
release
end

#org @frase1
= [player]: ¿Dónde está todo el mundo?\p¡Oh! Partieron hacia Pueblo Orfano,\nya sabes, al norte.\pPor cierto... he estado cuidando\nde tu POKÉMON por ti.\p¡Aqui tienes tu Bulbasaur!

#org @frase2
= ¡Oh! Perdona, ya te dejo pasar.

#org @frase3
= [player]: ¡Se fue!

#org @frase4
= Abuelo: Jeje... ¡He vuelto!\n¿Pero quieres pasar?

#org @mov1
#raw 0x09 0x09 0x09 0x09 0x09 0x0B 0x0B 0x09 0x09 0xFE
#5
Javi4315♪ 13374
movesprite2 0x2 0xD 0x3

El movesprite normal es para mover un mini a x posición hasta ser refrescada la pantalla. El movesprite2, sin embargo, mueve al mini a la posición x pero de forma permanente.
#6
Kuroneko 15436
Perdona por la falta de atención... Aun así, ya lo he cambiado y sigue sin funcionar -.-''
¿Podría ser por la tercera flag?
Muchísimas gracias por las molestias.
'---------------
#org 0x801026
checkflag 0x1410
if 0x1 goto 0x8801054
lock
faceplayer
msgbox 0x8801097 MSG_FACE '"[player]: ¿Dónde está todo el mund..."
fanfare 0x13E
givepokemon 0x1 0x5 0x0 0x0 0x0 0x0
waitfanfare
setflag 0x800
setflag 0x1410
end

'---------------
#org 0x801054
lock
faceplayer
checkflag 0x1405
if 0x1 goto 0x880108A
msgbox 0x8801142 MSG_FACE '"¡Oh! Perdona, ya te dejo pasar."
applymovement 0x2 0x88011A6
waitmovement 0x2
msgbox 0x8801164 MSG_FACE '"[player]: ¡Se fue!"
fadescreen 0x1
fadescreen 0x0
movesprite2 0x2 0xD 0x3
setflag 0x1405
release
end

'---------------
#org 0x80108A
lock
faceplayer
msgbox 0x8801173 MSG_FACE '"Abuelo: Jeje... ¡He vuelto!\n¿Pero..."
release
end


'---------
' Strings
'---------
#org 0x801097
= [player]: ¿Dónde está todo el mundo?\p¡Oh! Partieron hacia Pueblo Orfano,\nya sabes, al norte.\pPor cierto... he estado cuidando\nde tu POKÉMON por ti.\p¡Aqui tienes tu Bulbasaur!

#org 0x801142
= ¡Oh! Perdona, ya te dejo pasar.

#org 0x801164
= [player]: ¡Se fue!

#org 0x801173
= Abuelo: Jeje... ¡He vuelto!\n¿Pero quieres pasar?


'-----------
' Movements
'-----------
#org 0x8011A6
#raw 0x9 'Step Up (Normal)
#raw 0x9 'Step Up (Normal)
#raw 0x9 'Step Up (Normal)
#raw 0x9 'Step Up (Normal)
#raw 0x9 'Step Up (Normal)
#raw 0xB 'Step Right (Normal)
#raw 0xB 'Step Right (Normal)
#raw 0x9 'Step Up (Normal)
#raw 0x9 'Step Up (Normal)