using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using CzokoŚmieciarka.MonoGameView.DataModels.Enums; using CzokoŚmieciarka.MonoGameView.DataModels.Interfaces; using CzokoŚmieciarka.MonoGameView.DataModels.Interfaces.GarbageCollector; using CzokoŚmieciarka.MonoGameView.DataModels.Interfaces.TrashCans; namespace CzokoŚmieciarka.MonoGameView.DataModels.Models.Steps { public class MoveStep : IStep { public MoveStep(Direction direction) { this._direction = direction; } private Direction _direction; private IGarbageCollector _garbageCollector; public void Invoke(IGarbageCollector _garbageCollector, object[,] grid) { if(grid[_garbageCollector.Coords.X, _garbageCollector.Coords.Y] is Road1) grid[_garbageCollector.Coords.X, _garbageCollector.Coords.Y] = new Road2(); switch (_direction) { case Direction.Up: _garbageCollector.MoveUp(); break; case Direction.Down: _garbageCollector.MoveDown(); break; case Direction.Left: _garbageCollector.MoveLeft(); break; case Direction.Right: _garbageCollector.MoveRight(); break; } } } }