铁血丹心

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

[不负责任的教程]在源码版的基础上添加修改门派的方法 - Part 1

[复制链接]
发表于 2012-8-10 13:22 | 显示全部楼层 |阅读模式

马上注册,结交更多侠友!

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

x
本帖最后由 二宫和也 于 2012-8-19 21:28 编辑

返回教程索引

说明:

1)这个需要有一定DIY基础,如果看得一头雾水的话孩子你还是回初级班修炼一下再来吧...
2)本人代码写得极其不规范,勿喷,要喷请温柔,美女限定
3)请好歹回个贴装作讨论一下不然你忍心让俺自说自话郁闷死么

工具:
1)源码文件:拿山寨版就好了,我不是在作广告,真的不是
2)lua编辑器:我用的是Notepad++,这个真的是广告
3)UPedit:看数据的
4)零食:熬夜通宵必备,谁用谁知道

一。加入门派系统的基础理论:定量,判定,设定
1)需要先设定一个全局定量储存所有人物的门派信息。这个可以有很多种做法,我用的是最懒的那种。R文件人物数据里有个名为“无用”的位置,被我废物利用拿来做全局定量了。调用起来很简单,直接使用代码:
  1. JY.Person[aa]["无用"] = bb      --aa为人物编号,bb为门派编号
复制代码

2)定义几个表存放文字来描述你的门派,这里包括了门派名字,门派说明,技能名字,技能说明,等等。我全都放在MyConst.lua里面了。下面以星宿派(门派编号1)来举例子,完整的表请看MyConst.lua,这里只截取了星宿派的部分:
  1. --门派的名字和门派菜单的名字
  2. CC.MP = {
  3.     {"星宿派", nil, 1, "毒鼎"},
  4. }

  5. --门派的说明,随便写就好
  6. CC.MPINFO = {
  7.     "星宿老仙丁春秋叛出逍遥派后所创。武学以毒为主,让人防不胜防。派中秘传化功大法,源自北冥神功,可化人内力于无形。门下弟子也许不算最强,但绝对最让人胆寒。",
  8. }

  9. --加入门派后的属性变化,这个以后再说
  10. CC.MPINFO2 = {
  11.     "攻击防御减5%,轻功加10%,医疗用毒解毒暗器能力加50,内力上限减10%",
  12. }

  13. --不同等级的弟子的称呼,这个可选,如果不准备做相应的剧情的话可以省略;分别对应了等级1-3
  14. CC.MPDJ = {
  15.     {"入门弟子", "高级弟子", "掌门"},
  16. }

  17. --门派被动技能的名字
  18. CC.PSKILL = {
  19.     {"以身饲毒", "连珠腐尸毒", "淬毒"},
  20. }

  21. --门派主动技能的名字
  22. CC.ASKILL = {
  23.     {"口蜜腹剑", "三笑逍遥散"},
  24. }

  25. --被动+主动技能,其实就是前面两个表加起来
  26. CC.SKILLNAME = {
  27.     {"以身饲毒", "连珠腐尸毒", "淬毒", "口蜜腹剑", "三笑逍遥散"},
  28. }

  29. --门派技能的说明,这个是和上面的CC.SKILLNAME对应的
  30. CC.SKILLINFO = {
  31.     {
  32.     "效果:被攻击时自身中毒程度增加,*      中毒越深集气速度越快*条件:被动技能",
  33.     "效果:使毒时目标周围四格内随机敌人*      中毒且损失生命*条件:被动技能",
  34.     "效果:攻击时几率追加伤害,伤害值与*      自身和目标的中毒程度有关*条件:被动技能",
  35.     "效果:一定几率周围四格敌人怒气值清零*      且中毒程度增加*消耗:体力25点",
  36.     "效果:一定几率周围三格内普通小兵三次*      行动后即死*消耗:体力20点内力500点"
  37.     },
  38. }
复制代码

3)决定如何判断门派和门派等级。这里我仍然使用了偷懒的方法,把门派和门派等级合成为了一个数字存在“无用”里。
101 - 代表星宿派弟子等级1
102 - 代表星宿派弟子等级2
103 - 代表星宿派弟子等级2
......
303 - 代表古墓派弟子等级3
看出来了吧,其实这个数字就是(门派编号*100+门派弟子等级)
所以就有了以下两个函数:
  1. function MPPD(tmppid) --判定人物的门派
  2.     if JY.Person[tmppid]["无用"] == nil or JY.Person[tmppid]["无用"] < 101 then --没有门派的话返回0
  3.         return 0
  4.     else
  5.         local mptype = math.floor(JY.Person[tmppid]["无用"] / 100)
  6.         return mptype --有门派的话返回门派编号,也就是“无用”里打头的那个数字
  7.     end
  8. end

  9. function MPDJ(tmppid) --判定人物的门派等级
  10.     local mpdj
  11.     if MPPD(tmppid) == 0 then
  12.         return 0 --没有门派的话返回0
  13.     end
  14.     mpdj = math.fmod(JY.Person[tmppid]["无用"], 100) --这里用了取余数的公式
  15.     return mpdj --有门派的话返回门派等级
  16. end
复制代码
在战斗中就可以利用这两个函数进行判定了

同理,加入门派的时候可以调用另一条函数
  1. function JoinMP(tmppid, mptype, mpdj) --3个输入量分别代表了人物编号,门派编号,门派等级
  2.     JY.Person[tmppid]["无用"] = mptype * 100 + mpdj --其实就是把“无用”设成那个偷懒的数字
  3. end
复制代码
以上就是基础的理论:定量(数字与文字),判定,设定(改“无用”)

二。门派指令菜单的使用

待更新.....


返回教程索引


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

点评

啊...沙发...没有了.....T.T...其实不复杂,框架已经给出来了,主要是门派的效果实现起来复杂...  发表于 2012-8-10 13:29
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-8-10 15:49 | 显示全部楼层
第一条看懂了 其他都不懂

点评

不错了 不用谦虚  发表于 2012-8-10 16:18
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-8-10 16:44 | 显示全部楼层
太多代码不愿看   直接顶

点评

我一直觉得这两个才是一对  发表于 2012-8-11 10:56
柯南和灰原?  发表于 2012-8-11 10:14
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-8-10 21:09 | 显示全部楼层
二宫大大写的汉字单拿出来俺倒是都认识。然后......然后就没有然后了。
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-8-10 21:32 | 显示全部楼层
支持LZ,山寨版已经没什么bug了!期待某年某月能风云再起~~呵呵
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-8-11 09:00 | 显示全部楼层
小白,看不懂,纯支持!
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-8-11 16:04 | 显示全部楼层
虽然没看懂,但也没关系,因为我是专门来鼓掌的
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-8-12 15:33 | 显示全部楼层
教学贴为什么没有加红?顶一个
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-8-14 07:59 | 显示全部楼层
此贴不沉,每日一顶
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-8-14 08:38 | 显示全部楼层
回复 二宫和也 的帖子

开学也想做个mod玩了。。。支持和也君大大
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。

本版积分规则

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

GMT+8, 2024-11-23 16:32

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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