Page 1 sur 1

[EX] Pong

Posté : dim. 29 juil. 2012 11:53
par TT22
Salut à tous !

Aujourd'hui je ne savais pas quoi faire alors j'ai réinventé la roue :mrgreen:

Donc, voici un grand classique du jeu vidéo Pong.

C'est un programme qui doit être compilé en mode console pour fonctionner.

Voici le code source :
► Afficher le textePong.au3
Et il utilise un petit UDF que j'ai écrit pour l'occasion :
► Afficher le texteconsole.au3
Et si vous vous ennuyez, vous pouvez modifier la vitesse de la balle (variable $Speed à la ligne 30).

Voilà, dites-mois ce que vous en pensez :wink:

Edit : Mise à jour version 1.1 (merci à TommyDDR).

Re: [EX] Pong

Posté : dim. 29 juil. 2012 14:19
par matwachich
Sympa! Mais faudrait trouver une solution pour le flicker

Re: [EX] Pong

Posté : lun. 30 juil. 2012 11:14
par Uranium
C'est un programme qui doit être compilé en mode console pour fonctionner.
Comment ? :lol:

Je ne vois pas du tout comment compilé en 'mode console ' :|

Cordialement,

Edit: C'est bon j'ai trouver ! Pas mal le code mais il clignote trop à mon goût :wink:

Re: [EX] Pong

Posté : lun. 30 juil. 2012 11:20
par TT22
Pour compiler en console, il faut soit lancer le programme "C:\Program Files\AutoIt3\Aut2Exe\Aut2Exe.exe" et dans la dernière ligne ("Compile for System") cocher la case "Console?", puis cliquer sur "Convert".
Soit faire un clique droit sur le fichier .au3 et choisir "Compile with options" et vérifier que l’avant-dernière ligne "Create CUI instead of GUI EXE." soit coché, puis cliquer sur "Compile Script".

Re: [EX] Pong

Posté : lun. 30 juil. 2012 16:45
par TommyDDR
Ah la console, toute ma jeunesse ^^

En BTS on avait eu un sujet "faites ce que vous voulez, montrez que vous savez programmer", j'ai donc fait un RPG console ! :D
Et j'avais justement eu le problème du clignotement, que j'avais résolu !

Pour cela, oubliez les CLS, il faut en faite déplacer le curseur à l'endroit voulu et y insérer un autre caractère.
Par exemple, si vous devez remplacer un texte, placez vous sur le 1er caractère de la phrase et écrivez le nouveau texte, si vous voulez supprimer une balle de pong, placez vous sur celle-ci et insérez y des espaces ;)

Voila la fonction :

Code : Tout sélectionner

Func SetConsoleCursorPosition($x, $y, $handle = -1)
    If($handle = -1) Then
        $handle = _WinAPI_GetStdHandle(1)
    EndIf
    Local $coord = BitOR(BitAND(0x10000*$y, 0xFFFF0000), BitAND($x, 0xFFFF))
    DllCall("kernel32.dll", "int", "SetConsoleCursorPosition", "handle", $handle, "dword", $coord)
EndFunc
PS : Pour mon RPG j'avais eu 19/20, le prof ne voulait pas mettre 20... ^^'

Re: [EX] Pong

Posté : lun. 30 juil. 2012 22:20
par TT22
Merci beaucoup pour ta fonction :mrgreen:
Je l'ai ajouté dans mon UDF et j'ai modifié le script.

Re: [EX] Pong

Posté : mar. 31 juil. 2012 10:50
par TommyDDR
Bon, je n'arrive pas à remettre la main dessus mais il y a un an j'avais aussi fait un pong en AutoIt (mais en fenêtre, pas console) celui-ci se jouait en réseau, et par dessus le bureau (on peut "essayer" de travailler en même temps ^^'.
Je n'ai retrouvé qu'une vidéo :

http://www.youtube.com/watch?v=dDuThOeDWHY

Mon écran à gauche, comme je filmais j'ai codé un bot (d'où sa réactivité), à droite mon collègue.

Re: [EX] Pong

Posté : mar. 31 juil. 2012 11:13
par timmalos
Ca avait l'air super sympa dommage que tu ne le retrouve pas :(

Re: [EX] Pong

Posté : mar. 31 juil. 2012 12:12
par TommyDDR
Ça l'était, jusqu'à ce qu'on se rende compte que c'est pas mal de bosser un peu quand même ^^.
D'ailleurs, on voit plein de script autoit sur mon bureau dans la vidéo xD

Re: [EX] Pong

Posté : mar. 31 juil. 2012 13:12
par blacksoul305
CHEAT !!!!!!!!

Non, sérieusement, il faudrait que tu nous le retrouves ce code. C'est vachement bien fait. En plus ça se passe sur toutes les autres applications, et c'est online. Grand bravo en tout cas !