|
@@ -61,16 +61,16 @@ Légende de la carte :
|
|
|
- Le nombre de triangles sur chaque case de la carte indique la difficulté. 1 étant facile, et 4 difficile.
|
|
|
|
|
|
|
|
|
-#### Décommenter le code
|
|
|
+#### Dé-commenter le code
|
|
|
|
|
|
-Il y aura du code déjà présent à décommenter dans les scripts. Essayez
|
|
|
+Il y aura du code déjà présent à dé-commenter dans les scripts. Essayez
|
|
|
de comprendre chaque bout de code vous-même.
|
|
|
|
|
|
-Les commentaires en Godot commencent avec `#`. Raccourci pour décommenter
|
|
|
-les lignes selectionnées : `Ctrl` + `K`.
|
|
|
+Les commentaires en Godot commencent avec `#`. Raccourci pour dé-commenter
|
|
|
+les lignes sélectionnées : `Ctrl` + `K`.
|
|
|
|
|
|
Note : les commentaires doubles `##` sont des commentaires spéciaux dits
|
|
|
-de documentation (docstrings). Il ne faut pas les décommenter ! Le texte
|
|
|
+de documentation (docstrings). Il ne faut pas les dé-commenter ! Le texte
|
|
|
associé est visible dans l'éditeur.
|
|
|
|
|
|
|
|
@@ -97,8 +97,8 @@ Partie théorique pour avoir un peu de contexte.
|
|
|
- Beaucoup d'outils accessibles sans code ;
|
|
|
- GDScript (langage interne) facile à lire pour les débutants et
|
|
|
débutantes ;
|
|
|
- - Possibilité de coder en C++ pour les développeureuses (ou
|
|
|
- d'autres languages via des addons) ;
|
|
|
+ - Possibilité de coder en C++ pour les développeur·euses (ou
|
|
|
+ d'autres langages via des addons) ;
|
|
|
- Bibliothèque d'addons disponible dans le moteur directement ;
|
|
|
- Aide accessible directement dans le moteur ;
|
|
|
- Espace de travail modulaire pour s'adapter aux préférences de
|
|
@@ -145,7 +145,7 @@ Partie théorique pour avoir un peu de contexte.
|
|
|
besoin d'écrire beaucoup de texte pour faire fonctionner notre
|
|
|
jeu. Pour qu'un script soit interprété par Godot, il faut
|
|
|
l'attacher à un nœud, via l'éditeur.
|
|
|
- - Definition **variable** : valeur qui peut changer en cours du
|
|
|
+ - Définition **variable** : valeur qui peut changer en cours du
|
|
|
temps, que nous pouvons lire ou écrire depuis un script via son
|
|
|
nom (exemple : boolean a_perdu_vie ; Vector2
|
|
|
direction_rebond).
|
|
@@ -153,7 +153,7 @@ Partie théorique pour avoir un peu de contexte.
|
|
|
attribut (exemple : Vector2 position pour un Node2D).
|
|
|
- Une variable qui est une entrée d'une fonction s'appelle
|
|
|
un **argument**
|
|
|
- - Definition **fonction** : bout de script associé à un nom qui
|
|
|
+ - Définition **fonction** : bout de script associé à un nom qui
|
|
|
est exécuté quand on l'appelle.
|
|
|
- Une fonction attachée à un nœud s'appelle aussi **méthode**
|
|
|
- Le nom d'une fonction doit contenir un verbe, car appeler
|
|
@@ -236,9 +236,9 @@ scènes qui composent le jeu.
|
|
|
script, visuels et sons pour : les interfaces, les objets
|
|
|
(balle, brique, capsule, arène, raquette, etc) et enfin les
|
|
|
pouvoirs (balle de feu par exemple).
|
|
|
- - "Effets", qui contient les phénomènes éphèmères qui peuvent
|
|
|
+ - "Effets", qui contient les phénomènes éphémères qui peuvent
|
|
|
survenir en jeu. Au début de l'atelier le seul présent dans
|
|
|
- la versian artisan est l'effet d'une brique qui éclate.
|
|
|
+ la version artisan est l'effet d'une brique qui éclate.
|
|
|
- "Exec", qui contient les principales scènes du jeu qui
|
|
|
vont "s'exécuter". On y trouve la scène principale du jeu
|
|
|
("game"), une scène de gestion de la musique et deux
|
|
@@ -286,7 +286,7 @@ Niv. 1
|
|
|
- Ligne primaire tous les : x = 4 pas, et y = 8 pas.
|
|
|
- Dupliquer les nœuds Brique pour en créer de nouveaux et
|
|
|
placer-les dans le niveau.
|
|
|
- - Changer les paramètres de chaque brique indépendament dans
|
|
|
+ - Changer les paramètres de chaque brique indépendamment dans
|
|
|
l'Inspecteur.
|
|
|
|
|
|
Image : Capture de la configuration de la grille
|
|
@@ -409,7 +409,7 @@ La scène est le fichier ".tscn" dans le dossier.
|
|
|
|
|
|
|
|
|
- Actions
|
|
|
- - Double-cliquer sur le fichier "raquette.tscn" pour oublir la
|
|
|
+ - Double-cliquer sur le fichier "raquette.tscn" pour ouvrir la
|
|
|
scène de la raquette.
|
|
|
|
|
|
|
|
@@ -435,11 +435,11 @@ modifier pour changer l'image de la raquette dans le jeu.
|
|
|
couleurs.
|
|
|
- Choisir une couleur.
|
|
|
- Cliquer en dehors de la fenêtre du nuancier pour la faire
|
|
|
- disparaitre et valider la couleur choisie.
|
|
|
+ disparaître et valider la couleur choisie.
|
|
|
|
|
|
|
|
|
Note : vous pouvez aussi changer la valeur du champ "Modulate" du
|
|
|
-noeud racine `StaticBody2D`, ce qui change la couleur de tous les
|
|
|
+nœud racine `StaticBody2D`, ce qui change la couleur de tous les
|
|
|
enfants, y compris l'image.
|
|
|
|
|
|
- Suite
|
|
@@ -458,7 +458,7 @@ si ça arrive, la partie est perdue !
|
|
|
|
|
|
- Actions
|
|
|
- Ouvrir le script du lanceur.
|
|
|
- - Décommenter le code qui permet de configurer le nombre de balles
|
|
|
+ - Dé-commenter le code qui permet de configurer le nombre de balles
|
|
|
via l'éditeur.
|
|
|
- Écrire une fonction "_decrementer_nombre_de_balles() ->
|
|
|
void".
|
|
@@ -482,7 +482,7 @@ Niv. 2
|
|
|
|
|
|
|
|
|
- Actions
|
|
|
- - Décommenter la variable `nombre_de_balles` à 0 dans le script `lanceur.gd` attaché à la scène `lanceur.tscn`.
|
|
|
+ - Dé-commenter la variable `nombre_de_balles` à 0 dans le script `lanceur.gd` attaché à la scène `lanceur.tscn`.
|
|
|
- Ajouter (si n'existe pas encore) signal `nb_balles_change` dans la scène du lanceur.
|
|
|
- Émettez le signal dans l'appel
|
|
|
`_decrementer_nombre_de_balles()`.
|
|
@@ -503,7 +503,7 @@ Niv. 1
|
|
|
|
|
|
|
|
|
- Action
|
|
|
- - Décommenter le signal "partie_perdu" dans la scène du
|
|
|
+ - Dé-commenter le signal "partie_perdu" dans la scène du
|
|
|
lanceur.
|
|
|
- L'émettre quand il n'y a plus de balle (fonction
|
|
|
"lancer_balle()").
|
|
@@ -526,7 +526,7 @@ Niv. 3 : beaucoup d'étapes
|
|
|
- S'inspirer de l'écran de game over pour créer l'écran de
|
|
|
victoire.
|
|
|
- Comprendre la logique de comptage des briques -> code à
|
|
|
- décommenter dans conteneur_briques.gd
|
|
|
+ dé-commenter dans conteneur_briques.gd
|
|
|
- Afficher le message dans chaque niveau
|
|
|
- Ajouter votre nouvelle scène en tant que nœud enfant de
|
|
|
Message
|
|
@@ -555,12 +555,12 @@ Niv. 2
|
|
|
vitesse de la balle.
|
|
|
- Pour appliquer la nouvelle vitesse, vous devez aussi appeler
|
|
|
la fonction "_mettre_mouvement".
|
|
|
- - Alternative 1 : accélerer à chaque touche de raquette.
|
|
|
+ - Alternative 1 : accélérer à chaque touche de raquette.
|
|
|
- Dans "_physics_process" : Appeler "_accelerer" après
|
|
|
chaque rebond sur une raquette.
|
|
|
- Note : 50 px / sec / touche c'est bien pour avoir un bon
|
|
|
challenge.
|
|
|
- - Alternative 2 : accélerer à chaque rebond.
|
|
|
+ - Alternative 2 : accélérer à chaque rebond.
|
|
|
- Dans "_physics_process" : Appeler "_accelerer" après
|
|
|
chaque rebond.
|
|
|
- Note : 10 px / sec / touche c'est bien pour avoir un bon
|
|
@@ -657,7 +657,7 @@ Niv. 1
|
|
|
- Prérequis
|
|
|
- Scène de partie perdu : "perdu.tscn".
|
|
|
- Actions
|
|
|
- - Ajouter un noeud AudioStreamPlayer dans la scène "perdu.tscn".
|
|
|
+ - Ajouter un nœud AudioStreamPlayer dans la scène "perdu.tscn".
|
|
|
- Charger le son de partie perdu (game over) dans le champs
|
|
|
"Stream" de l'AudioStreamPlayer.
|
|
|
- Dans le champs Bus dans l'inspecteur, sélectionner : Bruits
|
|
@@ -677,7 +677,7 @@ Niv 1
|
|
|
- La brique fait un bruit en explosant
|
|
|
- La balle avec un signal rebondi
|
|
|
- Actions
|
|
|
- - Ajouter le noeud AudioStreamPlayer dans la scene balle.
|
|
|
+ - Ajouter le nœud AudioStreamPlayer dans la scene balle.
|
|
|
- Charger le son "collision_sfx.wav" dans le champs "Stream"
|
|
|
de l'AudioStreamPlayer dans l'inspecteur.
|
|
|
- Brancher le signal "rebondi" de la balle à la fonction play()
|
|
@@ -743,7 +743,7 @@ Niv. 3
|
|
|
"brique.gd".
|
|
|
- const EclatementScene: PackedScene =
|
|
|
preload("res://effets/eclatement_brique/eclatement_effet.tscn").
|
|
|
- - Instancier la scene et l'ajouter à l'arbre au moment du
|
|
|
+ - Instancier la scène et l'ajouter à l'arbre au moment du
|
|
|
rebond dans le script de la balle.
|
|
|
|
|
|
- Suite
|
|
@@ -852,17 +852,17 @@ Niv. 3
|
|
|
|
|
|
- Actions
|
|
|
- Modifier "brique.gd" comme suit :
|
|
|
- - Décommenter la constante "NOMBRE_DE_VIES_MAX".
|
|
|
- - Décommenter la variable "nombre_de_vies".
|
|
|
+ - Dé-commenter la constante "NOMBRE_DE_VIES_MAX".
|
|
|
+ - Dé-commenter la variable "nombre_de_vies".
|
|
|
- Modifier la fonction "frapper" pour réduire les points de
|
|
|
vie, et ne mourir que s'il n'en reste plus.
|
|
|
- - Décommenter "_montrer_nombre_de_vies" et la fonction
|
|
|
+ - Dé-commenter "_montrer_nombre_de_vies" et la fonction
|
|
|
qui l'appelle.
|
|
|
- Modifier les niveaux pour ajuster la vie.
|
|
|
- Ouvrir le niveau carré simple.
|
|
|
- Mettre 4 vies au bloc central.
|
|
|
- Astuce : vous pouvez sélectionner plusieurs briques
|
|
|
- en les selectionnant.
|
|
|
+ en les sélectionnant.
|
|
|
- La propriété nombre de vies est visible dans
|
|
|
l'éditeur grâce au préfixe "@export".
|
|
|
|
|
@@ -893,7 +893,7 @@ dégradé vers le rouge à la place.
|
|
|
- La brique a des vies
|
|
|
- Actions
|
|
|
- Chercher le dossier contenant les composants de la brique.
|
|
|
- - Décommenter le code en rapport avec la vie de la brique dans le
|
|
|
+ - Dé-commenter le code en rapport avec la vie de la brique dans le
|
|
|
script "brique.gd".
|
|
|
|
|
|
|
|
@@ -933,7 +933,7 @@ Niv. 4
|
|
|
- Modifier l'arène pour que la zone du bas, appelée
|
|
|
ZoneExterieure, détecte les collisions avec les briques
|
|
|
(collision_layer: mask)
|
|
|
- - Faire en sorte que l'arène envoit un signal quand une brique
|
|
|
+ - Faire en sorte que l'arène envoie un signal quand une brique
|
|
|
est détectée par la zone extérieure
|
|
|
- Relier ce signal au même signal que le game over classique
|
|
|
|
|
@@ -957,7 +957,7 @@ Niv. 3
|
|
|
- Ajouter un frein sur la balle.
|
|
|
- Ajouter la balle dans le "groupe_des_balles".
|
|
|
- Voir : Avoir un nombre de vies limité.
|
|
|
- - Décommenter la méthode "ralentir".
|
|
|
+ - Dé-commenter la méthode "ralentir".
|
|
|
- Créer un nouveau pouvoir.
|
|
|
- Copier le script "bonjour_pouvoir.gd" et le renommer en
|
|
|
"pouvoir_ralentir.gd".
|
|
@@ -972,8 +972,8 @@ Niv. 3
|
|
|
pouvoir :
|
|
|
- les textures possibles sont dans le dossier
|
|
|
"composants/objets/brique/images/".
|
|
|
- - L'association est faite dans la "methode
|
|
|
- _associe_texture_brique" dans "brique.gd".
|
|
|
+ - L'association est faite dans la méthode
|
|
|
+ "_associe_texture_brique" dans "brique.gd".
|
|
|
- Associer votre nouveau pouvoir à une brique dans un niveau.
|
|
|
- Écrire l'effet du pouvoir dans "declencher_pouvoir".
|
|
|
- Écrire l'effet du pouvoir dans "declencher_pouvoir" :
|
|
@@ -988,7 +988,7 @@ Niv. 3
|
|
|
- Note : préfixer un argument par "_" permet de dire à Godot que
|
|
|
c'est normal que l'argument ne soit pas utilisé.
|
|
|
- Documentation
|
|
|
- - Un vecteur normalisé a une longeur de 1 :
|
|
|
+ - Un vecteur normalisé a une longueur de 1 :
|
|
|
<https://docs.godotengine.org/fr/4.x/classes/class_vector2.html#class-vector2-method-normalized>
|
|
|
- Référence arbre des nœuds :
|
|
|
<https://docs.godotengine.org/fr/4.x/classes/class_scenetree.html>
|
|
@@ -1014,7 +1014,7 @@ Niv. 1
|
|
|
- Possibilité 1 : signal
|
|
|
- Ajouter un signal "capsule_recuperee"
|
|
|
- Émettre le signal
|
|
|
- - Ajouter noeud AudioStreamPlayer
|
|
|
+ - Ajouter nœud AudioStreamPlayer
|
|
|
- Brancher le signal sur la fonction play() de
|
|
|
l'AudioStreamPlayer
|
|
|
- Alternative 2 : son spatialisé -> effet graphique de récupération
|
|
@@ -1155,7 +1155,7 @@ Niv. 3
|
|
|
- Modifier la rotation de l'image (propriété rotation)
|
|
|
- Appeler la fonction _diriger quand la balle se met en
|
|
|
mouvement
|
|
|
- - décommenter le code
|
|
|
+ - dé-commenter le code
|
|
|
- Appeler la aussi quand elle rebondit
|
|
|
- idem pour _rebondir que _mettre_en_mouvement
|
|
|
- Tester
|
|
@@ -1188,7 +1188,7 @@ briques à distance.
|
|
|
|
|
|
- Dépend de laser
|
|
|
- Prérequis
|
|
|
- - Image de la balle électique (animée dans un autre chapitre)
|
|
|
+ - Image de la balle électrique (animée dans un autre chapitre)
|
|
|
- Actions
|
|
|
- Copier la scène balle de feu.
|
|
|
- Le pouvoir électrique va fonctionner de manière analogue au
|
|
@@ -1257,7 +1257,7 @@ Permet à la raquette de lancer un javelot à haute énergie qui détruit tout s
|
|
|
- Faire un nouveau pouvoir
|
|
|
- Déclenchement
|
|
|
- Créée un nouveau javelot à l'endroit de la raquette
|
|
|
-- Débloque : fait un effet d'eruption à la surface de la raquette
|
|
|
+- Débloque : fait un effet d'éruption à la surface de la raquette
|
|
|
- Docs
|
|
|
- [Comment utiliser les Area2D](https://docs.godotengine.org/fr/4.x/tutorials/physics/using_area_2d.html)
|
|
|
- [Référence Area2D](https://docs.godotengine.org/fr/4.x/classes/class_area2d.html)
|
|
@@ -1422,11 +1422,11 @@ Niv. 4
|
|
|
- Actions
|
|
|
- Ajouter un pouvoir.
|
|
|
- Mettre la raquette dans le groupe.
|
|
|
- - Ajouter une methode publique "changer_taille" pour modifier
|
|
|
+ - Ajouter une méthode publique "changer_taille" pour modifier
|
|
|
sa taille.
|
|
|
- /! Il faut modifier la taille de l'image et la taille de
|
|
|
l'enveloppe physique !
|
|
|
- - Dans le déclenchement du pouvoir, appeler la methode
|
|
|
+ - Dans le déclenchement du pouvoir, appeler la méthode
|
|
|
"changer_taille" sur toutes les raquettes.
|
|
|
|
|
|
|