Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: - Bacong V1.0 - Sorte de Pong traduit depuis Aurel Basic Dim 19 Fév 2012 - 18:37 | |
| Bon, ce n'est pas le jeu du siècle, mais bon, je me suis amusé à convertir un autre source Aurel puis, pour le rendre jouable, je l'ai modifié un peu en gardant comme objectif de rester sur de l'ASCII (il faut bien se donner un ligne de conduite ...) Voilà, je pense que j'en ferais un casse brique (Avec des briques ASCII !!) un autre jour ou j'aurais quelques heures devant moi - Code:
-
' - Bacong V1.0 - Sorte de Pong traduit / modifié depuis un source en Aurel Basic
Label Splashscreen,touche, Startball, Endgame, main, Moveball, Restart
dim itercount, lifes : itercount = 0 : lifes = 3 dim paddle$, delpad$ : paddle$ = "<===>" : delpad$ = " " dim lpaddle : lpaddle = LEN(paddle$)*10 dim ball$, LF$, Message$ : ball$ = "O" : LF$=CHR$(10) dim touche_enfoncee, pause : pause = 0 dim bx, by, nextcol, c, r dim score : score = 0
' Screen size dim maxx, maxy : maxx = 450 : maxy = 320 dim paddlerow, paddlecol, paddleinc : paddlerow = maxy-80 : paddlecol = int(maxx / 2) :paddleinc = 4
' How many times the paddle moves faster than the ball (integer) dim speedratio : speedratio = 2
' Time delay (msec) determines game speed dim msdelay : msdelay = 50
' Variables needed to delete ball dim lball : lball = LEN(ball$) dim delball$ : delball$ = " "
' Open window ------------------------------------------- WIDTH 0,maxx : HEIGHT 0, maxy : CAPTION 0, "Bac Pong" maxx = maxx -25 : maxy = maxy - 50
Timer 5 : Timer_off 5 : Timer_interval 5,15 : on_timer 5, main
Restart: GOSUB Splashscreen GOSUB startball PRINT_LOCATE 20, 4: PRINT "Vie = ",lifes, " " PRINT_LOCATE 100, 4: PRINT "Score = ", score, " " on_key_down 0,touche timer_on 5 END
touche: touche_enfoncee = key_down_code if touche_enfoncee = 37 then touche_enfoncee = 87 if touche_enfoncee = 39 then touche_enfoncee = 88 select touche_enfoncee ' Left case 87 IF paddlecol > 14 and pause = 0 ' Delete old paddle PRINT_LOCATE paddlecol,paddlerow: PRINT delpad$ paddlecol = paddlecol - paddleinc PRINT_LOCATE paddlecol,paddlerow: PRINT paddle$ END_IF Case 88 ' Right ' Delete old paddle PRINT_LOCATE paddlecol,paddlerow: PRINT delpad$ IF paddlecol < (maxx - 40) and pause = 0 paddlecol = paddlecol + paddleinc PRINT_LOCATE paddlecol,paddlerow: PRINT paddle$ END_IF Case 81: GOTO FIN Case 27: GOTO FIN Case 80: If Pause = 0 then Pause = 1 :else: Pause = 0 END_SELECT ' Draws new paddle PRINT_LOCATE paddlecol, paddlerow: PRINT paddle$ RETURN
' ........................................ ' Initial screen ' Splashscreen: PRINT_LOCATE 80, 20: PRINT " - Bacong V1.0 - Pong en ASCII" PRINT_LOCATE 80, 60: PRINT " Conversion en Panormaic d'un" PRINT_LOCATE 80, 80: PRINT " programme Aurel Basic. "
PRINT_LOCATE 20, 120: PRINT "Use keys:" PRINT_LOCATE 20, 140: PRINT " w : move left (you can use LEFT arrow too)" PRINT_LOCATE 20, 160: PRINT " x : move right (you can use RIGHT arrow too)" PRINT_LOCATE 20, 180: PRINT " p : pause/continue game" PRINT_LOCATE 20, 180: PRINT " q : quit game (you can use <ESC> too) " PRINT_LOCATE 20, 240: PRINT "Press key 'P' to play... (or 'Q' or <ESC> to quit)" touche_enfoncee = 0 WHILE touche_enfoncee = 0 touche_enfoncee = key_down_code if touche_enfoncee = 27 or touche_enfoncee = 81 or touche_enfoncee = 80 then exit_while wait 20 END_WHILE If touche_enfoncee = 27 or touche_enfoncee = 81 then goto fin RETURN
' ........................................ ' Sets start position for ball ' startball: by = INT(RND(maxy/2)) bx = 10 r=1 RETURN
' ........................................ ' Updates ball position and direction ' moveball: ' Delete old ball position PRINT_LOCATE bx, by: PRINT " " IF bx > maxx -10 THEN c = 2 : ELSE : IF bx < 10 THEN c = 1 ' IF by > maxy -26 THEN r = 1 : ELSE : IF by < 22 THEN r = 2 IF by < 22 THEN r = 2 IF c<2 THEN bx = bx + 1 : ELSE: bx = bx - 1 IF r<2 THEN by = by - 1 : ELSE: by = by + 1 PRINT_LOCATE bx, by: PRINT ball$ RETURN
' Main-------------------------------- main: If pause = 1 then return 2D_RECTANGLE 10,20,maxx, maxy-10 PRINT_LOCATE 20, 4: PRINT "Vie = ",lifes, " " PRINT_LOCATE 100, 4: PRINT "Score = ", score, " " ' PRINT_LOCATE 180, 4: PRINT "BX = ",BX, " "
' itercount = 1 : ' itercount = MOD(itercount, speedratio) ' IF itercount > 0 THEN GOSUB moveball
GOSUB moveball PRINT_LOCATE paddlecol, paddlerow: PRINT paddle$ ' Check ball on paddle IF r = 2 and by > (paddlerow - 5) IF bx > paddlecol and bx < (paddlecol + lpaddle) r = 1 score=score+1 ELSE ' Ball lost GOSUB startball lifes=lifes-1 END_IF PRINT_LOCATE 20, 4: PRINT "Vie = ",lifes, " " PRINT_LOCATE 100, 4: PRINT "Score = ", score, " " END_IF IF lifes < 1 THEN GOTO Endgame RETURN
' ........................................ ' End of the game ' Endgame: Timer_off 5 Message$ = "********************" +LF$+ "*** GAME OVER ***" +LF$+ "********************" Message$ = Message$ +LF$ + LF$ + "Your final score is: "+ STR$ (score) Message$ = Message$ +LF$ + LF$ + "Try again!" Message Message$ Terminate | |
|
bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: - Bacong V1.0 - Sorte de Pong traduit depuis Aurel Basic Dim 19 Fév 2012 - 18:46 | |
| Super, j'ai réussi à faire 8 points! Quel exploit!!! | |
|
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: - Bacong V1.0 - Sorte de Pong traduit depuis Aurel Basic Dim 19 Fév 2012 - 20:03 | |
| Hé Bigono, t'es pas doué, moi j'ai fait 100 (au bout d'un quart d'heure) Bon, j'ai juste un peu bricolé le code à la ligne 6 - Code:
-
dim paddle$, delpad$ : paddle$ = "<=================================>" : delpad$ = " "
| |
|
bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: - Bacong V1.0 - Sorte de Pong traduit depuis Aurel Basic Dim 19 Fév 2012 - 20:17 | |
| | |
|
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: - Bacong V1.0 - Sorte de Pong traduit depuis Aurel Basic Dim 19 Fév 2012 - 20:47 | |
| oh, pas bien de tricher Mais bon, il n'est pas si dur quand même hein ? Sinon, je vous fais un menu avec des options pour régler la vitesse, mais bon, je pense que vous faisiez une blague, hein ? | |
|
lodchjo
Nombre de messages : 162 Age : 53 Localisation : Anvers Date d'inscription : 26/12/2011
| Sujet: Re: - Bacong V1.0 - Sorte de Pong traduit depuis Aurel Basic Dim 19 Fév 2012 - 21:06 | |
| très amusant, bravo (pour la traduction)! j'aurais jamais pensé de faire un truc pareil tout en ascii!... | |
|
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: - Bacong V1.0 - Sorte de Pong traduit depuis Aurel Basic Dim 19 Fév 2012 - 21:18 | |
| Pas bête ! mais ça nous ramène quoi, 30 ans en arrière, au moins, au temps du ping pong sur la télé... on s'est bien blasés depuis. C'est bien fait en tout cas. | |
|
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: - Bacong V1.0 - Sorte de Pong traduit depuis Aurel Basic Dim 19 Fév 2012 - 22:09 | |
| Merci Pour le côté retour en arrière, c'est vrai, ça me rappelle ma jeunesse ... mais bon, je ferais une version plus moderne avec des sprites alors, à l'occasion. (avec un menu aussi pour régler la vitesse ^^) | |
|
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: - Bacong V1.0 - Sorte de Pong traduit depuis Aurel Basic Dim 19 Fév 2012 - 22:21 | |
| Ce que je trouve amusant dans ce jeu c'est justement sa rusticité et son côté rétro, pas sûr que tu y gagnes beaucoup en le faisant plus perfectionné ! mais ce n'est évidemment que mon avis | |
|
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: - Bacong V1.0 - Sorte de Pong traduit depuis Aurel Basic Dim 19 Fév 2012 - 22:45 | |
| Je suis d'accord, JL35, j'aime bien le côté retro et le temps d'hebdogiciel ... Toute une époque | |
|
Contenu sponsorisé
| Sujet: Re: - Bacong V1.0 - Sorte de Pong traduit depuis Aurel Basic | |
| |
|