Autorisation : Membre
Nb de messages : 13
Inscrit le : Ven 24 Sep 2010, 20:27
Posté le : Jeu 23 Sep 2010, 19:02
Bonjour,
J'ai récupéré ce programme, c'est un jeu de formule 1. J'ai 2 petits problèmes :
-j'aimerai changer les flèches car là c'est flèche du bas pour tourner à gauche et flèche gauche pour tourner à droite. J'aimerai mette flèche bas > gauche ; flèche haut > droite.
-quand on se crash pendant une coupe, ça met 500 points . Cela serait mieux que ça mette 0 ; mais je pense avoir trouvé ou c'était : 500>R, vers la fin)
Pourriez vous m'aider ? Merci beaucoup !!!
Code
:FnOff :PlotsOff :FullScreen:CoordOff:GridOff:AxesOff:LabelOff
:
:ClrDraw
:Degree
:37üA:4üB:180üC
:0üXmin:94üXmax
:0üYmin:62üYmax
:Menu(" GAME TYPE: ","PRACTICE",M,"1 PLAYER RACE",M,"1 PLAYER WCUP",P,"2 PLAYER RACE",O,"2 PLAYER WCUP",R
:Lbl M:1üP:1üL:Goto S
:Lbl O:2üP:1üL:Goto S
:Lbl P:1üP:2üL:Goto S
:Lbl R:2üP:2üL:Goto S
:
:Lbl S
:1üQ
:{P,8}üdim [A]
:Fill(0,[A])
:ClrDraw
:1üD
:If L=2:Goto T
:Menu(" SELECT TRACK: ","MONACO",D,"ALBERT PARK",E,"MONZA",F,"IMOLA",G,"SILVERSTONE",H,"BARCELONA",J,"BUENOS AIRES",I
:Lbl T
:37üA:4üB:180üC
:ClrDraw
:If D=1:Goto D
:If D=2:Goto E
:If D=3:Goto F
:If D=4:Goto G
:If D=5:Goto H
:If D=6:Goto J
:If D=7:Goto I
:Lbl D
:Line(0,0,0,16
:Line(0,16,11,16
:Line(11,16,11,33
:Line(11,33,32,33
:Line(32,33,32,16
:Line(32,16,74,16
:Line(74,16,74,54
:Line(74,54,94,54
:Line(94,54,94,0
:Line(94,0,0,0
:Line(8,8,84,8
:Line(84,8,84,45
:Line(22,24,22,8
:Text(1,1,"MONACO"
:1üD
:Goto C
:Lbl E
:Line(0,0,0,32
:Line(0,32,18,50
:Line(18,50,36,32
:Line(36,32,36,22
:Line(94,22,36,22
:Line(94,22,94,8
:Line(94,8,88,8
:Line(88,8,88,0
:Line(88,0,0,0
:Line(88,15,28,15
:Line(28,15,28,26
:Line(28,26,18,36
:Line(18,36,8,26
:Line(8,26,8,8
:Line(8,8,80,8
:Line(80,8,80,15
:Text(1,1,"ALBERT PARK - AUSTRALIA"
:2üD
:Goto C
:Lbl F
:Line(0,0,8,28
:Line(9,28,0,28
:Line(0,28,0,50
:Line(0,50,40,50
:Line(40,50,55,16
:Line(55,16,94,16
:Line(94,16,94,0
:Line(94,0,0,0
:Line(88,8,10,8
:Line(10,8,18,35
:Line(18,35,8,35
:Line(8,35,8,42
:Line(8,42,32,42
:Line(48,8,32,42
:Text(1,1,"MONZA - ITALY"
:3üD
:Goto C
:Lbl G
:Line(0,0,0,10
:Line(0,10,20,30
:Line(20,30,40,30
:Line(40,30,40,50
:Line(40,50,94,50
:Line(94,50,94,40
:Line(94,40,74,30
:Line(74,30,59,0
:Line(59,0,0,0
:Line(52,8,12,8
:Line(12,8,27,23
:Line(27,23,49,23
:Line(49,23,49,42
:Line(49,42,77,42
:Line(66,37,77,42
:Line(66,37,52,8
:Text(1,1,"IMOLA - SAN MARINO"
:4üD
:Goto C
:Lbl H
:Line(30,0,0,10
:Line(0,10,10,40
:Line(10,40,40,40
:Line(40,40,40,26
:Line(30,26,94,26
:Line(94,26,94,0
:Line(94,0,30,0
:Line(33,33,18,33
:Line(18,33,11,15
:Line(11,15,30,8
:Line(30,8,85,8
:Line(85,8,85,18
:Line(85,18,23,18
:Line(23,18,23,33
:Line(23,33,33,33
:Text(1,1,"SILVERSTONE - ENGLAND"
:5üD
:Goto C
:Lbl J
:Line(0,0,0,50
:Line(0,50,30,50
:Line(30,50,30,37
:Line(30,37,14,37
:Line(14,37,14,16
:Line(14,16,25,16
:Line(25,16,50,41
:Line(50,41,75,16
:Line(75,16,75,50
:Line(75,50,94,50
:Line(94,50,94,0
:Line(94,0,0,0
:Line(85,41,85,8
:Line(85,8,7,8
:Line(7,8,7,43
:Line(7,43,24,43
:Line(28,8,50,30
:Line(50,30,72,8
:Text(1,1,"BARCELONA - SPAIN"
:6üD
:Goto C
:Lbl I
:Line(0,0,0,16
:Line(0,16,24,40
:Line(24,40,31,40
:Line(31,40,31,28
:Line(31,28,65,28
:Line(65,28,65,52
:Line(65,52,94,52
:Line(94,52,94,0
:Line(94,0,0,0
:
:
:Line(8,8,8,12
:Line(8,12,24,28
:Line(24,28,24,21
:Line(24,21,73,21
:Line(73,8,73,45
:Line(73,45,86,45
:Line(86,45,86,8
:Line(86,8,73,8
:Line(52,8,8,8
:Line(52,8,52,21
:Line(62,13,62,0
:Text(1,1,"BUENOS AIRES - ARGENTINA"
:7üD
:Lbl C
:For(X,37,40
:Line(X,8,X,0
:End
:0üÁ
:Text(55,28,"P"
:Text(55,33,Q
:If W=2:Then
:ð12üZ:Pause :End
:Text(55,28," "
:For(T,3,0,ú1
:solve(Xò-1,X,8
:Text(55,30,T
:End
:Text(55,30," "
:getKey
:For(T,0,500
:getKeyüÁ
:If Áø0:C+(25-Á)45üC
:A+round(cos C,0üA
:B+round(sin C,0üB
:If A=40 and B<8:Goto A
:If pxl-Test(round(62-B,0),round(A,0)):Goto B
:Pt-On(A,B
:End
:Lbl A
:Text(40,20,"FINISH"
:Text(47,20,"TIME: "
:Text(47,42,T
:TüR
:Goto K
:Lbl B
:Text(30,22,"***CRASH***"
:500üR
:Lbl K
:Rü[A](Q,D)
:If Q=2:Then:
:
:End
:[A](Q,8)+Rü[A](Q,8)
:Pause
:If P=2 and Q=1:Then:2üQ:Goto T:End
:If L=2:Then
:ClrDraw
:Line(0,0,0,62
:Line(0,0,94,0
:Line(94,0,94,62
:Line(0,62,94,62
:Line(54,62,54,0
:Text(1,3,"TRACK"
:Text(1,62,"P1"
:If P=2:Text(1,77,"P2"
:Text(8,3,"MONACO"
:Text(15,3,"ALBERT PARK"
:Text(22,3,"MONZA"
:Text(29,3,"IMOLA"
:Text(36,3,"SILVERSTONE"
:Text(43,3,"BARCELONA"
:Text(50,3,"BUENOS AIRES"
:Text(56,3,"TOTAL TIME"
:If P=2:Line(74,62,74,0
:For(A,1,8
:For(B,1,P
:If [A](B,A)ø0
:Text((Aø8)+7A,41+B20-4(A=8),[A](B,A)
:End
:Line(0,62-7A,94,62-7A
:End
:Pause
:D+1üD
:1üQ
:If D<8:Goto T
:End
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 23 Sep 2010, 20:06
Je pense que les déplacements résident ici, mais je n'ai pas compris le fonctionnement.
Code
:getKeyüÁ
:If Áø0:C+(25-Á)45üC
:A+round(cos C,0üA
:B+round(sin C,0üB
:If A=40 and B<8:Goto A
:If pxl-Test(round(62-B,0),round(A,0)):Goto B
:Pt-On(A,B
---------------------- 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)
Autorisation : Membre
Nb de messages : 853
Inscrit le : Sam 20 Jui 2009, 20:35
Posté le : Jeu 23 Sep 2010, 20:09
Ah oui je connais ce jeu,il est sur ti-online,je voulais poster un équivalent sur le forum ces temps-ci,j'ai jamais vraiment compris comment il marchait ^^
Dans le code que linkakro a donné,essaie de remplacer le 25 par 26,et si ça marche pas,remplace aussi le 45 par un 44 ou un 46.Je penses que ça devrait marcher
Et pour le 500->R,en effet je crois que normalement il y a un petit moins devant le 500.
Autorisation : Membre
Nb de messages : 13
Inscrit le : Ven 24 Sep 2010, 20:27
Posté le : Jeu 23 Sep 2010, 20:39
Super ça marche merci !! (j'ai changé le 45 en 44)
J'ai une nouvelle question, quand je finis une course ou quand je me crash, le programme se fige et le seul moyen de l'arrêter et de faire Annul puis ON pour avoir "Erreur arrêt" et de tout recommencer.
N'y a-t-il pas un moyen (une touche que j'ai pas trouvé, une fonction a rajouté..) pour avoir un menu qui nous demande si on veut recommencer ou qui nous amène au menu principal ?
Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Jeu 23 Sep 2010, 23:32
Mais il n'y a pas de label pour le menu donc il faut en mettre un.
Au final sur ce que j'ai poster, il suffit de repositionner le Lbl [Theta] juste avant le Menu(... .
Sangohan38
Ps: Et pis j'avais pas d'autre idée pour désigner l'écran principal.
Autorisation : Membre
Nb de messages : 853
Inscrit le : Sam 20 Jui 2009, 20:35
Posté le : Jeu 23 Sep 2010, 23:38
Ah oui je me suis trompé de menu.
Mais le goto est mal placé,il faut le mettre juste après le 500->R à mon avis,puisque ça ne faisait rien en le mettant dans le If Q=2.
Et on met le Lbl theta devant le menu et ça marche.
Autorisation : Membre
Nb de messages : 13
Inscrit le : Ven 24 Sep 2010, 20:27
Posté le : Ven 24 Sep 2010, 7:32
ça ne marche pas du tout ! J'ai changé [theta] en theta puis en M parce qu'il me disait erreur syntaxedès le lancement. Mais maintenant quand je suis au menu, quoi que je choisisse je retourne direct au menu. Rien ne se passe en fait...
Autorisation : Membre
Nb de messages : 853
Inscrit le : Sam 20 Jui 2009, 20:35
Posté le : Ven 24 Sep 2010, 14:11
Eurêka !!
Tu effaces tout ce qu'on a mis.
Aprés la 4ème ligne, tu en crées une autre et tu y met le Lbl theta.
Ensuite tu vas là où ya marqué crash.Tu descend jusqu'à ce que tu vois pause.Juste en dessous tu crées une ligne et tu marques If L=1 et P=1:Goto theta
E après tu descend sur la dernière ligne et juste avant le End tu marques (sur une nouvelle ligne) If D=8:Goto theta
Et au fait, quand le programme affiche crash,appuis pas tout de suite sur [on],c'est pas un bug c'est une pause,faut appuyer sur entrer.