(Jeu) UPMario (Jeu) |
Auteur |
Message |
S.L
Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
|
Posté le : Jeu 26 Juil 2012, 17:36
|
|
|
Salut! Je vous présente ici le résultat d'une de mes "expériences" en matière de programmation. Je voulais créer un programme où l'on pouvez faire sauter un personnage en l'air et qu'il retombe sur le sol.
J'ai donc fait dans ce programme Mario (à ma façon ) qui saute du sol et qui peut se déplacer de droite à gauche. J'ai rajouté un but à ce programme en mettant des obstacles à éviter: ils apparaissent au hasard en haut ou en bas et se dirigent vers Mario, vous devez sauter ceux du bas et laisser Mario au sol quand il y a ceux du haut. Enfin, à chaque fois que vous sautez, ça vous rajoute +1 au compteur des UP et quand vous touchez un obstacle, vous perdez et voyez votre nombre de UP. Bon, assez parlé et place au programme.
PS: Deux petites images pour vous montrer la différence entre le Mario de ce programme et le vrai Mario .
Notez que Mario met le poing en l'air
Les commandes sont:
[<-] (flèche de droite) : Se déplacer à droite
[->] (flèche de gauche) : Se déplacer à gauche
[Î] (flèche du haut) : Sauter
[annul] (touche annuler) : Quitter le jeu
Nom: UPMARIO
Taille: 676 octets
Auteur: S.L
-> : flèche sto
>= : signe plus grand ou égal
<= : signe plus petit ou égal
TI Stats.fr (fonctions en Français)
Code | PROG:UPMARIO
:EffEcr
:7->A
:3->B
:6->C
:2->D
:6->E
:5->F
:5->G
:3->H
:0->I
:1->Z
:1->U
:16->Y
:9->T
:Output(1,1,"---------------- //il y a 16 tirets
:Output(2,6,"UPMARIO
:Output(4,1,"GAME BY S.L
:Output(7,5,"POUR TI 82/83
:Output(8,1,"---------------- //il y a 16 tirets
:Pause
:While 1
:If B+1=Y et A=X
:Goto 1
:If B+1=T et A=S
:Goto 1
:If F=Y et E=X
:Goto 1
:If F=T et E=S
:Goto 1
:If Z=1:7->X:If Z=2:4->X
:If U=1:7->S:If U=2:4->S
:Y-1->Y
:T-1->T
:codeTouche->K
:If K=45:Then:EffEcr:Stop:End
:If K=26:Then:B+1->B:D+1->D:F+1->F:H+1->H:End
:If K=24:Then:B-1->B:D-1->D:F-1->F:H-1->H:End
:If D<=1:Then:2->B:1->D:4->F:2->H:End
:If F>=16:Then:14->H:16->F:13->D:14->B:End
:EffEcr
:Output(X,Y,"<
:Output(S,T,"<
:Output(8,1,"---------------- //il y a 16 tirets
:Output(A,B,"JL
:Output(C,D,"*()
:Output(E,F,"*
:Output(G,H,"(-
:If G=4:G+1->G
:If E=4:E+2->E
:If C=5:C+1->C
:If A=6:A+1->A
:If K=25:Then:G-1->G:E-2->E:C-1->C:A-1->A:I+1->I:End
:If Y<=1:Then:16->Y:entAléat(1,2)->Z:End
:If T<=1:Then:16->T:entAléat(1,2)->U:End
:End
:Lbl 1
:EffEcr
:Output(4,4,"GAME OVER!
:Output(5,6,I
:Output(5,9,"UP
:Pause
:Stop
|
Voilà! Bon jeu à tous!
---------------------- L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël
SL-TIProg :site en cours de création. |
|
|
|
linkakro
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
|
Posté le : Jeu 26 Juil 2012, 18:01
|
|
|
Corrige cette ligne en remplaçant 16->T par 16->Y
Code | :If Y<=1:Then:16->Y:entAléat(1,2)->Z:End |
C'est sympathique, surtout avec le mario, mais je m'attendais à mieux.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store |
|
|
|
S.L
Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
|
Posté le : Jeu 26 Juil 2012, 18:12
|
|
|
Désolé pour l'erreur de recopiage
Comme je le disais, c'est une "expérience" et comme c'est la première fois que je fais ça, c'est normal qu'il est pas parfait si tu veux l'optimiser, tu es le bienvenu
---------------------- L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël
SL-TIProg :site en cours de création. |
|
|
|
ld
Autorisation : Membre
Nb de messages : 373
Inscrit le : Jeu 23 Sep 2010, 16:05
|
Posté le : Jeu 26 Juil 2012, 22:40
|
|
|
Il n'y a qu'à demander ?
Moi si c'est possible je voudrais quelque chose qui ressemble à çà s'il te plait Merci S.L !
http://us.cdn4.123rf.com/168nwm/michaeldb/michaeldb0810/michaeldb081000018/3732718-besoin-d-39-un-noir-brillant-avec-une-bombe-de-balle-meche-enflammee-sur-fond-blanc-ce-bebe-est-pret.jpg
---------------------- Note Éphéméride Chrono Bombrman BlueFishEncryptor Labygénérateur Nord BandeauDeTexte LunarPhase Syracuse Papy-Jump Convertisseur ! SolveurDeSudoku VérificateurDeCodesBanquaire PrgmADiviser CryptageDeVigenere MiniSolv Reed-Solomon Code128Géodésie |
|
|
|
S.L
Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
|
Posté le : Jeu 26 Juil 2012, 22:50
|
|
|
Ok, je te fais ça tout de suite
---------------------- L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël
SL-TIProg :site en cours de création. |
|
|
|
ld
Autorisation : Membre
Nb de messages : 373
Inscrit le : Jeu 23 Sep 2010, 16:05
|
Posté le : Jeu 26 Juil 2012, 23:11
|
|
|
Rhoo <3
---------------------- Note Éphéméride Chrono Bombrman BlueFishEncryptor Labygénérateur Nord BandeauDeTexte LunarPhase Syracuse Papy-Jump Convertisseur ! SolveurDeSudoku VérificateurDeCodesBanquaire PrgmADiviser CryptageDeVigenere MiniSolv Reed-Solomon Code128Géodésie |
|
|
|
S.L
Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
|
Posté le : Ven 27 Juil 2012, 0:03
|
|
|
Voilà ta bannière
---------------------- L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël
SL-TIProg :site en cours de création. |
|
|
|
ld
Autorisation : Membre
Nb de messages : 373
Inscrit le : Jeu 23 Sep 2010, 16:05
|
Posté le : Ven 27 Juil 2012, 0:35
|
|
|
Mille merci ! C'est tout juste impressionnant
Tu as un générateur de Gif ?
---------------------- Note Éphéméride Chrono Bombrman BlueFishEncryptor Labygénérateur Nord BandeauDeTexte LunarPhase Syracuse Papy-Jump Convertisseur ! SolveurDeSudoku VérificateurDeCodesBanquaire PrgmADiviser CryptageDeVigenere MiniSolv Reed-Solomon Code128Géodésie |
|
|
|
Google_AdSense
|
Publicité
|
|
|
|
|
S.L
Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
|
Posté le : Ven 27 Juil 2012, 10:26
|
|
|
De rien T'as plus qu'à la mettre dans ta signature !
Non ce n'est pas un générateur mais plutot un editeur, je crée chaque image une par une /il y en a une quarantaine/ et je les assemble avec ce logiciel. Je peux même définir la durée de chaque image
---------------------- L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël
SL-TIProg :site en cours de création. |
|
|
|
S.L
Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
|
Posté le : Ven 27 Juil 2012, 14:42
|
|
|
Juste pour revenir au sujet et mettre celui de bannière d'un autre côté, j'ai créé un sujet spécialement pour:
http://tout82.free.fr/forum/sujet.php?sujet=3369
---------------------- L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël
SL-TIProg :site en cours de création. |
|
|
|
snap
Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
|
Posté le : Lun 30 Juil 2012, 0:32
|
|
|
Un peu d'optimisation ne fait pas de mal ;p
Code | :If B+1=Y et A=X
:Goto 1
:If B+1=T et A=S
:Goto 1
:If F=Y et E=X
:Goto 1
:If F=T et E=S
:Goto 1 |
Peut tout simplement se transformer en
Code | :If B+1=T et A=S ou B+1=Y et A=X ou F=Y et E=X ou F=T et E=S
: Goto 1 |
Ensuite :
Code | :If K=26:Then:B+1->B:D+1->D:F+1->F:H+1->H:End
:If K=24:Then:B-1->B:D-1->D:F-1->F:H-1->H:End |
Peut devenir :
Code | (K=26)-(K=24 -> Z
B+Z -> B : D+Z -> D : F+Z -> F : H+Z -> H |
Puis :
Code | :If G=4:G+1->G
:If E=4:E+2->E
:If C=5:C+1->C
:If A=6:A+1->A |
Devient
Code | G+(G=4 -> G
E+2(E=4 -> E
C+(C=5 -> C
A+(A=6 -> A |
Sinon, pour perdre tu peux mettre toutes les instructions dans le while que l'on transformera en repeat pour plus de confort
A la fin, ça donne :
Code | PROG:UPMARIO
:EffEcr
:7->A
:3->B
:6->C
:2->D
:6->E
:5->F
:5->G
:3->H
:Effvar I1->Z
:1->U
:16->Y
:9->T
:Output(1,1,"---------------- //il y a 16 tirets
:Output(2,6,"UPMARIO
:Output(4,1,"GAME BY S.L
:Output(7,5,"POUR TI 82/83
:Output(8,1,"---------------- //il y a 16 tirets
:Pause
:Repeat B+1=Y et A=X ou B+1=T et A=S ou F=Y et E=X ou F=T et E=S
:If Z=1:7->X:If Z=2:4->X
:If U=1:7->S:If U=2:4->S
:Y-1->Y
:T-1->T
:codeTouche->K
:If K=45:Then:EffEcr:Stop:End
(K=26)-(K=24 -> Z
B+Z -> B : D+Z -> D : F+Z -> F : H+Z -> H
:If D<=1:Then:2->B:1->D:4->F:2->H:End
:If F>=16:Then:14->H:16->F:13->D:14->B:End
:EffEcr
:Output(X,Y,"<
:Output(S,T,"<
:Output(8,1,"---------------- //il y a 16 tirets
:Output(A,B,"JL
:Output(C,D,"*()
:Output(E,F,"*
:Output(G,H,"(-
:G+(G=4 -> G
:E+2(E=4 -> E
:C+(C=5 -> C
:A+(A=6 -> A
:If K=25:Then:G-1->G:E-2->E:C-1->C:A-1->A:I+1->I:End
:If Y<=1:Then:16->Y:entAléat(1,2)->Z:End
:If T<=1:Then:16->T:entAléat(1,2)->U:End
:End
:Lbl 1
:EffEcr
:Output(4,4,"GAME OVER!
:Output(5,6,I
:Output(5,9,"UP
:Pause |
Voila, si quelque chose pose un probleme n'hesitez pas, je n'ai pas testé mes modifications mais normalement, pas de problèmes
---------------------- Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr |
|
|
|
S.L
Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
|
Posté le : Lun 30 Juil 2012, 11:12
|
|
|
Merci, mais je n'ai pas compris ça:
Citer : snap |
Code | (K=26)-(K=24 -> Z
B+Z -> B : D+Z -> D : F+Z -> F : H+Z -> H |
...
Code | G+(G=4 -> G
E+2(E=4 -> E
C+(C=5 -> C
A+(A=6 -> A |
|
Tu pourrais m'expliquer?
---------------------- L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël
SL-TIProg :site en cours de création. |
|
|
|
snap
Autorisation : Membre
Nb de messages : 369
Inscrit le : Dim 13 Fév 2011, 14:17
|
Posté le : Lun 30 Juil 2012, 12:46
|
|
|
Bien sur!
Il faut d'abord savoir que j'ai utilisé dans ces deux méthodes des bolééns.
Des bolééens (je sais plus si sa s'écrit comme ça :p ) sont des conditions (comme le if) que te renvoie 1 ou 0 en fonction de la véracité de la condition.
Exemple :
Te donnera 3 car A est égal à 1 donc (A=1) te renvoie 1 qui additionner a 2 te donne trois. Je sais pas si je suis compréhensible :p
donc :
Code | (K=26)-(K=24 -> Z
B+Z -> B : D+Z -> D : F+Z -> F : H+Z -> H |
Dans ce code : Si K=26, alors (K=26)-(K=24) donne 1-0 donc Z=1
Si K=24, alors (K=26)-(K=24) donne 0-1 donc Z=-1
Si K=/= 24 et K=/=26, alors (K=26)-(K=24) donne 0-0 donc Z=0
Pour l'autre partie c'est pareil :
Code | G+(G=4 -> G
E+2(E=4 -> E
C+(C=5 -> C
A+(A=6 -> A |
Si G=4, alors (G=4) renvoie 1 donc G+(G=4) donne G+1
Si E=4, alors 2(E=4) renvoie 2(1) qui donne 2 donc E+2(E=4) donne E+2
Etc
Voila, j'espere avoir été claire, si il y a des trucs que tu ne comprend pas n'hésite pas
---------------------- Commence un monopoly non graphique et compte bien le finir!
Lycée de l'escaut Valenciennes
Fan de reflets d'acide!
le meilleur jeu du monde
http://snap-le-terrible.minitroopers.fr |
|
|
|
S.L
Autorisation : Membre
Nb de messages : 101
Inscrit le : Jeu 02 Jui 2011, 15:17
|
Posté le : Lun 30 Juil 2012, 14:34
|
|
|
Ok merci c'est clair si j'ai besoin, je te ferais appel!
---------------------- L'homme est né pour programmer.
Émulateur de TI en ligne! Chat de Tout82!
Mes jeux: Bouge!;WallJump;Mouche;Enter;UPMario;Mémoriz;Copter;Pong2P;Pokémon;MineCraft
Mes Prog: XCodeX;IMC;Matrix;Noël
SL-TIProg :site en cours de création. |
|
|
|
linkakro
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
|
Posté le : Lun 30 Juil 2012, 18:44
|
|
|
Citer : snap |
Code | :If K=26:Then:B+1->B:D+1->D:F+1->F:H+1->H:End
:If K=24:Then:B-1->B:D-1->D:F-1->F:H-1->H:End |
Peut devenir :
Code | (K=26)-(K=24 -> Z
B+Z -> B : D+Z -> D : F+Z -> F : H+Z -> H |
Puis :
Code | :If G=4:G+1->G
:If E=4:E+2->E
:If C=5:C+1->C
:If A=6:A+1->A |
Devient
Code | G+(G=4 -> G
E+2(E=4 -> E
C+(C=5 -> C
A+(A=6 -> A |
|
Ceci réduit le poids du code mais ralentit le programme.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store |
|
|
|
aide
Invité
|
Posté le : Mar 11 Sep 2012, 22:11
|
|
|
a ligne Output(s,t,"<
ma calculatrice m'indue une erreurs sur le dernier signe pourquoi quelqu’un peu n'aider
|
|
|
|
blg_flg
Autorisation : Membre
Nb de messages : 661
Inscrit le : Mer 23 Mai 2012, 17:28
|
Posté le : Mer 12 Sep 2012, 13:06
|
|
|
A mon avis, cela vient du fait que S et T ne sont pas définis ou pas sur l'écran.
Quelle est la sorte d'erreur? Erreur syntaxe? Domaine? etc.
|
|
|
|
owd
Invité
|
Posté le : Jeu 20 Sep 2012, 18:35
|
|
|
Moi j'ai une ligne qui ne passe pas:
:Output(G,H,"(-
Il me dit erreur: Domaine.
|
|
|
|
Cytropus
Autorisation : Membre
Nb de messages : 409
Inscrit le : Lun 07 Nov 2011, 12:09
|
Posté le : Jeu 20 Sep 2012, 18:40
|
|
|
Vérifie bien le programme et regarde combien vaut G et H
---------------------- Le nouveau site de tout82 |
|
|
|
seluj78
Autorisation : Membre
Nb de messages : 8
Inscrit le : Jeu 20 Sep 2012, 20:08
|
Posté le : Sam 22 Sep 2012, 1:03
|
|
|
Entaléas c quoi en anglais ? J'ai pas la ti en fr moi !!
|
|
|
|