Aide pour le codage jeu de Pong

1) Tout d’abord voici ce qu’il faut réaliser.

Il s’agit du jeux tel qu’il existait sur les consoles dans les années 70:

PONG

2) Les étapes de la réalisation

2.1) Créer un nouveau projet

Sélectionner Fichier — Nouveau

nouveauProjet

Effacé le lutin chat

supprimerLutin

2.2) Etape 1: Le fond d’écran

Le fond d’écran sera tout simplement le remplissage en noir 

fondEcran

1- Cliquez sur l’onglet arrière plan

2- Selectionnez scène 1 arriere plan, normalement la seule disponible

3- Selectionnez la couleur noir

4- Selectionnez l’outils remplissage

5- Cliquer au milieu de l »écran

 

Voila votre fond d’écran noir est prêt.

fondEcranNoir

Réalisation de la bande pointillée du milieu d’écran:

1- Dessiner un rectangle blanc vertical et le placer au milieu du fond d’écran noir

2- Faire un petit rectangle noir et le poser sur la ligne blanche et répéter l’opération pour faire les pointillés

fondPointille

2.2 Les lutins

2.2.3 La balle

Cliquez sur Dessiner (pinceau) un Nouveau Lutin

nouveauLutin

 

Utilisez le Zoom de la zone de dessin en bas à droite, dessiner une balle, faite un carré blanc d’environ trois carreaux de coté si vous voulez respecter le pong original, sinon vous pouvez faire un cercle blanc, ou jaune balle de tennis de trois carreaux de diamètre. Nommez ce lutin balle

balle

2.2.4 Les raquettes et la délimitation du terrain

Même principe pour créer les lutins de la raquette du joueur 1 (nommée Joueur1, taille 10×2 carreaux) la raquette du joueur 2 (pour créer cette raquette on peut utiliser le menu dupliquer en se positionnant sur le lutin joueur1) , la ligne haute (nommée LigneH)  la ligne basse (nommée LigneB)

 

2.2.5 Les scores Joueur 1 et Joueur 2

De même les scores seront gérés par des lutins. Chaque chiffre du score étant représenté par un « costume » de ce lutin

Définir les nouveaux lutin ScoreJ1 et Score J2 (on utilisera Dupliquer pour le score du joueur numéro 2.

score

 

Voila le fond d’écran et les lutins sont terminés, passons aux choses sérieuses, les scripts

2.3 Les scripts

Rappel: pour écrire le script (programme correspondant à un lutin) on sélectionne dans la partie gauche le lutin sur lequel on veut travailler. Dans la partie droit on sélectionne l’onglet script.

2.3.1 La balle

Sélection du script de la balle:

scriptBalle

Tout d’abord initialiser la position de la balle en X=0 et Y=0 (centre de l’écran de jeu) lors du lancement du jeu (appui sur le drapeau vert)

initBalle

Créez une variable qui va représenter la vitesse de la balle, appelez cette variable vitesse et initialisez cette variable à 3.

Une variable est une donnée qui va nous permettre de conserver une valeur tout au long de l’exécution du programme.

Lancez la balle vers la droite angle aléatoire entre 45 et 135 degrés.

Maintenant faites avancer la balle indéfiniment, en utilisant la vitesse précédemment définie. Attendre 0.002s entre chaque nouvelle position de la balle.

Compléter le script comme suit

lancement balle

Il faut maintenant réaliser le mouvement de la balle et gérer le rebond sur les bords inférieurs et supérieurs de l’écran ainsi que les sorties de l’écran à droite (x > 225) ou à gauche (x < -225).

Compléter le script comme suit:

deplacementBalleComplet

Il nous reste maintenant à gérer le rebond sur les raquettes, c’est a dire inverser le rebond lorsque la balle touche le lutin Joueur1 ou Joueur2.

rebondRaquette

Le son « Pong » a été téléchargé sur sur freesound.org

2.3.2 Les scores

Sélectionnez tout a tour chacun des lutins score, puis la fenêtre de script associée.

Au lancement de la partie (appui sur le drapeau vert), programmez le basculement sur le costume 1 qui représente le 0.

Ensuite, si la balle atteint le bord de l’écran X > 225,  ou X < -225, alors on incrémente le score du joueur correspondant (passage au costume suivant)

Score Joueur 1:

scoreJ1

et Score Joueur 2:

scoreJ2

 

Enfin il ne reste plus qu’à écrire les scripts de déplacement des raquettes. Il suffit pour cela de positionner la raquette lors du lancement du jeu, de choisir une touche pour aller vers le haut (déplacement positif en Y) ou vers le bas (déplacement négatif en Y). Si la ligne supérieure ou inférieure est atteinte on ne permet pas de déplacement supplémentaire de la raquette, afin d’éviter la sortie de l’écran de cette raquette.

Raquette 1:

raquette1

Raquette 2:

raquette2

A la fin de la partie arrêtez tout,  pour cela, ajouter un script à la balle pour stopper la balle:

fin

Le script d’arrêt de la balle est activé lorsque le message 1 est reçu. Pour cela ajoutez aux lutins score l’envoi de ce message lorsque le score 10 est atteint.

Pour le score 1:

scoreJ1-2

 

et pour l score 2:

scoreJ2-2

 

Voila on peut ensuite faire évoluer les scripts pour ajouter des effets, par exemple on accélère la vitesse de la balle au fil des échanges, on ajoute des sons, le nom des joueurs  …

 

Le résultat est ici.

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.