htt0528 发表于 2015-6-28 01:22:28

【教程】【GC六段】 在脚本运行过程中插入技能

本帖最后由 托托 于 2015-12-13 21:08 编辑

作为一个圣骑 自从用了GC发现无敌都开不下来就趟不太合适,就想研究下方案运行过程中如何插入技能
发现论坛里已经有解决方案 开关宏控制插入技能: 开关宏教程
仔细阅读后发现此解法不适合我原因有:
1.操作起来比较麻烦 如果技能多要搞好久
2.强迫症病发 如果用这个宏替换原来的技能 那么不开GC的时候按这个宏是无效的 搞2个按键界面太乱 更是麻烦




所以有了如下方法:
不需要FH解锁 OLUA就可以了
原理:订阅战斗记录 找到因卡CD问题未施法成功的技能,随后施放,如技能CD则跳过,超过1.5未施放成功跳过,如果几乎同时按下了制裁 无敌,并都未施放成功,以后一个为准
首先创建一个自定义脚本,就叫“插入技能”吧 注意是脚本不是宏




然后点编辑




如下代码复制进去保存 技能部分根据自己需要调整 前面是技能ID+个逗号 后面的--之后是注释 可有可无
关于支持的技能(无GCD技能就不用加了,反正都能按的出来)
1.不需要目标可以释放的 或 当目标为敌方默认对自己施放的 类似骑士无敌 自由 圣疗 法师冰箱 小德超凡之盟
2.对当前目标释放的 类似制裁或一般伤害技能
3.对友方释放的也可以加入进去,比如保护,但在施放期间请务必保持当前目标放在友方身上

local SpellList = {
    642,    -- 圣盾术
    105593,    -- 制裁之拳
    121783,    -- 超脱
}
F=F or CreateFrame("frame")
F:RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED")F:SetScript("OnEvent",function(_,_,_,e,_,_,whocast,_,_,_,_,_,_,spellID,_,_,retext)
      if(e=="SPELL_CAST_FAILED" and whocast==GetUnitName("player") and retext=="尚未恢复")
      then
            for i=1,#SpellList do
                if spellID==SpellList
                then
                  waitToCast={spellID,GetTime()}
                end
            end
      end
end)
if (waitToCast ~= nil) then
    if (amSpellCooldown(waitToCast)>1.5 or GetTime()-waitToCast>1.5)
    then
      waitToCast=nil
    else
      if amSpellCooldown(waitToCast)==0
      then
            CastSpellByName(tostring(select(1,GetSpellInfo(waitToCast))))
      end            
    end
end
无视我的GC版本吧。。买不起新版。。旧版6.2又不让用只能自己随便改改 能跑起来就行


然后新建个施法方案,排在最上面,再选添加宏/脚本,选刚刚建立的叫插入技能的脚本




然后添加条件,添加函数,计算逻辑表达式




填入参数


F==nil or waitToCast~=null选择返回值

然后就搞定了,技能什么的根本不用动
再也不用担心无敌开不出来就扑了!


墨水 发表于 2015-7-5 14:18:13

支持楼主这样技术高手
类似我这种业余的败家子类型的人对楼主拜服!
看到代码瞬间就觉得我的人生真的失败阿:'(

老血 发表于 2015-6-28 10:57:19

帖子内容详实,心态着实真诚,可是版主们居然都不给评价,这是严重的政治问题,值得全党全军全国各族人民深思!

来去忽忽 发表于 2015-10-5 10:42:09

本帖最后由 来去忽忽 于 2015-10-5 11:46 编辑

读条技能可以吗


我试了下 为什么我把这个放到最上面打上勾
后面的输出方案就不起作用了呢。。完全不执行啊。。。

陈·风暴烈酒 发表于 2015-6-28 10:59:59

本帖最后由 陈·风暴烈酒 于 2015-6-28 11:11 编辑

技术贴!应该大力支持像楼主这样的新生技术牛,我等业余新手小屌看到代码什么的瞬间就觉得好流弊.....

无节操好少年* 发表于 2015-6-28 11:01:43

现在像楼主这样有探索精神的朋友很少了,老血赶紧加分加分

萨隆尼 发表于 2015-6-28 20:45:01

够高端。之前的做法不是做开关宏么。。这个厉害

堕落的天使* 发表于 2015-7-21 15:07:25

迷惘的风 发表于 2015-8-18 09:58:52

学代码走上人生巅峰的节奏啊{:5_127:}

454535186 发表于 2015-9-1 01:18:54

学习了,太久没用基本忘干净了,看帖回帖攒钱攒姿势。

轻语人 发表于 2015-9-3 17:26:51

这么厉害啊23333333333333
页: [1] 2
查看完整版本: 【教程】【GC六段】 在脚本运行过程中插入技能