protected void Move(int x, int y, Dungeon dung, Entity creature) // Basic movement method for a livingobject { if (!dung.CreatureCheck(creature.X + x, creature.Y + y)) //checking if there are no creatures on a cell { if (dung.CheckTile(creature.X + x, creature.Y + y) != SolidTiles.Wall && !dung.InteractiveCheck(creature.X + x, creature.Y + y)) { dung.Change(creature.Being); //Making creature's current XY cell not alive creature.Being.AddTo(x, y); //Changing coordinates of a creature dung.Change(creature.Being); //Making updated creature's XY cell alive } else { Console.Write("Error in movement"); } } }