checkWin() {
for (let i in this.puzzleCellList) {
let puzzle = this.puzzleCellList[i];
if (puzzle.getComponent('puzzle_cell').getIsOnMap == false) {
return;
}
//6个碎片都在 顶部地图上面
//这时候检查,每个点的是否都恰当
//得到一个新的列表
let list = [];
for (let i in this.topMapCellList) {
let cell = this.topMapCellList[i];
//找到离这个点最近的 碎片
let minDis = 10000;
let data = undefined;
for (let j in this.puzzleCellList) {
let puzzle = this.puzzleCellList[j];
let dis = puzzle.position.sub(cell.position).mag();//取得 2点之间的距离 这个方法 过时了
if (dis < minDis) {
minDis = dis;
data = puzzle.getComponent("puzzle_cell").getPuzzleData();
}
}
list.push(data);
}
//得到一个新的list列表
console.log("new_list:"+JSON.stringify(list));
}
}
修改puzzle_cell.jsinit代码, 添加一个方法getPuzzleData
设置data

getPuzzleData(){
return this.data;
}这个方法game_layer.js会调用 。
我们在这里输出一下,新的list看看分析一下。
下一步管理器计算是否符合地图规则。
站长微信:xiaomao0055
站长QQ:14496453