铁血丹心

 找回密码
 我要成为铁血侠客
搜索
查看: 2966|回复: 5

各種武功都能用的極意功能--提供0905支持的diyfight函数

[复制链接]
发表于 2012-1-29 22:11 | 显示全部楼层 |阅读模式
本帖最后由 潛龍勿用 于 2012-1-30 23:29 编辑

主體來源于壇友wklee3的回覆,我搬運來稍稍加工了一下

寫了好久好久了,因為之前硬盤壞掉了,這時候才拿出來。。。
繼續貢獻人工力量吧。
  1. local function exwg(fw,x,y)
  2.         local i,j,x1,y1=0,0
  3.         
  4.         if fw == nil then
  5.                 fw = 1;
  6.         end
  7.         if x == nil then x=5 end
  8.         if y == nil then y=5 end
  9.         while GetWarMap(i,j,4)==0 do
  10.                 j=j+1;
  11.                 if j>63 then
  12.                 j=0; i=i+1
  13.                 end
  14.         end
  15.         if fw == 1 then        --降龙
  16.         x1=i+3; y1=j+3
  17.         end
  18.         if fw == 2 then        --七伤
  19.         x1=i+2; y1=j+2        
  20.         end
  21.         if fw == 3 then --胡刀
  22.         x1=i+5; y1=j+1
  23.         end
  24.         if fw == 4 then --太极剑法伏魔杖
  25.         x1=i+4; y1=j+4
  26.         end
  27.         
  28.         CleanWarMap(4,0)                    --清除原來 level 4 的值
  29.         for i=x1-x,x1+y do
  30.                 for j=y1-x,y1+y do
  31.                 SetWarMap(i,j,4,1)
  32.                 end
  33.         end    --以 x1, y1 為中心  設定11*11 的攻擊範圍
  34.         WAR.WS = 1
  35. end
复制代码


這個函數有三個參數,也可以不傳參數
像這樣
  1. function War_DIY_Fight(id, wugong, level, ng)
  2.         local pid = WAR.Person[id]["人物编号"];
  3.         if pid == 0 then
  4.         exwg();
  5.         end

  6. return ng;
  7. end
复制代码

這樣子豬腳的所有武功都會變成和降龍極意一樣的範圍,但是很蛋痛,連劍法也會變成大方框框。千萬不要這麼做。

so,參數們的自我介紹:
第一個參數,可選1、2、3、4
1適用于降龍十八掌那樣子的範圍的,或者大方框的比如金剛伏魔圈、九陽神功等等。
2適用于七傷拳、銀索金鈴那種一般大小的方框。
3適用于胡家刀法。
4適用于太極劍和伏魔杖法。


第二三个参数表示坐标,這兩個參數最好設置成一樣大小的。
好比下面這個範例,這麼設置以後豬腳的羅漢拳就會打出左五格、右五格一共11格長度的正方形方框了。
  1. function War_DIY_Fight(id, wugong, level, ng)
  2. local pid = WAR.Person[id]["人物编号"];
  3. if pid == 0 and wugong ==1 and level == 999 then
  4. exwg(1,5,5);
  5. end

  6. return ng;
  7. end
复制代码
下面這段代碼會使胡斐胡家刀法打出21格X21格的巨大方框。。。
  1. function War_DIY_Fight(id, wugong, level, ng)

  2. local pid = WAR.Person[id]["人物编号"];

  3. if pid == 1 and wugong ==67 and level == 999 then

  4. exwg(3,10,10);

  5. end



  6. return ng;

  7. end
复制代码

PS:全部都是武功到極時候才能正確顯示,否則會打偏掉,所以大家在調用時記得要加上level == 999
二人合擊也會打偏掉。懶得去弄了,大家有需要的自己動手好了。

新增了一個附件,放到script文件下然後在diy中輸入如下代碼

  1. dofile ".\\script\\warfightsub.lua";
  2. CC.diyfight=function (id,wugong,x,y)

  3. end
复制代码

作用和龍人版的war_diy_fight函数差不多, 把极意的代码放进CC.diyfight里面就可以在0905版中使用了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要成为铁血侠客

x
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-1-30 08:31 | 显示全部楼层

function War_DIY_Fight(id, wugong, level, ng) 能在除了龙人外别的版本用?

本帖最后由 欲望魔鬼 于 2012-1-30 08:36 编辑

gtfish 发过武功极意实现的方法。
http://www.txdx.net/thread-529189-1-1.html

点评

0905的极意搞定了,看我最新的代码  发表于 2012-1-30 16:36
找到了 在war_fight_sub里定义 有一千六百多行代码  发表于 2012-1-30 15:27
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
 楼主| 发表于 2012-1-30 14:06 | 显示全部楼层
回复 欲望魔鬼 的帖子

嗯,就是在那個帖子里根據wklee3的回覆改造的,不同的是可以讓太極劍胡刀等都能使用。
war_diy_fight是藍大在龍人給出的,0905版可能要重構war_show_fight吧,還沒有試過。
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-1-30 16:47 | 显示全部楼层
有人知道如降龙般有各种招数的极意的做法?之前看wklee3大说明的看好像也只是单一的一个极意没有如降龙的特殊文字说明,求大神解答!!!
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
 楼主| 发表于 2012-1-30 16:54 | 显示全部楼层
回复 玄天宗月 的帖子

龙人版的特殊文字
  1. function War_DIY_Fight(id, wugong, level, ng)
  2.     local pid = WAR.Person[WAR.CurID]["人物编号"];
  3.     local eid = WAR.Person[enemyid]["人物编号"];

  4.     local function efttext(ziti,text,dhid)
  5.         if WAR.Person[WAR.CurID][ziti] == nil then
  6.             WAR.Person[WAR.CurID][ziti] = text
  7.         else
  8.             WAR.Person[WAR.CurID][ziti] = WAR.Person[WAR.CurID][ziti].."+"..text
  9.         end
  10.         WAR.Person[WAR.CurID]["特效动画"] = dhid;
  11.     end

  12. if pid ==0 and wugong == 1 then
  13.   exwg()
  14.   efttext('特效文字1','罗汉拳极意',67)
  15. end

  16. return ng;
  17. end
复制代码
這個是我寫的特效用的函數,複製到CC.diyfight中應該也可以用吧。你可以參考參考,
關鍵就是特效動畫:WAR.Person[WAR.CurID]["特效动画"]
還有特效文字:WAR.Person[WAR.CurID][ziti]
這兩個東東。
特效動畫的編號藍大(藍煙清)有給一個工具,你翻翻以前的帖子能找到的

【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-1-31 02:20 | 显示全部楼层
在 CY_Fight.lua 中的 line 4225 至 line 4245 便是降龙极意

當中 XL18JY 是在 CY_CCTable.lua (line 1190) 定義的极意招式, 共8招

參考一下應可自己做极意了

点评

多谢指点  发表于 2012-1-31 13:28
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。

本版积分规则

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

GMT+8, 2024-12-22 19:07

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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