Terminare mi juego churrero? ;)

For all things Churrera. ¿Estás haciendo un juego? ¿quieres proponer un cambio? ¿tienes alguna duda? ¡Cuéntanoslo!

Moderador: na_th_an

fupinet
Mensajes: 112
Registrado: Vie, 05 Jun 2015, 12:55

Re: Terminare mi juego churrero? ;)

Mensajepor fupinet » Mar, 23 Jun 2015, 12:10

: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.
Avatar de Usuario
na_th_an
Mensajes: 26412
Registrado: Vie, 09 Ene 2009, 12:18

Re: Terminare mi juego churrero? ;)

Mensajepor na_th_an » Mar, 23 Jun 2015, 13:57

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
Como diría Rorshach: "Urm..."
fupinet
Mensajes: 112
Registrado: Vie, 05 Jun 2015, 12:55

Re: Terminare mi juego churrero? ;)

Mensajepor fupinet » Jue, 25 Jun 2015, 12:28

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:
fupinet
Mensajes: 112
Registrado: Vie, 05 Jun 2015, 12:55

Re: Terminare mi juego churrero? ;)

Mensajepor fupinet » Jue, 25 Jun 2015, 12:50

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?
Avatar de Usuario
na_th_an
Mensajes: 26412
Registrado: Vie, 09 Ene 2009, 12:18

Re: Terminare mi juego churrero? ;)

Mensajepor na_th_an » Jue, 25 Jun 2015, 13:02

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.
Como diría Rorshach: "Urm..."
Avatar de Usuario
na_th_an
Mensajes: 26412
Registrado: Vie, 09 Ene 2009, 12:18

Re: Terminare mi juego churrero? ;)

Mensajepor na_th_an » Jue, 25 Jun 2015, 13:03

¿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:
Como diría Rorshach: "Urm..."
fupinet
Mensajes: 112
Registrado: Vie, 05 Jun 2015, 12:55

Re: Terminare mi juego churrero? ;)

Mensajepor fupinet » Jue, 25 Jun 2015, 13:15

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!
fupinet
Mensajes: 112
Registrado: Vie, 05 Jun 2015, 12:55

Re: Terminare mi juego churrero? ;)

Mensajepor fupinet » Jue, 25 Jun 2015, 13:16

creo que si lanza ENTERING al matar enemigos pisando...
fupinet
Mensajes: 112
Registrado: Vie, 05 Jun 2015, 12:55

Re: Terminare mi juego churrero? ;)

Mensajepor fupinet » Jue, 25 Jun 2015, 13:25

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!
Avatar de Usuario
na_th_an
Mensajes: 26412
Registrado: Vie, 09 Ene 2009, 12:18

Re: Terminare mi juego churrero? ;)

Mensajepor na_th_an » Jue, 25 Jun 2015, 13:29

Vale, es que no recordaba eso. Fue una cutrada que hice para Cheril Perils y que ahí se quedó :lol:

Bueno, solucionado entonces :D
Como diría Rorshach: "Urm..."

Volver a “La Churrera”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado