请教关于从搜索目标切换到焦点目标的问题
版主及各位大佬,关于魔峰脚本问题请教:想法是:
1. 搜索目标例如名称叫:花儿
2. 搜索到目标,if目标身上变形术时间<1则释放变形术,else 如不是则切换到焦点的目标,释放奥数冲击、奥数飞弹技能;
然后释放技能结束,重复搜索及后续处理。
现状:
可以搜索到目标,且正常判断时间及正常释放变形术。
但后续无法切换到焦点的目标。
单独测试切换到焦点目标语句可以正常使用。麻烦各位大神帮看下哪里有问题。。
- 获取目标名字
local hg = UnitName("target")
-- 搜索目标名为"花儿"的目标
if hg ~= "花儿" then
BeeRun("/targetenemy 花儿")
end
-- 对选择的目标释放技能
if UnitName("target") == "花儿" then
-- 检测目标是否有变形术debuff及其时间
if BeeTargetDeBuffTime("变形术") <= 1 and BeeIsRun("/cast 变形术") then
BeeRun("/cast 变形术")
else
-- 安全切换到焦点目标
if not IsMounted("player") then
RunMacroText("/target [@focustarget,harm]\n");
return true;
end
-- 确保焦点目标是敌人
if UnitExists("focus") and UnitCanAttack("player", "focus") then
-- 对焦点目标执行攻击
if BeeIsRun("/cast [@focus] 奥术冲击") or BeeIsRun("/cast [@focus] 奥术飞弹") then
-- 防止施法打断
if BeeUnitCastSpellName("player") ~= "奥术飞弹" then
-- 输出逻辑
if BeeUnitMana("player", "%") > 20 then
if BeePlayerDeBuffCount("奥术冲击") < 3 then
BeeRun("/cast [@focus] 奥术冲击")
elseif BeePlayerBuffTime("飞弹速射") > 0 then
BeeRun("/cast [@focus] 奥术飞弹")
end
else
if BeePlayerDeBuffCount("奥术冲击") < 1 then
BeeRun("/cast [@focus] 奥术冲击")
elseif BeePlayerBuffTime("飞弹速射") > 0 then
BeeRun("/cast [@focus] 奥术飞弹")
else
BeeRun("/cast [@focus] 奥术飞弹")
end
end
end
end
else
BeeRun("/clearfocus")-- 清除无效焦点
end
end
end
第18行return true;
你确定在这里要返回? blxyz521 发表于 2025-7-5 04:59 PM
第18行return true;
你确定在这里要返回?
谢谢回复~ 那个是忘了删,从我另外一个脚本粘过来的,但我测过,有没有都不会看焦点的目标。。{:5_158:}
还是我用的函数有问题,有点复杂。。 本帖最后由 blxyz521 于 2025-7-7 01:12 PM 编辑
如果附近有花儿,运行到第8句就选中了花儿,第10句满足条件,运行到17句时,因为当前有了敌对目标,"/target [@focustarget,harm]\n"不会切换到focustarget。
如果附近没有花儿,第10句不满足条件,结束。
所以不管有没有花儿,都不会切换到焦点的目标。
页:
[1]