const std::vector<geometry::Point<int> > &MonsterPositions() const { return monsterPositions; }
bool MonsterPositionOccupied(int index) { return index >= 0 && index < int(monsters.size()) && monsters[index].Health() > 0; }
const std::vector<geometry::Point<int> > &HeroesPositions() const { return heroesPositions; }
bool HeroPositionOccupied(int index) { return index >= 0 && index < numHeroes; }
const std::vector<geometry::Point<int> > &MonsterPositions() const { return monsterPositions; }
bool MonsterPositionOccupied(int index) { return index >= 0 && index < int(monsters.size()) && monsters[index].Health() > 0; }
const std::vector<geometry::Point<int> > &HeroesPositions() const { return heroesPositions; }
bool HeroPositionOccupied(int index) { return index >= 0 && index < numHeroes; }