0e6be8836ae46289898f43dcc0bb4e16f4e5502e.js 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. System.register(["__unresolved_0", "cc", "__unresolved_1", "__unresolved_2", "__unresolved_3", "__unresolved_4"], function (_export, _context) {
  2. "use strict";
  3. var _reporterNs, _cclegacy, __checkObsolete__, __checkObsoleteInNamespace__, _decorator, Component, director, tween, Vec3, Cube_Infor, Cube_State, Container_Manager, UI_Main, gui, _dec, _class, _crd, ccclass, property, CreateIdiom;
  4. function _reportPossibleCrUseOfCube_Infor(extras) {
  5. _reporterNs.report("Cube_Infor", "./Cube_Infor", _context.meta, extras);
  6. }
  7. function _reportPossibleCrUseOfCube_State(extras) {
  8. _reporterNs.report("Cube_State", "./Cube_Infor", _context.meta, extras);
  9. }
  10. function _reportPossibleCrUseOfContainer_Manager(extras) {
  11. _reporterNs.report("Container_Manager", "./Container_Manager", _context.meta, extras);
  12. }
  13. function _reportPossibleCrUseOfUI_Main(extras) {
  14. _reporterNs.report("UI_Main", "../module_game/ui/UI_Main/UI_Main", _context.meta, extras);
  15. }
  16. function _reportPossibleCrUseOfgui(extras) {
  17. _reporterNs.report("gui", "../core/ui/ui", _context.meta, extras);
  18. }
  19. return {
  20. setters: [function (_unresolved_) {
  21. _reporterNs = _unresolved_;
  22. }, function (_cc) {
  23. _cclegacy = _cc.cclegacy;
  24. __checkObsolete__ = _cc.__checkObsolete__;
  25. __checkObsoleteInNamespace__ = _cc.__checkObsoleteInNamespace__;
  26. _decorator = _cc._decorator;
  27. Component = _cc.Component;
  28. director = _cc.director;
  29. tween = _cc.tween;
  30. Vec3 = _cc.Vec3;
  31. }, function (_unresolved_2) {
  32. Cube_Infor = _unresolved_2.Cube_Infor;
  33. Cube_State = _unresolved_2.Cube_State;
  34. }, function (_unresolved_3) {
  35. Container_Manager = _unresolved_3.Container_Manager;
  36. }, function (_unresolved_4) {
  37. UI_Main = _unresolved_4.UI_Main;
  38. }, function (_unresolved_5) {
  39. gui = _unresolved_5.gui;
  40. }],
  41. execute: function () {
  42. _crd = true;
  43. _cclegacy._RF.push({}, "3b901oU5ZJHnp8TtJiYjZWZ", "CreateIdiom", undefined);
  44. __checkObsolete__(['_decorator', 'Component', 'debug', 'director', 'instantiate', 'Layers', 'Node', 'NodePool', 'Prefab', 'tween', 'Vec3']);
  45. ({
  46. ccclass,
  47. property
  48. } = _decorator);
  49. _export("CreateIdiom", CreateIdiom = (_dec = ccclass('CreateIdiom'), _dec(_class = class CreateIdiom extends Component {
  50. constructor() {
  51. super(...arguments);
  52. this.count = 0;
  53. }
  54. onLoad() {
  55. (_crd && gui === void 0 ? (_reportPossibleCrUseOfgui({
  56. error: Error()
  57. }), gui) : gui).show(_crd && UI_Main === void 0 ? (_reportPossibleCrUseOfUI_Main({
  58. error: Error()
  59. }), UI_Main) : UI_Main);
  60. }
  61. update(deltaTime) {}
  62. nodeMoving() {
  63. this.node.setPosition(new Vec3(0, 1.6, 0));
  64. var startPos = this.node.position; // 起点,抛物线开始的坐标
  65. var middlePos = new Vec3(this.node.position.x, this.node.position.y + 2, 0); // 中间控制点
  66. var destPos = new Vec3(this.node.position.x, this.node.position.y + 4, 0); // 终点,抛物线上升顶点
  67. var twoBezier = (t, p1, cp, p2) => {
  68. // 贝塞尔曲线计算
  69. var x = (1 - t) * (1 - t) * p1.x + 2 * t * (1 - t) * cp.x + t * t * p2.x;
  70. var y = (1 - t) * (1 - t) * p1.y + 2 * t * (1 - t) * cp.y + t * t * p2.y; // 螺旋运动计算
  71. var angle = t * Math.PI * 6; // 螺旋角度变化,增加圈数
  72. var radius = 0.5 + t * 1.5; // 螺旋半径逐渐增大
  73. var xOffset = Math.cos(angle) * radius; // x 轴偏移
  74. var zOffset = Math.sin(angle) * radius; // z 轴偏移
  75. // 返回最终点,带有螺旋效果
  76. return new Vec3(x + xOffset, y, zOffset);
  77. };
  78. var tweenDuration = 3.0; // 动画时长
  79. var createdNodes = 0; // 已生成的节点计数
  80. tween(this.node.position).to(tweenDuration, destPos, {
  81. onUpdate: (target, ratio) => {
  82. // 计算新的位置,带螺旋上升效果
  83. this.node.position = twoBezier(ratio, startPos, middlePos, destPos); // 根据进度生成新节点
  84. var cube = (_crd && Container_Manager === void 0 ? (_reportPossibleCrUseOfContainer_Manager({
  85. error: Error()
  86. }), Container_Manager) : Container_Manager).instance.getCube();
  87. if (cube != null && cube.getComponent(_crd && Cube_Infor === void 0 ? (_reportPossibleCrUseOfCube_Infor({
  88. error: Error()
  89. }), Cube_Infor) : Cube_Infor).state === (_crd && Cube_State === void 0 ? (_reportPossibleCrUseOfCube_State({
  90. error: Error()
  91. }), Cube_State) : Cube_State).live) {
  92. var newNode = cube;
  93. newNode.parent = director.getScene();
  94. newNode.setPosition(this.node.position);
  95. (_crd && Container_Manager === void 0 ? (_reportPossibleCrUseOfContainer_Manager({
  96. error: Error()
  97. }), Container_Manager) : Container_Manager).instance.nodeReferences.push(newNode);
  98. console.log(cube.getComponent(_crd && Cube_Infor === void 0 ? (_reportPossibleCrUseOfCube_Infor({
  99. error: Error()
  100. }), Cube_Infor) : Cube_Infor).Text);
  101. }
  102. }
  103. }).start();
  104. }
  105. }) || _class));
  106. _cclegacy._RF.pop();
  107. _crd = false;
  108. }
  109. };
  110. });
  111. //# sourceMappingURL=0e6be8836ae46289898f43dcc0bb4e16f4e5502e.js.map