public State(Board board, Goat g, Tiger t) { this.goat = g; this.tiger = t; this.board = board; }
public Goat Clone() { Goat newGoat = new Goat(); newGoat.Symbol = this.Symbol; newGoat.GoatsInHand = this.goatsInHand; newGoat.GoatsKilled = this.goatsKilled; return newGoat; }
public State(String stateString) { board = new Board(); tiger = new Tiger(); goat = new Goat(); board.SetStates(stateString); }
public AbstractMove chooseMoveArbitrarilyForTest(char p, int goatsKilled, int GoatsInHand) { AbstractPlayer player; if (p.Equals('G')) player = new Goat(); else player = new Tiger(); List<AbstractMove> moves = player.FindMoves(this); return moves[0]; }
public void TestGoat() { Goat g = new Goat(); Assert.AreEqual(g.Symbol, 'G'); int goatsKilled = g.GoatsKilled; Assert.AreEqual(goatsKilled, 0); int goatsInHand = g.GoatsInHand; Assert.AreEqual(goatsInHand, 20); g.DecrementGoatsInHand(); Assert.AreEqual(g.GoatsInHand, 19); g.IncrementGoatsKilled(); Assert.AreEqual(g.GoatsKilled, 1); }
public MoveJSON ChooseMove(String boardString, char p, int goatsKilled, int goatsInHand) { State s = new State(boardString); Tiger t = new Tiger(); Goat g = new Goat(); g.GoatsInHand = goatsInHand; g.GoatsKilled = goatsKilled; s.Goat = g; s.Tiger = t; MinMaxPlayer minMax = new MinMaxPlayer(t,g,s); //AbstractMove m = s.chooseMoveArbitrarilyForTest(p, goatsKilled,goatsInHand); AbstractMove m = (p=='T'?minMax.ABSearchMax(s):minMax.ABSearchMin(s)); return new MoveJSON(parseToString(m, s)); }
public State() { board = new Board(); tiger = new Tiger(); goat = new Goat(); }
public MinMaxPlayer(Tiger t, Goat g, State s) { state = s; board = s.Board; }
public void setGoat(Goat goat) { state.Goat = goat; }