赞 | 0 |
VIP | 0 |
好人卡 | 0 |
积分 | 1 |
经验 | 92921 |
最后登录 | 2020-5-5 |
在线时间 | 20 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 55
- 在线时间
- 20 小时
- 注册时间
- 2005-10-24
- 帖子
- 1571
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 后知后觉 于 2009-12-5 20:20 编辑
"怎么设置掉宝率啊.""怎么设置等级装备啊.",怎么设置双倍金钱啊"针对这一问题,我想说说自己的思考和解决方法.
1,这些都是数据库中设置的东西,那么一定有一个函数去记录那些数据,而我要做的,就是把那些函数找出来. 有3个参考资料<常用事件脚本><运行时设置数据库><帮助文件>,一般的功能<常用事件脚本>(主站上有)就可以得到解决.
那么,先解决一个“需要等级才能装备”的问题----等级限制好说,条件分歧就可以解决,关键是“如何知道可以装备哪些东西。”查阅"帮助"中的,"脚本入门"---"解读篇"---"数据库",找到"职业的数据类"RPG::Class(一般来说,设置数据库,都可以在"解读篇"---"数据库"中找到答案).你发现了什么?weapon_set(角色可以装备武器的数组).于是问题就更加简单了.---原来,可以装备的武器,是weapon_set这个数组进行存储的啊.
于是进行数组操作 $data_classes[1].weapon_set.insert(0,武器编号),就可以把原先在数据库中设置为不能装备的1号武器,变成可以装备。反之,用delele函数,也可以把数据库中可以装备的武器,变成无法装备
数据库中决大多数问题,都可以用以上的方式解决.前提是"你至少要把<帮助>的基础部分看完了.才能去理解.
那么,"掉宝率"又如何修改呢?
敌人的数据库是$data_enemies,掉宝贝的几率是treasure_prob 敌人1的掉宝率的函数是 $data_enemies[1].treasure_prob 那么,设置 $data_enemies[1].treasure_prob=10 就是设置掉宝率为10的意思。
接下来,就说一个比较高级的呢---获得地图事件的名称
1,先执行 $game_map.events[1].name 这个命令---出错了
2,看帮助文件中的RPG::Event部分,却又有一个name方法,那么为什么不能执行呢?
3,原来脚本中game_event部分,并没有定义name属性,于是开始定义
在class game_event中
● 定义实例变量下面添加
attr_accessor :name #定义一个name的方法
然后在
def initialize下面添加
@[email protected]
再次执行 p $game_map.events[1].name ,是不是很有意思呢?
以上,只是提供一个解决类似问题的思路和方法 |
|