public override void Initialize() { IntervalleAttaque = 2f; GenerateurAleatoire = Game.Services.GetService(typeof(Random)) as Random; Vitesse = (GenerateurAleatoire.Next(10, 20) / 100f); Grid = Game.Services.GetService(typeof(GridDeJeu)) as GridDeJeu; SoundDeath = Game.Content.Load <SoundEffect>("SoundEffects/enemydeath"); État = (byte)ÉtatEnnemi.RECHERCHE; try { foreach (Joueur j in Game.Components.OfType <Joueur>()) { Player = j; } } catch (Exception) { } for (int i = 0; i < StatsEnemy.GetLength(0); i++) { if (StatsEnemy[i, 0] == Niveau) { Vie = StatsEnemy[i, 1]; Dmg = StatsEnemy[i, 2]; NombrePts = StatsEnemy[i, 3]; } } base.Initialize(); }
public void ToucherParBalle(int dmg) { Vie -= dmg; if (Vie <= 0) { int nombreParticuleSang = GenerateurAleatoire.Next(50, 100); for (int i = 0; i < nombreParticuleSang; i++) { Vector3 direction = new Vector3(GenerateurAleatoire.Next(-100, 100), GenerateurAleatoire.Next(0, 100), GenerateurAleatoire.Next(-100, 100)); direction = Vector3.Normalize(direction); Sang particuleSang = new Sang(Game, "blood", 0.01f, new Vector3(Position.X, Position.Y + 5, Position.Z), new Vector3(GenerateurAleatoire.Next(0, 360), GenerateurAleatoire.Next(0, 360), GenerateurAleatoire.Next(0, 360)), direction); Game.Components.Add(particuleSang); } foreach (Joueur j in Game.Components.OfType <Joueur>()) { j.NombrePtsKill += NombrePts; } SoundDeath.Play(); Dispose(); } }