Página 5 de 19

Re: Terminare mi juego churrero? ;)

Publicado: Mar, 23 Jun 2015, 12:10
por fupinet
:porro: ya empiezo con las dudas.....

He visto en algunos juegos de mojontwins que el personaje tiene un efecto de sonido al andar..
Llevo un rato mirando el codigo y no doy con el sonido ya que el archivo beeper.h salen los mismo sonidos de siempre.
He buscando por engine.h y no veo nada que me identifique ese sonido.
Donde esta??? xD

Un saludo y gracias.

Re: Terminare mi juego churrero? ;)

Publicado: Mar, 23 Jun 2015, 13:57
por na_th_an
Se activa con PLAYER_STEP_SOUND (o algo así :lol: ) en config.h

El código que lo genera está en engine.h y es este:

Código: Seleccionar todo

#ifdef PLAYER_STEP_SOUND
void step (void) {
   #asm
      ld a, 16
      out (254), a
      nop
      nop
      nop
      nop
      nop
      nop
      nop
      nop
      nop
      xor 16
      out (254), a
   #endasm   
}
#endif

Re: Terminare mi juego churrero? ;)

Publicado: Jue, 25 Jun 2015, 12:28
por fupinet
Bueno 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!! :cafe:

Re: Terminare mi juego churrero? ;)

Publicado: Jue, 25 Jun 2015, 12:50
por fupinet
me he dado cuenta que el abort y el pause tambien ha dejado de funcionar...se me bloquea..es posible que este falta de memoria y que por eso no ejecuta esas aciones?

Re: Terminare mi juego churrero? ;)

Publicado: Jue, 25 Jun 2015, 13:02
por na_th_an
fupinet escribió:Bueno 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!! :cafe:


Claro que se te bloquea :D 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:

Código: Seleccionar todo

ENTERING GAME
   IF TRUE
   THEN
      SET FLAG 10 = 0
      # y otras cosas que tengas...
      ...
   END
   ...
END


Y luego modificas tu tiesto así:

Código: Seleccionar todo

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:

Código: Seleccionar todo

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.

Re: Terminare mi juego churrero? ;)

Publicado: Jue, 25 Jun 2015, 13:03
por na_th_an
¿O es que la churrera lanza el ENTERING al matar enemigos pisando? Creo que esta cutrada está ahí desde Cheril Perils... Es una cutrada. ¿Es esto cierto? :lol:

Re: Terminare mi juego churrero? ;)

Publicado: Jue, 25 Jun 2015, 13:15
por fupinet
he usado este
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 va...esque es la ultima habitacion de la partida y no puede salir de la pantalla y lo suyo es que salta al matar el ultimo enemigo..no uso disparo...solo el salto.
muchas gracias por la ayuda!

Re: Terminare mi juego churrero? ;)

Publicado: Jue, 25 Jun 2015, 13:16
por fupinet
creo que si lanza ENTERING al matar enemigos pisando...

Re: Terminare mi juego churrero? ;)

Publicado: Jue, 25 Jun 2015, 13:25
por fupinet
funciona con
ENTERING ANY
IF ENEMIES_KILLED_EQUALS 3
IF FLAG 10 = 0
THEN
SET FLAG 10 = 1
WARP_TO 23, 2, 8
END
END
:cheer:
gracias!

Re: Terminare mi juego churrero? ;)

Publicado: Jue, 25 Jun 2015, 13:29
por na_th_an
Vale, es que no recordaba eso. Fue una cutrada que hice para Cheril Perils y que ahí se quedó :lol:

Bueno, solucionado entonces :D