|
@@ -538,7 +538,6 @@ détruire le lanceur détruit aussi toutes les balles.
|
|
## Faire accélérer la balle
|
|
## Faire accélérer la balle
|
|
|
|
|
|
|
|
|
|
-
|
|
|
|
Niv. 2
|
|
Niv. 2
|
|
|
|
|
|
|
|
|
|
@@ -562,6 +561,54 @@ Niv. 2
|
|
- Note : 10 px / sec / touche c'est bien pour avoir un bon
|
|
- Note : 10 px / sec / touche c'est bien pour avoir un bon
|
|
challenge.
|
|
challenge.
|
|
|
|
|
|
|
|
+> Conventions : les fonctions et variables considérées internes à votre
|
|
|
|
+votre script sont préfixées par un trait bas `_`. Elles sont dites *privées*.
|
|
|
|
+Cela donne une indication de qui a le droit d'utiliser cette donnée, facilitant
|
|
|
|
+la lecture et la maintenance du code.
|
|
|
|
+Par exemple, `_vitesse` est une variable privée ; seule la balle elle-même
|
|
|
|
+a le droit de la modifier, car c'est sa responsabilité.
|
|
|
|
+
|
|
|
|
+### Explications : les fonctions virtuelles Godot
|
|
|
|
+
|
|
|
|
+Certaines méthodes préfixées par `_` sont des fonctions que Godot connaît
|
|
|
|
+et qu'il peut appeler pour vous donner le contrôle à certains moments.
|
|
|
|
+
|
|
|
|
+La méthode `_ready()` est appelée après que votre nœud soit entré en scène,
|
|
|
|
+et dès tous ses enfants sont prêts (c'est à dire que la fonction _ready() a
|
|
|
|
+été appelée pour chaque enfant). Cette méthode est présente dans de nombreux scripts pour
|
|
|
|
+préparer un nœud.
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+La méthode `_process` est appelée avant le rendu de chaque image. Cette méthode
|
|
|
|
+peut être utilisée pour coder la logique de votre jeu (gagner des points ou de la vie
|
|
|
|
+par exemple) ou pour modifier l'apparence de votre nœud (changer la couleur de votre objet au fil du temps).
|
|
|
|
+Par défaut, cette fonction est appelée 60 fois par seconde, mais dépend de la fréquence de rafraîchissement
|
|
|
|
+de votre écran.
|
|
|
|
+
|
|
|
|
+La méthode `_physics_process` est appelée à chaque fois que Godot résoud
|
|
|
|
+les calculs physiques permettant de déplacer vos objets. Cette fonction est importante
|
|
|
|
+pour appliquer des forces ou déplacer vos objets.
|
|
|
|
+Par défaut, cette fonction est appelée 50 fois par seconde, mais cela peut se paramétrer.
|
|
|
|
+
|
|
|
|
+> Note : les fonctions `_process` et `_physics_process` reçoivent un nombre à virgules, `delta: float`,
|
|
|
|
+qui représente le nombre de secondes depuis la dernière fois ou la fonction est appelée. Dans l'idéal,
|
|
|
|
+ce nombre est très souvent fixe, mais il peut varier selon la performance de l'appareil. Il faut donc le prendre en compte
|
|
|
|
+pour vos calculs liés au temps. Par exemple, si un objet se déplace à 40 pixels par seconde, on écrira :
|
|
|
|
+
|
|
|
|
+```gd
|
|
|
|
+func _physics_process(delta: float) -> void:
|
|
|
|
+ position.x += 40.0 * delta
|
|
|
|
+```
|
|
|
|
+
|
|
|
|
+Enfin, la méthode `_unhandled_input()` est appelée quand un périphérique est actionné :
|
|
|
|
+quand une touche de clavier est enfoncée, quand la souris a bougé, un joystick de manette s'est déplacé,
|
|
|
|
+quand un bouton de manette est relâché. Elle prend un argument qui décrit l'événement qui a eu lieu.
|
|
|
|
+
|
|
|
|
+> Note : la fonction `_input()` existe aussi, mais préférez `_unhandled_input` qui appelée seulement si
|
|
|
|
+l'événement n'a pas déjà été consommé par un autre nœud.
|
|
|
|
+
|
|
|
|
+Il existe d'autres méthodes virtuelles exposées par Godot, mais vous connaissez maintenant les plus
|
|
|
|
+utiles.
|
|
|
|
|
|
## Le carrefour Godot
|
|
## Le carrefour Godot
|
|
|
|
|