private static void turnRight(RotationKeys rotationKey) { RobotEntity robotEntity = RobotEntity.getInstance(); switch (robotEntity.Direction) { case Directions.EAST: robotEntity.Direction = Directions.SOUTH; break; case Directions.NORTH: robotEntity.Direction = Directions.EAST; break; case Directions.SOUTH: robotEntity.Direction = Directions.WEST; break; case Directions.WEST: robotEntity.Direction = Directions.NORTH; break; default: break; } }
public void Execute(RobotEntity entity) { entity.MoveForward(); if (Vector3.Distance(startPos, entity.transform.position) >= distance) { entity.SetExecuter(ParseExecuter.instance); } }
public RobotEntity(SceneNode parentNode, SceneManager parentSceneManager) { _parentSceneManager = parentSceneManager; _parentNode = parentNode; _nodeName = _rootNodeName + RobotEntity.__currentId; _name = _rootName + RobotEntity.__currentId; RobotEntity.IncrementCurrentId(); InitializeNode(); }
public RobotEntity(SceneNode parentNode, SceneManager parentSceneManager, Vector3 vector) { _parentSceneManager = parentSceneManager; _parentNode = parentNode; _nodeName = _rootNodeName + RobotEntity.__currentId; _name = _rootName + RobotEntity.__currentId; RobotEntity.IncrementCurrentId(); InitializeNode(); this.Node.Translate(vector); }
private static void goStraight() { RobotEntity robotEntity = RobotEntity.getInstance(); AreaEntity areaEntity = AreaEntity.getInstance(); areaEntity.buttons[robotEntity.X][robotEntity.Y].Text = ""; areaEntity.buttons[robotEntity.X][robotEntity.Y].BackColor = Color.White; areaEntity.buttons[robotEntity.X][robotEntity.Y].Update(); switch (robotEntity.Direction) { case Directions.EAST: robotEntity.X++; break; case Directions.NORTH: robotEntity.Y--; break; case Directions.SOUTH: robotEntity.Y++; break; case Directions.WEST: robotEntity.X--; break; default: break; } if (robotEntity.X < 0 || robotEntity.Y < 0 || areaEntity.ySize < robotEntity.Y || areaEntity.xSize < robotEntity.X) { throw new Exception($"Alanın dışına çıkıldı."); } areaEntity.buttons[robotEntity.X][robotEntity.Y].Text = robotEntity.Direction.ToString(); areaEntity.buttons[robotEntity.X][robotEntity.Y].BackColor = Color.Red; areaEntity.buttons[robotEntity.X][robotEntity.Y].Update(); System.Threading.Thread.Sleep(1000); }
public void Initiate(RobotEntity entity) { startPos = entity.transform.position; entity.OnCollision += () => entity.SetExecuter(ParseExecuter.instance); }