懒动行不行 发表于 2022-12-19 15:25:21

BEE的BUG?多窗口脚本无法正确执行?

目前测试下来就是术士的脚本存在问题,非当前窗口的话,一直上腐蚀术或献祭,根本不管什么判断语句,但是一旦切换到当前窗口,一切都正常了
WOW勾选了窗口模式,没有勾选最大化
不知道怎么解决,有大佬遇到过吗?


admin 发表于 2022-12-19 22:09:56

一直等你QQ找我

lk47354813 发表于 2022-12-19 22:23:20

本帖最后由 lk47354813 于 2023-1-16 09:13 PM 编辑

其实你就少个DOT判定而已

懒动行不行 发表于 2022-12-20 19:10:01

有点摸到门道,但是还是有点不清楚
背景是多开,控制T,其他DPS和奶脚本控制,术士的脚本在单开时没有任务问题但是多开就出现,而且是100%
由于还是小号,术士的宏是这样的
--无腐蚀上腐蚀
if BeeUnitAffectingCombat("focus") or BeeUnitAffectingCombat("player") and not UnitIsDeadOrGhost("target") and BeeUnitBuff("腐蚀术","target",0,2)<=0
then BeeRun("腐蚀术") return;end
--无献祭献祭
if BeeUnitAffectingCombat("focus") or BeeUnitAffectingCombat("player") and not UnitIsDeadOrGhost("target") and BeeTargetDeBuffTime("献祭")<=0 and BeeIsRun("献祭")
then BeeRun("献祭"); BeeUnitCastSpellDelay("献祭",1,"target") return;end
if BeeUnitCastSpellName("player")=="吸取灵魂" then return;end
--生命低下时灵魂吸取
if BeeUnitAffectingCombat("player") and not UnitIsDeadOrGhost("target") and BeeUnitHealth("target","%")<=25
then
    BeeRun("/cast 吸取灵魂")
end
--暗影箭填充
if BeeUnitAffectingCombat("focus") or BeeUnitAffectingCombat("player") and not UnitIsDeadOrGhost("target") and BeeIsRun("暗影箭") then BeeRun("/cast 暗影箭") return;
end

当然代码存在之前版主指出的重复问题,降低了执行效率,但是至少在单开时并没有任何问题,上腐蚀、献祭,然后暗影箭填充,没有DOT补DOT,都很流畅,但是一旦多开,就无限腐蚀术了
后面受到版主点评提醒,优化了下重复代码,将腐蚀术和献祭纳入一个前置条件
if BeeUnitAffectingCombat("focus") or BeeUnitAffectingCombat("player") and not UnitIsDeadOrGhost("target") then
    if BeeTargetDeBuffTime("腐蚀术")<=0 and BeeIsRun("腐蚀术") then BeeRun("腐蚀术") else if BeeTargetDeBuffTime("献祭")<=0 and BeeIsRun("献祭") then BeeRun("献祭") return;
      end
    end
end
多开就没再出现无限上DOT直至蓝空的情况了
没想清楚是哪里出了问题{:5_168:}

猫毛毛 发表于 2023-1-15 12:37:55

太高端了,没看明白啥问题!!!{:5_247:}{:5_247:}{:5_247:}

dfgyhh 发表于 2025-3-10 18:52:55

页: [1]
查看完整版本: BEE的BUG?多窗口脚本无法正确执行?