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

Project1

 找回密码
 注册会员
搜索
查看: 2319|回复: 6
打印 上一主题 下一主题

[已经解决] 如何让不同的存档共享一部分装备?

[复制链接]

Lv1.梦旅人

◎无名侠客

梦石
0
星屑
50
在线时间
49 小时
注册时间
2007-6-7
帖子
347
跳转到指定楼层
1
发表于 2014-9-11 11:20:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 七禽七兽 于 2014-9-11 11:21 编辑

比如,让不同的存档可以共享数据库里编号为10~20号的武器,30~40号的防具,但是编号以外的装备和物品都不共享

点评

貌似好像“公共仓库”。  发表于 2014-9-11 11:40

评分

参与人数 1星屑 +35 收起 理由
︶ㄣ牛排ぶ + 35 手动认可奖励

查看全部评分

Lv5.捕梦者

梦石
0
星屑
33466
在线时间
5108 小时
注册时间
2012-11-19
帖子
4878

开拓者

2
发表于 2014-9-11 12:14:22 | 只看该作者
游戏开始时固定给予 10~20号的武器,30~40号的防具 就行啦~!
xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

Lv1.梦旅人

◎无名侠客

梦石
0
星屑
50
在线时间
49 小时
注册时间
2007-6-7
帖子
347
3
 楼主| 发表于 2014-9-11 12:22:50 | 只看该作者
芯☆淡茹水 发表于 2014-9-11 12:14
游戏开始时固定给予 10~20号的武器,30~40号的防具 就行啦~!

如果1号存档的角色带有这些编号的装备就在进入2号存档的时候给与,否则就不给予,那么在读2号存档的时候怎么判断1号存档的角色是否已拥有这些编号的装备呢?
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

4
发表于 2014-9-11 12:56:05 | 只看该作者
把存档的公用部分放入一个“系统存档”。有很多游戏就是这么做的,公用部分往往是变量。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
206 小时
注册时间
2014-2-8
帖子
396
5
发表于 2014-9-11 13:10:37 | 只看该作者
额……复制进去并且仿照范例做
  1. #==============================================================================
  2. # ■ Scene_Load
  3. #------------------------------------------------------------------------------
  4. #  处理读档画面的类。
  5. #==============================================================================

  6. class Scene_Load < Scene_File
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #--------------------------------------------------------------------------
  10.   def initialize
  11.     # 再生成临时对像
  12.     $game_temp = Game_Temp.new
  13.     # 选择存档时间最新的文件
  14.     $game_temp.last_file_index = 0
  15.     latest_time = Time.at(0)
  16.     for i in 0..3
  17.       filename = make_filename(i)
  18.       if FileTest.exist?(filename)
  19.         file = File.open(filename, "r")
  20.         if file.mtime > latest_time
  21.           latest_time = file.mtime
  22.           $game_temp.last_file_index = i
  23.         end
  24.         file.close
  25.       end
  26.     end
  27.     super("要载入哪个文件?")
  28.   end
  29.   #--------------------------------------------------------------------------
  30.   # ● 确定时的处理
  31.   #--------------------------------------------------------------------------
  32.   def on_decision(filename)
  33.     # 文件不存在的情况下
  34.     unless FileTest.exist?(filename)
  35.       # 演奏冻结 SE
  36.       $game_system.se_play($data_system.buzzer_se)
  37.       return
  38.     end
  39.     # 演奏读档 SE
  40.     $game_system.se_play($data_system.load_se)
  41.     # 写入存档数据
  42.     file = File.open(filename, "rb")
  43.     read_save_data(file)
  44.     file.close
  45.     # 还原 BGM、BGS
  46.     $game_system.bgm_play($game_system.playing_bgm)
  47.     $game_system.bgs_play($game_system.playing_bgs)
  48.     # 刷新地图 (执行并行事件)
  49.     $game_map.update
  50.     # 切换到地图画面
  51.     $scene = Scene_Map.new
  52. #===================================范例==================================
  53.    
  54.     if filename=="Save1.rxdata"
  55.       $game_party.gain_weapon(1,1)
  56.       $game_party.gain_armor(1,1)
  57.     end
  58. #===================================类似的修改=============================
  59.   end
  60.   #--------------------------------------------------------------------------
  61.   # ● 取消时的处理
  62.   #--------------------------------------------------------------------------
  63.   def on_cancel
  64.     # 演奏取消 SE
  65.     $game_system.se_play($data_system.cancel_se)
  66.     # 切换到标题画面
  67.     $scene = Scene_Title.new
  68.   end
  69.   #--------------------------------------------------------------------------
  70.   # ● 读取存档数据
  71.   #     file : 读取用文件对像 (已经打开)
  72.   #--------------------------------------------------------------------------
  73.   def read_save_data(file)
  74.     # 读取描绘存档文件用的角色数据
  75.     characters = Marshal.load(file)
  76.     # 读取测量游戏时间用画面计数
  77.     Graphics.frame_count = Marshal.load(file)
  78.     # 读取各种游戏对像
  79.     $game_system        = Marshal.load(file)
  80.     $game_switches      = Marshal.load(file)
  81.     $game_variables     = Marshal.load(file)
  82.     $game_self_switches = Marshal.load(file)
  83.     $game_screen        = Marshal.load(file)
  84.     $game_actors        = Marshal.load(file)
  85.     $game_party         = Marshal.load(file)
  86.     $game_troop         = Marshal.load(file)
  87.     $game_map           = Marshal.load(file)
  88.     $game_player        = Marshal.load(file)
  89.     # 魔法编号与保存时有差异的情况下
  90.     # (加入编辑器的编辑过的数据)
  91.     if $game_system.magic_number != $data_system.magic_number
  92.       # 重新装载地图
  93.       $game_map.setup($game_map.map_id)
  94.       $game_player.center($game_player.x, $game_player.y)
  95.     end
  96.     # 刷新同伴成员
  97.     $game_party.refresh
  98.   end
  99. end
