查看: 3188|回复: 2

[已经解决] 请问如何给数据库建立的内容添加实例?

[复制链接]
梦石
0
星屑
2920
在线时间
713 小时
注册时间
2010-7-25
回帖
659

开拓者

发表于 2019-7-4 19:38:34 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
例如$data_states,如果我想给他增加一个状态次数的实例, $data_states[id].cishu , 请问该如何写?

老鹰

梦石
40
星屑
37812
在线时间
7091 小时
注册时间
2012-5-26
回帖
3297

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

发表于 2019-7-5 09:53:31 | 显示全部楼层
本帖最后由 百里_飞柳 于 2019-7-5 09:56 编辑

查询F1手册,了解这些数据库数据所对应的对象
比如状态是 RPG::BaseItem 的子类 RPG::State
那么你可以给这个类新增变量
  1. class RPG::State
  2.   alias eagle_init initialize
  3.   def initialize
  4.     eagle_init
  5.     @count = 0
  6.   end
  7.   attr_accessor :count
  8. end
复制代码

这样对于全部新增状态,就有了一个变量 count
但是注意,由于VA的设置,也是为了保护数据,在游戏过程中对这些的更改都不会被反存储回数据库中,
同时为了防止数据冗余,也为了测试过程中依靠旧存档来方便调整数据库,哪怕你新增了数据,也不会被保存到存档里

如果你想你弄可以保存的数据,推荐存储到 $game_ 类别的全局变量里,
譬如在 $game_party 中新增一个变量 @states_count = {} ,其中就可以保存 RPG::State 实例的id 到 使用次数 的映射
比如 @states_count[state.id] += 1

点评

原来如此,我按照状态回合时间的写法写了个哈希,应该不会出问题了吧.  发表于 2019-7-5 20:52

评分

参与人数 2星屑 +100 赞 +1 收起 理由
VIPArcher + 100 认可答案
jianyulei + 1 认可答案

查看全部评分

回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部