qna_rh
Thread Id: 21270
Thread Name: Flag se desactiva tras cambiar de mapa
#0
eduardo2lll 26952
Saludos

Tengo un problema, hice un script donde se active una flag para que no se repita, el script hace que un mini camine hacia ti tras ver un trofeo.

Cuando el mini termina de hablar se activa el flag, y asi cuando se vuelve a ver el trofeo y se preciosa A entonces el mini no vuelve a moverse.

El problema es que se supone que el flag quede ahi activado, pero si salgo del mapa (que es una casa) y vuelvo a entrar, el flag esta desactivado porque tras darle A al trofeo el mini camina otra vez.

Alguien sabe por que se desactiva el flag? no he usado clearflag :(

Gracias :D


#1
Javi4315♪ 13374
A ver. Con esa flag lo que me extraña es que el propio protagonista en el juego no se negara a seguir jugando xD

Me gustaría, si pudiera ser, que me dijeras donde has aprendido a manejar las flags. Es porque muchos usuarios vienen con ese mismo problema y a ver si se puede solucionar desde la raíz.

Pero bueno, vamos con ese script. Veo dos fallos. El primero es que estás utilizando un diálogo de tipo 0x2, no, ese tipo de diálogo lleva implícito un lock y un faceplayer. Eso se hace para un script simple en el que sólo exista eso, un diálogo. En un script más complejo puede derivar en errores, por lo que debes utilizar el 0x6. El segundo y más importante es la flag que utilizas, yo diría que es el problema, así que vamos a corregirlo usando una de estas flags:

[quote="Macrotutorial hacking desde 0"]Desde la 0x200 hasta la 0x29F
Desde la 0x500 hasta la 0x79F
Desde la 0x1000 hasta la 0x109F[/quote]

Yo diría que con eso se debería solucionar, si no, el script está bien, habría que mirar el mapa: configuraciones y scripts asociados.

A parte de eso te voy a dar un par de consejos. Lo primero es que el release es la contraparte del lock. Sin haber puesto un lock, no sirve de mucho poner un release, te lo puedes ahorrar si quieres. Aún así, para no tener problemas con lo el movimiento de los minis, hay un comando similar al lock pero global, el lockall. Y se desactiva con el releaseall. Si los minis se pudieran mover solos durante la ejecución del script, es la solución. Lo otro es que has hecho un applymovement para cambiar la orientación del protagonista. Es mucho más rápido, fácil y se gasta menos espacio si utilizas simplemente el comando spriteface para determinar hacia donde mira.
#2
eduardo2lll 26952
Uso la version 1.0 del XSE porque la 1.1 se cierra sola.
Por eso utilizo el callstd 0x2 sé que tiene implicito el release pero cuando usé el 0x6 me dio un error, deberé probarlo.
La flag sinceramente la invente porque No se cuales flags estan libres en Esmeralda y por ahi vi que podia usar la 40FF pero comprobé que en esmeralda esta en uso por lo que puse esa para probar.
La cuestion es que si sirvió. Porque la flag se activo como lo necesitaba luego le hable al trofeo y ya el mini no se movio mas como si la flag se hubiera activado todo bien. Pero necesito que se quede activada y cuando vuelvo a entrar al mapa la flag ya esta desactivada no se porque.

Lo del spriteface lo desconocia por eso supuse hacer un applymovement
#3
Javi4315♪ 13374
Iniciado por eduardo2lll
Uso la version 1.0 del XSE porque la 1.1 se cierra sola.
Por eso utilizo el callstd 0x2 sé que tiene implicito el release pero cuando usé el 0x6 me dio un error, deberé probarlo.
La flag sinceramente la invente porque No se cuales flags estan libres en Esmeralda y por ahi vi que podia usar la 40FF pero comprobé que en esmeralda esta en uso por lo que puse esa para probar.
La cuestion es que si sirvió. Porque la flag se activo como lo necesitaba luego le hable al trofeo y ya el mini no se movio mas como si la flag se hubiera activado todo bien. Pero necesito que se quede activada y cuando vuelvo a entrar al mapa la flag ya esta desactivada no se porque.

Lo del spriteface lo desconocia por eso supuse hacer un applymovement


Que utilices la versión 1.0 o la 1.1 no tiene nada que ver. Si te daba error el 0x6 es porque has hecho algo mal. Todos hemos utilizado durante mucho tiempo la versión 1.0 y nos ha ido bien.

La 0x40FF es una variable. Y la flag, si se desactiva, no funciona, ¿Has probado con las que te he dicho?
#4
eduardo2lll 26952
no pero hoy mismo las probaré.
Solo tengo una duda esas son para esmeralda? O es que son las mismas flags libres para todos los juegos?