// 这样写直接就删除了, runAction无动作效果;
this.map[x][y].node.runAction(cc.moveTo(0.3, house.node.pos.x*50, house.node.pos.y *50))
this.node.removeChild( this.map[x][y].node)
// 改成这样 有了动作效果, 也执行了cc.log(), 但没有移除节点
var finished = cc.callFunc(function(target) {
cc.log("执行")
this.node.removeChild( this.map[x][y].node)
}, this, null);
var action = cc.sequence(cc.moveTo(0.3, house.node.pos.x*50, house.node.pos.y *50), finished)
this.map[x][y].node.runAction(action)
这是怎么回事呢?
解决了, 我把x,y都通过callFunc手动传进去.
我也不清除什么原因, 难道JS也有线程安全的概念?! 孤陋寡闻了.