JEU DE "PING PONG": UNE BARRE DE CHAQUE COTER ET UNE BALLE A NE PAS LAISSER PASS

pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 - 11 févr. 2005 à 19:33
pastaga_napster Messages postés 35 Date d'inscription mercredi 8 juin 2005 Statut Membre Dernière intervention 29 août 2006 - 30 juil. 2005 à 02:22
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/29426-jeu-de-ping-pong-une-barre-de-chaque-coter-et-une-balle-a-ne-pas-laisser-passer

pastaga_napster Messages postés 35 Date d'inscription mercredi 8 juin 2005 Statut Membre Dernière intervention 29 août 2006
30 juil. 2005 à 02:22
je me demande si c'est pas carrément impossible de battre l'ordi. j'y ai joué 10 min il ma foutu 14 à 0.. sinon la source n'est pas tro mal meme si il y en avait deja des sources de ce genre de jeu
Sethpolma Messages postés 66 Date d'inscription mercredi 25 juin 2003 Statut Membre Dernière intervention 8 mars 2007
26 juil. 2005 à 19:25
Tout d'abord, le programme...

Quelques petits défauts :

- L'IA traverse parfois les bords de l'écran de moitié. Assez bizarre et inattendu.
- La balle est quasiment toujours renvoyé à l'horizontale. De temps en temps, miracle, elle
est un peu déviée...
- L'ennui lié à la monotonie du jeu... Mais, ce point est relié au précédent.
- Pourquoi on contrôle le bateau de droite ? Ca me perturbe. :) Mais, c'est personnel !

Mais, quelques avantages : perso, j'aime bien le design des bateaux et du jeu. Quant au menu, l'apparition des cellules pour entrer le nom est assez sympa (bien que toute simple).

Ensuite, direction le code, pour voir de quoi il en retourne.

Première question : pourquoi avoir fait une multitude de fonds différents ? Tu n'en affiches qu'un seul à l'écran. Car, j'en vois quarante à l'écran... Cela pourrait alléger un peu. Ou alors, j'ai raté un épisode...

Ensuite, pareil que pour Pegase31, je trouve que c'est un peu exagéré d'utiliser des HitTests pour ce jeu. C'est un peu comme... "utiliser un char d'assaut pour percer un trou de 8" (citation d'un professeur de Sciences Industrielles en classe prépa dans l'Est de la France... :) ). Avec les coordonnées de la balle, ça aurait grandement simplifié je pense.

Pour les rebonds, pas mal le fait d'influer sur la trajectoire de la balle lors du déplacement de la raquette lorsque ces deux éléments sont en contacts. Mais, il faut supprimer le retour à l'horizontale lors du renvoi sans mouvements (inversion de la vitesse en X).

Sinon, la gestion du déplacement au clavier n'est pas trop dérangeante, même s'il aurait été préférable de proposer au joueur son choix (quitte à rajouter une case Options au menu).
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
12 févr. 2005 à 16:36
Aucune idée la...
Je supose que oui, surement.
On peut faire énormément de chose avec la flash.
li9 Messages postés 57 Date d'inscription lundi 23 février 2004 Statut Membre Dernière intervention 11 septembre 2008 1
12 févr. 2005 à 16:24
Salut Blacknight, en fait je viens d essayer , c est genial ce actin script ^^.
Ca ressemble beaucoup a la synthax du c++ (plus du style c# en fait ) , j ai reussi à coder un tit moteur 3d avec des cubes qui tournent lol : D
c'est pas facile avec tout ces _root.linestyle() , _root.moveto etc.... c'est tres "orienté dessin" lol
mais c 'est kewl , ca saccade pas , t as aucune memoire a gerer, le code est relativement simple,
j aime bien : )
encore bravo pour la source , je crois que je viens de changer d avis sur le flash mdr
Vous savez pas si on peut utiliser l'asp.net avec ?
(je vais peut etre areter de faire ch*** avec mes questions lol )
merci

++
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
12 févr. 2005 à 11:11
l'action script c'est du codage qui permet de faire des actions (en bref sa doit être sa)
Ce n'est pas des animation que tu fait (avec des interpolation par exemple)
Pour la déf je sais pas trop comment décrir
li9 Messages postés 57 Date d'inscription lundi 23 février 2004 Statut Membre Dernière intervention 11 septembre 2008 1
12 févr. 2005 à 08:56
Je trouve ca terrible moi ^^ ,
Je connais très mal le flash donc , je peux pas être bon juge,
mais j aime bien en tout cas : )
Au fait, c'est ca l "action script" ??


