Forum

Catégorie : Programmes
Forum : Les programmes des internautes
Vues : 1192
Réponses : 3
Type : discussion
Etat : réponses autorisées

COOKIE CLICKER (sur écran graphique)

Thunderbolt le 12/11/2014 à 14:21
Salut, j'ai enfin fini mon Cookie clicker qui fait environ 1300 octets

Je vous conseille de recopier celui là avant (il ne fait que 45 octets)

prgmCLEARGRA
Code
:AxesNAff
:QuadNAff
:FonctOff
:EffDessin
:Xmin=0        //vous le trouverez dans var/fenêtre//
:Xmax=94
:Ymin=0
:Ymax=62


prgmCOOKIE
Code
:prgmCLEARGRA
:Lbl 99
:Menu(""COOKIE","NEW GAME",1,"LOAD GAME",2,"HELP",3
:Lbl 3
:Output(1,1,"AIDE :
:Output(2,1,"-ENTRER POUR UP
:Output(3,1,"-PAVE NUMERIQUE POUR LES UPGRADE
:Output(5,1,"-COUTS=CATALOGUEFOURNI
:Output(7,1,"-ANNULER=QUITTER
:Pause
:EffEcr
:Goto 99
:Lbl 1
:Menu("Sure ?","YES",4,"NO",99
:Lbl 4
:{0,0,0,0,0,0,0,0,0,0,0}->l1     //liste :seconde 1/10 zero//
:{15,100,500,3000,10000,40000,200000,1666666,123456789}->l2
:Lbl 2
:{1,2,4,10,40,100,400,6666,98765}->l3
:l1(1->C:l1(2->D:l1(3->E:l1(4->F:l1(5->G:l1(6->H:l1(7->I:l1(8->J:l1(9->K:l1(10->L
:l2(1->M:l2(2->S:l2(3->T:l2(4->U:l2(4->V:l2(5->W:l2(6->X:l2(7->X:l2(8->Y:l2(9->Z
:EffVar P
:Cercle(25,25,11
:For(P,1,6
:entAléat(18,31->R
:entAléat(19,32->Q
:Pt-On(R,Q
:Pt-On(R+1,Q
:Pt-On(R,Q+1
:Pt-On(R+1,Q+1
:Verticale 46
:Texte(1,1,"COOKIES :
:Texte(1,50,"CLICKERS :
:Texte(7,50,"GRANDMAS :
:Texte(13,50,"FARMS :
:Texte(19,50,"FABRICS :
:Texte(25,50,"ROCKETS :
:Texte(31,50,"PORTALS :
:Texte(37,50,"TELEPORT:
:Texte(43,50,"TIME :
:Texte(49,50,"PRISMS :
:Repeat N=45
:(D*l3(1)+(E*l3(2)+(F*l3(3)+(H*l3(4)+(I*l3(6)+(J*l3(7)+(K*l3(8)+(L*l3(9)->ø  //Alpha+3//
:ø+C->C
:codetouche->N
:Texte(7,1,"               //10 espaces//
:Texte(55,1,ø,"/S"
:Texte(7,1,C
:Texte(1,86,D
:Texte(7,86,E
:Texte(13,86,F
:Texte(19,86,G
:Texte(25,86,H
:Texte(31,86,I
:Texte(37,86,J
:Texte(43,86,K
:Texte(49,86,L
:If N=105:1+C->C
:If N=92 et C>=M:Then
:D+1->D
:C-M->C
:M+1*D->M:End
:If N=93 et C>=S:Then
:E+1->E
:C-S->C
:S+2*E->S:End
:If N=94 et C>=T:Then
:F+1->F
:C-T->C
:T+2*F->T:End
:If N=82 et C>=U:Then
:G+1->G
:C-U->C
:U+2*G->U:End
:If N=83 et C>=V:Then
:H+1->H
:C-V->C
:V+2*H->V:End
:If N=84 et C>=W
:Then
:I+1->I
:C-W->C
:W+2*I->W:End
:If N=72 et C>=X:Then
:J+1->J
:C-X->C
:X+2*J->X:End
:If N=73 et C>=Y:Then
:K+1->K
:C-Y->C
:Y+2*L->Y:End
:If N=74 et C>=Z:Then
:L+1->L
:C-Z->C
:Z+2*L->Z:End
:End
:Menu("SAVE ?","YES",10,"NO",11
:Lbl 10
:{C,D,E,F,H,I,J,K,L}->l1
:{M,S,T,U,V,W,X,Y,Z}->l2
:Lbl 11
:EffEcr
Output(1,1,"     //1 espace//


Voila, enjoy bigmouth.gif
linkakro le 12/11/2014 à 19:01
Je viens de remplacer l'unicode 977 par l'ensemble vide qui ressemble à thêta. Je viens aussi de découvrir que la touche altgr+$ d'ubuntu est remplacée par ce symbole, cela m'arrange bien. Et cela explique pourquoi des gens ont commencé à utiliser ¤ de cette touche.

Ton commentaire de ton erreur syntaxe est trop vague, car tes End sont erronnés et je ne sais donc pas lequel devrait fermer la boucle selon toi.

Il manque un Then et une condition.
Code
:If N=84
:I+1->I
:C-W->C
:W+2*I->W:End


Il y a un End en trop.
Code
:If N=105:1+C->C:End
Thunderbolt le 13/11/2014 à 11:25
Voila, j'ai corrigé le programme et il est fonctionnel. Enfin il reste assez lent (mais jouable), alors si quelqu'un se sent de l'optimiser ce sera avec grand plaisir. Merci pour ton aide en tout cas
linkakro le 13/11/2014 à 12:10
Tu peux déjà utiliser la formule de codage des touches et la méthode de liste que j'ai proposé dans le sujet d'aide de ton programme. Cela suffira à le réduire beaucoup, et je ne pense pas que cela le ralentira non-plus.
http://tout82.free.fr/forum/sujet.php?sujet=4134

Ce calcul manque de parenthèse je trouve.
Code
:D*l3(1+E*l3(2+F*l3(3+H*l3(4+I*l3(6+J*l3(7+K*l3(8+L*l3(9->ø

Code
:If N=105:1+C->C:End
Tu as laissé le End de la ligne K=105 et cela est incohérent car presser la touche Annul (45) est indispensable pour atteindre les autres conditions. Ajoute un Then pour ouvrir le If ou enlève le End.
Ou bien fait autre chose avec ce End, par exemple une boucle pour imposer quelque chose ou éviter des exécutions inutiles de certains fragments.