Tutoriel Faulty Flap

Étape 2/6. Ajouter l'oiseau et les premiers événements

Dans l'Éditeur de scène > Barre d'outils des calques créez un nouveau Calque et sélectionnez-le. Depuis la Fenêtre de librairie faites glisser bird.Active dans la Scène aux coordonnées (148,326).

Il s'agit d'un objet Actif, le Mouvement Balle qui rebondit lui est assigné avec une Direction initiale de 24 (bas) et une Vitesse initiale de 0.

Note: Le nouveau Calque2 que nous avons créé contiendra les objets avec lesquels nous allons effectuer des tests de collision.
Des objets situés sur différents calques ne peuvent pas entrer en collision les uns avec les autres.

Note: Les coordonnées d'un objet Actif sont affichées dans les Propriétés de l'Objet > onglet Taille / Position.

Votre Scène devrait ressembler à ceci:

Capture d'écran de la Scène de votre application

Lancez l'application et remarquez comme l'oiseau bat des ailes, mais sans toutefois se déplacer.

D'abord faisons sauter l'oiseau. Dans l'Éditeur de liste d'événements insérez un groupe d'événements appelé Game.Play et ajoutez-y les événements suivants:

Game.Play
// L'oiseau saute
L'utilisateur clique avec le bouton gauche
	: Jouer échantillon jump
	(bird.Active) : Fixer la direction à 8
	(bird.Active) : Fixer la vitesse à 75
	(bird.Active) : Fixer la décélération à 65

• L'utilisateur double-clique avec le bouton gauche
	: Jouer échantillon jump
	(bird.Active) : Fixer la direction à 8
	(bird.Active) : Fixer la vitesse à 75
	(bird.Active) : Fixer la décélération à 65

Que se produit-il avec ces événements? Lorsque le joueur clique ou double-clique avec le bouton gauche de la souris, nous faisons bouger l'oiseau vers le haut en fixant sa Direction, sa Vitesse et sa Décélération.

Note: Pour insérer un groupe d'événements faites un clique-droit sur une cellule numérotée dans la liste des événements et sélectionnez Insérer > Un groupe d'événements.

Note: Par défaut l'Éditeur de liste d'événements affiche uniquement l'icône des objets. Pour afficher également leur nom, dans le menu principal sélectionnez Outils > Préférences > onglet Éditeur de liste d'événements puis cochez Nom de l'objet.

Et maintenant faisons tomber l'oiseau. Insérez un nouveau groupe d'événements appelé bird.Active. Déplacez ce groupe après le groupe Game.Play. Ensuite ajoutez-y les événements suivants:

bird.Active
// L'oiseau tombe
• Speed( "(bird.Active)" ) = 0
+ (bird.Active) fait face à la direction 8
	(bird.Active) : Fixer la direction à 24
	(bird.Active) : Fixer la décélération à 0

• (bird.Active) fait face à la direction 24
+ Tous les 00"-05
	(bird.Active) : Fixer la vitesse à Speed( "(bird.Active)" ) + 10

Que se produit-il avec ces événements? Lorsque le Mouvement vers le haut de l'oiseau est terminé (c-à-d lorsque sa Vitesse atteint 0) nous le faisons bouger vers le bas en fixant sa Direction à 24.
Et pendant que l'oiseau se déplace vers le bas (c-à-d pendant qu'il fait face à la Direction 24) nous incrémentons sa Vitesse de 10 tous les 5 centièmes de seconde. En fait nous reproduisons ici une accélération.

Lancez l'application et remarquez comme l'oiseau saute et tombe de façon dynamique.

Note: Nous utilisons deux groupes d'événements tous deux en rapport avec l'oiseau. C'est parce que plus tard nous allons désactiver séparément le saut de l'oiseau (le contrôle joueur) et la chute de l'oiseau. Lisez la suite pour savoir pourquoi.

Dès que l'application démarre, l'oiseau commence à tomber. Nous devons accorder au joueur un moment pour se préparer, en d'autres termes nous avons besoin d'une intro du jeu.

Dans l'Éditeur de liste d'événements décochez Actif quand la scène commence pour les deux groupes d'événements existants. Ainsi l'oiseau ne se déplacera pas au début de la partie.
Ensuite insérez un nouveau groupe d'événements appelé Game.Intro et laissez coché Actif quand la scène commence. Déplacez ce groupe en haut de la liste des événements.

Maintenant ajoutez l'événement suivant dans le groupe Game.Intro:

Game.Intro
// Aller à Game.Play
L'utilisateur clique avec le bouton gauche
	: Activer le groupe "Game.Play"
	: Désactiver le groupe "Game.Intro"

Puis ajoutez l'événement suivant dans le groupe Game.Play:

Game.Play
// Init
• Une seule action lorsque l'événement est en boucle
	: Activer le groupe "bird.Active"

Que se produit-il avec ces événements? Lorsque le joueur clique avec le bouton gauche de la souris le groupe Game.Play qui concerne le saut de l'oiseau est activé. Et une fois que le groupe Game.Play est activé, le groupe bird.Active qui concerne la chute de l'oiseau est activé à son tour.

En fait les deux groupes d'événements pourraient être activés avec le même événement. Mais cette façon de faire est une bonne habitude de programmation pour deux raisons. Tout d'abord parce que nous suivons une logique de "flux de jeu" où Game.Intro se désactive en même temps qu'il active Game.Play. Ensuite parce que cela sera utile plus tard si vous voulez implémenter un système de pause, où Game.Play active bird.Active et Game.Pause le désactive.

Lancez l'application et notez que l'oiseau ne se déplace pas avant que vous ayez cliqué.

Découvrez Clickteam Fusion 2.5

Partagez ce tutoriel