// 暗物质领域成就
            {
                id: "dark_explorer",
                name: "暗物质探索者",
                description: "在暗物质领域收集200,000暗物质",
                target: 200000,
                reward: 12,
                icon: "fa-moon",
                level: 3
            },
            {
                id: "dark_master",
                name: "暗物质大师",
                description: "在暗物质领域收集2,000,000暗物质",
                target: 2000000,
                reward: 20,
                icon: "fa-circle",
                level: 3
            },
            {
                id: "dark_upgrader",
                name: "暗物质升级者",
                description: "在暗物质领域达到100级总升级",
                target: 100,
                reward: 15,
                icon: "fa-cogs",
                level: 3
            },
            {
                id: "dark_speedster",
                name: "暗物质速行者",
                description: "在暗物质领域达到2,000/秒产量",
                target: 2000,
                reward: 25,
                icon: "fa-bolt",
                level: 3
            },
            {
                id: "dark_completionist",
                name: "暗物质完成者",
                description: "完成暗物质领域所有目标",
                target: 1,
                reward: 30,
                icon: "fa-check-circle",
                level: 3
            },
            
            // 能量核心成就
            {
                id: "energy_explorer",
                name: "能量探索者",
                description: "在能量核心收集1,000,000能量核心",
                target: 1000000,
                reward: 15,
                icon: "fa-bolt",
                level: 4
            },
            {
                id: "energy_master",
                name: "能量大师",
                description: "在能量核心收集10,000,000能量核心",
                target: 10000000,
                reward: 25,
                icon: "fa-power-off",
                level: 4
            },
            {
                id: "energy_upgrader",
                name: "能量升级者",
                description: "在能量核心达到150级总升级",
                target: 150,
                reward: 20,
                icon: "fa-cogs",
                level: 4
            },
            {
                id: "energy_speedster",
                name: "能量速行者",
                description: "在能量核心达到10,000/秒产量",
                target: 10000,
                reward: 30,
                icon: "fa-bolt",
                level: 4
            },
            {
                id: "energy_completionist",
                name: "能量完成者",
                description: "完成能量核心所有目标",
                target: 1,
                reward: 40,
                icon: "fa-check-circle",
                level: 4
            },
            
            // 宇宙尽头成就
            {
                id: "cosmic_explorer",
                name: "宇宙探索者",
                description: "在宇宙尽头收集5,000,000宇宙尘埃",
                target: 5000000,
                reward: 20,
                icon: "fa-star",
                level: 5
            },
            {
                id: "cosmic_master",
                name: "宇宙大师",
                description: "在宇宙尽头收集50,000,000宇宙尘埃",
                target: 50000000,
                reward: 35,
                icon: "fa-globe-americas",
                level: 5
            },
            {
                id: "cosmic_upgrader",
                name: "宇宙升级者",
                description: "在宇宙尽头达到200级总升级",
                target: 200,
                reward: 25,
                icon: "fa-cogs",
                level: 5
            },
            {
                id: "cosmic_speedster",
                name: "宇宙速行者",
                description: "在宇宙尽头达到50,000/秒产量",
                target: 50000,
                reward: 40,
                icon: "fa-bolt",
                level: 5
            },
            {
                id: "cosmic_completionist",
                name: "宇宙完成者",
                description: "完成宇宙尽头所有目标",
                target: 1,
                reward: 50,
                icon: "fa-check-circle",
                level: 5
            },
            
            // 量子领域成就
            {
                id: "quantum_explorer",
                name: "量子探索者",
                description: "在量子领域收集20,000,000量子粒子",
                target: 20000000,
                reward: 25,
                icon: "fa-atom",
                level: 6
            },
            {
                id: "quantum_master",
                name: "量子大师",
                description: "在量子领域收集200,000,000量子粒子",
                target: 200000000,
                reward: 45,
                icon: "fa-microchip",
                level: 6
            },
            {
                id: "quantum_upgrader",
                name: "量子升级者",
                description: "在量子领域达到300级总升级",
                target: 300,
                reward: 30,
                icon: "fa-cogs",
                level: 6
            },
            {
                id: "quantum_speedster",
                name: "量子速行者",
                description: "在量子领域达到200,000/秒产量",
                target: 200000,
                reward: 50,
                icon: "fa-bolt",
                level: 6
            },
            {
                id: "quantum_completionist",
                name: "量子完成者",
                description: "完成量子领域所有目标",
                target: 1,
                reward: 60,
                icon: "fa-check-circle",
                level: 6
            },
            
            // 维度之门成就
            {
                id: "dimension_explorer",
                name: "维度探索者",
                description: "在维度之门收集100,000,000维度碎片",
                target: 100000000,
                reward: 30,
                icon: "fa-cube",
                level: 7
            },
            {
                id: "dimension_master",
                name: "维度大师",
                description: "在维度之门收集1,000,000,000维度碎片",
                target: 1000000000,
                reward: 55,
                icon: "fa-dice-d20",
                level: 7
            },
            {
                id: "dimension_upgrader",
                name: "维度升级者",
                description: "在维度之门达到400级总升级",
                target: 400,
                reward: 35,
                icon: "fa-cogs",
                level: 7
            },
            {
                id: "dimension_speedster",
                name: "维度速行者",
                description: "在维度之门达到1,000,000/秒产量",
                target: 1000000,
                reward: 60,
                icon: "fa-bolt",
                level: 7
            },
            {
                id: "dimension_completionist",
                name: "维度完成者",
                description: "完成维度之门所有目标",
                target: 1,
                reward: 70,
                icon: "fa-check-circle",
                level: 7
            },
            
            // 创世之源成就
            {
                id: "creation_explorer",
                name: "创世探索者",
                description: "在创世之源收集500,000,000创世能量",
                target: 500000000,
                reward: 35,
                icon: "fa-infinity",
                level: 8
            },
            {
                id: "creation_master",
                name: "创世大师",
                description: "在创世之源收集5,000,000,000创世能量",
                target: 5000000000,
                reward: 65,
                icon: "fa-crown",
                level: 8
            },
            {
                id: "creation_upgrader",
                name: "创世升级者",
                description: "在创世之源达到500级总升级",
                target: 500,
                reward: 40,
                icon: "fa-cogs",
                level: 8
            },
            {
                id: "creation_speedster",
                name: "创世速行者",
                description: "在创世之源达到5,000,000/秒产量",
                target: 5000000,
                reward: 70,
                icon: "fa-bolt",
                level: 8
            },
            {
                id: "creation_completionist",
                name: "创世完成者",
                description: "完成创世之源所有目标",
                target: 1,
                reward: 80,
                icon: "fa-check-circle",
                level: 8
            },
            
            // 全局成就
            {
                id: "first_million",
                name: "百万富翁",
                description: "累计收集100万资源",
                target: 1000000,
                reward: 10,
                icon: "fa-money-bill-wave",
                level: 0
            },
            {
                id: "upgrade_expert",
                name: "升级专家",
                description: "总升级等级达到1000级",
                target: 1000,
                reward: 20,
                icon: "fa-cogs",
                level: 0
            },
            {
                id: "automation_king",
                name: "自动化之王",
                description: "每秒产量达到10,000",
                target: 10000,
                reward: 25,
                icon: "fa-crown",
                level: 0
            },
            {
                id: "speed_demon",
                name: "速度恶魔",
                description: "每秒产量达到100,000",
                target: 100000,
                reward: 35,
                icon: "fa-bolt",
                level: 0
            },
            {
                id: "universe_explorer",
                name: "宇宙探险家",
                description: "解锁所有关卡",
                target: 8,
                reward: 30,
                icon: "fa-rocket",
                level: 0
            },
            {
                id: "tech_master",
                name: "科技大师",
                description: "解锁所有科技",
                target: 15,
                reward: 60,
                icon: "fa-flask",
                level: 0
            },
            {
                id: "prestige_master",
                name: "重生大师",
                description: "完成5次重生",
                target: 5,
                reward: 100,
                icon: "fa-infinity",
                level: 0
            }
        ];

        // 游戏状态
        const gameState = {
            currentLevel: 1,
            resources: 0,
            totalCollected: 0,
            productionRate: 1,
            lastUpdate: Date.now(),
            playTime: 0,
            levelProgress: {},
            upgrades: {},
            techUnlocked: {},
            achievementsUnlocked: {},
            prestigePoints: 0,
            prestigeCount: 0,
            prestigeResources: {
                timeCrystals: 0,
                spaceGems: 0,
                darkMatter: 0,
                energyCores: 0,
                cosmicDust: 0,
                quantumParticles: 0,
                dimensionFragments: 0,
                creationEnergy: 0
            },
            prestigeMultiplier: 1
        };

        // 初始化游戏
        function initGame() {
            // 初始化关卡进度
            levels.forEach(level => {
                if (!gameState.levelProgress[level.id]) {
                    gameState.levelProgress[level.id] = {
                        unlocked: level.id === 1,
                        completed: false,
                        resourcesCollected: 0,
                        resources: 0,
                        productionRate: level.baseProduction
                    };
                }
            });
            
            // 初始化升级状态
            levels.forEach(level => {
                if (!gameState.upgrades[level.id]) {
                    gameState.upgrades[level.id] = {};
                    level.upgrades.forEach(upgrade => {
                        gameState.upgrades[level.id][upgrade.id] = {
                            level: 0,
                            cost: upgrade.baseCost
                        };
                    });
                }
            });
            
            // 初始化科技树
            techTree.forEach(tech => {
                if (gameState.techUnlocked[tech.id] === undefined) {
                    gameState.techUnlocked[tech.id] = false;
                }
            });
            
            // 初始化成就
            achievements.forEach(achievement => {
                if (gameState.achievementsUnlocked[achievement.id] === undefined) {
                    gameState.achievementsUnlocked[achievement.id] = false;
                }
            });
            
            loadGame();
            updateLevelDisplay();
            updateUpgradesDisplay();
            updateLevelsGrid();
            updateTechTree();
            updateAchievements();
            updatePrestigeDisplay();
            
            // 初始化标签页切换
            initTabs();
            
            // 游戏主循环
            setInterval(gameLoop, 100);
            
            // 每秒更新一次显示
            setInterval(updateDisplay, 1000);
        }

        // 初始化标签页
        function initTabs() {
            const tabs = document.querySelectorAll('.tab');
            tabs.forEach(tab => {
                tab.addEventListener('click', () => {
                    // 移除所有活动标签
                    tabs.forEach(t => t.classList.remove('active'));
                    // 添加当前活动标签
                    tab.classList.add('active');
                    
                    // 隐藏所有内容
                    document.querySelectorAll('.tab-content').forEach(content => {
                        content.classList.remove('active');
                    });
                    
                    // 显示对应内容
                    const tabId = tab.getAttribute('data-tab');
                    document.getElementById(`${tabId}-tab`).classList.add('active');
                });
            });
        }

        // 游戏主循环
        function gameLoop() {
            const now = Date.now();
            const deltaTime = (now - gameState.lastUpdate) / 1000;
            gameState.lastUpdate = now;
            
            // 增加游戏时间
            gameState.playTime += deltaTime;
            
            // 计算科技加成
            const techMultiplier = calculateTechMultiplier();
            
            // 生成资源
            const currentLevelData = getCurrentLevelData();
            const currentLevelState = gameState.levelProgress[gameState.currentLevel];
            const resourcesGenerated = currentLevelState.productionRate * deltaTime * techMultiplier;
            
            currentLevelState.resources += resourcesGenerated;
            currentLevelState.resourcesCollected += resourcesGenerated;
            gameState.totalCollected += resourcesGenerated;
            
            // 检查是否完成当前关卡
            if (!currentLevelState.completed && 
                currentLevelState.resourcesCollected >= currentLevelData.targetAmount) {
                currentLevelState.completed = true;
                
                // 解锁下一关
                if (gameState.currentLevel < levels.length) {
                    gameState.levelProgress[gameState.currentLevel + 1].unlocked = true;
                }
                
                showNotification(`恭喜!你已完成 ${currentLevelData.name} 关卡!`);
                updateLevelsGrid();
                checkAchievements();
            }
            
            updateDisplay();
        }

        // 计算科技加成
        function calculateTechMultiplier() {
            let multiplier = 1;
            
            // 生产加速
            if (gameState.techUnlocked.production_boost) {
                multiplier *= 1.1;
            }
            
            // 量子飞跃
            if (gameState.techUnlocked.quantum_leap) {
                multiplier *= 2;
            }
            
            // 时间扭曲
            if (gameState.techUnlocked.time_warp) {
                multiplier *= 1.5;
            }
            
            // 多元宇宙连接
            if (gameState.techUnlocked.multiverse_connection) {
                multiplier *= 2;
            }
            
            // 资源回收
            if (gameState.techUnlocked.resource_recycling) {
                multiplier *= 1.3;
            }
            
            // 并行处理
            if (gameState.techUnlocked.parallel_processing) {
                multiplier *= 1.4;
            }
            
            // 维度转换
            if (gameState.techUnlocked.dimensional_shift) {
                multiplier *= 2;
            }
            
            // 时间压缩
            if (gameState.techUnlocked.time_compression) {
                multiplier *= 1.75;
            }
            
            // 奇点引擎
            if (gameState.techUnlocked.singularity_engine) {
                multiplier *= 4;
            }
            
            return multiplier;
        }

        // 获取当前关卡数据
        function getCurrentLevelData() {
            return levels.find(level => level.id === gameState.currentLevel);
        }

        // 获取当前关卡状态
        function getCurrentLevelState() {
            return gameState.levelProgress[gameState.currentLevel];
        }

        // 更新显示
        function updateDisplay() {
            const currentLevelData = getCurrentLevelData();
            const currentLevelState = getCurrentLevelState();
            
            document.getElementById('resource-amount').textContent = Math.floor(currentLevelState.resources).toLocaleString();
            document.getElementById('resource-name').textContent = currentLevelData.resourceName;
            document.getElementById('resource-core-icon').textContent = currentLevelData.resourceIcon;
            document.getElementById('production-rate').textContent = (currentLevelState.productionRate * calculateTechMultiplier()).toFixed(1);
            document.getElementById('total-collected').textContent = Math.floor(gameState.totalCollected).toLocaleString();
            
            // 格式化游戏时间
            const hours = Math.floor(gameState.playTime / 3600);
            const minutes = Math.floor((gameState.playTime % 3600) / 60);
            const seconds = Math.floor(gameState.playTime % 60);
            document.getElementById('play-time').textContent = 
                `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')}`;
            
            // 更新关卡进度
            const progress = currentLevelState.resourcesCollected / currentLevelData.targetAmount * 100;
            document.getElementById('level-progress-bar').style.width = `${Math.min(progress, 100)}%`;
            document.getElementById('level-target').textContent = 
                `目标: ${Math.floor(currentLevelState.resourcesCollected).toLocaleString()}/${currentLevelData.targetAmount.toLocaleString()} ${currentLevelData.resourceName}`;
            
            // 更新关卡进度百分比
            document.getElementById('level-progress').textContent = `${Math.min(progress, 100).toFixed(1)}%`;
            
            // 显示/隐藏下一关按钮
            const nextLevelBtn = document.getElementById('next-level-btn');
            if (currentLevelState.completed && gameState.currentLevel < levels.length) {
                nextLevelBtn.style.display = 'block';
                nextLevelBtn.textContent = `进入 ${levels[gameState.currentLevel].name}`;
            } else {
                nextLevelBtn.style.display = 'none';
            }
            
            updateUpgradesDisplay();
            updatePrestigeDisplay();
        }

        // 更新关卡显示
        function updateLevelDisplay() {
            const currentLevelData = getCurrentLevelData();
            
            document.getElementById('current-level-name').textContent = currentLevelData.name;
            document.body.style.background = currentLevelData.background;
        }

        // 更新升级显示
        function updateUpgradesDisplay() {
            const currentLevelData = getCurrentLevelData();
            const currentLevelState = getCurrentLevelState();
            const upgradesContainer = document.getElementById('upgrades-container');
            upgradesContainer.innerHTML = '';
            
            currentLevelData.upgrades.forEach(upgrade => {
                const upgradeState = gameState.upgrades[gameState.currentLevel][upgrade.id];
                const cost = calculateUpgradeCost(upgrade);
                const canAfford = currentLevelState.resources >= cost;
                const isMaxed = upgradeState.level >= upgrade.maxLevel;

                const upgradeElement = document.createElement('div');
                upgradeElement.className = 'upgrade';
                
                if (!isMaxed) {
                    upgradeElement.onclick = () => buyUpgrade(upgrade.id);
                }

                upgradeElement.innerHTML = `
                    <div class="upgrade-header">
                        <span class="upgrade-name">${upgrade.name}</span>
                        <span class="upgrade-cost">${isMaxed ? '已满级' : cost.toLocaleString()}</span>
                    </div>
                    <div class="upgrade-level">等级: <span>${upgradeState.level}/${upgrade.maxLevel}</span></div>
                    <div class="upgrade-description">${upgrade.description}</div>
                    <div class="flex justify-between items-center mt-2">
                        <span class="text-white font-semibold">+${upgrade.production}/秒</span>
                    </div>
                `;

                if (isMaxed) {
                    upgradeElement.classList.add('opacity-50');
                } else if (!canAfford) {
                    upgradeElement.classList.add('opacity-50');
                }

                upgradesContainer.appendChild(upgradeElement);
            });
        }

        // 计算升级成本
        function calculateUpgradeCost(upgrade) {
            const upgradeState = gameState.upgrades[gameState.currentLevel][upgrade.id];
            // 应用成本降低科技
            let costMultiplier = 1;
            if (gameState.techUnlocked.cost_reduction) {
                costMultiplier *= 0.95;
            }
            if (gameState.techUnlocked.energy_efficiency) {
                costMultiplier *= 0.75;
            }
            
            return Math.floor(upgrade.baseCost * Math.pow(1.5, upgradeState.level) * costMultiplier);
        }

        // 更新关卡网格
        function updateLevelsGrid() {
            const levelsGrid = document.getElementById('levels-grid');
            levelsGrid.innerHTML = '';
            
            levels.forEach(level => {
                const levelState = gameState.levelProgress[level.id];
                const levelElement = document.createElement('div');
                
                let classes = 'level-card';
                if (level.id === gameState.currentLevel) classes += ' active';
                if (levelState.completed) classes += ' completed';
                if (!levelState.unlocked) classes += ' locked';
                
                levelElement.className = classes;
                if (levelState.unlocked) {
                    levelElement.onclick = () => switchLevel(level.id);
                }
                
                levelElement.innerHTML = `
                    <div class="level-icon">${level.resourceIcon}</div>
                    <div class="level-name">${level.name}</div>
                    <div class="level-status">${levelState.completed ? '已完成' : levelState.unlocked ? '进行中' : '锁定'}</div>
                `;
                
                levelsGrid.appendChild(levelElement);
            });
        }

        // 更新科技树
        function updateTechTree() {
            const techTreeContainer = document.getElementById('tech-tree-container');
            techTreeContainer.innerHTML = '';
            
            techTree.forEach(tech => {
                const techElement = document.createElement('div');
                
                let classes = 'tech-node';
                if (gameState.techUnlocked[tech.id]) {
                    classes += ' unlocked';
                } else if (isTechAvailable(tech)) {
                    classes += ' available';
                }
                
                techElement.className = classes;
                techElement.onclick = () => unlockTech(tech.id);
                
                techElement.innerHTML = `
                    <div class="tech-node-header">
                        <span class="tech-node-name"><i class="fas ${tech.icon} mr-2"></i>${tech.name}</span>
                        <span class="tech-node-cost">${tech.cost}</span>
                    </div>
                    <div class="tech-node-description">${tech.description}</div>
                `;
                
                techTreeContainer.appendChild(techElement);
            });
        }

        // 检查科技是否可用
        function isTechAvailable(tech) {
            // 检查依赖
            for (const dep of tech.dependencies) {
                if (!gameState.techUnlocked[dep]) {
                    return false;
                }
            }
            
            // 检查是否有足够的时空精华
            return gameState.prestigePoints >= tech.cost && !gameState.techUnlocked[tech.id];
        }

        // 更新成就
        function updateAchievements() {
            const achievementsContainer = document.getElementById('achievements-container');
            achievementsContainer.innerHTML = '';
            
            // 按关卡分组显示成就
            const levelAchievements = {};
            achievements.forEach(achievement => {
                if (!levelAchievements[achievement.level]) {
                    levelAchievements[achievement.level] = [];
                }
                levelAchievements[achievement.level].push(achievement);
            });
            
            // 显示全局成就
            if (levelAchievements[0]) {
                const globalSection = document.createElement('div');
                globalSection.className = 'col-span-full mb-4';
                globalSection.innerHTML = `<h3 class="text-xl font-bold text-white mb-2">全局成就</h3>`;
                achievementsContainer.appendChild(globalSection);
                
                levelAchievements[0].forEach(achievement => {
                    const achievementElement = createAchievementElement(achievement);
                    achievementsContainer.appendChild(achievementElement);
                });
            }
            
            // 显示各关卡成就
            for (let level = 1; level <= 8; level++) {
                if (levelAchievements[level]) {
                    const levelSection = document.createElement('div');
                    levelSection.className = 'col-span-full mb-4 mt-6';
                    levelSection.innerHTML = `<h3 class="text-xl font-bold text-white mb-2">${levels[level-1].name}成就</h3>`;
                    achievementsContainer.appendChild(levelSection);
                    
                    levelAchievements[level].forEach(achievement => {
                        const achievementElement = createAchievementElement(achievement);
                        achievementsContainer.appendChild(achievementElement);
                    });
                }
            }
        }

        // 创建成就元素
        function createAchievementElement(achievement) {
            const achievementElement = document.createElement('div');
            
            let classes = 'achievement';
            if (gameState.achievementsUnlocked[achievement.id]) {
                classes += ' unlocked';
            }
            
            const progress = getAchievementProgress(achievement);
            
            achievementElement.className = classes;
            achievementElement.innerHTML = `
                <div class="flex items-center mb-2">
                    <i class="fas ${achievement.icon} text-xl mr-3 ${gameState.achievementsUnlocked[achievement.id] ? 'text-yellow-400' : 'text-gray-400'}"></i>
                    <div>
                        <h4 class="font-bold ${gameState.achievementsUnlocked[achievement.id] ? 'text-white' : 'text-gray-300'}">${achievement.name}</h4>
                        <p class="text-sm ${gameState.achievementsUnlocked[achievement.id] ? 'text-gray-200' : 'text-gray-500'}">${achievement.description}</p>
                    </div>
                </div>
                <div class="achievement-progress">
                    <div class="achievement-progress-fill" style="width: ${progress}%"></div>
                </div>
                <div class="flex justify-between mt-2 text-sm">
                    <span class="${gameState.achievementsUnlocked[achievement.id] ? 'text-green-400' : 'text-gray-400'}">
                        ${gameState.achievementsUnlocked[achievement.id] ? '已解锁' : '进度: ' + progress + '%'}
                    </span>
                    <span class="text-yellow-400">奖励: ${achievement.reward} 时空精华</span>
                </div>
            `;
            
            return achievementElement;
        }

        // 获取成就进度
        function getAchievementProgress(achievement) {
            let current = 0;
            
            switch(achievement.id) {
                case 'first_million':
                    current = gameState.totalCollected;
                    break;
                case 'upgrade_expert':
                    current = Object.values(gameState.upgrades).reduce((total, levelUpgrades) => {
                        return total + Object.values(levelUpgrades).reduce((sum, upgrade) => sum + upgrade.level, 0);
                    }, 0);
                    break;
                case 'automation_king':
                    current = Math.max(...Object.values(gameState.levelProgress).map(level => level.productionRate));
                    break;
                case 'speed_demon':
                    current = Math.max(...Object.values(gameState.levelProgress).map(level => level.productionRate));
                    break;
                case 'universe_explorer':
                    current = Object.values(gameState.levelProgress).filter(level => level.unlocked).length;
                    break;
                case 'tech_master':
                    current = Object.values(gameState.techUnlocked).filter(unlocked => unlocked).length;
                    break;
                case 'prestige_master':
                    current = gameState.prestigeCount;
                    break;
                default:
                    // 关卡特定成就
                    if (achievement.level > 0) {
                        const levelState = gameState.levelProgress[achievement.level];
                        if (!levelState) break;
                        
                        if (achievement.id.includes('completionist')) {
                            current = levelState.completed ? 1 : 0;
                        } else if (achievement.id.includes('upgrader')) {
                            current = Object.values(gameState.upgrades[achievement.level] || {}).reduce((sum, upgrade) => sum + upgrade.level, 0);
                        } else if (achievement.id.includes('speedster')) {
                            current = levelState.productionRate;
                        } else {
                            current = levelState.resourcesCollected;
                        }
                    }
            }
            
            return Math.min(100, Math.floor((current / achievement.target) * 100));
        }

        // 检查成就
        function checkAchievements() {
            achievements.forEach(achievement => {
                if (!gameState.achievementsUnlocked[achievement.id]) {
                    const progress = getAchievementProgress(achievement);
                    
                    if (progress >= 100) {
                        gameState.achievementsUnlocked[achievement.id] = true;
                        gameState.prestigePoints += achievement.reward;
                        showNotification(`成就解锁: ${achievement.name}! 获得 ${achievement.reward} 时空精华`);
                        updateAchievements();
                        updatePrestigeDisplay();
                    }
                }
            });
        }

        // 更新重生显示
        function updatePrestigeDisplay() {
            // 计算重生奖励
            let reward = 0;
            for (let i = 1; i <= levels.length; i++) {
                if (gameState.levelProgress[i] && gameState.levelProgress[i].completed) {
                    reward += i * 10; // 每完成一关获得基础奖励
                    reward += Math.sqrt(gameState.levelProgress[i].resourcesCollected) * 0.1; // 根据收集的资源增加奖励
                }
            }
            
            // 应用重生加成科技
            if (gameState.techUnlocked.prestige_boost) {
                reward *= 1.2;
            }
            
            // 应用全局倍率
            reward *= gameState.prestigeMultiplier;
            
            document.getElementById('prestige-reward').textContent = Math.floor(reward).toLocaleString();
            
            // 检查是否所有关卡都已完成
            const allLevelsCompleted = Object.values(gameState.levelProgress).every(level => level.completed);
            const prestigeBtn = document.getElementById('prestige-btn');
            if (allLevelsCompleted) {
                prestigeBtn.disabled = false;
                prestigeBtn.textContent = '重生';
            } else {
                prestigeBtn.disabled = true;
                prestigeBtn.textContent = '需要完成所有关卡才能重生';
            }
            
            // 更新重生资源显示
            const resourcesContainer = document.getElementById('prestige-resources');
            resourcesContainer.innerHTML = '';
            
            Object.keys(gameState.prestigeResources).forEach((resource, index) => {
                const level = levels[index];
                if (!level) return;
                
                const resourceElement = document.createElement('div');
                resourceElement.className = 'resource-item';
                
                resourceElement.innerHTML = `
                    <div class="resource-icon">${level.resourceIcon}</div>
                    <div class="resource-count">${gameState.prestigeResources[resource].toLocaleString()}</div>
                    <div class="resource-name">${level.resourceName}</div>
                `;
                
                resourcesContainer.appendChild(resourceElement);
            });
        }

        // 切换关卡
        function switchLevel(levelId) {
            if (!gameState.levelProgress[levelId].unlocked) {
                showNotification('该关卡尚未解锁!');
                return;
            }
            
            gameState.currentLevel = levelId;
            
            updateLevelDisplay();
            updateUpgradesDisplay();
            updateLevelsGrid();
            showNotification(`已切换到 ${getCurrentLevelData().name}`);
        }

        // 购买升级
        function buyUpgrade(upgradeId) {
            tryBuyUpgrade(upgradeId);
        }

        // 尝试购买升级
        function tryBuyUpgrade(upgradeId) {
            const currentLevelData = getCurrentLevelData();
            const currentLevelState = getCurrentLevelState();
            const upgrade = currentLevelData.upgrades.find(u => u.id === upgradeId);
            const upgradeState = gameState.upgrades[gameState.currentLevel][upgradeId];
            
            if (!upgrade || upgradeState.level >= upgrade.maxLevel) return;

            const cost = calculateUpgradeCost(upgrade);
            if (currentLevelState.resources >= cost) {
                currentLevelState.resources -= cost;
                upgradeState.level++;
                
                // 更新生产速率
                currentLevelState.productionRate += upgrade.production;
                
                updateDisplay();
                updateUpgradesDisplay();
                showNotification(`成功购买 ${upgrade.name} 升级!`);
                checkAchievements();
            } else {
                showNotification(`${currentLevelData.resourceName} 不足!`);
            }
        }

        // 解锁科技
        function unlockTech(techId) {
            const tech = techTree.find(t => t.id === techId);
            
            if (!tech) return;
            
            if (gameState.techUnlocked[techId]) {
                showNotification('该科技已经解锁!');
                return;
            }
            
            if (!isTechAvailable(tech)) {
                showNotification('无法解锁该科技!');
                return;
            }
            
            if (gameState.prestigePoints >= tech.cost) {
                gameState.prestigePoints -= tech.cost;
                gameState.techUnlocked[techId] = true;
                
                updateTechTree();
                updatePrestigeDisplay();
                showNotification(`成功解锁科技:${tech.name}`);
                checkAchievements();
            } else {
                showNotification('时空精华不足!');
            }
        }

        // 进入下一关
        function nextLevel() {
            if (gameState.currentLevel < levels.length) {
                switchLevel(gameState.currentLevel + 1);
            }
        }

        // 重生
        function prestige() {
            // 检查是否所有关卡都已完成
            const allLevelsCompleted = Object.values(gameState.levelProgress).every(level => level.completed);
            if (!allLevelsCompleted) {
                showNotification('需要完成所有关卡才能重生!');
                return;
            }
            
            // 计算重生奖励
            let reward = 0;
            for (let i = 1; i <= levels.length; i++) {
                if (gameState.levelProgress[i] && gameState.levelProgress[i].completed) {
                    reward += i * 10;
                    reward += Math.sqrt(gameState.levelProgress[i].resourcesCollected) * 0.1;
                }
            }
            
            // 应用重生加成科技
            if (gameState.techUnlocked.prestige_boost) {
                reward *= 1.2;
            }
            
            // 应用全局倍率
            reward *= gameState.prestigeMultiplier;
            
            // 增加时空精华
            gameState.prestigePoints += Math.floor(reward);
            gameState.prestigeCount++;
            
            // 记录各关卡收集的资源
            levels.forEach(level => {
                if (gameState.levelProgress[level.id]) {
                    const resourceKey = level.resourceName.replace(/\s+/g, '').toLowerCase();
                    if (gameState.prestigeResources[resourceKey] !== undefined) {
                        gameState.prestigeResources[resourceKey] += Math.floor(gameState.levelProgress[level.id].resourcesCollected / 1000);
                    }
                }
            });
            
            // 重置游戏状态(但保留科技树和重生点数)
            const techUnlocked = {...gameState.techUnlocked};
            const prestigePoints = gameState.prestigePoints;
            const prestigeResources = {...gameState.prestigeResources};
            const prestigeCount = gameState.prestigeCount;
            const achievementsUnlocked = {...gameState.achievementsUnlocked};
            
            // 重新初始化游戏状态
            Object.assign(gameState, {
                currentLevel: 1,
                totalCollected: 0,
                lastUpdate: Date.now(),
                playTime: 0,
                levelProgress: {},
                upgrades: {},
                techUnlocked: techUnlocked,
                achievementsUnlocked: achievementsUnlocked,
                prestigePoints: prestigePoints,
                prestigeResources: prestigeResources,
                prestigeCount: prestigeCount,
                prestigeMultiplier: gameState.prestigeMultiplier * 1.1 // 每次重生增加10%的倍率
            });
            
            // 重新初始化关卡进度和升级
            levels.forEach(level => {
                gameState.levelProgress[level.id] = {
                    unlocked: level.id === 1,
                    completed: false,
                    resourcesCollected: 0,
                    resources: 0,
                    productionRate: level.baseProduction
                };
                
                gameState.upgrades[level.id] = {};
                level.upgrades.forEach(upgrade => {
                    gameState.upgrades[level.id][upgrade.id] = {
                        level: 0,
                        cost: upgrade.baseCost
                    };
                });
            });
            
            updateLevelDisplay();
            updateUpgradesDisplay();
            updateLevelsGrid();
            updateAchievements();
            updatePrestigeDisplay();
            
            showNotification(`重生完成!获得 ${Math.floor(reward).toLocaleString()} 时空精华`);
        }

        // 显示通知
        function showNotification(message) {
            const notification = document.getElementById('notification');
            notification.textContent = message;
            notification.classList.add('show');
            
            setTimeout(() => {
                notification.classList.remove('show');
            }, 3000);
        }

        // 保存游戏
        function saveGame() {
            const saveData = {
                ...gameState,
                lastUpdate: Date.now()
            };
            localStorage.setItem('timeExplorerEnhancedSave', JSON.stringify(saveData));
            showNotification('游戏已保存!');
        }

        // 加载游戏
        function loadGame() {
            const saveData = localStorage.getItem('timeExplorerEnhancedSave');
            if (saveData) {
                const loadedState = JSON.parse(saveData);
                
                // 计算离线收益
                const now = Date.now();
                const offlineTime = (now - loadedState.lastUpdate) / 1000;
                const currentLevelState = loadedState.levelProgress[loadedState.currentLevel];
                const offlineResources = currentLevelState.productionRate * offlineTime * calculateTechMultiplier();
                
                // 恢复游戏状态
                Object.assign(gameState, loadedState);
                
                // 为离线期间生成资源
                gameState.levelProgress[gameState.currentLevel].resources += offlineResources;
                gameState.levelProgress[gameState.currentLevel].resourcesCollected += offlineResources;
                gameState.totalCollected += offlineResources;
                gameState.lastUpdate = now;
                
                // 确保所有关卡进度已初始化
                levels.forEach(level => {
                    if (!gameState.levelProgress[level.id]) {
                        gameState.levelProgress[level.id] = {
                            unlocked: level.id === 1,
                            completed: false,
                            resourcesCollected: 0,
                            resources: 0,
                            productionRate: level.baseProduction
                        };
                    }
                });
                
                // 确保所有升级已初始化
                levels.forEach(level => {
                    if (!gameState.upgrades[level.id]) {
                        gameState.upgrades[level.id] = {};
                        level.upgrades.forEach(upgrade => {
                            gameState.upgrades[level.id][upgrade.id] = {
                                level: 0,
                                cost: upgrade.baseCost
                            };
                        });
                    }
                });
                
                showNotification(`游戏已加载!离线期间获得了 ${Math.floor(offlineResources).toLocaleString()} ${getCurrentLevelData().resourceName}`);
            } else {
                showNotification('没有找到存档,开始新游戏!');
            }
        }

        // 重置游戏
        function resetGame() {
            if (confirm('确定要重置游戏吗?所有进度将丢失!')) {
                localStorage.removeItem('timeExplorerEnhancedSave');
                
                // 重置游戏状态
                gameState.currentLevel = 1;
                gameState.totalCollected = 0;
                gameState.lastUpdate = Date.now();
                gameState.playTime = 0;
                gameState.levelProgress = {};
                gameState.upgrades = {};
                gameState.techUnlocked = {};
                gameState.achievementsUnlocked = {};
                gameState.prestigePoints = 0;
                gameState.prestigeCount = 0;
                gameState.prestigeResources = {
                    timeCrystals: 0,
                    spaceGems: 0,
                    darkMatter: 0,
                    energyCores: 0,
                    cosmicDust: 0,
                    quantumParticles: 0,
                    dimensionFragments: 0,
                    creationEnergy: 0
                };
                gameState.prestigeMultiplier = 1;
                
                initGame();
                showNotification('游戏已重置!');
            }
        }

        // 初始化游戏
        window.onload = function() {
            initGame();
            document.getElementById('next-level-btn').onclick = nextLevel;
        };
    </script>
</body>
</html>