I. Introduction▲
Cette série explique pas à pas la création d'un contrôleur pour le mouvement d'un personnage dans un jeu de plateformes 2D.
Vous pouvez retrouver les autres épisodes de cette série dans le sommaire dédié.
II. Vidéo▲
Unity - Contrôleur pour personnage d'un jeu de plateformes - Script du joueur
III. Résumé▲
Dans cet épisode, nous allons implémenter le script pour contrôler le joueur.
III-A. Mise en place du joueur▲
Le joueur possède les composants suivants :
Pour contrôler le joueur, nous ajoutons un script « PlayerPlatformerController.cs ».
III-B. Script▲
Le script hérite de la classe PhysicsObject que nous avons mise en place dans les épisodes précédents. Nous ajoutons une fonction ComputeVelocity() (surcharge de la fonction du même nom de la classe PhysicsObject) qui se chargera de calculer la vélocité à appliquer au personnage suivant les actions du joueur :
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerPlatformerController : PhysicsObject {
public float maxSpeed = 7;
public float jumpTakeOffSpeed = 7;
protected override void ComputeVelocity()
{
Vector2 move = Vector2.zero;
move.x = Input.GetAxis ("Horizontal");
if (Input.GetButtonDown ("Jump") && grounded) {
velocity.y = jumpTakeOffSpeed;
} else if (Input.GetButtonUp ("Jump"))
{
if (velocity.y > 0) {
velocity.y = velocity.y * 0.5f;
}
}
targetVelocity = move * maxSpeed;
}
}L'annulation du saut est traitée en réduisant la vélocité au moment où le joueur relâche le bouton de saut.
IV. Ressources▲
Vous pouvez télécharger les ressources pour ce projet ici.
V. Commenter▲
Vous pouvez commenter et donner vos avis dans la discussion associée sur le forum.




