void Awake() { GameManager GM = GameObject.Find("GameManager").GetComponent <GameManager>(); CombatManager CM = CombatManager.instance; MonsterController monster = null; HeroController hero = GameObject.Find(GM.GetHeroByPID(CM.battleHeroID)).GetComponent <HeroController>(); if (hero.GetHeroID() != HeroSelection.HS.mySelectedCharacter) { foreach (GameObject m in GM.getMonsterList()) { if (m.GetComponent <MonsterController>().getCurrentPosition().GetComponent <Node>().getRank() == CM.MonsterFighterID) { monster = m.GetComponent <MonsterController>(); break; } } monster.GetMonster().Recover(); } CM.battleHeroID = 0; CM.MonsterFighterID = 0; CM.heroRetreaterID = 0; Destroy(this); }
public void SetTurnOrder() { //find hero with lowest rank int lowerBound = 0; while (true) { int lowest = 90; HeroController next = null; foreach (GameObject h in HeroList) { int hRank = h.GetComponent <HeroController>().getCurrentPosition().GetComponent <Node>().getRank(); if (hRank > lowerBound) { if (hRank <= lowest) { lowest = hRank; next = h.GetComponent <HeroController>(); } } } lowerBound = lowest; turnOrder.Add(next.GetHeroID()); if (turnOrder.Count == HeroList.Count) { break; } } foreach (int id in turnOrder) { GameObject tt = GameObject.Find(GetHeroTTByPID(id)); tt.GetComponent <TimeTrackController>().ResetTurn(); } if (firstSetUp) { castleSetUp(); } }
void Awake() { GameManager GM = GameObject.Find("GameManager").GetComponent <GameManager>(); CombatManager CM = CombatManager.instance; MonsterController monster = null; HeroController hero = GameObject.Find(GM.GetHeroByPID(CM.battleHeroID)).GetComponent <HeroController>(); if (hero.GetHeroID() != HeroSelection.HS.mySelectedCharacter) { foreach (GameObject m in GM.getMonsterList()) { if (m.GetComponent <MonsterController>().getCurrentPosition().GetComponent <Node>().getRank() == CM.MonsterFighterID) { monster = m.GetComponent <MonsterController>(); break; } } int result = CM.heroSyncBV - CM.monsterSyncBV; if (result > 0) { monster.GetMonster().TakeDamage(result); } else { hero.getHero().TakeDamage(result); } hero.TimeTrackTick(); } CM.monsterSyncBV = 0; CM.heroSyncBV = 0; Destroy(this); }