找回密码
 注册
搜索
查看: 1087|回复: 34

重复绕指解决办法整理和升级

[复制链接]
门派:姑苏慕容
发表于 2022-1-24 16:29:05 | 显示全部楼层 |阅读模式
由于游戏底层设定在绕指状态下还可以再释放perform sword.raozhi, 所以在低合气状态下很容易反复raozhi,而其他pfm全放不出来,这个问题已经有了两类解决方案,一类是如版提出的,kk师姐完善的
给武当弟子的绕指思路
另一类是井冈山师兄提出的
关于绕指改动后脚本的修改思路
我都试用了一下,还是倾向井冈山师兄提出的方案,效率更高,潜力更大,但他给的代码还有些小问题,我尝试解决一下
主要问题就是这个raozhi_restart函数的绕指释放机制
function raozhi_restart(kzValue,i,kezhiwugongName) --这里看各自版本,公版应该是这个 这一块主要是纠错,当前绕指buff和克制绕指set有出入会按照pfmpfm或者ppp1更改set后重新放raozhi
    raozhi_sx=kezhi_valueraozhi[tmp.kzValue]
    if raozhi_sx~=nil and raozhi_sx~=tostring(raozhi_tmp) and score.party and score.party=='武当派' then
    wait.make(function()
         wait.time(0.5)
    exe('perform sword.raozhi')
    end)
    wait.make(function()
         wait.time(2.5)
    exe('perform sword.raozhi')
    end)      
    end
end
在判断完当前已释放的绕指属性和应释放的绕制属性后,如果不一致,先等待0.5s释放一次,再等待2.5秒释放一次。这个释放方法有点问题,华山2四条命,如果正好在npc每条命被终结的时候执行perform sword.raozhi是释放不出来的,再有第一个等待0.5s后的绕指释放时,通常在绕指的cd当中,这样就可能导致在一段时间内以低克制应对npc,武当华山任务无所谓,npc很弱,如果是官府任务那就惨了,我死了几次看log都是这个问题。
我把我改完之后的代码发出来

1、在kezhiwugong.lua 最后加上
kezhi_valueraozhi={--mush的变量名称,对应武功使用哪种克制
    ["正"]='妙',
    ["奇"]='险',
    ["刚"]='快',
    ["柔"]='险',
    ["快"]='柔',
    ["慢"]='刚',
    ["妙"]='奇',
    ["险"]='正'
    ["空"]='快',
    ["无"]='快',  --我现在是900级太极剑,克制全了,这里就这样设了,金蛇剑法等级低还没用上,就把空的克制也弄成快了,无的克制也是
}

function raozhi_on(n,l,w)  
        EnableTimer('walkWait22',false)
        DeleteTimer("walkWait22")
        flag.raozhibuff=true
        raozhi_tmp=nil
        raozhi_tmp=tostring(w[2])
        print("绕指柔剑开启!")
end
function raozhi_off()
        flag.raozhibuff=false
        print("绕指柔剑关闭!")
        create_timer_s('walkWait22',1.0,'raozhi_start')  
end
function raozhi_start()
        EnableTimer('walkWait22',true)
        if score.party=='武当派' and flag.raozhibuff==false then
        exe('perform sword.raozhi')
        end
        create_timer_s('walkWait22',1.0,'raozhi_start')--前面这三个函数保持不变
end
function raozhi_restart(kzValue)
    local raozhi_sx=kezhi_valueraozhi[kzValue]--这里我把raozhi_sx变成局域变量,如果其他地方也想调用可改成全局的
        print(raozhi_sx)--这里我加了个屏幕输出,随时观察克制对错
    if raozhi_sx~=nil and raozhi_sx~=tostring(raozhi_tmp) and score.party and score.party=='武当派' then
    wait.make(function()--这里我只保留一个wait函数
         wait.time(0.5)
    exe('set 绕指 '..raozhi_sx..';perform sword.raozhi')--我直接在这里set 绕制,这样pqi、pzhen那些变量里只需要填pfm就可以了
    end)
    end
