Shoot'Em Up

Tu vas pouvoir transformer ton projet Space Invaders avec ses déplacements de gauche à droite en jeu aux mouvements beaucoup plus libre ! 

Sur cette page tu trouveras :

      • Ā 

Nouveau Projet / Export Package

Ce module de dĆ©couverte Unity t’a permis de prendre la main sur Unity avec un premier jeu de Space Invaders. Tu vas maintenant voir comment tu vas pouvoir rĆ©cupĆ©rer les Ć©lĆ©ments que tu as appris jusque-lĆ  pour pousser ton jeu encore plus loin. Jeu Exemple : ici

CrĆ©ation d’un nouveau projet

Pour ce nouveau jeu, tu vas devoir crĆ©er un nouveau projet 2D! Mais ne t’en fais pas, cela ne veut pas dire qu’on recommence tout Ć  zĆ©ro, bien au contraire! Tu vas voir comment tu vas pouvoir transfĆ©rer tes scripts et tes prefabs d’un projet Ć  l’autre.

Ā 

Transférer des assets depuis le précédent projet: la magie des packages! 

Avant de quitter le projet précédent, tu vas exporter les éléments que tu vas récupérer pour ce nouveau projet. Rassemble tous tes scripts dans un même dossier puis exporte ce dossier en un package

Tu vas pouvoir réimporter ce même package juste après avoir créé ton projet!

Ā 

CrƩe ton nouveau projet 2D

Tu connais dĆ©jĆ  cette Ć©tape! Tu peux suivre les instructions du projet prĆ©cĆ©dent si jamais tu ne t’y retrouves pas!Ā  Trouve un nom original pour ce projet de shooter!Ā 

Une fois que ton projet a Ć©tĆ© crƩƩ, n’oublie pas de rĆ©importer le package que tu viens d’exporter afin de rĆ©cupĆ©rer tous tes scripts. Il te suffit de le glisser Ć  nouveau dans tes assets!

N’oublie pas non plus de rĆ©importer les assets fournies par Magic Makers pour que tu puisses piocher dedans!

Nouveau Controller pour le Joueur

Tu vas littĆ©ralement t’ouvrir Ć  une nouvelle dimension! Au lieu de se dĆ©placer horizontalement, le joueur va enfin pouvoir se dĆ©placer dans toutes les directions! Cela veut dire qu’il va falloir coder un nouveau contrĆ“leur!Ā 

Ā 

Placer le joueur sur la scĆØne

Tout d’abord, avant de penser Ć  contrĆ“ler le joueur, il faut dĆ©jĆ  placer le joueur! Choisis un sprite pour reprĆ©senter ton personnage et place le sur la scĆØne!

Attention cependant! Pour cette fois-ci il va falloir placer le sprite en tant qu’enfant d’objet vide! Cette hiĆ©rarchie estĀ  importante Ć  respecter parce qu’elle nous permettra plus tard de faire pivoter le sprite vers la souris

DƩplacer le joueur dans toutes les directions

SĆ©lectionne l’objet vide qui contient le joueur et ajoute-lui un nouveau script appelĆ© MouvementJoueurToutesDirections

public class MouvementJoueurToutesDirections : MonoBehaviour
{
Ā  Ā  public float vitesse = 1f;
Ā  Ā  void Update()
Ā  Ā  {
Ā  Ā  Ā  Ā  Vector2 mouvement;
        mouvement.x = Input.GetAxis(« Horizontal »);
        mouvement.y = Input.GetAxis(« Vertical »);  

Ā  Ā  Ā  Ā  transform.Translate(mouvement * Time.deltaTime * vitesse);Ā 
Ā  Ā  }
}

Le joueur arrive maintenant à se déplacer dans toutes les directions! 

Orienter le joueur vers la souris

Une autre fonctionnalitĆ© qu’on aimerait ajouter Ć  notre joueur est la capacitĆ© de se tourner vers la souris!Ā 

Cela se fait en deux étapes: 

  • CrĆ©er un objet Souris
  • Faire tourner le sprite du joueur vers cet objet Ć  l’aide d’un script

Ā 

L’objet Souris

Pour se tourner vers la souris, le joueur a besoin d’un objet prĆ©sent sur la scĆØne qui indique la position de la souris.Ā 

  • CrĆ©e un objet vide que tu appelles Souris
  • Ajoute-lui un nouveau script appelĆ© SuivreLaSouris ou PositionneSurLaSouris

void Update()
{
Ā  Ā  transform.position = Camera.main.ScreenToWorldPoint(Input.mousePosition);
}

Cette ligne de code permet de placer l’objet sur l’endroit où pointe la souris.

Ā 

Pointer vers une cible

Il faut maintenant Ć©crire le script qui fera pointer le sprite du joueur vers la souris. Fais bien attention Ć  ajouter ce script au sprite du joueur et non Ć  l’objet vide qui le contient.

Tu peux appeler ce script PointerVersCible.Ā 

public class PointerVersCible : MonoBehaviour
{
Ā  Ā  public Transform cible;

Ā  Ā  void Update()
Ā  Ā  {
Ā  Ā  Ā  Ā  Vector2 direction = (cible.position – transform.position).normalized;
Ā  Ā  Ā  Ā  transform.up = direction;
Ā  Ā  }
}

Ce script va pointer le sprite en direction de l’objet qu’on assigne en inspecteur! Pour que Ƨa marche, n’oublie pas de glisser l’objet Souris dans le champ Cible.

Ennemis

CrƩer des tourelles

DƩfi: En utilisant les scripts que tu as dƩjƠ codƩs, trouve un moyen de construire des tourelles qui pointent vers le joueur et lui tire dessus!

Ā 

Ennemi se dirigeant vers le joueur

  • Script AllerDevant
  • Script PointerVersUneCible en assignant le joueur
Retour en haut