设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
楼主: hide秀
打印 上一主题 下一主题

自制敌人数据库文件+敌人等级随我方变化 [发布预备]

 关闭 [复制链接]

Lv5.捕梦者

梦石
0
星屑
39016
在线时间
5717 小时
注册时间
2006-11-10
帖子
6619
11
发表于 2008-7-6 03:05:41 | 只看该作者
口袋妖怪的能力不是随着等级变化的。是根据种族值个体值随机变化,如果不是野生的还要加上努力值,加上性格修正。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

粉蜘蛛秀秀

梦石
0
星屑
76
在线时间
39 小时
注册时间
2007-6-4
帖子
384

贵宾第1届Title华丽大赛新人奖

12
 楼主| 发表于 2008-7-6 03:41:09 | 只看该作者
口袋妖怪的能力不是随着等级变化的。是根据种族值个体值随机变化,如果不是野生的还要加上努力值,加上性格修正。

{/gg}厄。。。不讨论口袋了 直接用不上就算了 没啥时间在去玩。。。
就当是个跟我方等级变化的脚本吧 其实主要还是看制作数据库部分拉{/wx}
http://rpg.blue/upload_program/files/hide_xiu_96911465.png
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
1 小时
注册时间
2008-6-30
帖子
8
13
发表于 2008-7-9 03:36:41 | 只看该作者
173行发生了NoMethodError.
undefined method "[]" for nil:nilclass
什么原因呢?
回复 支持 反对

使用道具 举报

Lv2.观梦者

傻♂逼

梦石
0
星屑
374
在线时间
1606 小时
注册时间
2007-3-13
帖子
6562

烫烫烫开拓者

14
发表于 2008-7-9 03:45:08 | 只看该作者
以下引用hide秀于2008-7-5 16:11:29的发言:


口袋妖怪的等级不会随我方变。
还有,自制数据库可不是这样的哦

自制数据库啊。。。没有啥规定的吧
只要写入就可以了
RM默认有编辑器保存功能 不过写入的是hash
结构 ID=>对象 的集合
我这个也是hash
除了没有Zlib压缩(默认好象有压缩,8记得了)。。。和默认没啥区别
8过觉得没啥必要压缩。。。
还是解除限制吧~个人也觉得没啥必要了

口袋妖怪虽然不是跟我方等级变化 但至少也是有等级的
也能用这个来方便地控制地敌人等级

yangff大人觉得哪里不对 或者有更好的思路 不妨提示下
我一定学习


[本贴由作者于 2008-7-5 17:24:09 最后编辑]

我是说,虽然可以写入,这点不错。
但是,正规一点来说要:
module RPG
  class Enemy
    attr_accessor : 变量名
    def initialize
      INIT
    end
  end
end
在制作数据库的时候要:
def make
  a = RPG::Enemy.new
  a.** = **
end
而且有个最重要的东西没有写入——id



当然,这只是我的个人看法,有可能忧很多错误。只是想说明,规范一点可能更好些。{/wx}
毕竟你这样有点让人看不懂。
(虽然我自己写的代码也不大规范{/gg})
哎呀,蛋疼什么的最有爱了
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
1 小时
注册时间
2008-6-30
帖子
8
15
发表于 2008-7-9 04:08:39 | 只看该作者
请问下,如果我要重新做数据库,怎么实现,谢谢。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

粉蜘蛛秀秀

梦石
0
星屑
76
在线时间
39 小时
注册时间
2007-6-4
帖子
384

贵宾第1届Title华丽大赛新人奖

16
 楼主| 发表于 2008-7-9 15:57:48 | 只看该作者
我是说,虽然可以写入,这点不错。
但是,正规一点来说要:
module RPG
class Enemy
   attr_accessor : 变量名
   def initialize
     INIT
   end
end
end


怎么会看不懂呢 我也是这么写的阿

def self.create_data
   Dir.mkdir("SELF_DATA") unless File.exists?("SELF_DATA")
   File.open("SELF_DATA/Enemy_data.rxdata","wb")
   datas = {}
   for i in 1...$data_enemies.size
     datas = (Pm_Enemy.new)
     for j in 1..(MAX_LEVEL)
       datas.hp_list[j] = (
       $data_enemies.maxhp * (HP_RATE) ** j).to_i
     end
    后面省略.......
class Pm_Enemy
   attr_accessor     :hp_list
   attr_accessor     :sp_list
   attr_accessor     :str_list
   attr_accessor     :dex_list
   attr_accessor     :agi_list
   attr_accessor     :int_list
   attr_accessor     :level
   def initialize
     @hp_list = {}
     @sp_list = {}
     @str_list = {}
     @dex_list = {}
     @agi_list = {}
     @int_list = {}
     @level = 1
   end  
end  




ID我故意不写了 因为默认数据库可以访问...只写了原先没有的(升级曲线,等级..)
话说访问还是要用ID的 格式为 ID=>EMENY对象
毕竟只是范例 大家需要可以自己添加 {/wx}
版主对此帖的认可:『我知道的,看来是我误解了。对于我来讲,就是直接覆盖某个文件,不过,id还是最好写入(没说不能不写)不发布,看看最近回更新不 {/hx}』,积分『+20』。
http://rpg.blue/upload_program/files/hide_xiu_96911465.png
回复 支持 反对

使用道具 举报

Lv1.梦旅人

粉蜘蛛秀秀

梦石
0
星屑
76
在线时间
39 小时
注册时间
2007-6-4
帖子
384

贵宾第1届Title华丽大赛新人奖

17
 楼主| 发表于 2008-7-9 16:03:56 | 只看该作者
请问下,如果我要重新做数据库,怎么实现,谢谢

删除目录下的自制数据库文件夹
使用函数
Enemy_data.create_data
来制作
http://rpg.blue/upload_program/files/hide_xiu_96911465.png
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-7-17
帖子
41
18
发表于 2008-7-20 09:00:26 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
46
在线时间
10 小时
注册时间
2007-5-27
帖子
2558

第1届Title华丽大赛新人奖

19
发表于 2008-8-6 18:36:39 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

粉蜘蛛秀秀

梦石
0
星屑
76
在线时间
39 小时
注册时间
2007-6-4
帖子
384

贵宾第1届Title华丽大赛新人奖

20
 楼主| 发表于 2008-8-6 18:55:44 | 只看该作者
数据库可以用现成界面编辑器的代替,比如我的过期帖:
http://rpg.blue/viewthread.php?tid=77388

刚发现沉影也做过这个 去看看
不过你这个是利用我方数据库来制作的吧 和我这个生成数据库文件还是有点区别
{/wx}
http://rpg.blue/upload_program/files/hide_xiu_96911465.png
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-16 12:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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