end
function raozhi_go()--新加个一个函数,应对前面说的raozhi释放不出来的问题
        wait.make(function()
                wait.time(0.5)
    exe('perform sword.raozhi')
    end)
end

2、然后在function kezhiwugongStart()里增加触发

create_trigger_t('afightB111','^(> )*你施展出太极剑法中的绕指柔剑,剑势陡然变(\\D*)手中\\D*','','raozhi_on')
create_trigger_t('afightB112','^(> )*你剑意一滞,又恢复到原来的攻势','','raozhi_off')
create_trigger_t('afightB113','^(> )*你的绕指柔剑技能冷却时间还有\\D*秒!','','raozhi_go')
create_trigger_t('afightB114','^(> )*绕指柔剑只能对战斗中的对手使用。','','raozhi_go')

SetTriggerOption("afightB111","group","afight")
SetTriggerOption("afightB112","group","afight")
SetTriggerOption("afightB113","group","afight")
SetTriggerOption("afightB114","group","afight")

3、再有,在function kezhiwugongSetPerform(tempatt,i,targetid)里加上raozhi_restart(tempatt),也就是这个位置:

        end
        raozhi_restart(tempatt)
end
function kezhiwugongsuccess(kezhi_cmd,k_order,npci)

也就是最后一个end之前

4、function kezhiwugongclose()中加入

flag.raozhibuff=false

5、function kezhiwugongStart()中加入

raozhi_start()
加到一开始的位置就可以

定制版改完没问题,山下、官府、蝶梦楼这些我都试过。公版我看了一下函数都没问题的,但我没用公版测,谁感兴趣可以拿公版测一下。








评分

1

查看全部评分

门派:武当派
发表于 2022-1-24 17:07:42 | 显示全部楼层
看来师弟们都很给力呀。
继续召唤大师兄
门派:武当派
发表于 2022-1-25 08:14:46 | 显示全部楼层
最近不怎么想玩mud,哎。。。
反正能挂机,就不改了!
门派:明教
发表于 2022-1-25 13:22:56 | 显示全部楼层
我大武当也出了一位技术性选手啊
门派:武当派
发表于 2022-1-25 14:38:45 | 显示全部楼层
在判断完当前已释放的绕指属性和应释放的绕制属性后,如果不一致,

如果不一致,不是应该换成别的技能来克制么?
门派:武当派
发表于 2022-1-25 14:40:13 | 显示全部楼层
写得挺多,没看明白要解决什么问题....
门派:姑苏慕容
 楼主| 发表于 2022-1-25 15:33:55 | 显示全部楼层
kkgraphy@tj 发表于 2022-1-25 14:38
在判断完当前已释放的绕指属性和应释放的绕制属性后,如果不一致,

如果不一致,不是应该换成别的技能来 ...

建议你再看看井冈山师兄的帖子,原始的思路是他提出的,进入战斗先盲打一个绕制,再进行克制识别,用raozhi_restart纠错,不一致指的就是raozhi_sx 和盲打出去绕制属性的不一致
门派:姑苏慕容
 楼主| 发表于 2022-1-25 15:35:28 | 显示全部楼层
kkgraphy@tj 发表于 2022-1-25 14:40
写得挺多,没看明白要解决什么问题....

解决的就是使用raozhi_restart纠错可能会放不出raozhi的问题
门派:武当派
发表于 2022-1-25 17:26:43 | 显示全部楼层
wuhun@tj 发表于 2022-1-25 15:35
解决的就是使用raozhi_restart纠错可能会放不出raozhi的问题

没看明白。
加油,修改机器总是好的。
门派:明教
发表于 2022-1-25 21:28:29 | 显示全部楼层
能改机器人都是值得佩服的,是从你说下面是你贴的代码开始,都是可以拷贝直接用点吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|书剑永恒MUD ( 闽ICP备14012032号|闽公网安备 35050202000162号 )

GMT+8, 2025-6-19 18:26 , Processed in 0.028932 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表