0

我正在为游戏构建棋盘,这是一种琐碎的追求,我陷入了死胡同,在玩家掷骰子并且他选择了一个箱子之后,他的 pions 必须向前移动,例如他在案例1,掷骰子后有一个4选择案例3并移动。这是我的问题,使用我的示例,当玩家选择案例 3 时,pions 必须转到案例 2 和 finaly 3,但是使用此代码,我的 pions 直接转到案例 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();


   }

这是我在玩家点击案例索引时调用的函数:objectif(在我的示例中为 3)a:点的位置 s:骰子的值

4

0 回答 0