Accueil Ti-Gen Foire Aux Questions Chat sur le chan #tigcc sur IRC
Liste des membres Rechercher Aide
Bienvenue Invité !   Se connecter             Mes sujets   
Administrer
0 membre(s) et 1 visiteur(s) actif(s) durant les 5 dernières minutes Utilisateurs actifs : Aucun membre + 1 visiteur
Avant de poster sur le forum, il y a des régles de bases à respecter pour une bonne entente et un respect de tous.
Veuillez lire la charte du forum.
  :: Index » Forum Ti68K » Programmes et tests... » Venus ß0.6 (39 réponse(s))
./REPRISE DU POST PRECEDENT (post n°19)   Marquer comme non lu.
Kevin Kofler Ecrit le: Mardi 27 juillet 2004 à 05:20 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Les sources de Factory.a? Parce que les autres, elles y sont déjà!
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°20   Marquer comme non lu.
Lionel Debroux Ecrit le: Mardi 27 juillet 2004 à 12:51 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

"mais l' "impossibilité" d'utiliser plusieurs font n'en est pas un : il suffit simplement de les préciser lors de l'appel à FC_Start, en mettant FC_4x6 | FC_6x8 | FC_8x10 (ou bien FC_All) pour indiquer les font à utiliser, toutes dans cet exemple."
Quelle méthode utilises-tu pour les fonts ? Bien sûr, je pourrais désassembler pour voir, mais je n'ai pas bien le temps...

> Pour les optimisations, j'ai reçu ton mail Lionel, je répondrais ce soir ou demain
OK, vu.
Lionel Debroux - membre de TICT.
    
./Post n°21   Marquer comme non lu.
Vertyos Ecrit le: Mardi 27 juillet 2004 à 20:03 Déconnecté(e)    Voir le profil de Vertyos Envoyer un email à Vertyos Visiter le site WEB de Vertyos Envoyer un message privé à Vertyos  

J'utilise la méthode que tu n'aimes pas, qui consiste à stoquer les font préalablement affichées dans un buffer. Nous n'allons pas troller là-dessus, je sais très bien ce que tu en penses (déjà lu ailleurs sur ce forum), et ce n'est pas le sujet ici.

Par ailleurs, j'ai répondu à ton mail.
Membre de [ yAronet ] ^^
(et de [ 3l33t ] aussi, mais chut, coté obscur toussa...)
    
./Post n°22   Marquer comme non lu.
Benjy Ecrit le: Mardi 27 juillet 2004 à 22:51 Déconnecté(e)    Voir le profil de Benjy Envoyer un email à Benjy Visiter le site WEB de Benjy Envoyer un message privé à Benjy  


est ce que ceux qui se sont fait des niveaux pourrait les partager merci!! :):)
juste en passant je trouve l'editeur de niveaux un peu dur a prendre en main :(
Le langage C y'a pas mieux!!!
    
./Post n°23   Marquer comme non lu.
Vertyos Ecrit le: Mardi 27 juillet 2004 à 23:27 Déconnecté(e)    Voir le profil de Vertyos Envoyer un email à Vertyos Visiter le site WEB de Vertyos Envoyer un message privé à Vertyos  

Même remarque à propos du partage de vos niveaux si vous en avez fait.

L'éditeur compliqué heu... Alors c'est vraiment pas ta tasse de thé, parcequ'il est justement plutot simple à utiliser pour un éditeur. Je veux bien qu'il n'y ait aucune doc, mais bon...

Rapidement :
? Les évenements se déroulent dans l'ordre logique : de haut en bas
? Un évenement est déclanché chaque fois que le précedent est terminé (voir point suivant)
? Un évenement peut se terminer de plusieurs façons, soit au bout d'un certain temps soit quand certaines conditions sont remplies

Par exemple, le premier évenement de la map de la beta est un "Show Message", qui affiche le texte d'introduction, et qui a pour type de terminaison "Once finished", ce qui signifie que l'évenement suivant sera déclanché une fois que le message aura été affiché.
Nous avons ensuite un "Wait N frame" qui sert juste à effectuer une pause avant le prochain evenement, pour éviter qu'il se produise immédiatement après la fin du message.
Un autre message apparait, sur le même model que le premier, puis ensuite un "Summon ship wave" : 3 vaisseaux de type "1" (le plus faible) vont apparaitre, avec un mouvement en carré sur la gauche (Square left), le prochain évenement sera appellé une fois que celui-ci sera terminé (Once finished), c'est à dire une fois que ces 3 vaisseaux auront été éliminés.

Et ainsi de suite...

[edit]

