Proyecto Doctor Adventures 2, Lost in Ishir

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

Moderador: na_th_an

errecepe
Mensajes: 17
Registrado: Mar, 25 Ago 2015, 19:54
Contactar:

Proyecto Doctor Adventures 2, Lost in Ishir

Mensajepor errecepe » Mié, 12 Oct 2016, 18:12

buenas

empecé, junto con la primera parte prácticamente, esta segunda parte, y me he dispuesto también a acabarla.

Tenía una dudilla: sería sencillo modificar el compartamiento de uno sólo de los enemigos, para que use un frame cuando va en una dirección, y otro cuando va en otra, en vez de como ahora hace, que va
continuamente alternando ?

Es para uno de los sprites que uso de los enemigos, que básicamente es un fantasmita, y me gustaría que los 2 frames que dispongo por sprite, me sirva cada uno para usarse cuando se mueve hacia la derecha o izquierda.

gracias,
Avatar de Usuario
na_th_an
Mensajes: 26411
Registrado: Vie, 09 Ene 2009, 12:18

Re: Proyecto Doctor Adventures 2, Lost in Ishir

Mensajepor na_th_an » Jue, 13 Oct 2016, 10:40

Todo puede hacerse. ¿Qué versión estás usando? ¿MK1, MK2?
Como diría Rorshach: "Urm..."
errecepe
Mensajes: 17
Registrado: Mar, 25 Ago 2015, 19:54
Contactar:

Re: Proyecto Doctor Adventures 2, Lost in Ishir

Mensajepor errecepe » Jue, 13 Oct 2016, 21:41

MK1.

he estado olisqueando los fuentes de la carpeta \dev pero no soy capaz ni de localizar donde pueda estar lo que busco.
si me orientas, aunque sea en la ubicación de los fuentes (y si no es ensamblador) prometo darle un vistazo!

gracias!
Avatar de Usuario
na_th_an
Mensajes: 26411
Registrado: Vie, 09 Ene 2009, 12:18

Re: Proyecto Doctor Adventures 2, Lost in Ishir

Mensajepor na_th_an » Vie, 14 Oct 2016, 09:44

Hace tanto tiempo que no miro esos fuentes que para orientarte tendría que mirar y ya que miro, pues pienso como hacerlo XD

Uf, lo que es mirar código de hace más de tres años. La parte donde se elige el sprite para pintar un enemigo tiene un montón de peste, y es esta, situada en engine.h alrededor de la linea 1836

Código: Seleccionar todo

if (active) {         
   // Animate
   en_an [gpit].count ++;
   if (en_an [gpit].count == 4) {
      en_an [gpit].count = 0;
      en_an [gpit].frame = !en_an [gpit].frame;
      en_an [gpit].next_frame = enem_frames [en_an [gpit].base_frame + en_an [gpit].frame];
   }


Aquí se utiliza en_an [gpit].frame como flip-flip, y luego se mira en enem_frames usando la "base_frame" del enemigo sumándole el valor del flip-flop.

Puedes pinchar ahí, por ejemplo. Si tu enemigo especial es, por ejemplo, el número 1, pondrías:

Código: Seleccionar todo

if (active) {         
   // Animate
   if (malotes [enoffsmasi].t == 1) {
      en_an [gpit].next_frame = enem_frames [en_an [gpit].base_frame + (malotes [enoffsmasi].mx < 0)];
   } else {
      en_an [gpit].count ++;
      if (en_an [gpit].count == 4) {
         en_an [gpit].count = 0;
         en_an [gpit].frame = !en_an [gpit].frame;   
         en_an [gpit].next_frame = enem_frames [en_an [gpit].base_frame + en_an [gpit].frame];         
      }
   }


Si el muñeco se mueve a la izquierda, o sea, la velocidad horizontal es negativa (mx < 0), (malotes [enoffsmasi].mx < 0) valdrá 1, si no valdrá 0. Eso significa que en tu spriteset tendrás que poner primero al muñeco mirando a la derecha y luego a la izquierda. Si lo quieres poner al revés, cambia < por >.

Esto lo he programao así al voleo, a lo mejor no va.
Como diría Rorshach: "Urm..."
errecepe
Mensajes: 17
Registrado: Mar, 25 Ago 2015, 19:54
Contactar:

Re: Proyecto Doctor Adventures 2, Lost in Ishir

Mensajepor errecepe » Sab, 15 Oct 2016, 18:16

funciona!

perfectamente!

gracias!
Avatar de Usuario
na_th_an
Mensajes: 26411
Registrado: Vie, 09 Ene 2009, 12:18

Re: Proyecto Doctor Adventures 2, Lost in Ishir

Mensajepor na_th_an » Lun, 17 Oct 2016, 09:05

Pues mira qué bien :D
Como diría Rorshach: "Urm..."
errecepe
Mensajes: 17
Registrado: Mar, 25 Ago 2015, 19:54
Contactar:

Re: Proyecto Doctor Adventures 2, Lost in Ishir

Mensajepor errecepe » Sab, 22 Oct 2016, 01:11

hay algún problema en el siguiente 'cacho' de script, y no consigo verlo... y cada pequeño cambio, me supone tener que perder un rato pasándome el juego (pese a darme ventajas, ciertas partes hay que hacerlas si o si.. y se pierde bastante tiempo) para probar...

Código: Seleccionar todo

ENTERING SCREEN 11
   IF TRUE
   THEN
         #012345678901234567890123456789
      TEXT !!NECESITAS!LOS!28!DIAMANTES!!
      #decoracion
      SET TILE(2,2) = 36
      SET TILE(3,2) = 38
   END
   IF FLAG 1 = 28
   THEN
         #012345678901234567890123456789
      TEXT !!!COLOCA!LOS!28!DIAMANTES!!!!
   END
END


Teniendo en config.h

Código: Seleccionar todo

#define OBJECT_COUNT         1      // Defines which FLAG will be used to store the object count.


porqué pese a entrar en la pantalla 11, con los dichosos 28 diamantes, nunca se cumple el IF ?


gracias!
errecepe
Mensajes: 17
Registrado: Mar, 25 Ago 2015, 19:54
Contactar:

Re: Proyecto Doctor Adventures 2, Lost in Ishir

Mensajepor errecepe » Sab, 22 Oct 2016, 23:58

Código: Seleccionar todo

IF OBJECT_COUNT = 28


así funciona ok..

pero aun no se porque no funciona el IF FLAG 1 = 28.. en la primera parte me funcionó (con otro valor más bajo... es la única opción que me queda..)
Avatar de Usuario
na_th_an
Mensajes: 26411
Registrado: Vie, 09 Ene 2009, 12:18

Re: Proyecto Doctor Adventures 2, Lost in Ishir

Mensajepor na_th_an » Lun, 24 Oct 2016, 10:12

Um - debería funcionar si tienes el #define. Déjame que miro el código, a ver si veo el gazapo.
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