Espace TI: Forum
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le deal à ne pas rater :
Code promo Nike : -25% dès 50€ d’achats sur tout le site Nike
Voir le deal

[Axe] Projet Cashsino

2 participants

Aller en bas

[Axe] Projet Cashsino Empty [Axe] Projet Cashsino

Message par Alexis Mar 18 Jan - 17:06

Salut, actuellement je travail sur la conception d'une application en Axe Parser, un jeu de casino ainsi qu'un jeu de tiercé. Les deux jeux seront rassemblés dans la même application et les mêmes jetons pourrons être pariés sur les deux jeux.

Progression:
- Images: 100%
- Menu: 100%
- Casino: 10%
- Tiercé: 100%
- Optimisation: 90%

Bug:
- Problème pour quitter l'application déjà rencontré dans IceSlip. Corrigé (J'avais mis des "sub(" sans "Return" derrière alors qu'il fallait mettre des "Goto ".)

L'avantage c'est que le programme qui génère les images interprète le même code pour les deux jeux, cela permet de gagner considérablement de la mémoire. (Actuellement l'application fait 10400 octets environ...)

Voici les images normalement finales:
IMAGES:


Dernière édition par Alexis le Dim 23 Jan - 17:58, édité 2 fois
Alexis
Alexis
Platinum 2
Platinum 2

Sexe : Masculin
Age : 31
Messages : 2321
Date d'inscription : 28/06/2010
Etudes : DUT Informatique
Points Forum : 40
Points Concours : 3
Langages :
  • - TI-Basic Z80
  • - ASM TI-82 Stats / TI-83
  • - Axe Parser
Calculatrices :
  • - TI-Collège
  • - TI-82 Stats.fr
  • - TI-84+

TI-84+


http://espace-ti.e-monsite.com

Revenir en haut Aller en bas

[Axe] Projet Cashsino Empty Re: [Axe] Projet Cashsino

Message par kindermoumoute Mar 18 Jan - 18:27

Source, source, source !

10400 octets, c'est une blague ? :shock:
Tu devrait apprendre à répartir le poids de tes programmes. Je n'ai pas vu le système de jeu, mais d'après ce que j'ai compris toutes les images que je vois là sont à chaque fois deux pic de 768 octets. Soit 2*5*768=7680 octets consacrés pour une chose qui est vraiment secondaire dans un programme.
Sois tu apprend à séparer cette mémoire dans une autre variable propre à la calculatrice, sois tu me fait plaisir en mettant ça sous forme de Data. (ou bien les deux en même temps Content )

Je rappelle que les calculatrices n'ont pas (encore) une mémoire extensible, il faut donc penser à optimiser son programme au maximum.
kindermoumoute
kindermoumoute
Or 4
Or 4

Sexe : Masculin
Age : 30
Messages : 797
Date d'inscription : 07/10/2010
Points Forum : 21
Points Concours : 1
Langages :
  • - TI-Basic Z80
  • - Axe Parser
Calculatrices :
  • - TI-83+

TI-83+


Revenir en haut Aller en bas

[Axe] Projet Cashsino Empty Re: [Axe] Projet Cashsino

Message par Alexis Mer 19 Jan - 19:37

Voilà la source actuelle: Source

Sinon pour les datas je sais pas comment faire, mais est-ce que mettre une image sous datas fait vraiment gagner des octets ou alors ça ne change rien ? (J'ai pas vu sur ton tutoriel pour les datas.)

Aussi y a t-il une fonction en Axe Parser pour n'avoir que la partie entière d'un nombre ? (C'est pour faire une division euclidienne avec les jetons pour ne pas avoir seulement FFh / 255d en appvar mais pouvoir atteindre au moins 9999.)
Alexis
Alexis
Platinum 2
Platinum 2

Sexe : Masculin
Age : 31
Messages : 2321
Date d'inscription : 28/06/2010
Etudes : DUT Informatique
Points Forum : 40
Points Concours : 3
Langages :
  • - TI-Basic Z80
  • - ASM TI-82 Stats / TI-83
  • - Axe Parser
Calculatrices :
  • - TI-Collège
  • - TI-82 Stats.fr
  • - TI-84+

TI-84+


http://espace-ti.e-monsite.com

Revenir en haut Aller en bas

[Axe] Projet Cashsino Empty Re: [Axe] Projet Cashsino

Message par kindermoumoute Mer 19 Jan - 21:10

Il n'y a que la division euclidienne en Axe.

Code:
:[Pic1→GDB1
:[Pic2→GDB2
:[Pic3→GDB3
:[Pic4→GDB4
:[Pic5→GDB5
:[Pic6→GDB6
:[Pic7→GDB7
:[Pic8→GDB8
:[Pic9→GDB9
No comment.

Je ne veux plus revoir un code comme ça :
Code:
:If getKey(53)
:If {Z+3}=1
:1→{Z+4}
:Else
:1→{Z+5}
:End
:End
:If getKey(52)
:If {Z+3}=1
:3→{Z+4}
:Else
:2→{Z+5}
:End
:End
:If getKey(51)
:If {Z+3}=1
:5→{Z+4}
:Else
:3→{Z+5}
:End
:End

C'est pour ton bien :
Code:
:If getKey(53)
:sub(ZP,1,1)
:End
:If getKey(52)
:sub(ZP,3,2)
:End
:If getKey(51)
:sub(ZP,5,3)
:End
:
:.Plus loin dans le code
:Lbl ZP
:If {Z+3}=1
:r1→{Z+4}
:Else
:r2→{Z+5}
:End
:Return

Code:
While getKey(53) or getKey(52) or getKey(51)
j'ai remarqué que tu faisait beaucoup de cas par cas, mais pourquoi ne pas faire une fonction général :
Code:
:Lbl NOG
:While getKey(0)
:Pause 5
:End
:Return
Ou vraiment si tu en a besoin :
Code:
:Lbl NOG
:While getKey(r1)
:DispGraph<sup>r</sup>
:Pause 5
:End
:Return

Je retrouve trop de code qui est répété. Je te conseil de te relire, et d'organiser un peu plus ton code avant de continuer ton programme.
kindermoumoute
kindermoumoute
Or 4
Or 4

Sexe : Masculin
Age : 30
Messages : 797
Date d'inscription : 07/10/2010
Points Forum : 21
Points Concours : 1
Langages :
  • - TI-Basic Z80
  • - Axe Parser
Calculatrices :
  • - TI-83+

TI-83+


Revenir en haut Aller en bas

[Axe] Projet Cashsino Empty Re: [Axe] Projet Cashsino

Message par Alexis Jeu 20 Jan - 17:10

kindermoumoute a écrit:Il n'y a que la division euclidienne en Axe.
Dans ce cas comment récupérer le reste ?

Code:
:[Pic1→GDB1
:[Pic2→GDB2
:[Pic3→GDB3
:[Pic4→GDB4
:[Pic5→GDB5
:[Pic6→GDB6
:[Pic7→GDB7
:[Pic8→GDB8
:[Pic9→GDB9
No comment.
Comment optimiser ça sans les datas ?

Je ne veux plus revoir un code comme ça :
Code:
:If getKey(53)
:If {Z+3}=1
:1→{Z+4}
:Else
:1→{Z+5}
:End
:End
:If getKey(52)
:If {Z+3}=1
:3→{Z+4}
:Else
:2→{Z+5}
:End
:End
:If getKey(51)
:If {Z+3}=1
:5→{Z+4}
:Else
:3→{Z+5}
:End
:End

C'est pour ton bien : Non !!! Clin Oeil
Code:
:If getKey(53)
:sub(ZP,1,1)
:End
:If getKey(52)
:sub(ZP,3,2)
:End
:If getKey(51)
:sub(ZP,5,3)
:End
:
:.Plus loin dans le code
:Lbl ZP
:If {Z+3}=1
:r1→{Z+4}
:Else
:r2→{Z+5}
:End
:Return
Je ne connaissais pas, merci.

Code:
While getKey(53) or getKey(52) or getKey(51)
j'ai remarqué que tu faisait beaucoup de cas par cas, mais pourquoi ne pas faire une fonction général :
Code:
:Lbl NOG
:While getKey(0)
:Pause 5
:End
:Return
Ou vraiment si tu en a besoin :
Code:
:Lbl NOG
:While getKey(r1)
:DispGraph<sup>r</sup>
:Pause 5
:End
:Return
C'est vrai.

Je retrouve trop de code qui est répété. Je te conseil de te relire, et d'organiser un peu plus ton code avant de continuer ton programme.

Une nouvelle question, comment fonctionnent les r1 / r2 ?
D'après ce que j'ai compris:
On mets un "sub(" suivit de deux valeurs, r1 représente la première tandis que r2 est la deuxième c'est ça ?

Edit: Pour la division euclidienne je viens de voir dans ton tutoriel avec le modulo.

Aussi lors de la compilation j'ai un BAD NUMBER quand je met: (A cause du r1 ?)
Code:
:Lbl NOG
:While getKey(r1)
:DispGraph<sup>r</sup>
:Pause 5
:End
:Return
Alexis
Alexis
Platinum 2
Platinum 2

Sexe : Masculin
Age : 31
Messages : 2321
Date d'inscription : 28/06/2010
Etudes : DUT Informatique
Points Forum : 40
Points Concours : 3
Langages :
  • - TI-Basic Z80
  • - ASM TI-82 Stats / TI-83
  • - Axe Parser
Calculatrices :
  • - TI-Collège
  • - TI-82 Stats.fr
  • - TI-84+

TI-84+


http://espace-ti.e-monsite.com

Revenir en haut Aller en bas

[Axe] Projet Cashsino Empty Re: [Axe] Projet Cashsino

Message par kindermoumoute Jeu 20 Jan - 20:30

Pour le menu des variables polaires :
Var > 3

Pour ce code :
Code:
:[Pic1→GDB1
:[Pic2→GDB2
:[Pic3→GDB3
:[Pic4→GDB4
:[Pic5→GDB5
:[Pic6→GDB6
:[Pic7→GDB7
:[Pic8→GDB8
:[Pic9→GDB9
La meilleur solution est de ne pas faire d'image 96*64. Apprend à utiliser les fonctions de géométrie, puis utilise les sprite si tu en a vraiment besoin (notamment pour le "cashino").
Je t'ai avancé le travail, il ne te reste plus qu'à convertir les sprites du casino, et à bien les réafficher :

[Vous devez être inscrit et connecté pour voir cette image]

PS : Est ce que le cheval et les sous sont vraiment nécessaires ? :roll:
kindermoumoute
kindermoumoute
Or 4
Or 4

Sexe : Masculin
Age : 30
Messages : 797
Date d'inscription : 07/10/2010
Points Forum : 21
Points Concours : 1
Langages :
  • - TI-Basic Z80
  • - Axe Parser
Calculatrices :
  • - TI-83+

TI-83+


Revenir en haut Aller en bas

[Axe] Projet Cashsino Empty Re: [Axe] Projet Cashsino

Message par Alexis Ven 21 Jan - 20:35

Je sais où sont les r1 etc... mais j'ai la version 0.4.5 donc que crois que le getkey(?) ne fonctionne que si le ? est un nombre et pas une variable. (Si tu me demandes pourquoi j'utilise cette version c'est parce qu'avec la 0.4.7 j'ai des problèmes pour signer l'application et pour quelle puisse être envoyée sur vos calculatrices.)

Sinon pour les images, il faut créer 36 sprites et les rappeler après ou alors il y a un truc plus facile ?
Alexis
Alexis
Platinum 2
Platinum 2

Sexe : Masculin
Age : 31
Messages : 2321
Date d'inscription : 28/06/2010
Etudes : DUT Informatique
Points Forum : 40
Points Concours : 3
Langages :
  • - TI-Basic Z80
  • - ASM TI-82 Stats / TI-83
  • - Axe Parser
Calculatrices :
  • - TI-Collège
  • - TI-82 Stats.fr
  • - TI-84+

TI-84+


http://espace-ti.e-monsite.com

Revenir en haut Aller en bas

[Axe] Projet Cashsino Empty Re: [Axe] Projet Cashsino

Message par kindermoumoute Sam 22 Jan - 0:20

Au passage, il y a la version 0.4.8, et bientôt la 1.0.0

Ce que je te conseil c'est de ne pas garder des images intégrales, mais seulement ce qui est intéressant, comme le "cashino" que je t'ai soigneusement prédécoupé, tu n'a plus qu'à faire les sprites 8*8 en grayscale :
[Vous devez être inscrit et connecté pour voir cette image]
kindermoumoute
kindermoumoute
Or 4
Or 4

Sexe : Masculin
Age : 30
Messages : 797
Date d'inscription : 07/10/2010
Points Forum : 21
Points Concours : 1
Langages :
  • - TI-Basic Z80
  • - Axe Parser
Calculatrices :
  • - TI-83+

TI-83+


Revenir en haut Aller en bas

[Axe] Projet Cashsino Empty Re: [Axe] Projet Cashsino

Message par Alexis Sam 22 Jan - 16:39

C'est bon j'ai pris la version 0.4.8 et effectivement il n'y a plus de bug pour signer l'application.

La où j'en suis je pense que je vais conserver mes images, surtout que cela ne changera presque rien au niveau de la taille puisqu'il s'agit d'une application inscrite sur une page. Par contre pour les prochaine que je ferait ainsi que IceSlip je diviserai les images en différents sprites que je mettrais dans un deuxième programme responsable de l'affichage.

Au faite j'ai corrigé le problème pour quitter l'application et j'attaque le casino sans trop de difficulté.
Alexis
Alexis
Platinum 2
Platinum 2

Sexe : Masculin
Age : 31
Messages : 2321
Date d'inscription : 28/06/2010
Etudes : DUT Informatique
Points Forum : 40
Points Concours : 3
Langages :
  • - TI-Basic Z80
  • - ASM TI-82 Stats / TI-83
  • - Axe Parser
Calculatrices :
  • - TI-Collège
  • - TI-82 Stats.fr
  • - TI-84+

TI-84+


http://espace-ti.e-monsite.com

Revenir en haut Aller en bas

[Axe] Projet Cashsino Empty Re: [Axe] Projet Cashsino

Message par kindermoumoute Dim 23 Jan - 8:34

Moi je dit juste que sur les calculatrices il y a une mémoire assez faible, et même les 84+ ne peuvent pas mettre plus de 10 applications dans leur menu.
Après, si tu préfère la solution de facilité, c'est ton choix. (Enfin moi j'dis ça, j'dis rien Clin Oeil )
kindermoumoute
kindermoumoute
Or 4
Or 4

Sexe : Masculin
Age : 30
Messages : 797
Date d'inscription : 07/10/2010
Points Forum : 21
Points Concours : 1
Langages :
  • - TI-Basic Z80
  • - Axe Parser
Calculatrices :
  • - TI-83+

TI-83+


Revenir en haut Aller en bas

[Axe] Projet Cashsino Empty Re: [Axe] Projet Cashsino

Message par Alexis Dim 23 Jan - 15:25

Disons que c'est parce que j'ai commencé comme ça, mais pour les prochaines je ferais des datas.

Au faite j'ai fini !
Alexis
Alexis
Platinum 2
Platinum 2

Sexe : Masculin
Age : 31
Messages : 2321
Date d'inscription : 28/06/2010
Etudes : DUT Informatique
Points Forum : 40
Points Concours : 3
Langages :
  • - TI-Basic Z80
  • - ASM TI-82 Stats / TI-83
  • - Axe Parser
Calculatrices :
  • - TI-Collège
  • - TI-82 Stats.fr
  • - TI-84+

TI-84+


http://espace-ti.e-monsite.com

Revenir en haut Aller en bas

[Axe] Projet Cashsino Empty Re: [Axe] Projet Cashsino

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum