J'utilise Unity pour créer un jeu. J'ai plusieurs ennemis animaux dans le jeu.
Je travaille sur des missions à l'intérieur du jeu où vous devez tuer un nombre aléatoire d'animaux aléatoires, ce que j'ai déjà fait.
Ce qui me pose problème, c'est d'augmenter le nombre de missions quand on tue un animal.
J'ai un script (mort) assis sur chaque animal, quand l'animal meurt il appelle une fonction publique à l'intérieur du script mort.
Du script mort, il devrait augmenter une valeur int dans le script "MissionHolder" où tous les animaux ont une valeur int à augmenter lorsque vous tuez un animal.
Le problème est que je ne sais pas quel animal est tué lorsque le joueur tue un animal, ce que j'ai fait est le suivant :
public string Name;
public MissionHolder missionHolder;
public void Kill()
{
if (name == "Tiger")
{
missionHolder.Tiger += 1;
}
if (name == "Hyena")
{
missionHolder.Hyena += 1;
}
if (name == "Gorilla")
{
missionHolder.Gorilla += 1;
}
if (name == "Giraffe")
{
missionHolder.Giraffe += 1;
}
if (name == "Gazelle")
{
missionHolder.Gazelle += 1;
}
etc.
Maintenant, je nomme simplement chaque animal par son nom sur le script mort mais ce n'est pas vraiment efficace.
Quelqu'un connaît-il une meilleure façon de procéder ?