Project1

标题: 关于扩展数据库要怎么弄呢 [打印本页]

作者: if216    时间: 2016-1-18 23:08
标题: 关于扩展数据库要怎么弄呢
比方说,现在有个actor的数据,比如说,种族。那么这个数据怎么保存在数据库里呢?
有没有方便点的脚本?
作者: zx903193387    时间: 2016-1-19 03:01
{:2_276:}你想用种族这个属性做什么,说清楚一点,这样才好解决
作者: 喵呜喵5    时间: 2016-1-19 08:42
一般是作为备注写在指定数据库的备注栏中:
例如我的这个脚本,为所有的角色添加了四个新的属性(领队尸体、领队尸体编号、跟随尸体、跟随尸体编号)
https://rpg.blue/home.php?mod=sp ... o=blog&id=13514
作者: zx903193387    时间: 2016-1-19 10:03
本帖最后由 zx903193387 于 2016-1-19 10:09 编辑

{:2_276:}这个完全可以用条件分歧和人物的选择来实现啊
{:2_276:}打个比方,往最大自由度说,你有20个种族,游戏中最多同时存在20个不同的队伍成员,这些成员的种族全部可以自己定义。你就建首先在数据库20个人物,每个人物对应一个种族,然后再把这20个人物复制20份,一共新建400个人物,然后1号队伍成员按种族对应1-20号人物,2号队伍成员对应21-40号人物,以此类推。然后对于队伍成员种族的选择就可以用条件分歧加上一点点小小的脚本来非常简单地实现。这样,20个队伍成员可以完全自由选择自己的种族,完全没有任何技术上的限制和困难。种族可以直接写在人物属性的【第二称谓】里面。
作者: zx903193387    时间: 2016-1-19 10:35
{:2_276:}哦,我又想到了新的方法!
搞一个装备拓展脚本,然后把种族的属性做成一件装备,然后不描绘这件装备。通过事件来装备这件【种族】的装备,然后改一下第二称呼就搞定了
机智
作者: if216    时间: 2016-1-19 10:37
zx903193387 发表于 2016-1-19 10:03
这个完全可以用条件分歧和人物的选择来实现啊
打个比方,往最大自由度说,你有20个种族 ...

兄弟,你看我题目,我问的就是数据库的扩展。你看我的内容,我就是在问脚本。
因为今天可能有个种族,明天有个别的要加的。这类问题,总要有种方式解决。
脚本我看得懂,你操心怕我看不懂我很感谢,但你千万别拦着别人教我东西,这我不太接受。
你的方法我也谢了。

作者: VIPArcher    时间: 2016-1-19 14:17
本帖最后由 VIPArcher 于 2016-1-19 14:20 编辑

你也可以试试Taroxd的基础脚本这种姿势读取备注。
地址:http://taroxd.github.io/rgss/Tar ... AE%BE%E7%BD%AE.html
把这个脚本放到你的工程里,然后看注释说明里教的方法用,个人觉得这个姿势还是非常方便易懂的。
使用姿势可以参考TD的其他脚本,例如http://taroxd.github.io/rgss/%E6 ... 89%A9%E5%B1%95.html这个
RUBY 代码复制
  1. class RPG::BaseItem
  2.   note_i :attack_skill, false
  3.   note_i :guard_skill,  false
  4. end
下面是相关部分的注释说明
  1. # Taroxd::ReadNote
  2. #   该模块由以下类 extend。
  3. #   RPG::BaseItem
  4. #   RPG::Map
  5. #   RPG::Event(将事件名称作为备注)
  6. #   RPG::Tileset
  7. #   RPG::Class::Learning
  8. #
  9. #   note_i(method_name, default = 0)
  10. #     定义方法 method_name,读取备注中 <method_name x> 形式的内容。其中 x 为整数。
  11. #     读取到的话,定义的方法会返回读取到的整数值,否则返回 default。
  12. #
  13. #   例:RPG::UsableItem.note_i :item_cost
  14. #
  15. #   note_f(method_name, default = 0.0)
  16. #     与 note_i 类似,但读取的是实数。
  17. #
  18. #   note_s(method_name, default = '')
  19. #     与 note_i 类似,但读取的是字符串。
  20. #
  21. #   note_bool(method_name)
  22. #     定义 method_name 方法,判断备注中是否存在 <method_name> 子字符串。
  23. #     特别地,若 method_name 以问号或感叹号结尾,读取内容中不需要包含问号、感叹号。
  24. #     (上面几个方法也是一样)
复制代码





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1