Bon... mea culpa, y'avait un problème dans le .zip distribué : le fichier Factory.a avait un bug (une ligne manquante ?! je ne comprends pas trop comment ça a pu arriver, mais peu importe). Merci à Kevin Kofler, je n'ai pas terminé les modifications que je voulais faire mais j'ai quand même ré-uppé une version intermédiaire qui a l'avantage de compiler sans problèmes, cette fois. Même url ^^

-Edité le Mercredi 28 juillet 2004 à 03:03 par Vertyos-
Membre de [ yAronet ] ^^
(et de [ 3l33t ] aussi, mais chut, coté obscur toussa...)
    
./Post n°24   Marquer comme non lu.
Benjy Ecrit le: Mercredi 28 juillet 2004 à 11:25 Déconnecté(e)    Voir le profil de Benjy Envoyer un email à Benjy Visiter le site WEB de Benjy Envoyer un message privé à Benjy  


oui c vrai mais dison que je prefere les editeur style celui de exiter bike
Le langage C y'a pas mieux!!!
    
./Post n°25   Marquer comme non lu.
Vertyos Ecrit le: Mercredi 28 juillet 2004 à 13:09 Déconnecté(e)    Voir le profil de Vertyos Envoyer un email à Vertyos Visiter le site WEB de Vertyos Envoyer un message privé à Vertyos  

Comment tu veux que je fasse pareil, alors que la construction n'a strictement rien à voir... Je ne peux pas faire un éditeur avec représentation "graphique" pour des évenements comme afficher un message ou attendre un certain temps...

Si tu as une meilleure idée de concept pour l'éditeur, je suis preneur.
Membre de [ yAronet ] ^^
(et de [ 3l33t ] aussi, mais chut, coté obscur toussa...)
    
./Post n°26   Marquer comme non lu.
Benjy Ecrit le: Mercredi 28 juillet 2004 à 15:15 Déconnecté(e)    Voir le profil de Benjy Envoyer un email à Benjy Visiter le site WEB de Benjy Envoyer un message privé à Benjy  


oui c vrai qu'il n'y a pas tant de solution que ca
Le langage C y'a pas mieux!!!
    
./Post n°27   Marquer comme non lu.
Kevin Kofler Ecrit le: Jeudi 29 juillet 2004 à 08:47 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Le patch suivant:
  • utilise la fonte moyenne dans le menu à la place de la fonte minuscule, afin d'augmenter la lisibilité
  • élimine le scrolling dans le menu (C'est ridicule de montrer 3 entrées avec ce !"§$%&/()=? de défilement cyclique quand il y en a 4 et quand il y a largement la place pour 4 entrées sur l'écran.)
  • efface le starfield en dessous du menu (dans le rectangle prévu pour le menu), afin d'augmenter la lisibilité


diff -ur Game.orig/Constants.h Game/Constants.h
--- Game.orig/Constants.h  Wed Jul 28 00:28:54 2004
+++ Game/Constants.h  Thu Jul 29 08:21:30 2004
@@ -119,11 +119,11 @@
 //^ Menu ^//
 ////////////////////////////////////////////////////////////
 
-#define MENU_ERASE_Y 4
+#define MENU_ERASE_Y 2
 #define MENU_LINE_COUNT 5
 #define MENU_SHIFT_LOGO 6
 #define MENU_SHIFT_X 80
-#define MENU_SHIFT_Y 56
+#define MENU_SHIFT_Y 44
 #define MENU_SPACE_Y 12
 
 
diff -ur Game.orig/Menu.c Game/Menu.c
--- Game.orig/Menu.c  Wed Jul 21 00:59:06 2004
+++ Game/Menu.c  Thu Jul 29 08:33:08 2004
@@ -75,51 +75,48 @@
 // Menu Draw ^//
 ////////////////////////////////////////////////////////////
 
