Page 1 sur 1

Instancié un prefab qui modifie un autre script

Publié : 29 Jan 2023 15:41
par Valva
Bonjour. alors j'instancie mon prefab enemy, et dans le script je met que quand il atteint le dernier checkpoint, il est détruit, et une variable d'un autre script GameMaster est modifié.
Cependant. Je ne peux pas glisser mon objet contenant le script dans la zone dédié sur le prefab enemy. Il faut que le prefab enemy soit instancié pour que ça marche.
Du coup j'ai tout mis en prefab, le GameMaster, le text lié au GameMaster etc. Mais bon ça ne marche pas. Ca modifie la variable du prefab GameMaster, mais pas de l'objet GameMaster dans la scène.
Quelqu'un aurait une idée ?

Re: Instancié un prefab qui modifie un autre script

Publié : 29 Jan 2023 18:12
par jmhoubre
Sans code, cela relève de la divination...

Re: Instancié un prefab qui modifie un autre script

Publié : 29 Jan 2023 21:01
par Valva
Ah oui mince, j'aurais du mettre le code. Mais pour le coup mon problème est résolu. J'ai copié collé ma question sur ChatGPT, et puis il m'a tout expliquer il m'a meme mit du code en exemple ce fifou.
Je met résolu du coup !

Re: Instancié un prefab qui modifie un autre script

Publié : 29 Jan 2023 23:04
par jmhoubre
Alors, partage la solution si quelqu'un revient sur ce sujet par la grâce de Google ou de Qwant.

Re: Instancié un prefab qui modifie un autre script

Publié : 30 Jan 2023 13:09
par boubouk50
Valva a écrit :
29 Jan 2023 15:41
Cependant. Je ne peux pas glisser mon objet contenant le script dans la zone dédié sur le prefab enemy. Il faut que le prefab enemy soit instancié pour que ça marche.
Une simple initialisation à l'instanciation devrait suffire.
Quand tu instancies ton prefab, il récupère les données de la scène (ou tu lui donnes) et c'est tout.
Sinon, tu peux passer par un ScriptableObject qui possède les références nécessaires. Tu peux lier ton prefab hors scène à cet asset et ainsi faire en sorte qu'il utilise ces données. Ca sous-entend que le GameManager et autres soient aussi connecté a cet asset pour faire passer les refs/données.

Par contre, tout entasser dans un prefab n'est pas une bonne idée. C'est juste déporter un problème à un autre endroit.