public mino(int[,] minofield, pos[,] kicktable, int stat, pos minopos, string name) { this.minofield = (int[, ])minofield.Clone(); this.kicktable = kicktable; this.minopos = minopos.clone(); this.name = name; this.locked = false; this.spinlast = false; height = minofield.GetLength(0); weight = minofield.GetLength(1); this.stat = stat; setstat(stat); }
//public mino_stat(pos minoopos, int stat, ) //{ // this.minoopos = minoopos; // this.stat = stat; // idx = 0; // spinlast = false; // path = new int[32]; //} //public mino_stat clone() //{ // mino_stat cp = new mino_stat(); // cp.path = (int[])path.Clone(); // cp.stat = stat; // cp.idx = idx; // return cp; //} public mino_stat(pos minoopos, int stat, int idx, int[] path_old, int move, int movetime, bool spinlast = false, int repeat = 1) { this.minoopos = minoopos.clone(); this.stat = stat; this.spinlast = spinlast; path = new int[52]; path[idx] = move; this.movetime = movetime + repeat; for (int i = 0; i < idx; ++i) { path[i] = path_old[i]; } this.idx = idx + 1; }