-void MenuDraw(struct WORLD *world, unsigned char (*menu)[16], unsigned short count, unsigned short choice, unsigned short draw, signed short shift)
+void MenuDraw(struct WORLD *world, unsigned char (*menu)[16], unsigned short count, unsigned short choice)
 {
   unsigned short i;
-  signed short x, y = MENU_SHIFT_Y + shift;
+  signed short x, y = MENU_SHIFT_Y;
 
 //------------------- Draw menu items --------------------//
+  PortSet(world->dark,239,127);
+  ScrRectFill(&(SCR_RECT){{MENU_SHIFT_X - 55,MENU_SHIFT_Y - MENU_ERASE_Y - 1,
+              MENU_SHIFT_X + 54,MENU_SHIFT_Y - MENU_ERASE_Y + MENU_SPACE_Y * 4}},
+              &(SCR_RECT){{0,0,239,127}},A_REVERSE);
+  PortSet(world->light,239,127);
+  ScrRectFill(&(SCR_RECT){{MENU_SHIFT_X - 55,MENU_SHIFT_Y - MENU_ERASE_Y - 1,
+              MENU_SHIFT_X + 54,MENU_SHIFT_Y - MENU_ERASE_Y + MENU_SPACE_Y * 4}},
+              &(SCR_RECT){{0,0,239,127}},A_REVERSE);
+  PortRestore();
+
+  FC_StrMode(FC_6x8 | FC_OR);
+
+  for (i = 0; i < 4; i++)
+  {
+    x = (FC_StrWidth1(menu[i])-6) >> 1;
+
+    FC_StrDraw(MENU_SHIFT_X - x - 1,y,menu[i],world->light);
+    FC_StrDraw(MENU_SHIFT_X - x,y,menu[i],world->dark);
+    FC_StrDraw(MENU_SHIFT_X - x,y,menu[i],world->light);
 
-  choice = (choice ? choice - 1 : count - 1);
-
-  if (shift > 0)
-  {
-    choice = (choice ? choice - 1 : count - 1);
-    y -= MENU_SPACE_Y;
-  }
-  else if (!shift)
-  {
-    i = (choice < count - 1 ? choice + 1 : 0);
-    x = FC_StrWidth0(menu[i]) >> 1;
-
-    FC_StrDraw0(MENU_SHIFT_X - x - 11,MENU_SHIFT_Y + MENU_SPACE_Y,"[",world->light);
-    FC_StrDraw0(MENU_SHIFT_X - x - 10,MENU_SHIFT_Y + MENU_SPACE_Y,"[",world->dark);
-    FC_StrDraw0(MENU_SHIFT_X - x - 10,MENU_SHIFT_Y + MENU_SPACE_Y,"[",world->light);
-    FC_StrDraw0(MENU_SHIFT_X + x + 9,MENU_SHIFT_Y + MENU_SPACE_Y,"]",world->light);
-    FC_StrDraw0(MENU_SHIFT_X + x + 10,MENU_SHIFT_Y + MENU_SPACE_Y,"]",world->dark);
-    FC_StrDraw0(MENU_SHIFT_X + x + 10,MENU_SHIFT_Y + MENU_SPACE_Y,"]",world->light);  
-  }
-
-  for (i = 0; i < draw; i++)
-  {
-    x = FC_StrWidth0(menu[choice]) >> 1;
+    if (i == choice)
+    {
+      x = (FC_StrWidth1(menu[i])-6) >> 1;
 
-    FC_StrDraw0(MENU_SHIFT_X - x - 1,y,menu[choice],world->light);
-    FC_StrDraw0(MENU_SHIFT_X - x,y,menu[choice],world->dark);
-    FC_StrDraw0(MENU_SHIFT_X - x,y,menu[choice],world->light);
+      FC_StrDraw(MENU_SHIFT_X - x - 12,y,"[",world->light);
+      FC_StrDraw(MENU_SHIFT_X - x - 11,y,"[",world->dark);
+      FC_StrDraw(MENU_SHIFT_X - x - 11,y,"[",world->light);
+      FC_StrDraw(MENU_SHIFT_X + x + 8,y,"]",world->light);
+      FC_StrDraw(MENU_SHIFT_X + x + 9,y,"]",world->dark);
+      FC_StrDraw(MENU_SHIFT_X + x + 9,y,"]",world->light);  
+    }
 
     y += MENU_SPACE_Y;
-
-    if (++choice == count)
-      choice = 0;
   }
 
-  memset(world->dark + (MENU_SHIFT_Y - MENU_ERASE_Y - MENU_SPACE_Y) * 30,0,MENU_SPACE_Y * 30);
-  memset(world->dark + (MENU_SHIFT_Y - MENU_ERASE_Y + MENU_SPACE_Y * 3) * 30,0,MENU_SPACE_Y * 30);
-  memset(world->light + (MENU_SHIFT_Y - MENU_ERASE_Y - MENU_SPACE_Y) * 30,0,MENU_SPACE_Y * 30);
-  memset(world->light + (MENU_SHIFT_Y - MENU_ERASE_Y + MENU_SPACE_Y * 3) * 30,0,MENU_SPACE_Y * 30);
+  FC_StrMode(FC_4x6 | FC_OR);
 
 //---------------------- Draw lines ----------------------//
 
@@ -135,7 +132,7 @@
   for (i = MENU_LINE_COUNT; i--
   {
     FastDrawHLine_R(world->dark,line[i][0],line[i][1],MENU_SHIFT_Y - MENU_ERASE_Y - 1,A_NORMAL);
-    FastDrawHLine_R(world->dark,line[i][0],line[i][1],MENU_SHIFT_Y - MENU_ERASE_Y + MENU_SPACE_Y * 3,A_NORMAL);
+    FastDrawHLine_R(world->dark,line[i][0],line[i][1],MENU_SHIFT_Y - MENU_ERASE_Y + MENU_SPACE_Y * 4,A_NORMAL);
   }
 
 //--------------------- Draw logo ---------------------//
@@ -152,7 +149,6 @@
 
 unsigned char MenuSelect(struct WORLD *world, unsigned char (*menu)[16], unsigned short count, unsigned short choice, unsigned char esc)
 {
-  signed short roll = 0;
   unsigned char exit = 255, *keyReleased = world->keyReleased;
 
 //-------------------- Initialisation --------------------//
@@ -169,69 +165,58 @@
     FC_Keyboard();
     FC_StrMode(FC_4x6 | FC_OR);
 
+//--------------- Update all active items ----------------//
+
+    WorldUpdate(world);
+    MessageUpdate(world);
+
 //-------------------- Test keypress ---------------------//
 
-    if (roll)
+    MenuDraw(world,menu,count,choice);
+
+    if (KeyReleased(up))
     {
-      MenuDraw(world,menu,count,choice,4,roll);
+      keyReleased[0] = 1;
+    }
+    else if (keyReleased[0])
+    {
+      choice = (choice ? choice - 1 : count - 1);
 
-      roll += (roll < 0 ? 4 : - 4);
+      keyReleased[0] = 0;
     }
-    else
+
+    if (KeyReleased(down))
     {
-      MenuDraw(world,menu,count,choice,3,0);
-
-      if (KeyReleased(up))
-      {
-        keyReleased[0] = 1;
-      }
-      else if (keyReleased[0])
-      {
-        choice = (choice ? choice - 1 : count - 1);
-        roll = - MENU_SPACE_Y;
-
-        keyReleased[0] = 0;
-      }
-
-      if (KeyReleased(down))
-      {
-        keyReleased[2] = 1;
-      }
-      else if (keyReleased[2])
-      {
-        choice = (choice < count - 1 ? choice + 1 : 0);
-        roll = MENU_SPACE_Y;
-
-        keyReleased[2] = 0;  
-      }
-
-      if (KeyReleased(b1))
-      {
-        keyReleased[4] = 1;
-      }
-      else if (keyReleased[4])
-      {
-        exit = choice;
-
-        keyReleased[4] = 0;
-      }
-
-      if (KeyReleased(esc))
-      {
-        keyReleased[9] = 1;
-      }
-      else if (keyReleased[9])
-      {
-        exit = esc;
+      keyReleased[2] = 1;
+    }
+    else if (keyReleased[2])
+    {
+      choice = (choice < count - 1 ? choice + 1 : 0);
 
-        keyReleased[9] = 0;
-      }
+      keyReleased[2] = 0;  
     }
 
-//--------------- Update all active items ----------------//
+    if (KeyReleased(b1))
+    {
+      keyReleased[4] = 1;
+    }
+    else if (keyReleased[4])
+    {
+      exit = choice;
 
-    WorldUpdate(world);
-    MessageUpdate(world);
+      keyReleased[4] = 0;
+    }
+
+    if (KeyReleased(esc))
+    {
+      keyReleased[9] = 1;
+    }
+    else if (keyReleased[9])
+    {
+      exit = esc;
+
+      keyReleased[9] = 0;
+    }
 
 //--------------------- Draw buffers ---------------------//
 
diff -ur Game.orig/Prototypes.h Game/Prototypes.h
--- Game.orig/Prototypes.h  Wed Jul 28 00:19:02 2004
+++ Game/Prototypes.h  Thu Jul 29 08:22:26 2004
@@ -101,7 +101,7 @@
 ////////////////////////////////////////////////////////////
 
 unsigned char Menu(struct WORLD *);
-void MenuDraw(struct WORLD *, unsigned char (*)[16], unsigned short, unsigned short, unsigned short, signed short);
+void MenuDraw(struct WORLD *, unsigned char (*)[16], unsigned short, unsigned short);
 unsigned char MenuSelect(struct WORLD *, unsigned char (*)[16], unsigned short, unsigned short, unsigned char);
 
 
diff -ur Game.orig/Venus.c Game/Venus.c
--- Game.orig/Venus.c  Tue Jul 20 19:12:40 2004
+++ Game/Venus.c  Thu Jul 22 16:23:32 2004
@@ -32,7 +32,7 @@
 
 //------- Initialisation, Grays, Interruptions... --------//
 
-  if ((FC_Start(FC_Redirect | FC_Gray | FC_SaveScreen | FC_4x6))
+  if ((FC_Start(FC_Redirect | FC_Gray | FC_SaveScreen | FC_4x6 | FC_6x)
    && (WorldCreate(&world)))
   {
     randomize();
diff -ur Game.orig/Venus.tpr Game/Venus.tpr
--- Game.orig/Venus.tpr  Wed Jul 28 02:54:36 2004
+++ Game/Venus.tpr  Thu Jul 29 08:33:06 2004
@@ -49,7 +49,8 @@
 Enable Error Return=0
 Save Screen=0
 [File Editing]
-Open File=Cocuments and SettingsVertyosBureauVenusb05SrcGameVenus.c
+Open File=E:TI-89ticunoffasmgamesvenusb05SrcGameMenu.c
+
 [Included Files]
 C File 1=Venus.c
 C File 2=Addons.c
@@ -75,3 +76,4 @@
 Header File 4=Prototypes.h
 Header File 5=Structures.h
 Header File 6=Factory.h
+
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°28   Marquer comme non lu.
Kevin Kofler Ecrit le: Jeudi 29 juillet 2004 à 08:47 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Et le même patch en "ignore whitespace" (pour voir plus clairement les modifications apportées):
diff -urw Game.orig/Constants.h Game/Constants.h
--- Game.orig/Constants.h  Wed Jul 28 00:28:54 2004
+++ Game/Constants.h  Thu Jul 29 08:21:30 2004
@@ -119,11 +119,11 @@
 //^ Menu ^//
 ////////////////////////////////////////////////////////////
 
-#define MENU_ERASE_Y 4
+#define MENU_ERASE_Y 2
 #define MENU_LINE_COUNT 5
 #define MENU_SHIFT_LOGO 6
 #define MENU_SHIFT_X 80
-#define MENU_SHIFT_Y 56
+#define MENU_SHIFT_Y 44
 #define MENU_SPACE_Y 12
 
 
diff -urw Game.orig/Menu.c Game/Menu.c
--- Game.orig/Menu.c  Wed Jul 21 00:59:06 2004
+++ Game/Menu.c  Thu Jul 29 08:33:08 2004
@@ -75,51 +75,48 @@
 // Menu Draw ^//
 ////////////////////////////////////////////////////////////
 
-void MenuDraw(struct WORLD *world, unsigned char (*menu)[16], unsigned short count, unsigned short choice, unsigned short draw, signed short shift)
+void MenuDraw(struct WORLD *world, unsigned char (*menu)[16], unsigned short count, unsigned short choice)
 {
   unsigned short i;
-  signed short x, y = MENU_SHIFT_Y + shift;
+  signed short x, y = MENU_SHIFT_Y;
 
 //------------------- Draw menu items --------------------//
-
-  choice = (choice ? choice - 1 : count - 1);
-
-  if (shift > 0)
-  {
-    choice = (choice ? choice - 1 : count - 1);
-    y -= MENU_SPACE_Y;
-  }
-  else if (!shift)
-  {
-    i = (choice < count - 1 ? choice + 1 : 0);
-    x = FC_StrWidth0(menu[i]) >> 1;
-
-    FC_StrDraw0(MENU_SHIFT_X - x - 11,MENU_SHIFT_Y + MENU_SPACE_Y,"[",world->light);
-    FC_StrDraw0(MENU_SHIFT_X - x - 10,MENU_SHIFT_Y + MENU_SPACE_Y,"[",world->dark);
-    FC_StrDraw0(MENU_SHIFT_X - x - 10,MENU_SHIFT_Y + MENU_SPACE_Y,"[",world->light);
-    FC_StrDraw0(MENU_SHIFT_X + x + 9,MENU_SHIFT_Y + MENU_SPACE_Y,"]",world->light);
-    FC_StrDraw0(MENU_SHIFT_X + x + 10,MENU_SHIFT_Y + MENU_SPACE_Y,"]",world->dark);
-    FC_StrDraw0(MENU_SHIFT_X + x + 10,MENU_SHIFT_Y + MENU_SPACE_Y,"]",world->light);  
+  PortSet(world->dark,239,127);
+  ScrRectFill(&(SCR_RECT){{MENU_SHIFT_X - 55,MENU_SHIFT_Y - MENU_ERASE_Y - 1,
+              MENU_SHIFT_X + 54,MENU_SHIFT_Y - MENU_ERASE_Y + MENU_SPACE_Y * 4}},
+              &(SCR_RECT){{0,0,239,127}},A_REVERSE);
+  PortSet(world->light,239,127);
+  ScrRectFill(&(SCR_RECT){{MENU_SHIFT_X - 55,MENU_SHIFT_Y - MENU_ERASE_Y - 1,
+              MENU_SHIFT_X + 54,MENU_SHIFT_Y - MENU_ERASE_Y + MENU_SPACE_Y * 4}},
+              &(SCR_RECT){{0,0,239,127}},A_REVERSE);
+  PortRestore();
+
+  FC_StrMode(FC_6x8 | FC_OR);
+
+  for (i = 0; i < 4; i++)
+  {
+    x = (FC_StrWidth1(menu[i])-6) >> 1;
+
+    FC_StrDraw(MENU_SHIFT_X - x - 1,y,menu[i],world->light);
+    FC_StrDraw(MENU_SHIFT_X - x,y,menu[i],world->dark);
+    FC_StrDraw(MENU_SHIFT_X - x,y,menu[i],world->light);
+
+    if (i == choice)
+    {
+      x = (FC_StrWidth1(menu[i])-6) >> 1;
+
+      FC_StrDraw(MENU_SHIFT_X - x - 12,y,"[",world->light);
+      FC_StrDraw(MENU_SHIFT_X - x - 11,y,"[",world->dark);
+      FC_StrDraw(MENU_SHIFT_X - x - 11,y,"[",world->light);
+      FC_StrDraw(MENU_SHIFT_X + x + 8,y,"]",world->light);
+      FC_StrDraw(MENU_SHIFT_X + x + 9,y,"]",world->dark);
+      FC_StrDraw(MENU_SHIFT_X + x + 9,y,"]",world->light);  
   }
 
-  for (i = 0; i < draw; i++)
-  {
-    x = FC_StrWidth0(menu[choice]) >> 1;
-
-    FC_StrDraw0(MENU_SHIFT_X - x - 1,y,menu[choice],world->light);
-    FC_StrDraw0(MENU_SHIFT_X - x,y,menu[choice],world->dark);
-    FC_StrDraw0(MENU_SHIFT_X - x,y,menu[choice],world->light);
-
     y += MENU_SPACE_Y;
-
-    if (++choice == count)
-      choice = 0;
   }
 
-  memset(world->dark + (MENU_SHIFT_Y - MENU_ERASE_Y - MENU_SPACE_Y) * 30,0,MENU_SPACE_Y * 30);
-  memset(world->dark + (MENU_SHIFT_Y - MENU_ERASE_Y + MENU_SPACE_Y * 3) * 30,0,MENU_SPACE_Y * 30);
-  memset(world->light + (MENU_SHIFT_Y - MENU_ERASE_Y - MENU_SPACE_Y) * 30,0,MENU_SPACE_Y * 30);
-  memset(world->light + (MENU_SHIFT_Y - MENU_ERASE_Y + MENU_SPACE_Y * 3) * 30,0,MENU_SPACE_Y * 30);
+  FC_StrMode(FC_4x6 | FC_OR);
 
 //---------------------- Draw lines ----------------------//
 
@@ -135,7 +132,7 @@
   for (i = MENU_LINE_COUNT; i--
   {
     FastDrawHLine_R(world->dark,line[i][0],line[i][1],MENU_SHIFT_Y - MENU_ERASE_Y - 1,A_NORMAL);
-    FastDrawHLine_R(world->dark,line[i][0],line[i][1],MENU_SHIFT_Y - MENU_ERASE_Y + MENU_SPACE_Y * 3,A_NORMAL);
+    FastDrawHLine_R(world->dark,line[i][0],line[i][1],MENU_SHIFT_Y - MENU_ERASE_Y + MENU_SPACE_Y * 4,A_NORMAL);
   }
 
 //--------------------- Draw logo ---------------------//
@@ -152,7 +149,6 @@
 
 unsigned char MenuSelect(struct WORLD *world, unsigned char (*menu)[16], unsigned short count, unsigned short choice, unsigned char esc)
 {
-  signed short roll = 0;
   unsigned char exit = 255, *keyReleased = world->keyReleased;
 
 //-------------------- Initialisation --------------------//
@@ -169,17 +165,14 @@
     FC_Keyboard();
     FC_StrMode(FC_4x6 | FC_OR);
 
-//-------------------- Test keypress ---------------------//
+//--------------- Update all active items ----------------//
 
-    if (roll)
-    {
-      MenuDraw(world,menu,count,choice,4,roll);
+    WorldUpdate(world);
+    MessageUpdate(world);
 
-      roll += (roll < 0 ? 4 : - 4);
-    }
-    else
-    {
-      MenuDraw(world,menu,count,choice,3,0);
+//-------------------- Test keypress ---------------------//
+
+    MenuDraw(world,menu,count,choice);
 
       if (KeyReleased(up))
       {
@@ -188,7 +181,6 @@
       else if (keyReleased[0])
       {
         choice = (choice ? choice - 1 : count - 1);
-        roll = - MENU_SPACE_Y;
 
         keyReleased[0] = 0;
       }
@@ -200,7 +192,6 @@
       else if (keyReleased[2])
       {
         choice = (choice < count - 1 ? choice + 1 : 0);
-        roll = MENU_SPACE_Y;
 
         keyReleased[2] = 0;  
       }
@@ -226,12 +217,6 @@
 
         keyReleased[9] = 0;
       }
-    }
-
-//--------------- Update all active items ----------------//
-
-    WorldUpdate(world);
-    MessageUpdate(world);
 
 //--------------------- Draw buffers ---------------------//
 
diff -urw Game.orig/Prototypes.h Game/Prototypes.h
--- Game.orig/Prototypes.h  Wed Jul 28 00:19:02 2004
+++ Game/Prototypes.h  Thu Jul 29 08:22:26 2004
@@ -101,7 +101,7 @@
 ////////////////////////////////////////////////////////////
 
 unsigned char Menu(struct WORLD *);
-void MenuDraw(struct WORLD *, unsigned char (*)[16], unsigned short, unsigned short, unsigned short, signed short);
+void MenuDraw(struct WORLD *, unsigned char (*)[16], unsigned short, unsigned short);
 unsigned char MenuSelect(struct WORLD *, unsigned char (*)[16], unsigned short, unsigned short, unsigned char);
 
 
diff -urw Game.orig/Venus.c Game/Venus.c
--- Game.orig/Venus.c  Tue Jul 20 19:12:40 2004
+++ Game/Venus.c  Thu Jul 22 16:23:32 2004
@@ -32,7 +32,7 @@
 
 //------- Initialisation, Grays, Interruptions... --------//
 
-  if ((FC_Start(FC_Redirect | FC_Gray | FC_SaveScreen | FC_4x6))
+  if ((FC_Start(FC_Redirect | FC_Gray | FC_SaveScreen | FC_4x6 | FC_6x)
    && (WorldCreate(&world)))
   {
     randomize();
diff -urw Game.orig/Venus.tpr Game/Venus.tpr
--- Game.orig/Venus.tpr  Wed Jul 28 02:54:36 2004
+++ Game/Venus.tpr  Thu Jul 29 08:33:06 2004
@@ -49,7 +49,8 @@
 Enable Error Return=0
 Save Screen=0
 [File Editing]
-Open File=C:\Documents and Settings\Vertyos\Bureau\Venusb05\Src\Game\Venus.c
+Open File=E:\TI-89\ticunoff\asm\games\venusb05\Src\Game\Menu.c
+
 [Included Files]
 C File 1=Venus.c
 C File 2=Addons.c
@@ -75,3 +76,4 @@
 Header File 4=Prototypes.h
 Header File 5=Structures.h
 Header File 6=Factory.h
+
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°29   Marquer comme non lu.
Benjy Ecrit le: Jeudi 29 juillet 2004 à 11:24 Déconnecté(e)    Voir le profil de Benjy Envoyer un email à Benjy Visiter le site WEB de Benjy Envoyer un message privé à Benjy  


alors on va changer de version cool
Le langage C y'a pas mieux!!!
    
./Post n°30   Marquer comme non lu.
Vertyos Ecrit le: Jeudi 29 juillet 2004 à 13:26 Déconnecté(e)    Voir le profil de Vertyos Envoyer un email à Vertyos Visiter le site WEB de Vertyos Envoyer un message privé à Vertyos  

Heu non, ça c'est juste une modification de Kevin qui n'aime pas le menu, la prochaine version va venir, mais n'a rien à voir avec ça :)

Un petit problème avec le patch de Kevin :
< Vertyos > maintenant qu'on peut choisir le niveau parmis ceux présents sur la calc, il peut y avoir + de 4 items

Voilà, si vous l'utilisez, faudra le modifier pour la prochaine version vu qu'il ne marchera plus. Mais je ne vois pas ce qu'il a contre les menus, j'aime bien comme ils sont moi :p
Membre de [ yAronet ] ^^
(et de [ 3l33t ] aussi, mais chut, coté obscur toussa...)
    
./Post n°31   Marquer comme non lu.
Benjy Ecrit le: Jeudi 29 juillet 2004 à 18:20 Déconnecté(e)    Voir le profil de Benjy Envoyer un email à Benjy Visiter le site WEB de Benjy Envoyer un message privé à Benjy  


ok tu vetu dire que dans la prochaine version s'il ya plusieur niveaux on calc on pourra choisir celui au quel on veut jouet c'est ca?
Le langage C y'a pas mieux!!!
    
./Post n°32   Marquer comme non lu.
Vertyos Ecrit le: Jeudi 29 juillet 2004 à 20:48 Déconnecté(e)    Voir le profil de Vertyos Envoyer un email à Vertyos Visiter le site WEB de Vertyos Envoyer un message privé à Vertyos  

Oui, entre autres j'ai rajouté ça. En fait ça ira plus vite de poster un extrait de mon "Changes.txt", donc en vrac :

- Correction du "25%" affiché dans la boutique (au lieu de "50%")
- Meilleur aspect sur écrans 240x128 pixels
- Logo du jeu modifié (aze)
- Indicateur d'impact (clignotement du vaisseau)
- Choix du niveau (.VSL) à partir du menu
- Différents aspects du vaisseau en fonction de l'arme
- Nouveaux mouvements pour les vaisseaux
- Nouveaux ennemis (+3, soit 10 au total)
- Armes différentes pour les ennemis (une par ennemi)
Membre de [ yAronet ] ^^
(et de [ 3l33t ] aussi, mais chut, coté obscur toussa...)
    
./Post n°33   Marquer comme non lu.
Benjy Ecrit le: Vendredi 30 juillet 2004 à 08:18 Déconnecté(e)    Voir le profil de Benjy Envoyer un email à Benjy Visiter le site WEB de Benjy Envoyer un message privé à Benjy  


ok c cool vivement la nouvelle version!!!!!
Le langage C y'a pas mieux!!!
    
./Post n°34   Marquer comme non lu.
Lionel Debroux Ecrit le: Vendredi 30 juillet 2004 à 09:03 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

Vertyos, je t'ai envoyé un mail contenant de nombreuses suggestions. yahoo ayant l'air de marcher moyennement, je ne sais pas si tu l'auras reçu...
Lionel Debroux - membre de TICT.
    
./Post n°35   Marquer comme non lu.
Lionel Debroux Ecrit le: Vendredi 30 juillet 2004 à 09:56 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

Finalement, c'est sur les mini-messages de TI-Gen que tu trouveras mon mail...
Lionel Debroux - membre de TICT.
    
./Post n°36   Marquer comme non lu.
Vertyos Ecrit le: Vendredi 30 juillet 2004 à 13:43 Déconnecté(e)    Voir le profil de Vertyos Envoyer un email à Vertyos Visiter le site WEB de Vertyos Envoyer un message privé à Vertyos  

Reçu, répondu, merci ^^
Membre de [ yAronet ] ^^
(et de [ 3l33t ] aussi, mais chut, coté obscur toussa...)
    
./Post n°37   Marquer comme non lu.
Vertyos Ecrit le: Dimanche 1er août 2004 à 04:12 Déconnecté(e)    Voir le profil de Vertyos Envoyer un email à Vertyos Visiter le site WEB de Vertyos Envoyer un message privé à Vertyos  

Update :

http://perso.club-internet.fr/vertyos/Images/Ti/Venus02.gif
(le screenshot ne représente pas la dernière version mais un état intermédiaire)

- Comptage du score
- Correction du "25%" affiché dans la boutique (au lieu de "50%")
- Meilleur aspect sur écrans 240x128 pixels
- Logo du jeu modifié (aze)
- Indicateur d'impact (clignotement du vaisseau)
- Choix du niveau (.VSL) à partir du menu
- Différents aspects du vaisseau en fonction de l'arme
- Nouveaux mouvements pour les vaisseaux
- Nouveaux ennemis (+3, soit 10 au total)
- Armes différentes pour les ennemis (une par ennemi)
- Transitions entre les différents écrans (menu, boutique, jeu)
- Correction d'un bug permettant de retarder l'arrivée d'une vague ennemie
- Meilleures touches d'action sur v200 (Hand, F1 et Q)
- Meilleure utilisation des armes par les ennemis
- Possibilité de forcer l'apparition des barres de status (Ctrl / F2 / Q)


http://databob.free.fr/Variable/module.php?d=Article&p=view&i=1, bas de la page.
Membre de [ yAronet ] ^^
(et de [ 3l33t ] aussi, mais chut, coté obscur toussa...)
    
./Post n°38   Marquer comme non lu.
Kevin Kofler Ecrit le: Dimanche 1er août 2004 à 05:26 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Ou ../index.php?mod=archives&ac=voir&id=345. :) C'était déjà dans les archives avant le message de Vertyos ici. (J'ai même eu le temps de poster ma news avant. :))
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
  :: Index » Forum Ti68K » Programmes et tests... » Venus ß0.6 (39 réponse(s))
Pages : 2/3     « 1 [2] 3 » »|

.Répondre à ce sujet
Les boutons de code
[B]old[I]talic[U]nderline[S]trikethrough[L]ine Flip Hori[Z]ontallyFlip [V]erticallySha[D]ow[G]low[S]poilerCode [G][C]ite
Bullet [L]istList Item [K] Link [H][E]mail[P]icture SmileysHelp
Couleurs :
Saisissez votre message
Activer les smileys
     

Forum de Ti-Gen v3.0 Copyright ©2004 by Geoffrey ANNEHEIM
Webmaster: Kevin KOFLER, Content Admins: list, Server Admins: Tyler CASSIDY and Kevin KOFLER, DNS Admin: squalyl
Page générée en 106.43ms avec 18 requetes