复制代码

评分

参与人数 1梦石 +1 收起 理由
︶ㄣ牛排ぶ + 1 认可答案

查看全部评分

刚接触RPG的新人们裤艾来这里!在这里能够帮助你们提高自身的能力,让大家来帮助每个人实现自己的创意、构想!
也许你只是正在看RPG教程的新人,或者是正在努力学着制作自己的RPG的制作者,或者是狂热的RPG游戏喜爱者,
但都不重要!
加入我们,我们会帮助你实现梦想,或者帮助你更好的运用RPG并且创造个人的一片天地!周末我们会不定时间开放RM技术讨论活动或者RM经验交流课!
加入我们,我们愿意与你共同创造奇迹,共同进步!
QQ群号:329443038  
或者联系QQ:573932914
我们和你站在同一线!
要求只有:常能上线
我们会用十分的热情接纳你!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

◎无名侠客

梦石
0
星屑
50
在线时间
49 小时
注册时间
2007-6-7
帖子
347
6
 楼主| 发表于 2014-9-11 14:32:47 | 只看该作者
573932914 发表于 2014-9-11 13:10
额……复制进去并且仿照范例做

如果数据库编号为4的武器是战斗中得到的,存在存档1,那么读取存档2的时候如何判断存档1是否有这件武器?如果没有就不继承
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
206 小时
注册时间
2014-2-8
帖子
396
7
发表于 2014-9-11 18:57:20 | 只看该作者
七禽七兽 发表于 2014-9-11 14:32
如果数据库编号为4的武器是战斗中得到的,存在存档1,那么读取存档2的时候如何判断存档1是否有这件武器? ...

if $game_party.armor_number(1) == 1
end
防具的判断方法↑,未测试
刚接触RPG的新人们裤艾来这里!在这里能够帮助你们提高自身的能力,让大家来帮助每个人实现自己的创意、构想!
也许你只是正在看RPG教程的新人,或者是正在努力学着制作自己的RPG的制作者,或者是狂热的RPG游戏喜爱者,
但都不重要!
加入我们,我们会帮助你实现梦想,或者帮助你更好的运用RPG并且创造个人的一片天地!周末我们会不定时间开放RM技术讨论活动或者RM经验交流课!
加入我们,我们愿意与你共同创造奇迹,共同进步!
QQ群号:329443038  
或者联系QQ:573932914
我们和你站在同一线!
要求只有:常能上线
我们会用十分的热情接纳你!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-23 03:48

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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