魔兽世界玩家社区APP官网

标题: [70-防御] 一个正义防御嘲讽宏的小优化 [打印本页]

作者: 甜如蜜forever    时间: 2023-5-27 11:28
标题: [70-防御] 一个正义防御嘲讽宏的小优化
论坛里常见的鼠标指向嘲讽宏一般都是这样的:
[code=lua]
#showtooltip
/cast [@mouseover,exists]正义防御; 正义防御
[/code]
这个宏会优先对鼠标指向的单位释放正义防御。如果指向的是敌方,系统会自动变成敌方的目标。如果没有指向,会对当前目标释放正义防御。
但是在少数情况下按下这个宏有一个比较致命的缺陷:
-场景一: 怪物被冰环了,没有目标。
-场景二:你鼠标抖了,没有放在正确的地方。
在这两个场景下,你的鼠标会呈现一种特殊的状态:
(, 下载次数: 49)

玩过治疗的同学应该比较熟悉,这种状态是“选中了技能但是还没有选择目标的状态”。
在这个状态下,猛按宏是没用的,这个宏已经完全失效了。只有额外按一次左键或者右键才能解除这个状态。
[quote]
因此某些情况下:
队友ot了,你按宏。嘲讽!
鼠标位置偏了,鼠标出现蓝边。
你没发现,你按第二下宏。宏无效。
你慌忙的点了一下右键取消,然后重新按宏。
位置又偏了,鼠标又出现蓝边。
队友已经死了,而你还在无助的按动已经无效的嘲讽宏。
[/quote]
解决这个问题的方法其实非常简单:
[code=lua]
#showtooltip
/cast [@mouseover,exists]正义防御; 正义防御
/cast 召唤军马
[/code]
用一个新技能来顶掉“选中了技能但是还没有选择目标的状态”。
而由于是在战斗中,你也根本不可能召唤出来坐骑。
现在,这个宏从体验上来说已经和战士熊的宏完全一致了!
===2021-09-21 10:19===
几个月玩下来,这个宏大大超出了我的预期,比我想象的更好用。

比如说,坦克拉一个小怪,这个小怪仇恨不稳随时可能ot。

熊和战士,都需要紧张的盯着这个小怪,等看见怪ot了,转身去看近战了,再按嘲讽。这中间有延迟,怪打近战就容易死人。

但是骑士就非常简单。啥都不干就无脑按这个宏,可以保证在第一时间就把怪嘲讽住。

这是真正意义上的秒嘲。
作者: 两个小胖猪遗    时间: 2023-5-27 11:33
请教一个鼠标指向保护宏
作者: 直子的爱本    时间: 2023-5-27 11:35
收藏了
作者: 又见阿凡提彻    时间: 2023-5-27 11:38
好东西
作者: 123457176    时间: 2023-5-27 11:43
[code=lua]
#showtooltip 保护祝福
/stopcasting
/cast [@mouseover,help,exists]保护祝福;[@targettarget,help]保护祝福;保护祝福
[/code]对鼠标指向,并且真的指向了什么的友方目标施加保护祝福
对自己目标的目标施加保护祝福
对自己施加保护祝福
作者: 喜欢吃芒果干俺    时间: 2023-5-27 11:45
啊好东西谢谢了
作者: 用户5592359840    时间: 2023-5-27 11:49
大佬牛B   我不需要给自己保护  是不是把最后的 ;保护祝福 删除就行?
作者: 阳光里的他    时间: 2023-5-27 11:51
哦槽,我想了很久没能解决的办法被你解决掉了,太棒了
作者: 空城乱人心乱    时间: 2023-5-27 11:55
mark++
作者: dw3995    时间: 2023-5-27 11:57
很棒的思路!
作者: wangliqxm    时间: 2023-5-27 12:03
不是可以直接对怪使用吗  为什么要做宏?
作者: 水草香蕉壁    时间: 2023-5-27 12:06
我改的目标的目标宏, 用起来跟嘲讽一样
作者: 我的苦恼冉    时间: 2023-5-27 12:08
马克一下!!
作者: 明绍宗朱聿键鼻    时间: 2023-5-27 12:11
后面技能名字改成误导是不是道理一样的?
作者: 123457092    时间: 2023-5-27 12:15
牛批 普通嘲讽宏我都懒的抄你这明天一定要弄一个。 天天就跟卡键位似得。神冰天赋说嘲不到就嘲不到
作者: 此人正在学习    时间: 2023-5-27 12:17
谢谢楼主分享
作者: 幸福341    时间: 2023-5-27 12:20
这个有点厉害啊楼主
作者: 刘金栋    时间: 2023-5-27 12:24
上面的宏可以进一步简化一下,顺便科普下这类组合宏的作用原理
极简的宏格式
/cast 保护祝福
在技能前面加上[],即为一次判断,不填写条件,即不进行判断(等于一次直接施放)
每一个[]都为一次判断,优先级分先后,第一个[]里的判定为否时才会跳到第二个[]来第二次判定,直到判定为真,而题主的情况是所有判定都为否,所以才会出现蓝色描边,解决题主的办法就是尽可能多次判定,包涵所有情况
每一个[]里的判定条件同时全部为真,此[]才会判定为真,否则为否
每一个[]里的条件不分先后
exists是目标存在(渣英语,如果单词不是这个意思,见笑了)
nodead目标是活着的,不是尸体
help为友方单位
harm为敌方单位顺便一提,在这狗论坛如果输入[+@,就会被论坛吞掉[],且[]里的字体变成蓝色
所以直接复制他们的宏拿来用是不行的,得自行添加[],或者把@修改为target=,就可以避免以上尴尬,如下再举例,上面说的保护祝福可以这样简化
/cast [target=mouseover,exists,nodead,help][target=targettarget,exists,nodead,help][]保护祝福详细说,这个宏有3个[],就是有3次判定
第一次判定里是写目标是鼠标指向,且鼠标指向有目标(不管敌我,后面会再次判定),且目标不是尸体,且目标为友方,这4个条件全部达成,宏会直接跳过后面2个[]直接执行技能
如果第一次[]里的4个条件有一次没达成,宏会走向第二个[]
第二个[]里的条件是,目标是目标的目标,且目标的目标存在(如果目标没有目标,则这一个条件不满足),且目标的目标不是尸体,且目标的目标为友方单位,这4个条件全部达成,宏会按照此[]里的条件施放技能
第三个[]为空,即不进行判定,直接施放,一般都用来对自己施放,相当于在宏最后再添加一句 ;保护祝福,或者另起一行/cast 保护祝福不过题主有没有想过,当目标的目标可以施放保护祝福,而紧急情况需要对自己施放保护怎么办?要么切掉目标,要么找到自己的鼠标指向,
所以个人觉得第二个[]作用没意义,或者在第二个[]里加一个组合键,例如添加一个条件mod:alt,如果按着alt点击此宏会对目标的目标施放保护,否则跳向下一条[],即对自己施放
但我一般都会有alt+若干键设定快捷键,这样一来很容易有冲突,所以我一般也不用组合键来设计宏
作者: 迟到399    时间: 2023-5-27 12:26
马克一下!zsbd
作者: 兔仔妹致    时间: 2023-5-27 12:28
你说的对,但是正义防御可以直接对怪用,为什么要做宏?




欢迎光临 魔兽世界玩家社区APP官网 (https://huaijiufu.com/) Powered by Discuz! X3.5