void RenewHeroList() { if (m_CurrentHeroIndex != -1 && m_AvailableHeroes != null) { HeroPool.FreeHero(m_AvailableHeroes[m_CurrentHeroIndex]); m_ScenarioSettings.UpdateHeroLists(PlayerIndex); } m_CurrentHeroIndex = -1; if (m_CurrentTownIndex == -1) { UpdateHeroSprite(); return; } m_AvailableHeroes = HeroPool.GetFactionHeroes(PlayerIndex, m_AvailableTowns[m_CurrentTownIndex], true); UpdateHeroSprite(); }
public void HeroRightPressed() { if (m_CurrentHeroIndex != -1) { HeroPool.FreeHero(m_AvailableHeroes[m_CurrentHeroIndex]); } m_CurrentHeroIndex++; if (m_CurrentHeroIndex > m_AvailableHeroes.Count - 1) { m_CurrentHeroIndex = -1; } else { HeroPool.ClaimHero(m_AvailableHeroes[m_CurrentHeroIndex]); } m_ScenarioSettings.UpdateHeroLists(PlayerIndex); UpdateHeroSprite(); }
public void UpdateHeroList() { if (m_CurrentHeroIndex != -1 && m_AvailableHeroes != null) { Hero _CurrentHero = m_AvailableHeroes[m_CurrentHeroIndex]; HeroPool.FreeHero(_CurrentHero); m_AvailableHeroes = HeroPool.GetFactionHeroes(PlayerIndex, m_AvailableTowns[m_CurrentTownIndex], true); HeroPool.ClaimHero(_CurrentHero); m_CurrentHeroIndex = m_AvailableHeroes.IndexOf(_CurrentHero); } else if (m_CurrentTownIndex != -1 && m_AvailableTowns.Count > 0) { m_AvailableHeroes = HeroPool.GetFactionHeroes(PlayerIndex, m_AvailableTowns[m_CurrentTownIndex], true); } UpdateHeroSprite(); }