++
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
12 févr. 2005 à 00:09
Mué....
Je suis rester 15 min devant mon écran atendant que la balle change de trajectoire ..... !!
En plus l'IA est presque impossible a battre.. par contre moi....
Question graphique, on peut faire mieu.
Et je croit qu'il y a déja eu des jeux comme sa de sortit.
je suis d'acord avec peg' j'aurai préféré qu'on bouge avec la souris(plus rapide avec)
Bon bref c'est pas mal pour un début.
5/10
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
11 févr. 2005 à 20:06
Maf .. trés franchement, ton sens du résumé d'un roman comme j'ai fait, me sciera toujours ..:p

Peg'
cs_Mafassure Messages postés 1058 Date d'inscription jeudi 24 juillet 2003 Statut Modérateur Dernière intervention 14 février 2009
11 févr. 2005 à 19:43
je chipote pas pour les fautes, on en fait tous plus ou moins moi j'en fait plein:-), je m'en excuse d'ailleurs parfois (La politesse)

J'ai jouer 20 secondes et j'ai compris que ton code était au niveau de ton français... rien à battre des regles pourvu que ça ai l'air de marché.

PS : Désolé,J'ai pas pu me retenir....
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
11 févr. 2005 à 19:33
ok, je ne dirais pas que tu écris mal, je vais juste corriger ton texte d'intro :

"merci de NE pas mettre des commEntaireS du genre:
- "ton code NE serT a rien" sans quelque chose de constructif!
- ou de me dire que mon orthographe est mauvaise paRCE que je le sais et jE N'AI pas tout mon temps pour relire mon texte !
Donc désolé pour CELA mais si tU N'es pas content ET bIen NE regarde pas cette source!

les commEntaires concErnAnt des erreurs, des bug, des améliorationS possibleS sonT par contre leS bienvenuS !

En ce qui concErne les angles il faudrait trouver les bons nombres à mettre afin de faire le plus réaliste possible, mais je NE me suis pas attardé lÁ dessus j'ai donc laissé comme Ça..."

Je n'ai donc pas dit que tu faisais des fautes, je les ai juste mises en évidences... Par contre, je te conseillerais fortement de montrer un peu plus de politesses envers ceux à qui tu demandes des conseilles, car ne t'étonnes pas de te faire envoyer chier de plus en plus !

Bref, pour ce qui est du Jeu, maintenant :

Première partie : Déjà, pourquoi avoir choisis de n'utiliser que le clavier, alors que la souris est géré en natif dans Flash (ce qui n'est pas le cas partout) ?
Je lance la balle (avec espace, au bout de 2 min d'attente), elle part vers l'adversaire .. qui la renvoie, puis elle redescends en biais et rebondis comme ça jusqu'à ce qu'elle se bloque dans un mouvement horizontal .. j'essaye de bouger ma raquette pour qu'elle dévie un peu .. rien ne se passe. J'attend, pour voir .. et d'un coup, plus de balle ! et impossible de la relancer ...
Seconde partie : Je lance la balle, l'IA bouge un peu et renvoie la balle à l'horizontale .. je riposte .. et durant 30 sec, la balle recondis entre nos 2 raquettes avant de disparaître, exactement comme la première partie ...

Désespéré, je regarde le code :
1° Pourquoi utiliser des HitTests pour les colisions avec les bords et les balles alors que de simples tests de coordonnées auraient été plus simple et causeraient moins de bugs (c'est pour ça que la balle dégage un moment) ?
2° Apparement, d'après ton code, la balle irait dans un certain angle celon le déplacement de la raquette lors du choc Balle/Raquette .. je comprend pourquoi ça rebondissait bêtement à l'horizontale ! .. s'il faut se pencher sur le code pour savoir ça, c'est fort dommage !
3° Pourquoi initialiser toutes tes variables de jeu sur un cilpEvent (load) de la barre du joueur et en collant "_root" à chaque début de code ? Il ne serait pas plus facile de mettre tout ça dans une frame de la Timeline principale ?!

Tu aurais pu apporter des dixaines d'améliorations :
- Faire en sorte que la balle s'initialise avec un angle aléatoire plutôt que partir tout droit
- Modifier l'angle de la balle celon là où elle frappe en fonction du sens de la raquette et pas par semi-Friction
- permettre de jouer à la souris
- etc ...

Mais bon, c'est pô trop mal pour un début !

Peg'

PS : j'aurais pu aussi corriger les fôtes de ton commentaire dans la source, mais j'avoue que j'ai pas que ça à foutre...
Rejoignez-nous