cc.Class({
    extends: cc.Component,
    properties: {
        // nodeArr:[cc.Node]
        touchStartPoint: cc.Vec2,
        touchEndPoint: cc.Vec2,
    },
    onLoad() {

        this.node.on(cc.Node.EventType.TOUCH_START, this.ontouch_start, this);
        this.node.on(cc.Node.EventType.TOUCH_END, this.ontouch_End, this);

        this.nodeArr = [];
    },
    ontouch_start(event) {
        // 获取节点坐标
        this.touchStartPoint = event.getLocation();
    },
    //以下部分参考用，具体识别用自己的算法
    ontouch_End(event) {

        this.touchEndPoint = event.getLocation();
        this.calcDir();
    },
    calcDir: function() {
        let dirvecX = this.touchEndPoint.x - this.touchStartPoint.x;
        let dirvecY = this.touchEndPoint.y - this.touchStartPoint.y;

        if (dirvecY >= 0) {
            if (dirvecX > 0) {
                //向右 上  出左拳
                console.log("右上滑!");
                this.node.emit("gesture", { name: 'right_top' });

            } else if (dirvecX < 0) {

                //向左上 出右拳
                console.log("左上滑!");
                this.node.emit("gesture", { name: 'left_top' });

            }

        } else if (dirvecY <= 0) {

            if (dirvecX > 15) {
                console.log("右下滑!");
                this.node.emit("gesture", { name: 'right_down' });

            } else if (dirvecX < -15) {

                console.log("左下滑!");
                this.node.emit("gesture", { name: 'left_down' });


            } else if (dirvecX <= 15 && dirvecX >= -15) {
                console.log("向下");
                this.node.emit("gesture", { name: 'down' });
            }
        }
    },
});