Mensajepor na_th_an » Jue, 25 Jun 2015, 13:02
$this->bbcode_second_pass_quote('fupinet', 'B')ueno buenooooo ya estoy en la recta final.
Tengo un error que no se si es que no se puede o la estoy liando parda....
al matar un numero de enemigos quiero que el personaje se traslade automaticamente a una pantalla del juego.
He puesto este codigo:
ENTERING ANY
IF ENEMIES_KILLED_EQUALS 3
THEN
WARP_TO 23, 2, 8
END
END
y cuando mato los 3 enemigos se me para....se me bloquea todo..
Es posible hacer eso?
Un saludo y gracias!!
![Café :cafe:](./images/smilies/coffee.gif)
Claro que se te bloquea
![Muy Feliz :D](./images/smilies/icon_e_biggrin.gif)
Piénsalo, es "ENTERING ANY". Se ejecuta al entrar en CUALQUIER PANTALLA.
Cuando entras en una pantalla con 3 enemigos matados, se ejecuta WARP_TO 23, 2, 8... Y al moverte a esa pantalla estás entrando en una pantalla, con lo que se vuelve a ejecutar... Y otra, y otra, y otra vez.
Has creado un bucle infinito.
Puedes deshacerlo utilizando un flag que tengas por ahí libre, por ejemplo digamos que el 10. Al empezar el juego la inicializas en tu ENTERING GAME:
$this->bbcode_second_pass_code('', 'ENTERING GAME
IF TRUE
THEN
SET FLAG 10 = 0
# y otras cosas que tengas...
...
END
...
END')
Y luego modificas tu tiesto así:
$this->bbcode_second_pass_code('', 'ENTERING ANY
IF ENEMIES_KILLED_EQUALS 3
IF FLAG 10 = 0
THEN
SET FLAG 10 = 1
WARP_TO 23, 2, 8
END
END')
Lo que pasa es que no se te va a ejecutar hasta que no entres en una pantalla nueva. Ahora mismo no sé si la Churrera lanzaba PRESS_FIRE al matar a un enemigo. Si lo hiciera, lo suyo sería:
$this->bbcode_second_pass_code('', 'PRESS_FIRE AT ANY
IF ENEMIES_KILLED_EQUALS 3
IF FLAG 10 = 0
THEN
SET FLAG 10 = 1
WARP_TO 23, 2, 8
END
END')
Pero no sé si lo hace. MK2 sí lo hace (aunque lanza una sección especial, pero eso es otra historia). ¿Cómo se matan los enemigos en tu juego? ¿disparos o pisotones? Para mirarlo y, si no está hecho, decirte la modificación.
Es que lo suyo es que el script salte al matar al último enemigo, y no tener que entrar en una pantalla nueva.