public void EndTurn() { SortedDictionary <UInt32, Creature> menagerie = _currentMap.Menagerie; // end turn _scheduler.EndTurn(); if (_myInterface.SelectedCreature != null) { _myInterface.SelectedCreature.MyMoveRangeCalculator.Update(); } // this crap should be in the scheduler foreach (KeyValuePair <UInt32, Creature> kvp in menagerie) { //fix later Creature current = kvp.Value; current.SetStatBasic(Creature.StatBasic.AP, true, current.GetStatBasic(Creature.StatBasic.AP, false)); current.MyMoveRangeCalculator.Update(); } for (sbyte i = 0; i < _currentMap.TeamCount; ++i) { Team currentTeam = _currentMap.TeamRosterGetTeamFrom(i); if (currentTeam != _playerTeam) { foreach (Creature c in currentTeam.Members) { c.CreatureBrain.Update(); } } } }