public SimpleRobot(UniversalMap_Wpf _map, RobotMap _cMap, int _x, int _y, int _hp = 20) { map = _map; cMap = _cMap; X = _x; Y = _y; HP = _hp; IsOk = true; rules.Add(' ', new List <RobotAction> { new RobotAction(RobotCommands.Move) }); rules.Add('r', new List <RobotAction> { new RobotAction(RobotCommands.Move) }); rules.Add('*', new List <RobotAction> { new RobotAction(RobotCommands.Destroy) }); rules.Add('e', new List <RobotAction> { new RobotAction(RobotCommands.Move), new RobotAction(RobotCommands.Win) }); DrawCircle(X, Y, Brushes.Magenta); }
static public RobotQuestMap GetQuest(Window w, string name) { var map = MapCreator.GetUniversalMap(w, GetMapParams(name)); map.DrawGrid(); var lay = LayoutsFactory.GetLayout(LayoutType.SingleZone, w.Content); lay.Attach(map, 0); RobotQuestMap qMap = null; RobotMap rMap; SimpleRobot rBot; Coordinate c; switch (name) { case "task1": rMap = new RobotMap(map); rMap.SetExit(ExitPlacement.Fixed); c = rMap.SetRobot(RobotPlacement.Random); rMap.PlaceObstacles(ObstaclesFormation.SeparatedBlocks); rBot = new SimpleRobot(map, rMap, c); qMap = new RobotQuestMap(map, rMap, rBot); break; case "task2": rMap = new RobotMap(map); rMap.SetExit(ExitPlacement.RandomCorner); c = rMap.SetRobot(RobotPlacement.Random); rMap.PlaceObstacles(ObstaclesFormation.SeparatedBlocks); rBot = new SimpleRobot(map, rMap, c); qMap = new RobotQuestMap(map, rMap, rBot); break; } return(qMap); }
public RobotQuestMap(UniversalMap_Wpf wMap, RobotMap _rMap, SimpleRobot _rBot) { rBot = _rBot; rMap = _rMap; wMap.Keyboard.SetSingleKeyEventHandler(Launcher); }
public SimpleRobot(UniversalMap_Wpf _map, RobotMap _cMap, Coordinate c, int _hp = 20) : this(_map, _cMap, c.X, c.Y, _hp) { }