Poster un nouveau sujet Poster une réponse
Jeu "Mars Atak!"
Auteur Message
Link



Autorisation : Membre
Nb de messages : 26
Inscrit le : Mar 13 Avr 2010, 12:34
Posté le : Ven 23 Avr 2010, 10:45   Citer 

Voila un petit programme que j'ai du réalisé en 2 étapes:
La première fois on se déplaçait en rentrant 1 pour aller a droite, 3 pour aller a gauche, 2 pour tirer et 5 pour attaque spécial. Les ennemis ne faisait pas mal et le jeu ralentissait, mais j'étais fier ^^ .
Tout ça c'était avant le drame...
Le RESET impromptue de ma très chère TI-82 ... (aucune sauvegarde --" )

Depuis j'ai tout refait et je dois dire que "Mars Atak!" s'en porte mieux!
Déplacement avec les flèches, pas de ralentissement, ennemies qui vous tues...
Parfait! (Enfin presque)
Bon, je voit beaucoup d'améliorations possible...
Je vous dit ça à la fin de programme.

// Ceci est un commentaire
Le programme BRIDE sera expliqué à la fin



Code
50->U  //var de temps (elle ne baisse pas)
U->T  //T=var de temps qui baisse au fur et a mesure du jeu)
0->S  //var d'attaque spécial
1->N  //var de niveau
Pause "PROG BY LiNK
Lbl A
EffEcr
Menu("MARS ATAK!","JOUER",1,"MEILLEUR SCORE",9,"QUITTER",Z
Lbl 9
Disp "MEILLEUR SCORE
Disp H
Disp "RECORD DE NIVEAU
Pause Z
Goto A
Lbl 1
EffEcr
0->I  //var de d'ennemies tués
Disp "NIVEAU
Output(1,7,N
If N[supérieur]Z:N->Z
Pause
EffEcr
Output(4,6,"PRET?
50->[théta]
prgmBRIDE
Lbl 4
EffEcr
8->A  //var vertical vaisseau
8->B  //var horizontal vaisseau
Goto 5
Lbl 3
EffEcr
T-1->T
If T=0
Then
Disp "BRAVO!
Disp I
Pause "TUES
If I[supérieur]H:I->H
S+2->S
N+1->N
U+20->U
U->T
Goto 1
End
Output(8,16,S
Output(A,B,"^0^"  // ces deux lignes correspondent a l'affiche du vaisseau, il 
Output(A-1,B+1,"!"  // peut donc être modifié à la guise du programmeur (tant qu'il n'y a que3 caractères en bas et 1 en haut)
G+1->G
If G=9:Goto 5
Output(G,H,"*"  //  pareille ici pour l'affichage de l'ennemie (1 caractère max)
If G=A-1 et H=B+1:Goto Y
If G=A
Then
If H=(B+1) ou H=B ou H=B+2:Goto Y
End
Lbl 6
0->C
CodeTouche->C
If C=0:Goto 6
If C=24:B-1->B
If B=0:1->B
If C=26:B+1->B
If B=14:13->B
If C=25
Then
0->D
A-1->E
B+1->F
Lbl 2
E-1->E
If E=0:Goto 3
If E=G et F=H
Then
I+1->I
Goto 5
End
Output(E,F,"'"   // le caractère à afficher est un guillemet simple
3->[théta]
prgmBRIDE
Goto 2
End
If C=34 et S[différent de]0
Then
S-1->S
I+1->I
Output(4,B+1,"+
50->[théta]
prgmBRIDE
EffEcr
Output(6,6,"BOUM!
50->[théta]
prgmBRIDE
Goto 5
End
Goto 3
Lbl 5
ent(15NbrAléat)->H
If H=1 ou H=0:2->H
0->G
Goto 3
Lbl Y
"Perdu!
90->[théta]
prgmBRIDE
Lbl Z
Disp "PROG BY LiNK




voilà, ça c'est le programme principal!

Maintenant le programme BRIDE

Lbl 1
If [Théta][sup ou égal]1
Then
[théta]-1->[théta]
Goto 1
End


Ce programme sert juste a ralentir l'action qui suivra l'exécution de ce programme.
Plus la variable [théta] (qui est annoncé avant dans le programme principal) est grande, plus l'attente sera longue.
C'est une question de fluidité de jeu.
J'utilise ce programme en remplacement d'un "Pause", cela évite à l'utilisateur d'avoir à appuyer sur "Entrer".

Vous pouvez tout de même remplacer ce programme par un pause.
--------------------+

Maintenant mes questions:
Pourrait-on m'indiquer quels "Then" et "End" pourrait être enlevés?
J'aimerais, dans le futur, augmenter le nombre d'ennemies à chaque niveau (ex: niv 3 -> 2 ennemies, niv 6 -> 3 ennemies ect ...)? Je pense que se travaille est assez long, mais réalisable.

Merci.
Toutes critiques (positives et négatives) sont les bienvenues.

LiNK

 Adresse email Haut de page Bas de page 
 
AlexRider38



Autorisation : Membre
Nb de messages : 137
Inscrit le : Ven 26 Mar 2010, 17:13
Posté le : Ven 23 Avr 2010, 10:50   Citer 

Ça à l'air pas mal godgrace.gif

 Adresse email Haut de page Bas de page 
 
Link



Autorisation : Membre
Nb de messages : 26
Inscrit le : Mar 13 Avr 2010, 12:34
Posté le : Ven 23 Avr 2010, 10:55   Citer 

Merci ^^ (Pour le modique poids de 760 o )

 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Sam 24 Avr 2010, 19:26   Citer 

Ton BRIDE peut être un simple For vide.

Code
For(W,¤,1,(-)1
End


¤ représente thêta
comme toujours ( - ) est le petit moins du bas

----------------------
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
 Adresse email Haut de page Bas de page 
 
Link



Autorisation : Membre
Nb de messages : 26
Inscrit le : Mar 13 Avr 2010, 12:34
Posté le : Sam 24 Avr 2010, 20:56   Citer 

Linkakro: Ok! Et cela l'empêche de ralentir ou pas?
(et a quoi sert le W? Je ne sait pas utilisé la fonction For a vrai dire ^^)

 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Sam 24 Avr 2010, 21:11   Citer 

Plus thêta est grand et plus le For dure longtemps, ralentissant le programme.
Ce ralentissement est le plus propre que je connaisse.
W est la variable directrice du For.
For(variable,valeur_début,valeur_fin,incrément_ou_décrément


pour les then en trop ...

Code
If G=A
Then
If H=(B+1) ou H=B ou H=B+2:Goto Y
End


devient :

Code
If G=A et (H=(B+1) ou H=B ou H=B+2):Goto Y



----------------------
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
 Adresse email Haut de page Bas de page 
 
Link



Autorisation : Membre
Nb de messages : 26
Inscrit le : Mar 13 Avr 2010, 12:34
Posté le : Sam 24 Avr 2010, 22:16   Citer 

Ok!

Déja testé et ça ne marche pas. Les "et" et "ou" se groupe mal entre eux si tu vois se que je veux dire.

 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Dim 25 Avr 2010, 22:43   Citer 

Sur ma 82statfr ça marche très bien avec des parenthèses autour de la série de ou. Cela constitue une équation de la forme a*(b+c+d) tout-à-fait plausible.
Quelques trucs comme ça me semblent différer entre les modèles crazy.gif

----------------------
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
 Adresse email Haut de page Bas de page 
 
Link



Autorisation : Membre
Nb de messages : 26
Inscrit le : Mar 13 Avr 2010, 12:34
Posté le : Lun 26 Avr 2010, 18:29   Citer 

J'ai aussi une TI-82 Stats.fr glasses.gif
Je pense que la première fois que j'ai essayé je n'avais pas mis les parenthèses et que c'est pour cela que ça n'a pas marché.
Merci Linkacro, jessairais a l'ocase! happy.gif

 Adresse email Haut de page Bas de page 
 
raboulave



Autorisation : Membre
Nb de messages : 57
Inscrit le : Jeu 08 Oct 2009, 20:56
Posté le : Lun 26 Avr 2010, 18:55   Citer 

Moi, le programme BRIDE fait 31 octets et INVADERS ( je l'ai renommé à l'occasion winkle.gif ) fait 704 octets ! Très impressionnant pour un programme de ce genre ahh.gif Bon après je l'ai pas encore essayé, juste tapé sur ma caltos ^^ Je te dis ça !

 Adresse email Haut de page Bas de page 
 
raboulave



Autorisation : Membre
Nb de messages : 57
Inscrit le : Jeu 08 Oct 2009, 20:56
Posté le : Lun 26 Avr 2010, 18:58   Citer 

Euh déjà tu as oublié Lbl A juste avant le menu : si on va dans les highscores et qu'on fait entrée, il affiche err. étiquette winkle.gif D'autre part, j'ai moi-même fait mon Lbl "Quitter" que je préfère d'ailleurs nommer Q ( tu verras que pour se retrouver dans un gros prog de 10 000 octets, vaut mieux avoir des labels de l'initiale de ce qu'ils renvoient sinon tu t'en sors plus tongue.gif )

 Adresse email Haut de page Bas de page 
 
raboulave



Autorisation : Membre
Nb de messages : 57
Inscrit le : Jeu 08 Oct 2009, 20:56
Posté le : Lun 26 Avr 2010, 19:00   Citer 

Oups désolé pour le double-post ^^ Je voulais justement mettre mon Lbl "Q" quand j'ai cliqué sur Envoyer, j'avais déjà oublié tongue.gif Bon alors c'est tout con, mais très propre : ça ne laisse absolument aucune trace !

Lbl Q
EffEcr
Output(1,1,"
Stop

 Adresse email Haut de page Bas de page 
 
raboulavev
Invité
Posté le : Lun 26 Avr 2010, 19:06   Citer 

Eh bien, mes premières impressions :
- Assez fluide, il faudrait cependant mettre une règle du jeu ( J'ai trouvé comment lancer un misile car je connais le codetouche, mais sinon c'est galère pour un débutant winkle.gif )
- Il me met lvl 0 au début, et quand je passe lvl 2 il me met 2 : petite erreur variable je pense tongue.gif
- Passé le lvl 2, les ennemis ne bougent que quand je bouge : tu as voulu faire un Mars Attack version RPG, ou sinon c'est un bug ? Je pencherais pour la 2e réponse tongue.gif Mais sinon le lvl 1 est nickel
Voili-voilou ! Bon le Menu pour les règles est pô compliqué d'ailleurs je l'ai moi-même déjà fait laugh.gif
En tous cas, un début pas mal du tout mais comme c'est ton prog il faudrait que je le relise bien plutôt que le taper bêtement, comme ça je pourrais corriger les bugs tout seul mais là j'ai pas le temps, Oral blanc de Français oblige ^^ ( courage, plus que 2 mois ... )

  Haut de page Bas de page 
 
raboulavev
Invité
Posté le : Lun 26 Avr 2010, 19:08   Citer 

Ah non je me suis trompé, en fait dès le lvl 1 c'est du rpg tongue.gif Mais le joueur boule-de-nerfs ne se rendra même pas compte que c'est du RPG, il tape trop vite sur les touches bigmouth.gif Pour moi, ce problème a toujours été, j'ai jamais réussi à le corriger. J'ai déjà tenté plein de Space Invaders dans le même genre mais aucun n'était convaincant. Bon je m'y suis pas trop attardé non plus aussi, j'avais d'autres trucs à foutre ^^

  Haut de page Bas de page 
 
Link



Autorisation : Membre
Nb de messages : 26
Inscrit le : Mar 13 Avr 2010, 12:34
Posté le : Mar 27 Avr 2010, 17:42   Citer 

Lu! Merci de toute ces critiques !!!

Pour l'étiquette A, désolé, j'ai recopier une vieille version ou il n'y avait pas de "meilleur score", donc forcément pas de Lbl A. laugh.gif

Désolé, mais ma religion de programmeur m'interdit de mettre des "Stop".
Explication : je crée un système d'exploitation (si tu vois ce que je veux dire), donc pas le droit à un arrêt du programme!!! ^^

Pour l'étiquette de fin de programme, ne t'inquiète pas, j'ai mon habitude!!!! Lbl Z pour la fin, A pour le menu principale, 1 pour la boucle principal, et pareille pour les variables! glasses.gif Pas de problème la dessus ^^

Oui, le but était de faire un RPG. Ca rend le jeu plus "tactique" (même si sur ce genre de jeu un peu limiter, la tactique ne vas pas loin). En effet, la plupart de mes amis on commencé comme toi: en mode BOURRIN!
Ils appuyaient sur toutes les touches en croyant que l'ennemie progressé vers soit!
(je m'imagine ce qu'ils ont du penser:
"jappuie plus vite pour en tué plus", accélère la candence, "mais il arrive trop vite!", accélère la cadence , "mais c'est trop rapide!!!" laugh.gif laugh.gif )

Sinon, oui je voulais mettre une instruction. Enfin bon, c'est pas le genre de truc primordial, rapidement fait quoi.

Merci beaucoup pour ces critiques! ^^ (attention, une critique peut être autant positive que négative! (je rapelle le sens de ce mots godgrace.gif ))

Bonne chance pour l'orale blanc de Français! Moi qui suit en Seconde je n'ai pas cours de français de la semaine grâce à cela!!! Hi Hi Hi!

@+ bigmouth.gif

LiNK, programmateur du bahut Victor Hugo

 Adresse email Haut de page Bas de page 
 
darkking
Invité
Posté le : Mer 28 Avr 2010, 17:17   Citer 

Du lycée victor hugo d'où ?
Moi je suis à colomiers !

  Haut de page Bas de page 
 
Link



Autorisation : Membre
Nb de messages : 26
Inscrit le : Mar 13 Avr 2010, 12:34
Posté le : Mer 28 Avr 2010, 20:16   Citer 

Lycée Victor Hugo à Lunel, près de Montpellier, dans le Sud de la France. ^^

 Adresse email Haut de page Bas de page 
 
moi
Invité
Posté le : Mar 11 Mai 2010, 9:57   Citer 

Vive l'Oral Blanc !
Y a rien a savoir et ça remonte la moyenne ! godgrace.gif godgrace.gif godgrace.gif

Sinon, j'ai moi même crée un prgm mars attack que je ne peux malheureusement pas vous transmettre faute de cable ti. Dommage.
Voici ses caractèristiques:
-vitesse et nb d'ennemis croissants
-Score
-Possiilité d'utiliser des Bombes
-fluidté correct
le tout pour moins de 1000 octets
Cependant, je pense que celui posté sur ce site est superieur au mien a vue d'oeil, je vous ferais part du mien dès que j'aurai le cable ti

  Haut de page Bas de page 
 
Link



Autorisation : Membre
Nb de messages : 26
Inscrit le : Mar 13 Avr 2010, 12:34
Posté le : Dim 16 Mai 2010, 12:42   Citer 

Cool!

Le mien utilise des fonctions très simple alors c'est facile de faire mieux quand même.

Tu n'a pas besoin du câble pour poster, moi j'ai écrit le mien au clavier.

En espérant voir ce programme, a+

 Adresse email Haut de page Bas de page 
 
moi
Invité
Posté le : Lun 17 Mai 2010, 9:50   Citer 

OK, tu l'a a la fin de la semaine (si j'y pense) car chose expeptionnel: aujourd'hui je n'ai pas pas ma calculette sur moi.

AAhhh ! la Cruel vie du Geek ! ^^

  Haut de page Bas de page 
 
Link



Autorisation : Membre
Nb de messages : 26
Inscrit le : Mar 13 Avr 2010, 12:34
Posté le : Lun 17 Mai 2010, 18:21   Citer 

lol! Moi je peut pas la prêter à quelqu'un sans stresser toute la journée! (c'était le cas de aujourd'hui --" cry.gif )

Cool, j'ai hâte de voir ça!!! cupsmiley.gif

LiNK

 Adresse email Haut de page Bas de page 
 
moi
Invité
Posté le : Mar 18 Mai 2010, 12:37   Citer 

Je compatis.
Moi, quant on me prend ma calculette, j'étrangle, je frappe, je mord... maxiangry.gif
completement accro ^^
bien voila le prmg. je ne met pas tt les ":"


Code
lbl A
EffEcr
0->S,Y:1->T,Q,A,B,C,X     / J'ai la flemme de repéter les -> mais tu comprendra
3->D,E,F
15->N,L,J
lbl B
1->W
code touche->A
If A=25:B-1->B
If A=34:B+1->B
If B>8:8->B
If B<1:1->B
Output(B,1,">")
If A=105:Then:Output(B,2,"---------------":2->W:end
If A=42 et X>0:Then:EffEcr:X-1->X:Goto X:end:
If S>2 et D non egal a 2:1->D
If S>8 et E non egal a 2:1->E
If S>20 et F non egal a 2:1->F
If C=2: Goto C:
entaleat(1,8)->G
15->H:2->C
lbl C: If D>1:Goto D
entaleat(1,8)->I:15->J:2->D
lbl D:If E>1:Goto E: entaleat(1,8)->K:15->L:2->E
lbl E:If F>1:Goto F:entaleat(1,8)->M:15->N:2->F
lbl F
Output(G,H,"<")
H-1->H
If S<3 et D non egal a 2:Goto T
Output(I,J,"<"
J-1->J
lbl T: If S<8 et E non egal a 2:goto U
Output(K,L,"<"):L-1->L
lbl U:If S<20 et F non egal a 2:Goto V
Output(M,N,"<"):N-1->N
lbl V
If B=G et W=2:Then: output(G,H+1,"0":1->C:S+1->S:end
If B=I et W=2:Then: output(I,J+1,"0":1->D:S+1->S:end
If B=K et W=2:Then: output(K,L+1,"0":1->E:S+1->S:end
If B=M et W=2:Then: output(M,N+1,"0":1->F:S+1->s:end
If H=0 ou J=0 ou L=0 ou N=0: Goto Z
If S>9:3->y
If S>19:2->Y
If S>29:1->Y
lbl Y:If Y>1:Y-1->Y:If Y>1:Goto Y
EffEcran
goto B
lbl Z
Disp"Perdu!"
Disp"score:"
disp S
pause
Goto A
lbl X: Output(1,1,"------------------------------------------------BOUM!----------------------------------------------------------------------":1->F:1->E:1->C:1->D:S+4->S
goto B


Bien, j'éspere que je n'ai pas fait de fautes de frappes.
Bonne journée

  Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3293
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Mar 18 Mai 2010, 15:56   Citer 

Tu oublies aussi de mettre la balise code ...
Et on est tous dans ce cas, les gens sont tellements jaloux de notre talent de programmeur glasses.gif qu'ils veulent toujours tout nous supprimer.
Heureusement que le câble existe sinon je crois que ma vie serait déjà finie.

Sangohan38

 Adresse email Haut de page Bas de page 
 
Link



Autorisation : Membre
Nb de messages : 26
Inscrit le : Mar 13 Avr 2010, 12:34
Posté le : Jeu 27 Mai 2010, 10:19   Citer 

Ca m'a l'air très bien! Je ne peux pas le testé malheuresement (faute de place! crazy.gif cry.gif ) mais il ma l'air très bien!

BRAVO! bigmouth.gif

 Adresse email Haut de page Bas de page 
 
mancol1309
Invité
Posté le : Mar 20 Mai 2014, 18:12   Citer 

Désolé mais j 'ai pas compris les repetitions de sto dans ton prgm crazy.gif

  Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Mar 20 Mai 2014, 18:33   Citer 

Toutes les variables qu'il a juxtaposé par des virgules doivent certainement recevoir la même valeur.

Code
0->S,Y:1->T,Q,A,B,C,X

0->S
0->Y
1->T
1->Q
1->A
1->B
1->C
1->X



----------------------
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
 Adresse email Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse





  Page générée en 6 requêtes