Esempio n. 1
0
 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");
         }
     }
 }