public void Set(Position p, int val) { this.p = new Position(); this.p.x = p.x; this.p.y = p.y; this.val = val; }
public State(Position p, int val) { this.p = new Position(); this.p.x = p.x; this.p.y = p.y; this.val = val; }
public AI(int size, int ai) { n = size; rand = new Random(); Val = new int[n, n]; _branch = 3; maxdepth = ai; prevp = new Position(-1, -1); currp = new Position(-1, -1); }
public AI(int size, int ai,bool zingLaw) { n = size; this.zingLaw = zingLaw; rand = new Random(); Val = new int[n, n]; _branch = 3; maxdepth = ai; prevp = new Position(-1, -1); currp = new Position(-1, -1); }
private void UpdateGraphic(Position p) { //MessageBox.Show("i = " + p.x + "j= " + p.y); Rectangle rc = new Rectangle(p.y * CELL_SIZE, (p.x+1) * CELL_SIZE, CELL_SIZE+1, CELL_SIZE + 1); Invalidate(rc); }
private void UpdateGr4phic(Position p) { Rectangle rc = new Rectangle(p.y * CELL_SIZE+1, (p.x+1) * CELL_SIZE-1, CELL_SIZE-2 , CELL_SIZE-2 ); Invalidate(rc); }
private State GetMaxNode() { Position p = new Position(0, 0); List<State> list = new List<State>(); int t = -INT_MAX; for (int i = 0; i < n; i++) for (int j = 0; j < n; j++) { if (t < Val[i, j]) { t = Val[i, j]; p.Set(i, j); list.Clear(); list.Add(new State(p, t)); } else if (t == Val[i, j]) { p.Set(i, j); list.Add(new State(p, t)); } } for (int i = 0; i < list.Count; i++) { Val[list[i].p.x, list[i].p.y] = 0; //Console.WriteLine("{0}-{1}", list[i].p.x, list[i].p.y); } //Console.WriteLine("----"); int x = rand.Next(0, list.Count); //Val[list[x].p.x, list[x].p.y] = 0; return list[x]; }
public Step(Position pp, char cc) { CurrentPlayer = cc; p = new Position(); p.Set(pp); }
public Step() { p = new Position(-1, -1); CurrentPlayer = ' '; }
public void Set(Position p) { x = p.x; y = p.y; }