找回密码
 立即注册

QQ登录

只需一步,快速开始

游戏开服表 申请开服
游戏名称 游戏描述 开服状态 游戏福利 运营商 游戏链接
广告位招租 联系QQ51605539 今日新开 进入游戏
非官方wiki 芙蕾雅NPC-技能-道具数据库 永久可用 血玫瑰社区 进入游戏
天堂2协议 天堂2客户端协议附带英文客户端下载 不定期更新 L2FATER 进入游戏
Close
查看: 7|回复: 0

巴溫重生時間

[复制链接]
  • 打卡总天数:4
  • 打卡总奖励:27
发表于 昨天 17:36 | 显示全部楼层 |阅读模式

        Private void scheduleNextSpawn()

        {
                Calendar nextStart = Calendar.getInstance();
                // 1. 務必刪除或註解掉原本設定固定星期的這一行:
                // nextStart.set(Calendar.DAY_OF_WEEK, RAID_DAY);
               
                // 2. 設定重生的時間(例如晚上 21:00)
                nextStart.set(Calendar.HOUR_OF_DAY, SPAWN_HOUR);
                nextStart.set(Calendar.MINUTE, 0);
                nextStart.set(Calendar.SECOND, 0);
               
                // 3. 如果目前的系統時間已經過了今天的 21:00,就直接加上 2 天
                if (Calendar.getInstance().after(nextStart))
                {
                        nextStart.add(Calendar.DATE, 2); // 👈 這裡改成 2,就是兩天後
                }
               
                long delay = nextStart.getTimeInMillis() - System.currentTimeMillis();
               
                StatSet info = GrandBossManager.getInstance().getStatSet(BAIUM);
                info.set("respawn_time", nextStart.getTimeInMillis());
                GrandBossManager.getInstance().setStatSet(BAIUM, info);
               
                LOGGER.info("Baium AI: Next spawn scheduled for " + nextStart.getTime());
               
                startQuestTimer("SCHEDULED_UNLOCK", delay, null, null);
        }
------------------------------------------------------------------------------------------------------

        private boolean isInsideAvailabilityWindow()
        {
                Calendar now = Calendar.getInstance();
                int hour = now.get(Calendar.HOUR_OF_DAY);
               
                // 拿掉原本的 (day == RAID_DAY) 判斷,只要小時符合 21~23 點就判定為開放
                return (hour >= SPAWN_HOUR) && (hour < CLOSE_HOUR);
        }

----------------------------------------------------------------------------------------------------------

        private void checkHardClose()
        {
                final Calendar now = Calendar.getInstance();
                // 刪除或註解掉原本檢查星期的條件,只保留小時檢查:
                // if ((now.get(Calendar.DAY_OF_WEEK) == RAID_DAY) && (now.get(Calendar.HOUR_OF_DAY) >= CLOSE_HOUR))
                if (now.get(Calendar.HOUR_OF_DAY) >= CLOSE_HOUR)
                {
                        // ... 下方原本的代碼保持不變 ...
                }
        }

修改3段...


评分

参与人数 1威望 +1 金钱 +1 贡献 +1 收起 理由
l2fater + 1 + 1 + 1 用心讨论,共获提升!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表