private void CréeObjet(char charactère, int x, int y) { var tuile = new Tuile(); if (charactère == 'X') { Créer <Mur>(Mur, tuile, x, y); } else if (charactère == ' ') { Créer <Plancher>(Plancher, tuile, x, y); } else if (charactère == 'O') { Créer <Plancher>(Plancher, tuile, x, y); Créer <Hero>(Hero, tuile, x, y); } else if (charactère == 'B') { Créer <Plancher>(Plancher, tuile, x, y); Créer <Boite>(Boite, tuile, x, y); } else { throw new Exception("Le charactère est invalide: " + charactère); } tuiles[x, y] = tuile; }
private T Créer <T>(GameObject prefab, Tuile tuile, int x, int y) where T : Element { var objet = Instantiate(prefab, transform); var t = objet.GetComponent <T>(); t.Jeu = this; t.x = x; t.y = y; RéglerPosition(objet, x, y); tuile.Ajouter(t); return(t); }