[]Tween.to 执行失败

 
//使精灵走到鼠标位置
function walkToMousePos(sprite){
console.log(Laya.stage.mouseX) ;
console.log(Laya.stage.mouseY) ;
console.log(sprite.x) ;
console.log(sprite.y) ;
var hDir = Laya.stage.mouseX>sprite.x? "right" : "left" ;
var vDir = Laya.stage.mouseY>sprite.y? "down" : "up" ;
//先横着走,走完之后调用竖着走的函数
Tween.to(sprite,{x:Laya.stage.mouseX,y:sprite.y,update:new Handler(this,onWalk(hDir)),complete:Handler.create(this,function(){
Tween.to(sprite,{x:sprite.x,y:Laya.stage.mouseY,update:new Handler(this,onWalk(vDir))}) ;
})}) ;
console.log(sprite.x) ;
console.log(sprite.y) ;
console.log("once done") ;
}


function onWalk(dir){
switch(dir){
case "up":
hero_p1.roleAni.play(0,true,"p1_walk_up");
Laya.stage.addChild(hero_p1.roleAni);
break ;
case "down":
hero_p1.roleAni.play(0,true,"p1_walk_down");
Laya.stage.addChild(hero_p1.roleAni);
break ;
case "left":
hero_p1.roleAni.play(0,true,"p1_walk_left");
Laya.stage.addChild(hero_p1.roleAni);
break ;
case "right":
hero_p1.roleAni.play(0,true,"p1_walk_right");
Laya.stage.addChild(hero_p1.roleAni);
break ;
}
}
不知道为什么精灵没有动,精灵的坐标会变成NaN
输出如下:
0
0
once done
80
135
NaN
NaN
NaN
NaN
once done
已邀请:

mtjss2

赞同来自:

原来是没有加duration。。。然而加了之后动画不随着精灵走的

mtjss2

赞同来自:

emmmm,最后发现不要将动画绑定在sprite上,直接用动画类当精灵类就行了,因为动画类本来就继承了精灵类

Laya_XS

赞同来自:

有问题在提交!

要回复问题请先

商务合作
商务合作