System.register(["__unresolved_0", "cc", "__unresolved_1", "__unresolved_2", "__unresolved_3", "__unresolved_4", "__unresolved_5", "__unresolved_6", "__unresolved_7"], function (_export, _context) { "use strict"; var _reporterNs, _cclegacy, __checkObsolete__, __checkObsoleteInNamespace__, _decorator, Component, director, find, Node, Vec3, Cube_Infor, Cube_State, Container_Manager, Hall, ch, UI_Main, gui, ch_audio, _dec, _dec2, _class, _class2, _descriptor, _crd, ccclass, property, CreateIdiom; 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 _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 ' + 'transform-class-properties is enabled and runs after the decorators transform.'); } function _reportPossibleCrUseOfCube_Infor(extras) { _reporterNs.report("Cube_Infor", "./Cube_Infor", _context.meta, extras); } function _reportPossibleCrUseOfCube_State(extras) { _reporterNs.report("Cube_State", "./Cube_Infor", _context.meta, extras); } function _reportPossibleCrUseOfContainer_Manager(extras) { _reporterNs.report("Container_Manager", "./Container_Manager", _context.meta, extras); } function _reportPossibleCrUseOfHall(extras) { _reporterNs.report("Hall", "../hall/Hall", _context.meta, extras); } function _reportPossibleCrUseOfch(extras) { _reporterNs.report("ch", "../../ch/ch", _context.meta, extras); } function _reportPossibleCrUseOfUI_Main(extras) { _reporterNs.report("UI_Main", "../ui/UI_Main/UI_Main", _context.meta, extras); } function _reportPossibleCrUseOfgui(extras) { _reporterNs.report("gui", "../../core/ui/ui", _context.meta, extras); } function _reportPossibleCrUseOfch_audio(extras) { _reporterNs.report("ch_audio", "../../ch/audio/audio", _context.meta, extras); } return { setters: [function (_unresolved_) { _reporterNs = _unresolved_; }, function (_cc) { _cclegacy = _cc.cclegacy; __checkObsolete__ = _cc.__checkObsolete__; __checkObsoleteInNamespace__ = _cc.__checkObsoleteInNamespace__; _decorator = _cc._decorator; Component = _cc.Component; director = _cc.director; find = _cc.find; Node = _cc.Node; Vec3 = _cc.Vec3; }, function (_unresolved_2) { Cube_Infor = _unresolved_2.Cube_Infor; Cube_State = _unresolved_2.Cube_State; }, function (_unresolved_3) { Container_Manager = _unresolved_3.Container_Manager; }, function (_unresolved_4) { Hall = _unresolved_4.Hall; }, function (_unresolved_5) { ch = _unresolved_5.ch; }, function (_unresolved_6) { UI_Main = _unresolved_6.UI_Main; }, function (_unresolved_7) { gui = _unresolved_7.gui; }, function (_unresolved_8) { ch_audio = _unresolved_8.default; }], execute: function () { _crd = true; _cclegacy._RF.push({}, "3b901oU5ZJHnp8TtJiYjZWZ", "CreateIdiom", undefined); __checkObsolete__(['_decorator', 'Component', 'debug', 'director', 'find', 'instantiate', 'Layers', 'Node', 'NodePool', 'Prefab', 'tween', 'Vec3']); ({ ccclass, property } = _decorator); _export("CreateIdiom", CreateIdiom = (_dec = ccclass('CreateIdiom'), _dec2 = property([Node]), _dec(_class = (_class2 = class CreateIdiom extends Component { constructor() { super(...arguments); this.Container = void 0; this.animationRunning = false; // 控制是否有动画正在运行 _initializerDefineProperty(this, "startPos", _descriptor, this); } onLoad() { this.Container = find('Container').getComponent(_crd && Container_Manager === void 0 ? (_reportPossibleCrUseOfContainer_Manager({ error: Error() }), Container_Manager) : Container_Manager); } update(deltaTime) {} nodeMoving() { if ((_crd && Hall === void 0 ? (_reportPossibleCrUseOfHall({ error: Error() }), Hall) : Hall).getInstance().player.get_max_floor() !== 0 && !(_crd && Hall === void 0 ? (_reportPossibleCrUseOfHall({ error: Error() }), Hall) : Hall).getInstance().bornRunning) { (_crd && Hall === void 0 ? (_reportPossibleCrUseOfHall({ error: Error() }), Hall) : Hall).getInstance().bornRunning = true; this.node.setPosition(new Vec3(0, 1.6, -1.5)); this.Container.canTouch = false; var createdNodes = 0; var totalCubes = this.Container.Cube_Pool.size(); var animationStartTime = Date.now(); // 弹簧路径参数 var radius = 3; // 半径保持不变 var totalHeight = 5; // Y轴总上升高度 var totalRotations = totalCubes / 100 + 2; // 总旋转圈数 var centerZ = 1.0; // 圆心Z坐标 var startY = 1.6; // 初始Y坐标 var totalDuration = totalCubes * 30; // 总持续时间3秒 var updatePosition = () => { if ((_crd && Hall === void 0 ? (_reportPossibleCrUseOfHall({ error: Error() }), Hall) : Hall).getInstance().sceneChanging || (_crd && Hall === void 0 ? (_reportPossibleCrUseOfHall({ error: Error() }), Hall) : Hall).getInstance().bornRunning === false) { return; } var currentTime = Date.now() - animationStartTime; var progress = Math.min(currentTime / totalDuration, 1); // 计算应该生成的方块数量 var expectedCreated = Math.floor(progress * totalCubes); // 生成方块 while (createdNodes < expectedCreated && createdNodes < totalCubes) { var _s = createdNodes / totalCubes; // 计算弹簧路径坐标 var y = startY + _s * totalHeight; var angle = _s * totalRotations * 2 * Math.PI; var x = radius * Math.cos(angle); var z = radius * Math.sin(angle) + centerZ; var cube = this.Container.getCube(); if (cube && cube.getComponent(_crd && Cube_Infor === void 0 ? (_reportPossibleCrUseOfCube_Infor({ error: Error() }), Cube_Infor) : Cube_Infor).state === (_crd && Cube_State === void 0 ? (_reportPossibleCrUseOfCube_State({ error: Error() }), Cube_State) : Cube_State).live) { cube.parent = director.getScene(); cube.setPosition(new Vec3(x, y, z)); cube.setRotationFromEuler(-90, (_crd && ch === void 0 ? (_reportPossibleCrUseOfch({ error: Error() }), ch) : ch).util.getRandomInt(-30, 30), (_crd && ch === void 0 ? (_reportPossibleCrUseOfch({ error: Error() }), ch) : ch).util.getRandomInt(-30, 30)); this.Container.nodeReferences.push(cube); (_crd && ch_audio === void 0 ? (_reportPossibleCrUseOfch_audio({ error: Error() }), ch_audio) : ch_audio).getInstance().playOneShot('sound/dealing', 0.3); createdNodes++; } else if (!cube) { break; } console.log(createdNodes); } // 更新节点位置 var s = progress; var currentY = startY + s * totalHeight; var currentAngle = s * totalRotations * 2 * Math.PI; var currentX = radius * Math.cos(currentAngle); var currentZ = radius * Math.sin(currentAngle) + centerZ; this.node.setPosition(new Vec3(currentX, currentY, currentZ)); // 结束判断 if (progress < 1) { requestAnimationFrame(updatePosition); } else { this.Container.canTouch = true; (_crd && Hall === void 0 ? (_reportPossibleCrUseOfHall({ error: Error() }), Hall) : Hall).getInstance().bornRunning = false; (_crd && gui === void 0 ? (_reportPossibleCrUseOfgui({ error: Error() }), gui) : gui).get(_crd && UI_Main === void 0 ? (_reportPossibleCrUseOfUI_Main({ error: Error() }), UI_Main) : UI_Main).running = true; this.node.setPosition(new Vec3(0, 1.6, -1.5)); } }; updatePosition(); } else if ((_crd && Hall === void 0 ? (_reportPossibleCrUseOfHall({ error: Error() }), Hall) : Hall).getInstance().player.get_max_floor() == 0) { // 原有初始生成逻辑保持不变 for (var i = 0; i < this.Container.config.length * 2; i++) { var cube = this.Container.getCube(); if (cube != null && cube.getComponent(_crd && Cube_Infor === void 0 ? (_reportPossibleCrUseOfCube_Infor({ error: Error() }), Cube_Infor) : Cube_Infor).state === (_crd && Cube_State === void 0 ? (_reportPossibleCrUseOfCube_State({ error: Error() }), Cube_State) : Cube_State).live) { var newNode = cube; newNode.parent = director.getScene(); var randomXOffset = Math.random() * 1 - 0.5; newNode.setPosition(this.startPos[i].position.x, this.startPos[i].position.y, this.startPos[i].position.z); this.Container.nodeReferences.push(newNode); if (i > 1) { newNode.getComponent(_crd && Cube_Infor === void 0 ? (_reportPossibleCrUseOfCube_Infor({ error: Error() }), Cube_Infor) : Cube_Infor).state = (_crd && Cube_State === void 0 ? (_reportPossibleCrUseOfCube_State({ error: Error() }), Cube_State) : Cube_State).wait; } } } this.Container.canTouch = true; } } }, (_descriptor = _applyDecoratedDescriptor(_class2.prototype, "startPos", [_dec2], { configurable: true, enumerable: true, writable: true, initializer: function initializer() { return []; } })), _class2)) || _class)); _cclegacy._RF.pop(); _crd = false; } }; }); //# sourceMappingURL=8e1f568134c0faddb479bb9b5626087b79114fb9.js.map