铁血丹心

 找回密码
 我要成为铁血侠客
搜索
12
返回列表 发新帖
楼主: 蓝烟清

关于神功的定义

[复制链接]
发表于 2013-11-14 17:29 | 显示全部楼层
  1. --神功护体,额外护体
  2.         ht = {};               
  3.         num = 0;        --当前学了多少神功
  4.         for i = 1, 10 do
  5.                 local kfid = JY.Person[eid]["武功" .. i]
  6.                
  7.                 --易筋经、太玄神功、葵花神功、九阳神功(阳内或天罡)
  8.                 if (kfid == 108 or kfid == 102 or kfid == 105 or (kfid == 106 and (JY.Person[eid]["内力性质"] == 1 or  (eid == 0 and GetS(4, 5, 5, 5) == 5)))) and WAR.Person[enemyid]["我方"] ~= WAR.Person[WAR.CurID]["我方"] then
  9.                         num = num + 1;
  10.                         ht[num] = {kfid,i};
  11.                 end
  12.         end
  13.         
  14.         --如果学有神功
  15.         if num > 0 then

  16.                 local n = math.random(num);
  17.                 local kfid = ht[n][1];
  18.                 local lv = math.modf(JY.Person[eid]["武功等级" .. ht[n][2]] / 100) + 1
  19.                 local wl = JY.Wugong[kfid]["攻击力" .. lv]
复制代码
后面的代码省略

根据代码ht里存储了可护体的神功列表mun为列表个数
然后local n = math.random(num);
                local kfid = ht[n][1];
这两行已经确定了神功的id,所以我觉得神功护体加力是没有优先性的,只是在现有的可生效神功里随机选取一个,然后再计算几率。
不知道我理解的对不对~~

点评

看得好仔细,这样神功学多了效果应该不好  发表于 2013-11-14 17:39
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
 楼主| 发表于 2013-11-14 17:32 | 显示全部楼层
ivansz 发表于 2013-11-14 17:29
后面的代码省略

根据代码ht里存储了可护体的神功列表mun为列表个数

好像被你说对了。 我没注意看到random

点评

蓝大回复真及时啊,敬业什么的最萌了  发表于 2013-11-14 17:35
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2013-11-14 17:41 | 显示全部楼层
蓝烟清 发表于 2013-11-14 17:32
好像被你说对了。 我没注意看到random

蓝大那这段代码准备改掉吗? 不改的话神功学多了效果肯定不好~~
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2013-11-14 17:53 | 显示全部楼层
本帖最后由 ivansz 于 2013-11-14 18:14 编辑

我想把整段改成这样应该可以达到蓝大所说的效果
  1. --如果不是误伤
  2.         if  WAR.Person[enemyid]["我方"] ~= WAR.Person[WAR.CurID]["我方"] then
  3.                 --易筋经神功护体,额外增加气防
  4.                 if PersonKF(eid, 108) and atkdefRandom(30,eid) then
  5.                         local lv = math.modf(PersonKF(eid, 108) / 100) + 1
  6.                         local wl = JY.Wugong[108]["攻击力" .. lv]
  7.                         dng = dng + math.modf(wl/2) + 1000;        --增加气防
  8.                         WAR.L_SGHT = 108;
  9.                         if WAR.Person[enemyid]["特效文字1"] ~= nil then
  10.                                 WAR.Person[enemyid]["特效文字1"] = WAR.Person[enemyid]["特效文字1"] .."+易筋经神功护体";
  11.                         else
  12.                                 WAR.Person[enemyid]["特效文字1"] = JY.Wugong[108]["名称"] .. "神功护体";
  13.                         end
  14.                         WAR.Person[enemyid]["特效动画"] = 79
  15.                 --太玄神功,有机率把杀集气转为集气值
  16.                 elseif PersonKF(eid, 102) and (JLSD(30,70,eid) or (eid == 38 and  JLSD(40,60,eid))) then
  17.                         WAR.L_SGHT = 102;
  18.                         if WAR.Person[enemyid]["特效文字1"] ~= nil then
  19.                                 WAR.Person[enemyid]["特效文字1"] = WAR.Person[enemyid]["特效文字1"] .."+太玄神功护体";
  20.                         else
  21.                                 WAR.Person[enemyid]["特效文字1"] = "太玄神功护体";
  22.                         end
  23.                         WAR.Person[enemyid]["特效动画"] = 63
  24.                 --葵花神功,有机率发动葵花移形,林平之有额外几率,除东方之外
  25.                 elseif PersonKF(eid, 105) and (JLSD(30,55,eid) or (eid == 36 and  JLSD(40,60,eid))) and eid ~= 27 then
  26.                         WAR.L_SGHT = 105;
  27.                         if WAR.Person[enemyid]["特效文字1"] ~= nil then
  28.                                 WAR.Person[enemyid]["特效文字1"] = WAR.Person[enemyid]["特效文字1"] .."+葵花移形";
  29.                         else
  30.                                 WAR.Person[enemyid]["特效文字1"] = "葵花移形";
  31.                         end
  32.                 --九阳神功,额外减少40%的伤害,阳内或者天罡有效
  33.                 elseif PersonKF(eid, 106) and (JY.Person[eid]["内力性质"] == 1 or eid == 0 and GetS(4, 5, 5, 5) == 5) and defRandom(30, eid) then
  34.                         WAR.L_SGHT = 106;
  35.                         dng = dng + 1000;
  36.                         if WAR.Person[enemyid]["特效文字1"] ~= nil then
  37.                                 WAR.Person[enemyid]["特效文字1"] = WAR.Person[enemyid]["特效文字1"] .."+九阳神功护体";
  38.                         else
  39.                                 WAR.Person[enemyid]["特效文字1"] = "九阳神功护体";
  40.                         end
  41.                         WAR.Person[enemyid]["特效动画"] = 7
  42.                 end
  43.         end
