听海 发表于 2023-8-31 22:13:34

我搞错了,CASTSPELLBYNAME在1.0应该不是保护函数,你的1.12可以用超级宏嘛?可以的话我试着再改下
你提供下目标身上的破甲的DB和法术书中的鼠标提示截图

图片已经发了。。。不知道对不对

懒动行不行 发表于 2023-9-1 10:09:29

本帖最后由 懒动行不行 于 2023-9-1 10:12 AM 编辑

/script local p,c,b,i,f=GetComboPoints(),CastSpellByName;for i=1,40 do b=UnitDebuff("target",i);if b and strfind(b,"破甲") then f=1;break;end;end;if p>0 and not f then c("破甲");elseif p==5 and f then c("剔骨");else c("邪恶攻击");end;

试试看这个,如果上面不行再试试下面
/script local p,c,b,i,f=GetComboPoints(),CastSpellByName;for i=1,40 do b=UnitDebuff("target",i);if b and string.find(b,"破甲") then f=1;break;end;end;if p>0 and not f then c("破甲");elseif p==5 and f then c("剔骨");else c("邪恶攻击");end;

注意看下复制到宏里面的内容是否完整

听海 发表于 2023-9-1 19:24:06

/script local p,c,b,i,f=GetComboPoints(),CastSpellByName;for i=1,40 do b=UnitDebuff("target",i);if b and strfind(b,"破甲") then f=1;break;end;end;if p>0 and not f then c("破甲");elseif p==5 and f then c("剔骨");else c("邪恶攻击");end;

试试看这个,如果上面不行再试试下面
/script local p,c,b,i,f=GetComboPoints(),CastSpellByName;for i=1,40 do b=UnitDebuff("target",i);if b and string.find(b,"破甲") then f=1;break;end;end;if p>0 and not f then c("破甲");elseif p==5 and f then c("剔骨");else c("邪恶攻击");end;

注意看下复制到宏里面的内容是否完整

复制完整,但是会一直施放破甲,五星也是破甲不会放剔骨

贾维斯117 发表于 2023-9-1 19:33:30

应该是GetComboPoints这个问题,先得确认这个能不能用

懒动行不行 发表于 2023-9-1 21:21:10

听海 发表于 2023-9-1 07:24 PM
复制完整,但是会一直施放破甲,五星也是破甲不会放剔骨

会释放邪恶攻击嘛?
几星释放的破甲,是一星就放破甲嘛?
如果目标身上有破甲,还会不会放破甲?

听海 发表于 2023-9-2 09:34:37

会释放邪恶攻击嘛?
几星释放的破甲,是一星就放破甲嘛?
如果目标身上有破甲,还会不会放破甲?
会施放邪恶攻击,我们是私服,已经魔改过,直接邪恶就是五星,然后就是破甲,目标有破甲还是会一直施放破甲

听海 发表于 2023-9-2 09:36:53


/script local p,c,b,i,f=GetComboPoints(),CastSpellByName;for i=1,16 do b=UnitBuff("player",i);if b and strfind(b,"SliceDice") then f=1;break;end;end;if p>0 and not f then c("切割");elseif p==5 and f then c("剔骨");else c("邪恶攻击");end;

我现在只能用这个宏然后手动破甲

再回到这个宏就很好用

懒动行不行 发表于 2023-9-2 15:29:46

听海 发表于 2023-9-2 09:34 AM
会施放邪恶攻击,我们是私服,已经魔改过,直接邪恶就是五星,然后就是破甲,目标有破甲还是会一直施放破 ...

那做个测试看看那里出问题了,我怀疑是 b=UnitDebuff("target",i)这个语句有问题
这样,你找个没人地方的木桩,手动上破甲,在破甲DB没消失前按以下宏测试:
1、/run print(local b,f;for i=1,40 do b=UnitDebuff("target",i); if b and string.find(b,"破甲") then f=1 print(f);break;end
看看聊天框是否有1打印出来
2、如果上面没有1没出现聊天框,那么还是在目标破甲DB保持的状态下,按下面的宏测试
/run print(local b,f;for i=1,40 do b=UnitAura("target",i); if b and string.find(b,"破甲") then f=1 print(f);break;end
同样,观察聊天框是否有1

如果上面2组试验都失败了,你再找个目标,手动上5星,不要切换目标,按下面的宏:
1、/run print(GetComboPoints())
看看聊天框是否有5打印出来
2、如果没有打印,再试下下面的宏,目标还是要存活且有5星
/run print(GetComboPoints(“player","target"))
看看聊天框是否有数字输出,输出的是数字几?

听海 发表于 2023-9-2 21:11:05

1、/run print(GetComboPoints())
看看聊天框是否有5打印出来

用这个打出来是5,。。。。。。

听海 发表于 2023-9-2 21:20:24

前两组都没有数字1出现。。。。
页: 1 [2] 3 4
查看完整版本: 拜谢大佬能修改下1.12的宏