public void MoveSnakeIn(Snake snake) { if (OnIt == Occupition.Snake) { throw new AlreadyOccupiedLandException("The snake has touched himself!", this); } if (OnIt == Occupition.Food) { snake.AddFood(); } OnIt = Occupition.Snake; StateChanged?.Invoke(this, OnIt); }