复制代码
其中PersonKF(p, kf)函数我修改了一下 多给了一个返回值 当然不使用返回值的话也可以当作true

  1. <P>--判断人物是否有某种武功,ivansz并返回该武功等级
  2. function PersonKF(p, kf)
  3.   for i = 1, 10 do
  4.     if JY.Person[p]["武功" .. i] <= 0 then
  5.         return false;
  6.     elseif JY.Person[p]["武功" .. i] == kf then
  7.         return JY.Person[p]["武功等级" .. i]
  8.     end
  9.   end
  10.   return false</P>
  11. <P>end</P>
复制代码
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
 楼主| 发表于 2013-11-14 19:13 | 显示全部楼层
ivansz 发表于 2013-11-14 17:53
我想把整段改成这样应该可以达到蓝大所说的效果其中PersonKF(p, kf)函数我修改了一下 多给了一个返回值 当 ...

算了还是不打算改。

我再想想怎么调整难度

点评

支持,期盼着名医和神匠的特效  发表于 2013-11-14 19:25
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2013-11-14 20:54 | 显示全部楼层
九阴和太玄同时学无敌了,请教蓝大太玄加的特效发动率是指哪些?含连击暴击左右吗?
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2013-11-14 20:58 | 显示全部楼层
九阴和太玄同时学无敌了,请教蓝大太玄加的特效发动率是指哪些?含连击暴击左右吗?

点评

这个刚才说错了。 是不能同时学的  发表于 2013-11-14 21:17
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2013-11-14 23:27 | 显示全部楼层
多学一个神功有冲突,感觉没有单学一个高,除非是九阴加力配太玄防护,或者是九阳防护配太玄加力之类的
特别是学了易筋经太玄后,太玄出的极少
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2013-11-15 18:49 | 显示全部楼层
现在神功冲突,那天罡学这么多岂不是很亏???
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
 楼主| 发表于 2013-11-16 23:21 | 显示全部楼层
xiangzhn 发表于 2013-11-15 18:49
现在神功冲突,那天罡学这么多岂不是很亏???

不亏啊。。。天罡不考虑阴内和阳内, 无条件享受加成啊
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2013-11-17 00:51 | 显示全部楼层
蓝烟清 发表于 2013-11-16 23:21
不亏啊。。。天罡不考虑阴内和阳内, 无条件享受加成啊

意思是天罡把神功学全了彼此的触发几率是不受影响的???
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2013-11-20 09:48 | 显示全部楼层
xiangzhn 发表于 2013-11-17 00:51
意思是天罡把神功学全了彼此的触发几率是不受影响的???

受影响,便影响不大而已
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2014-9-2 19:19 | 显示全部楼层
各个内功的触发完全是靠运气,这些算法又不能在游戏中直接显现,不如在下一版本中,蓝大增加内功特效发动的修炼系统,更直观,更容易把握,更有游戏性。
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。

本版积分规则

小黑屋|手机版|铁血丹心

GMT+8, 2024-11-22 00:29

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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