赞 | 406 |
VIP | 0 |
好人卡 | 11 |
积分 | 390 |
经验 | 242285 |
最后登录 | 2024-11-28 |
在线时间 | 5722 小时 |
Lv5.捕梦者
- 梦石
- 0
- 星屑
- 39028
- 在线时间
- 5722 小时
- 注册时间
- 2006-11-10
- 帖子
- 6621
|
RMXP里,怪没有等级的设置, 如果想要给它加个等级, 只能改脚本
找到游戏定义怪物的脚本, Game_Enemy 这个就是啦, 怪物的一切数据都在这里
先给它新建一个等级类, attr_accessor :level
然后下面初始化一下, @level = level 这样就完成了让怪拥有了等级,
不过,这个level是不存在的,因为还没有定义, 直接使用会出错,
所以,下面还要定义一个
def level
return 15
end
这样就完成了, 怪物的等级全部都是15级了
不过,一个游戏里所有怪都15级好像很傻, 每次修改定义也很麻烦, 要是能数据库里直接改就好了, 不过,默认数据库是不会给你加个等级设置的.
所以,我们可以从别的地方动手, 比如,金钱, 可以设定6位数, 一只怪要这么多钱干嘛, 砍一只怪赚100W也太奢侈了, 为了维护游戏世界的市场, 我们让钱只显示4位就足够了, 剩下的两位拿来做等级设置
于是,就可以这样,
def gold #把钱先改一下
return $data_enemies[@enemy_id].gold % 10000
end
%是除余号, 表示怪的钱除10000以后返回剩下的余数. 即1W以上的数值不显示
然后,把万位和十万位拿到这里来
def level
return $data_enemies[@enemy_id].gold / 10000
end
这样就表示把钱除10000 所得到的结果
然后,数据库里, 怪物的金钱数值就这样改 150015 这样就表示,怪物的等级是15, 怪物掉的钱是15元
调用一下, p $data_enemies[1].level
就可以看到,幽灵的等级就是15了
同样的,改变算法就可以在数据库里扩展怪物的能力设置. 自己去开扩用途吧.
|
|