System.register(["cc"], function (_export, _context) {
  "use strict";

  var _cclegacy, _decorator, Component, Node, RigidBody, v3, _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2, _temp, _crd, ccclass, property, test;

  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }

  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }

  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }

  return {
    setters: [function (_cc) {
      _cclegacy = _cc.cclegacy;
      _decorator = _cc._decorator;
      Component = _cc.Component;
      Node = _cc.Node;
      RigidBody = _cc.RigidBody;
      v3 = _cc.v3;
    }],
    execute: function () {
      _crd = true;

      _cclegacy._RF.push({}, "00fffXwTfpNIbxuoyxJZyT9", "test", undefined);

      ({
        ccclass,
        property
      } = _decorator);

      _export("test", test = (_dec = ccclass('test'), _dec2 = property({
        type: Node,
        tooltip: '触摸节点'
      }), _dec3 = property({
        type: Node,
        tooltip: '球'
      }), _dec(_class = (_class2 = (_temp = class test extends Component {
        constructor(...args) {
          super(...args);

          _initializerDefineProperty(this, "touch_node", _descriptor, this);

          _initializerDefineProperty(this, "qiu", _descriptor2, this);

          _defineProperty(this, "start_pos", null);

          _defineProperty(this, "set_touch", null);

          _defineProperty(this, "touch_id", -1);
        }

        start() {
          this.touch_node.on(Node.EventType.TOUCH_START, this.on, this);
          this.touch_node.on(Node.EventType.TOUCH_MOVE, this.move, this);
          this.touch_node.on(Node.EventType.TOUCH_END, this.up, this);
          this.touch_node.on(Node.EventType.TOUCH_CANCEL, this.up, this);
          let wuli = this.qiu.getComponent(RigidBody);
          wuli.useCCD = true;
        }

        on(touch, event) {
          if (this.start_pos) {
            return;
          }

          this.touch_id = touch.getID();
          this.start_pos = touch.getLocation();
        }

        move(touch, event) {
          if (touch.getID() != this.touch_id) {
            return;
          } // let pos = touch.getLocation();
          // let dir = pos.subtract(this.start_pos).normalize();
          // let angle = dir.signAngle(v2(1, 0));
          // //将弧度转换为欧拉角
          // let degree = angle / Math.PI * 180;
          // this.gan_parent.setRotationFromEuler(-degree, 0, 0);

        }

        up(touch, event) {
          if (touch.getID() != this.touch_id) {
            return;
          } //旧版，直接对球施加力


          let pos = touch.getLocation();
          let liliang = 10000;
          let wuli = this.qiu.getComponent(RigidBody);
          wuli.applyForce(v3(0, 0, -liliang)); //初始化

          this.touch_id = -1;
          this.start_pos = null;
        }

        update(deltaTime) {}

      }, _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, "touch_node", [_dec2], {
        configurable: true,
        enumerable: true,
        writable: true,
        initializer: function () {
          return null;
        }
      }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, "qiu", [_dec3], {
        configurable: true,
        enumerable: true,
        writable: true,
        initializer: function () {
          return null;
        }
      })), _class2)) || _class));

      _cclegacy._RF.pop();

      _crd = false;
    }
  };
});
//# sourceMappingURL=test.js.map