我正在为游戏搭建一块棋盘,这是一个类似的琐事,而我却陷入了死胡同,在玩家掷出骰子并且他选择了一个箱子之后,他的中介必须 向前移动,例如,他在情况1中,掷骰子后得到4,选择情况3并移动。 这是我的问题,以我的示例为例,当玩家选择案例3时,中介必须转到案例2和结局3,但是有了此代码,我的中介就直接转到案例3,说实话,我不知道为什么, 这是我的代码:
attachEvent(_this, index,a,s) {
let b =a-2
_this.tween = new TWEEN.Tween(this.pions.position)
if(index>=a){
_this.domEvents.addEventListener(_this.cases[index], 'click',function(event) {
for ( var i = a-1; i <= index; i++) {
_this.stepByStep(_this.tween,_this.cases[i].position)
}
for (var i = a; i < a + s; i++) {
try {
_this.mat[i].color.setHex(0xFFD700)
_this.domEvents.removeEventListener(_this.cases[i], 'click', false)
}
catch(err) {
console.log(err.message)
}
try {
_this.mat[b].color.setHex(0xFFD700)
_this.domEvents.removeEventListener(_this.cases[b], 'click', false)
}
catch(err) {
console.log(err.message)
}
b--;
}
}, false)
}else{
_this.domEvents.addEventListener(_this.cases[index], 'click', function(event) {
for ( var i = a-1; i >=index; i--) {
_this.stepByStep(this,i)
}
for (var i = a; i < a + s; i++) {
try {
_this.mat[i].color.setHex(0xFFD700)
_this.domEvents.removeEventListener(_this.cases[i], 'click', false)
}
catch(err) {
console.log(err.message)
}
try {
_this.mat[b].color.setHex(0xFFD700)
_this.domEvents.removeEventListener(_this.cases[b], 'click', false)
}
catch(err) {
console.log(err.message)
}
b--;
}
},false)
}
}
stepByStep(tween,position)
{
tween.to({
x: position.x,
y: position.y,
z: 5},1000)
.start();
}
这是玩家在点击案件时调用的功能 index:objectif(在我的示例中为3) a:穴位 s:骰子的值