Vagues d’ennemis
Fait partie de la section Architecture de jeu dans Unity du Journey Unity de Coddy. Leçon 54 sur 64.
Défi
MoyenFais apparaître les ennemis par vagues.
- Dans
WaveSet.cs, ajoute une classeWaveavec l’attribut[System.Serializable], contenant les champs publicsEnemy enemy,countetspacing. - Ajoute à
WaveSetl’attribut[CreateAssetMenu], ainsi quepublic List<Wave> wavesetpublic float restBetweenWaves. - Dans
WaveSpawner, une coroutine lancée depuisStartparcourt les vagues indéfiniment : incrémenteWavede 1, afficheWave 1dans le journal, fait apparaître l’ennemiiàspawnPoints[i % spawnPoints.Length]toutes lesspacingsecondes, puis attend.
Appuie sur « Jouer » : les grunts, puis les dashers. Ensuite, appuie sur « Vérifier ».
Essayez vous-même
using UnityEngine;
public class WaveSpawner : MonoBehaviour
{
[SerializeField] private WaveSet waveSet;
[SerializeField] private Transform[] spawnPoints;
public int Wave { get; private set; }
// Une leçon ultérieure complétera cette partie : elle enverra les vagues dans l’arène.
}
Toutes les leçons de Architecture de jeu dans Unity
1Des composants, pas des hiérarchies
De petits composantsUn script de base pour les ennemisComposants abstraitsDes composants qui fonctionnent ensembleRécapitulatif : tourelle modulaireRécapitulatif : canon double4Données sérialisées
Classes sérialisablesListes dans l’InspecteurÉnumérations dans l’InspecteurRécapitulatif : table de butinRécapitulatif : tirer le butin7Machines à états
Les états sous forme de classesL’état d’alerteUne machine à étatsTransitionsL’intelligence des ennemisLe chevalier attaqueRécapitulatif : états des portes10Projet : Survivant de l’arène
Le hérosTypes d’ennemis2Les interfaces dans Unity
IDamageableInterfaces et TryGetComponentGetComponentsRécapitulatif : touche d’interactionLe plus proche à portée5ScriptableObjects
Ressources de donnéesStatistiques des armesParamètres partagésSauver le ventLes vagues comme donnéesRécapitulatif : base de données des objetsRécapitulatif : acheter dans la boutique3Événements
Les événements C# dans UnityS’abonner dans OnEnableChamps UnityEventLes événements pilotent l’interfaceRécapitulatif : fenêtre de succèsRécapitulatif : minuteur de la fenêtreEntraînez-vous par vous-même : Playground Unity