added new Command abstraction to transport commands with parameters (f.e. PLACE X,Y,F)

This commit is contained in:
Stanislav Nowogrudski
2017-04-22 16:07:23 +02:00
parent 0b3e53a61f
commit 24691be12c
13 changed files with 147 additions and 34 deletions
@@ -3,6 +3,7 @@ package de.dj_steam.bot.engine;
import java.util.ArrayList;
import java.util.List;
import de.dj_steam.bot.domain.Command;
import de.dj_steam.bot.domain.Direction;
import de.dj_steam.bot.domain.Position;
import de.dj_steam.bot.domain.ToyBot;
@@ -16,12 +17,6 @@ import de.dj_steam.bot.moving.strategy.TurnStrategy;
*/
public class RobotEngine {
public static final String TURN_LEFT = "LEFT";
public static final String TURN_RIGHT = "RIGHT";
public static final String MOVE = "MOVE";
public static final String PLACE = "PLACE";
public static final String REPORT = "REPORT";
private final ToyBotField toyBotField;
private final ToyBot toyBot;
private List<ChangingStrategy> changingStrategies;
@@ -38,7 +33,7 @@ public class RobotEngine {
initChangingStrategies();
}
public void commandBot(String command) {
public void commandBot(Command command) {
for (ChangingStrategy strategy : changingStrategies) {
strategy.change(toyBot, toyBotField, command);
}