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