示例#1
0
	// Awake est appele avant Start
	private void Awake(){
		if(instance!=null){
			Destroy(gameObject,0);
		}else{
			_instance=this;
			DontDestroyOnLoad(gameObject); //evite la destruction de l'instance au changement de scene
		} //if+else
	} //Awake
示例#2
0
    }     //Soigner

    /// <summary>
    /// Fait le grand menage et supprime l'instance Singleton du jeu.
    /// Doit etre executee apres la mort definitive (avant d'aller au menu ou au generique)
    /// Supprime les elements DontDestroyOnLoad (persos, ui, musique, etc.)
    /// </summary>
    public void SupprimerJeu()
    {
        Debug.Log("<color=green>METHODE SupprimerJeu</color>");

        //detruire les persos
        foreach (Perso perso in Jeu.lesPersos) //chaque personnage de la liste
        {
            Destroy(perso.gameObject);         //les gameobjects des personnages
        } //foreach

        Destroy(this.gameObject);         //jeu
        _instance = null;
        //il y a d'autres elements a supprimer avec cette technique...
        Destroy(_musique.gameObject);         //l'instance qui gere la musique
        Destroy(_canvasUI.gameObject);        //l'instance du canevas (par extension infos et dialogue)

        //remise a neuf des variables statiques dans Jeu:
        _lesPersos   = new List <Perso> {
        };
        _perso       = null;
        tableau      = null;
        combat       = null;
        nomJoueur    = "Spero";
        facteurTemps = 1;
        listeObjets  = new List <string>();
        _fortune     = 0;
        _memNomScene = null;
        typeCombat   = TypeCombat.AUCUN;

        //remise a neuf des variables statiques dans d'autres classes:
        Interacteur.InitialiserListeAbsences();       //cette liste statique est partagee par Objet et PNJ
        Perso.peutBouger = true;
        Debogage.InitialisationFinDePartie();         //supprime l'instance qui gere le debogage et toutes valeurs statiques
        Dialogue.InitialisationFinDePartie();
        PNJ.dictRencontres = new Dictionary <string, uint>();
    }     //SupprimerJeu
示例#3
0
	} //MarcherVite


	/// <summary>
	/// Supprime toute valeur statique (avant une nouvelle partie)
	/// </summary>
	static public void InitialisationFinDePartie(){
		Destroy(_instance);
		_instance = null;
	} //InitialisationFinDePartie