// hero void SaveHero(GameObject hero, GameData gamaData) { HeroGameData newHero = new HeroGameData(); // cree une nouvelle instance de hero dans GameData HeroStats heroStatsSCR = hero.GetComponent<HeroStats>(); // Recupere les infos du hero HeroInventory heroInventorySCR = hero.GetComponent<HeroInventory>(); // ... newHero.heroGOtag = hero.tag; newHero.heroName = heroStatsSCR.heroName; // initialise cette nouvelle instance newHero.heroClass = heroStatsSCR.heroClass; // ... newHero.alive = heroStatsSCR.alive; // ... newHero.heroMaxHp = heroStatsSCR.heroMaxHp; // ... newHero.heroHp = heroStatsSCR.heroHp; // ... newHero.heroMaxMp = heroStatsSCR.heroMaxMp; // ... newHero.heroMp = heroStatsSCR.heroMp; // ... newHero.heroAtk = heroStatsSCR.heroAtk; // ... newHero.heroDef = heroStatsSCR.heroDef; // ... newHero.heroLevel = heroStatsSCR.heroLevel; // ... newHero.heroMaxExp = heroStatsSCR.heroMaxExp; // ... newHero.heroExp = heroStatsSCR.heroExp; // ... newHero.heroCost = heroStatsSCR.heroCost; // ... newHero.heroSpeed = heroStatsSCR.heroSpeed; // ... newHero.heroStatus = heroStatsSCR.heroStatus; // ... newHero.heroItems = heroInventorySCR.heroInventory; // ... newHero.heroItemStacks = heroInventorySCR.heroInventoryStacks; // ... gamaData.herosToSave.Add (newHero); // initialise la liste d'instances de hero dans l'instance de sauvegarde voulue }
//Hero void LoadHero(HeroGameData heroToLoad, GameData gameData) { GameObject createdHero = spawnManagerSCR.SpawnHero(); // On cree un hero standart HeroStats heroStatsSCR = createdHero.GetComponent<HeroStats>(); // Recupere les infos du hero HeroInventory heroInventorySCR = createdHero.GetComponent<HeroInventory>(); // ... HeroDisplayManager heroDisplayManagerSCR = createdHero.GetComponent<HeroDisplayManager>(); // ... createdHero.tag = heroToLoad.heroGOtag; // Initialise le nouveau hero chargé heroStatsSCR.InitializeHero( // ... heroToLoad.heroName, // ... heroToLoad.heroClass, // ... heroToLoad.alive, // ... heroToLoad.heroMaxHp, // ... heroToLoad.heroHp, // ... heroToLoad.heroMaxMp, // ... heroToLoad.heroMp, // ... heroToLoad.heroAtk, // ... heroToLoad.heroDef, // ... heroToLoad.heroLevel, // ... heroToLoad.heroMaxExp, // ... heroToLoad.heroExp, // ... heroToLoad.heroCost, // ... heroToLoad.heroSpeed, // ... heroToLoad.heroStatus // ... ); heroInventorySCR.heroInventory = heroToLoad.heroItems; // ... heroInventorySCR.heroInventoryStacks = heroToLoad.heroItemStacks; // ... }