[RESOLU][DB-AL] La fonction Start ne fonctionne pas dans les classes dérivées

Pour les scripts écrits en C#
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :

Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé

Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie

Exemple :

[DB-RS] Mouvement perso multijoueur
Avatar de l’utilisateur
ludoxe
Messages : 26
Inscription : 23 Mars 2014 19:17

[RESOLU][DB-AL] La fonction Start ne fonctionne pas dans les classes dérivées

Message par ludoxe » 29 Déc 2020 15:17

Bonjour, petit soucis que j'ai :
-Je créer un seul script nommé MainClass qui contient une classe et une classe dérivée
-Je mets dans ce script :

Code : Tout sélectionner


 public class MainClass : MonoBehaviour
{
    public virtual void Start()
    {
        print("MainClass");
    }
}

public class DerivedClass : MainClass
{
    override public void Start()
    {
        base.Start();
        print("DerivedClass");
    }
}



J'obtiens dans la console "MainClass"
Ce qui veut dire que la fonction start de DerivedClass n'a pas été appelé...

Comment faire svp pour appeler la fonction Start de cette classe ?
A moins que je m'y prends mal et qu'il faut que je restructure mon projet de sorte à avoir des derived class dans des scripts à part
Merci
Dernière édition par ludoxe le 02 Jan 2021 21:23, édité 1 fois.

Avatar de l’utilisateur
Max
Messages : 8764
Inscription : 30 Juil 2011 13:57
Contact :

Re: [DB-AL] La fonction Start ne fonctionne pas dans les classes dérivées

Message par Max » 29 Déc 2020 15:28

Bonjour,

je dirais normal, ton fichier ayant probablement le nom de ta MainClass, seule cette classe va être considérée comme component et donc active. La classe DerivedClass sera bien définis, mais non associée en tant que component (les callback comme Start donc non appelés). Une solution est de nommer ton fichier DerivedClass.cs.
Mais il est plus sain de séparer les deux classes en deux fichiers distincts, et les gérer séparément.
Image
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ

Avatar de l’utilisateur
ludoxe
Messages : 26
Inscription : 23 Mars 2014 19:17

Re: [RESOLU][DB-AL] La fonction Start ne fonctionne pas dans les classes dérivées

Message par ludoxe » 02 Jan 2021 21:24

Merci pour ta réponse

Répondre

Revenir vers « (C#) CSharp »