Project1

标题: 请问,道具怎么超过999种的上限呢吧哒吧哒 [打印本页]

作者: 一瞬间的幻觉    时间: 2012-1-25 04:52
标题: 请问,道具怎么超过999种的上限呢吧哒吧哒
有点不好意思啊,本史莱姆大爷,一直在偷懒。
请问那个啥,道具个数编辑到999种就不能再扩充下去啦,伦家好不容易对码字有点上瘾了,这下可难倒伦家了。

谢谢解答哦,作为回报,本史莱姆决定给大家透露下咱最新的三围数据:loveliness:
作者: 凌童鞋    时间: 2012-1-25 08:51
复制一个空的物品数据文件再编辑。。。
用脚本调用里面的东西= =
作者: 諾丶爱❤    时间: 2012-1-25 09:47
本帖最后由 諾丶爱❤ 于 2012-1-25 09:47 编辑

Lz 没看过 RMXP的资源吗??
  1. $data_actors        = load_data("Data/Actors.rxdata")        #——角色
  2. $data_classes       = load_data("Data/Classes.rxdata")       #——职业
  3. $data_skills        = load_data("Data/Skills.rxdata")        #——特技
  4. $data_items         = load_data("Data/Items.rxdata")         #——物品
  5. $data_weapons       = load_data("Data/Weapons.rxdata")       #——武器
  6. $data_armors        = load_data("Data/Armors.rxdata")        #——防具
  7. $data_enemies       = load_data("Data/Enemies.rxdata")       #——敌人
  8. $data_troops        = load_data("Data/Troops.rxdata")        #——队伍
  9. $data_states        = load_data("Data/States.rxdata")        #——状态
  10. $data_animations    = load_data("Data/Animations.rxdata")    #——动画
  11. $data_tilesets      = load_data("Data/Tilesets.rxdata")      #——图块
  12. $data_common_events = load_data("Data/CommonEvents.rxdata")  #——公共事件
  13. $data_system        = load_data("Data/System.rxdata")        #——状态

  14. for i in 1..1000   #——上限设置
  15. $data_actors[i] = RPG::Actor.new if $data_actors[i]==nil
  16. $data_classes[i] = RPG::Class.new if $data_classes[i]==nil
  17. $data_skills[i] = RPG::Skill.new if $data_skills[i]==nil
  18. $data_items[i] = RPG::Item.new if $data_items[i]==nil
  19. $data_weapons[i] = RPG::Weapon.new if $data_weapons[i]==nil
  20. $data_armors[i] = RPG::Armor.new if $data_armors[i]==nil
  21. $data_enemies[i] = RPG::Enemy.new if $data_enemies[i]==nil
  22. $data_troops[i] = RPG::Troop.new if $data_troops[i]==nil
  23. $data_states[i] = RPG::State.new if $data_states[i]==nil
  24. $data_animations[i] = RPG::Animation.new if $data_animations[i]==nil
  25. $data_tilesets[i] = RPG::Tileset.new if $data_tilesets[i]==nil
  26. $data_common_events[i] = RPG::CommonEvent.new if $data_common_events[i]==nil
  27. $data_system.elements[i] = "" if $data_system.elements[i]==nil
  28. end

  29. save_data($data_actors,"Data/Actors.rxdata")
  30. save_data($data_classes,"Data/Classes.rxdata")
  31. save_data($data_skills,"Data/Skills.rxdata")
  32. save_data($data_items,"Data/Items.rxdata")
  33. save_data($data_weapons,"Data/Weapons.rxdata")
  34. save_data($data_armors,"Data/Armors.rxdata")
  35. save_data($data_enemies,"Data/Enemies.rxdata")
  36. save_data($data_troops,"Data/Troops.rxdata")
  37. save_data($data_states,"Data/States.rxdata")
  38. save_data($data_animations,"Data/Animations.rxdata")
  39. save_data($data_tilesets,"Data/Tilesets.rxdata")
  40. save_data($data_common_events,"Data/CommonEvents.rxdata")
  41. save_data($data_system,"Data/System.rxdata")

  42. exit
复制代码

作者: rpg549007821    时间: 2012-1-25 09:50
期待小瞬的大作,道具能超过999个的,绝对是大作!
作者: 黄亦天    时间: 2012-1-25 11:22
本帖最后由 黄亦天 于 2012-1-25 12:53 编辑

{:nm_8:}我擦小瞬
{:nm_8:}可想死我了

至于方法我倒是有个笨方法
  1. $data_items_b = $data_items
  2. file = File.open("" + "items_b.rvdata", "wb")
  3. Marshal.dump($data_items_b,         file)
  4. file.close
复制代码
先在事件脚本里执行这个(一次足矣)

执行结束后,会生成一个文件
然后就可以删掉所有物品制作新的物品

然后在Scene_Title里找到
  1.   #--------------------------------------------------------------------------
  2.   # ● 载入数据库
  3.   #--------------------------------------------------------------------------
  4.   def load_database
  5.     $data_actors        = load_data("Data/Actors.rvdata")
  6.     $data_classes       = load_data("Data/Classes.rvdata")
  7.     $data_skills        = load_data("Data/Skills.rvdata")
  8.     $data_items         = load_data("Data/Items.rvdata")
  9.     $data_weapons       = load_data("Data/Weapons.rvdata")
  10.     $data_armors        = load_data("Data/Armors.rvdata")
  11.     $data_enemies       = load_data("Data/Enemies.rvdata")
  12.     $data_troops        = load_data("Data/Troops.rvdata")
  13.     $data_states        = load_data("Data/States.rvdata")
  14.     $data_animations    = load_data("Data/Animations.rvdata")
  15.     $data_common_events = load_data("Data/CommonEvents.rvdata")
  16.     $data_system        = load_data("Data/System.rvdata")
  17.     $data_areas         = load_data("Data/Areas.rvdata")
  18.   end
复制代码
然后把:
  1. $data_items         = load_data("Data/Items.rvdata")
复制代码
改成
  1. file = File.open("" + "items_b.rvdata", "rb")
  2. $data_items         = Marshal.load(file) + load_data("Data/Items.rvdata")
复制代码
这样就相当于之前的物品+新的物品

嘛……
已测试可用
但是原本未编辑的空白“物品”也会被算在内
所以需要全部填满再用
不然貌似会出问题

新的数据库编号等于旧的数据库编号上限+新的数据库编号
作者: 忧雪の伤    时间: 2012-1-25 11:46
谁能告诉我为什么这个东西出现在水区。
作者: 怕鼠的猫    时间: 2012-1-25 11:54
原作者应该也不希望你把工程搞得这么庞大吧。
拆分吧。弄两个独立作品多省事。
作者: Kimu    时间: 2012-1-25 11:59
我是来专程来探望卡在墙里面的小瞬的
作者: 鱼人戏水    时间: 2012-1-25 13:19
{:nm_3:}卡在墙里了吗,快点叫警察叔叔帮忙
作者: 一瞬间的幻觉    时间: 2012-1-26 03:29
谢谢大家哦,太感谢
作者: 越前リョーマ    时间: 2012-1-26 03:39
为什么要发到水区来……




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