找回密码
 注册
搜索
查看: 1435|回复: 16

给慕容弟子的bishen code

[复制链接]
门派:姑苏慕容
发表于 2020-4-13 10:50:37 | 显示全部楼层 |阅读模式
本帖最后由 ryru@tj 于 2020-4-26 14:34 编辑

Update:2020-4-26
更新skill数据库,完整skill等阶
新增函数bs_skill_check
比如bs_skill_check('对方技能','地'),判断对方技能是否到达地级以上,返回 true or false



bishen更新后,pfm bishen可以模拟对方的skill,并且可以出对方skill的内力,物理和致命pfm
相关pfm效果我都时不时发了在慕容板块里面了,还是挺有玩法的

下载bishen.zip,解压成bishen.lua,放到mushs\lua目录里面,bishen.lua里面的skill我没整理完,需要的参照格式添加就好了,也可以整理好了发给我,我统一更新

最好有倚天屠龙和倚天屠龙.残,m的建议,没有yttl也可以出的,但可能有点限制

shujian.lua里面,最上面require那里加一个

require "bishen"


调用的时候也简单
先做个trigger,放在job.lua里面

  1. create_trigger_t('fight99','^(> )*你仰天狂笑\\D*成名绝技『(\\D*)』','','bishen_fight_check')
  2. SetTriggerOption("fight99","group","fight")
复制代码

然后就是pfm了,也放在job.lua里面
我简单写个,大家可以按照自己想法设置
  1. function bishen_fight_check(n,l,w)
  2.         messageShow('对手功夫:'..w[2])
  3.         if bs_pfm(w[2],job.id) then
  4.                 print('用你的功夫弄死你!')
  5.         end
  6. end
复制代码




下面解释下代码

SKILL的code :
Frozon是Y的话,就是这个pfm不使用        
[1],[2] 这种是优先级,也就是pfm先出序号是[1]的招数

  1. ["落英神剑掌"]={
  2.                         ["ID"]='luoying-zhang',
  3.                         ["PFM"]={
  4.                                         [1]={
  5.                                                 ["Name"]='劈空',
  6.                                                 ["PFMID"]='pikong', --- perform pikong
  7.                                                 ["heqi"]=80,        
  8.                                                 ["Type"]='物理',
  9.                                                 ["Frozen"]='N',         
  10.                                                 },
  11.                                         },
  12.                         ["Level"]='玄',
  13.                 },
复制代码


--PFM的code

bs_pfm(skill,id,heqi)
语法为bs_pfm('华山剑法') 或者 bs_pfm('华山剑法',job.id) 或者 bs_pfm('华山剑法',job.id,hp.heqi)
有job.id就填,不填也可以执行,hp.heqi是你当前的合气值,方便后续判断合气,可以不填

填合气的话,是出符合合气的优先级最高的pfm
不填合气的话就是所有pfm都出,按优先级排序,jiali max;perform pfm1;perform pfm2;……

代码里面的
        exe(l_pfm)
        Send('alias pfmpfm '..l_pfm)

可以放在job的时候再处理,这个看自己想法,有问题可以在慕容板块里面发帖问,机器人板块我就不回答了



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

2

查看全部评分

门派:明教
发表于 2020-4-13 11:23:06 | 显示全部楼层
给如版点赞。。                     
门派:姑苏慕容
发表于 2020-4-13 18:03:25 | 显示全部楼层
没解YTTL呢。。。等解了再用,先收藏下来,点赞如版~~~
门派:武当派
发表于 2020-4-13 19:49:29 | 显示全部楼层
这个应用门槛还是挺高的啊 要全套倚天屠龙
门派:姑苏慕容
 楼主| 发表于 2020-4-13 19:53:37 | 显示全部楼层
alphadog@tj 发表于 2020-4-13 19:49
这个应用门槛还是挺高的啊 要全套倚天屠龙

可以用,就是有的pfm可能有点问题,我也没法测试
门派:明教
发表于 2020-4-14 00:07:06 | 显示全部楼层
  1.                 for i=1,table.getn(bs_skills[bs_skill]["PFM"]) do
  2.                         if bs_skills[bs_skill]["PFM"][i]["Frozen"]~="Y" then
  3.                                 if heqi and tonumber(heqi) then
  4.                                         if tonumber(heqi)>=tonumber(bs_skills[bs_skill]["PFM"][i]["heqi"]) then
  5.                                                 print('目前合气'..heqi..',按优先级最适合的perform是'..bs_skills[bs_skill]["PFM"][i]["Name"]..',需要消耗'..bs_skills[bs_skill]["PFM"][i]["heqi"]..'合气。')
  6.                                                 l_pfm=l_pfm..';perform '..bs_skills[bs_skill]["PFM"][i]["PFMID"]
  7.                                                 if id then l_pfm=l_pfm..' '..id end
  8.                                                 break
  9.                                         end
  10.                                 else       
  11.                                                 --print('不做合气判断')
  12.                                                 l_pfm=l_pfm..';perform '..bs_skills[bs_skill]["PFM"][i]["PFMID"]
  13.                                                 if id then l_pfm=l_pfm..' '..id end
  14.                                 end               
  15.                         end
  16.                 end
复制代码


这个默认是偷合气最高的那个pfm吗?我看循环比对之后,如果不填合气值,就偷最后那个选项了。

非常不错啊!这样可以用程序管理海量的pfm,自动识别自动出招了。

我们不用bishen的其它门派,也可以借鉴一下,更好的管理自己的pfm,赞!!!
门派:明教
发表于 2020-4-14 00:08:22 | 显示全部楼层
通宝奖励有点少了,这个数据库维护很麻烦的,版主再多给点奖励啊!
门派:姑苏慕容
 楼主| 发表于 2020-4-14 07:53:36 | 显示全部楼层
kkfromch@tj 发表于 2020-4-14 00:07
这个默认是偷合气最高的那个pfm吗?我看循环比对之后,如果不填合气值,就偷最后那个选项了。

非常 ...

不填合气的话就是所有pfm都出,按优先级排序,perform pfm1;perform pfm2;……
门派:明教
发表于 2020-4-14 10:15:15 | 显示全部楼层
如版这么快就弄出来了
门派:明教
发表于 2020-4-14 12:42:13 | 显示全部楼层
ryru@tj 发表于 2020-4-14 07:53
不填合气的话就是所有pfm都出,按优先级排序,perform pfm1;perform pfm2;……

哦哦,循环一次加一个,一直到都加进去,之前漏看了。赞!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-6-7 02:00 , Processed in 0.058283 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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