找回密码
 注册
搜索
查看: 1020|回复: 9

无法风教你如何提高修炼速度(五)《关闭领悟前打坐》

[复制链接]
门派:明教
发表于 2018-11-1 01:06:59 | 显示全部楼层 |阅读模式
450级后,跟黄药师就学不了了,会自动去达摩院后殿领悟基本技能,而去跟黄药师学习的时间长短大概是1分多钟,领悟的时间长短大概是3分钟,足足多了2分钟。

在修改了领悟次数和每次alias的时间后,参看之前的帖子——

http://www.sjever.net/bbs/forum. ... &extra=page%3D1

我们还可以把内力准备取消,让机器人直接去领悟。

方法如下,打开shujian.lua——

function lingwu_unwield()
        weapon_unwield()
        return check_busy(lingwuzbok)--不准备内力,直接领悟。
end

function lingwuzb()
  zhunbeineili(lingwuzbok)
end
function lingwuzbok()
  go(lingwu_goon,'嵩山少林','达摩院后殿')
end

解释:函数lingwu_unwield()是在领悟前把手中武器卸掉,然后return是在check_busy检查忙不忙之后退出函数,而check_busy又调用了函数lingwuzb()领悟准备。
lua语法在函数方面,经常是一个函数套着一个函数,这里是三个函数套在一起:lingwu_unwield(),check_busy(),lingwuzb()

下边函数lingwuzb()又调用了函数zhunbeineili()然后里面再调用lingwuzbok(),也是三个函数一个套一个。
其作用就是起到了函数挂起的作用,lingwuzbok()被挂起,它要先等zhunbeineili()完成(准备内力完成),它才能执行lingwuzbok()(领悟准备ok)--都是拼音,一看就知道什么意思。

再下边函数lingwuzbok()又调用了函数go(),再调用lingwu_goon()。
函数go()就是管跑路的,里面有三个参数,第一个是函数,后边两个是地名,作用是跑到嵩山少林的达摩院后殿之后,执行函数lingwu_goon(),后者才是真正管领悟的函数。

所以如果你看懂了这一大堆函数调用的关系,修改的原理也就很简单了,直接把lingwu_unwield()里的函数改名,红字部分,lingwuzb()改成lingwuzbok()。

意思是说,您也别准备了,直接ok吧!这样,就跳过了内力准备函数了。

不过在实际操作中,我发现如果取消内力准备,当内力领悟到少于一半时,就会触发去睡觉程序,然后睡觉回来就会陷入死循环,不断地跑去睡觉再绕回来,我实在不能理解我足足还剩7000的内力,为啥不用光再去睡觉呢?

所以干脆把程序改成,内力小于1000才触发睡觉,这样我14000的内力足以完成500多点潜能的领悟,一次也没触发睡觉,也不影响之后的做任务,可见内力小于一半去睡觉,实在是没有任何道理的设计!

修改如下(红字部分)——

function lingwu_goon()
    if locl.room~="达摩院后殿" then
       return lingwu_finish()
    end
    EnableTriggerGroup("lingwu",true)
           local leweapon=GetVariable("learnweapon")
           exe('wield '..leweapon)
    local skill=skillsLingwu[tmp.lingwu]
       
        if not skills[skill] or skills[skill].lvl==0 or skills[skill].lvl>=hp.pot_max-100 then
           return lingwu_next()
        end
       
           if hp.neili<1000 then
              if hp.exp>20000000 or score.gender=='无' then
                 return go(lingwu_eat,'武当山','茶亭')
              else
                 return lingwuSleep()
              end
                 end
       yunAddInt()
       flag.idle=nil
       exe('hp;yun jing;#10(lingwu '..skill..')')
       return check_bei(lingwu_alias,0.8)
end

好了,看明白了吗?快来试试吧!:)
门派:明教
 楼主| 发表于 2018-11-1 02:33:05 | 显示全部楼层
抱歉,上边的代码有错误,如果内力不足1000,去睡觉回来的话,会陷入死循环,来回在睡觉和达摩院后殿转圈,原因是hp.neili存得还是上一次领悟后的内力值,也就是小于1000的值。

改正的方式如下——
function lingwu_unwield()
        weapon_unwield()
                exe('hp')--让hp.neili的值在睡觉后刷新,避免死循环。
        return check_busy(lingwuzbok)--不准备内力,直接领悟。
end
门派:桃花岛
发表于 2018-11-1 08:39:17 | 显示全部楼层
所以得在lingwuzbok上一行增加一个刷新hp.neili的东东咯?
门派:明教
 楼主| 发表于 2018-11-1 10:18:18 | 显示全部楼层
bobby@tj 发表于 2018-11-1 08:39
所以得在lingwuzbok上一行增加一个刷新hp.neili的东东咯?

是的,每次刷新HP时,触发器都会自动更新这些参数的。
门派:姑苏慕容
发表于 2019-5-24 19:58:03 | 显示全部楼层
不错学习中
门派:桃花岛
发表于 2019-5-25 04:46:54 | 显示全部楼层
高手啊,从细节里扣效率                        
门派:铁掌帮
发表于 2019-5-26 11:38:59 | 显示全部楼层
kuaiyi@tj 发表于 2019-5-25 04:46
高手啊,从细节里扣效率

只能从细节里面扣了,大面上公版已经不错了
门派:铁掌帮
发表于 2019-5-26 11:47:10 | 显示全部楼层
无法风的效率应该是跟岛主差不多了
门派:武当派
发表于 2019-6-5 15:14:08 | 显示全部楼层
不错学习中不少收获
门派:姑苏慕容
发表于 2019-6-11 20:00:46 | 显示全部楼层
这个太好了节约不少时间
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-6-10 04:38 , Processed in 0.055128 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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