π
<-

Aide jeu ESQUIVE !

Aide jeu ESQUIVE !

Postby loupiot » 04 Dec 2015, 22:01

J'ai publié aujourd'hui un jeu nommé ESQUIVE ! où il faut éviter des objet alors que le joueur est toujours en mouvement.
Il y a cependant encore quelques bugs que je n'ai pas réussi à corriger.
(Je vous laisse télécharger pour vous faire une idée du principe)
Code: Select all
Lbl 0
EffEcran
Menu("ESQUIVE !","Le jeu",1,"Les règles",2,"Quitter",3
Lbl 2
EffEcran
Disp "Le jeu cosiste à éviter
Disp "les 'I' qui tombent sans
Disp "dépasser les limites.
Disp "Le vaisseau Δ ne peux pas
Disp "s'arrêter. On utilise les
Disp "flèches pour se déplacer.
Disp "L'orsque '□' apparaît, tu
Disp " peux appuier sur la
Disp "flèche haut pour gagner
Output(10,1,"10 points !
codetouch(
Repeat codetouch(
End
Goto 0
End
Lbl 1
EffVar S
EffVar Z
EffVar W
EffVar Y
12→X
1→F
8→E
2→H
12→G
3→J
20→I
4→M
18→L
For(A,2,9
    Output(A,5,">
    Output(A,22,"<
End
For(B,5,22
    Output(9,B,"^
End
Output(8,X,"Δ
Output(F,E,"I
Output(H,G,"I
Output(J,I,"I
Output(F,E+4,"I
Output(H,G-3,"I
Output(J,I-5,"I
entAléat(10,30→Z
entAléat(7,20→Y
While 1
    W+1→W
    If W=Z
        Output(1,Y,"□
    If W=Z+15
    Then
        Output(1,Y,"
        EffVar W
        EffVar Z
        EffVar Y
        entAléat(15,30→Z
        entAléat(7,20→Y
    End
    codetouch(
    If Rep
        Rep→K
    If K=25 et X=Y et Z<W<Z+15
    Then
        S+10→S
        Output(7,X,"!
        Output(1,Y,"
        EffVar W
        EffVar Z
        EffVar Y
        entAléat(15,30→Z
        entAléat(7,20→Y
        Output(7,X,"
    End
    If K=24
        X-1→X
    Output(8,X+1,"
    If K=26
        X+1→X
    Output(8,X-1,"
    If K≠24 et K≠26
        X-1→X
    Output(8,X+1,"
    Output(8,X,"Δ
    F+1→F
    H+1→H
    J+1→J
    Output(F-1,E,"
    Output(H-1,G,"
    Output(J-1,I,"
    Output(F-1,E+4,"
    Output(H-1,G-3,"
    Output(J-1,I-5,"
    If (E≠X et E+4≠X) et F=9
    Then
        S+2→S
        entAléat(7,15→E
        1→F
    End
    If (G≠X et G-3≠X) et H=9
    Then
        S+2→S
        entAléat(10,20→G
        2→H
    End
    If (I≠X et I-5≠X) et J=9
    Then
        S+1→S
        entAléat(13,20→I
        1→J
    End
    Output(F,E,"I
    Output(H,G,"I
    Output(J,I,"I
    Output(F,E+4,"I
    Output(H,G-3,"I
    Output(J,I-5,"I
    If X=22 ou X=5 ou (F=8 ou F=9) et (E=X ou X+4=X) ou (H=8 ou H=9) et (G=X ou G-3=X) ou (J=8 ou J=9) et (I=X ou I-5=X)
    Then
        Output(4,9,"GAME OVER
        Output(5,10,"SCORE
        Output(5,16,S
        Output(6,6,"APPUIES SUR UNE
        Output(7,10,"TOUCHE
        codetouch(
        Repeat codetouch(
        End
        Goto 0
    End
End
Lbl 3
Stop



Voici les problèmes :
je voudrais déjà que lorsqu'on appuie sur une touche différente de 24 ou 26, notre personnage avance toujours dans la direction dans laquelle il avançait.
Ici, si K est différent de 24 ou 26, il avancera vers la gauche.

Pour l'élément aléatoire, je voulais que le carré s'affiche même lorsqu'un projectile est sur la même colonne que lui. J'avais donc fais
if Z<W<Z+15
output(1,Y,"□
ça marchait, mais bizarrement le carré s'affichait tout le temps, alors que lorsque W est plus petit que Z+15, W prend pour valeur 0


Et si vous pouviez m'aider pour réduire la taille (et donc augmenter la vitesse du programme) de la boucle while, ça m'aiderait beaucoup !

Merci de votre aide :bj:
User avatar
loupiotProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 1.9%
 
Posts: 158
Images: 4
Joined: 30 Oct 2015, 13:23
Gender: Male
Calculator(s):
MyCalcs profile
Class: 2A ENS Lyon maths

Online

Re: Aide jeu ESQUIVE !

Postby noelnadal » 04 Dec 2015, 22:04

Ça ne fait pas une grosse différence, mais tu peux mettre tous les EffVar, plus la ligne suivante, sur la même ligne.
Par exemple :

:Effvar A
:Effvar B
:5 -> B
:1->A

devient :

:Effvar AEffvar B5 ->B
:1->A

Sinon, utilise les balises [code][/code] s'il te plaît... :P
User avatar
noelnadalEcrivain
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Level up: 41%
 
Posts: 2271
Images: 0
Joined: 10 Mar 2011, 00:00
Location: France, Melun (77)
Gender: Male
Calculator(s):
MyCalcs profile
Class: INRIA Paris
Twitter: nadalnoel
Facebook: noel.nadal1
GitHub: noelnadal


Return to TI-Basic

Who is online

Users browsing this forum: ClaudeBot [spider] and 5 guests

-
Search
-
Social TI-Planet
-
Featured topics
Ndless for CX 4.5.5 / CX II 6.2.0
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
12345
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
3570 utilisateurs:
>3557 invités
>7 membres
>6 robots
Record simultané (sur 6 mois):
32248 utilisateurs (le 01/09/2025)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)