public void Update(GameTime gameTime)
{
foreach (ITerrain terrain in Tiles)
terrain.Update(gameTime);
for(int i = _creatures.Count - 1; i >= 0; i--)
_creatures[i].Update(gameTime);
for (int i = _containers.Count - 1; i >= 0; i--)
_containers[i].Update(gameTime);
for (int i = _doors.Count - 1; i >= 0; i--)
_doors[i].Update(gameTime);
for (int i = _quests.Count - 1; i >= 0; i--)
_quests[i].Update(gameTime);
for (int i = _fire.Count - 1; i >= 0; i--)
_fire[i].Update(gameTime);
for (int i = _specialEffects.Count - 1; i >= 0; i--)
_specialEffects[i].Update(gameTime);
Player.Update(gameTime);
}