You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python 2中实现指令非阻塞冷却功能的方法咨询 附现有代码

Python技能非阻塞冷却实现方案

我们使用Python标准库time模块实现冷却逻辑,全程不会阻塞其他指令的正常调用,完全适配你现有代码结构,修改成本极低。


核心实现逻辑

  • 给需要加冷却的技能单独设置两个变量:冷却时长(单位:秒)、上次成功使用技能的时间戳
  • 每次触发该技能时,先计算当前时间与上次使用时间的差值,差值小于冷却时长则提示冷却中,不执行技能效果
  • 差值满足冷却要求则执行技能逻辑,同时更新上次成功使用技能的时间戳为当前时间
  • 仅在触发对应技能时做时间差校验,完全不影响其他指令的正常运行

修改后的完整代码

我们以给R技能(重拳)加3秒冷却为例,你可以自行调整冷却时长,或者给E技能也添加相同逻辑:

import time  # 导入时间模块,用于计算冷却

while True:
    dummy = 300
    standopt = input("Choose between TWHV and SP (DUMMY MECHANIC UNFINISHED FOR SP).\nIf you already chose a Stand, you're choosing again due to the dummy's hospitalisation.")
    if standopt.lower() == "twhv":  # 简化判断逻辑,统一转小写不用写多个条件
        # 初始化冷却相关变量,每次选完角色重置冷却状态
        r_cooldown = 3  # R技能冷却时长3秒,可自行修改
        last_r_use = 0  # 记录上次R技能成功使用的时间,初始为0代表从未使用过
        while True:
            if dummy >= 1:
                Action = input("Your Stand awaits instructions...(e, r)").lower()  # 统一转小写简化判断
                if Action == "e":
                    print("Barrage (28)")
                    dummy -= 28
                    print(f"Your dummy is now on {dummy} HP.")
                elif Action == "r":
                    current_time = time.time()  # 获取当前时间戳
                    # 检查是否满足冷却要求
                    if current_time - last_r_use < r_cooldown:
                        remaining = round(r_cooldown - (current_time - last_r_use), 1)
                        print(f"Heavy Punch还在冷却中,剩余{remaining}秒!")
                        continue  # 跳过后续执行,不触发技能效果
                    # 冷却结束,执行技能逻辑
                    print("Heavy Punch (30)")
                    dummy -= 30
                    print(f"Your dummy is now on {dummy} HP.")
                    last_r_use = current_time  # 更新R技能上次使用时间

可调整说明

  • 若需要给E技能也添加冷却,只需要新增e_cooldown和last_e_use两个变量,在E技能的判断逻辑里加相同的时间校验即可
  • 修改r_cooldown的数值即可调整冷却时长,单位为秒
  • 原有代码的所有功能都正常保留,仅新增了冷却校验逻辑

内容的提问来源于stack exchange,提问作者Saturdatwal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 16:36:03