cocos2d js - 触摸一起向上移动的叠加精灵

cocos2d js - Touch on overlay sprites that move up together

我使用最新版本 cocos2d-js 来创建我的游戏。在游戏画面上,我连续添加了多个精灵叠加,像这样 Overlay sprites

我添加了一个事件侦听器,当精灵被点击时它会在 y 轴上向上移动。但是,当我点击任意两个精灵包含的点时,两个精灵一起向上移动。

这是我的事件监听器代码

    var listener = cc.EventListener.create({
    event: cc.EventListener.TOUCH_ONE_BY_ONE,
    swallowTouches: true,
    onTouchBegan: function (touch, event) {     
        var target = event.getCurrentTarget();
        var location = target.convertToNodeSpace(touch.getLocation());
        var targetSize = target.getContentSize();
        var targetRectangle = cc.rect(0, 0, targetSize.width, targetSize.height);
         if (cc.rectContainsPoint(targetRectangle, location)){
            target.setPositionY(50);
         }      
    }
});

如何防止将它们一起移动并且只移动一个精灵?

谢谢。

onTouchBegan 必须是 returns 布尔值作为结果,如果 returns true 则意味着触摸被处理并且事件循环将被停止。如果 rect 包含点,请尝试 return true
希望这可以帮助。对不起我的英语。