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

Project1

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

[已经解决] 我想弄个自动存档,还有继续游戏只有一个档案

 关闭 [复制链接]
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
10 小时
注册时间
2011-4-7
帖子
7
跳转到指定楼层
1
发表于 2011-4-7 12:25:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽

Lv1.梦旅人

梦石
0
星屑
55
在线时间
323 小时
注册时间
2010-8-21
帖子
666
2
发表于 2011-4-7 17:35:21 | 只看该作者
本帖最后由 沙漠点灰 于 2011-4-7 17:40 编辑

回复 精灵的泪 的帖子

总的来说要改2个地方,其中1个为大改(存档方面,只能存1个档),一个为小改(标题画面).
LZ既然只要1个存档,直接Save.rxdata就好了

自动存档方面,事件有个脚本编辑,使用下面代码:
  1. file = File.open("Save.rxdata", "wb")
  2. Scene_Save.new.write_save_data(file)
  3. file.close
复制代码
(嫌麻烦直接下后面的范例,下面代码凑字数)
标题方面有个
command_continue

那里改为
  1.   #--------------------------------------------------------------------------
  2.   # ● 命令 : 继续
  3.   #--------------------------------------------------------------------------
  4.   def command_continue
  5.     # 继续无效的情况下
  6.     unless @continue_enabled
  7.       # 演奏无效 SE
  8.       $game_system.se_play($data_system.buzzer_se)
  9.       return
  10.     end
  11.     # 演奏确定 SE
  12.     $game_system.se_play($data_system.decision_se)
  13.     # 改
  14.     file = File.open("Save.rxdata", "rb")
  15.     Scene_Load.new.read_save_data(file)
  16.     file.close
  17.     $scene = Scene_Map.new
  18.     # 改
  19.   end
复制代码
上面有个
    for i in 0..3
      if FileTest.exist?("Save/Save#{i+1}.rxdata")
        @continue_enabled = true
      end
    end

改为
  1.     # 改
  2.     @continue_enabled = true if FileTest.exist?("Save.rxdata")
  3.     # 改
复制代码
其次,下面代码紧插Main前:
  1. #==============================================================================
  2. # ■ Scene_File
  3. #------------------------------------------------------------------------------
  4. #  存档画面及读档画面的超级类。
  5. #==============================================================================

  6. class Scene_File
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #     help_text : 帮助窗口显示的字符串
  10.   #--------------------------------------------------------------------------
  11.   def initialize(help_text)
  12.     @help_text = help_text
  13.   end
  14.   #--------------------------------------------------------------------------
  15.   # ● 主处理
  16.   #--------------------------------------------------------------------------
  17.   def main
  18.     @spriteset = Spriteset_Map.new
  19.     # 生成帮助窗口
  20.     @help_window = Window_Help.new
  21.     @help_window.set_text(@help_text)
  22.     # 生成存档文件查
  23.     @savefile_windows=(Window_SaveFile.new(0, make_filename(0)))
  24.     # 选择最后操作的文件
  25.     @file_index = $game_temp.last_file_index
  26.     @savefile_windows.selected = true
  27.     40.times{@savefile_windows.x+=640/40;@help_window.y-=2}
  28.     # 执行过渡
  29.     Graphics.transition
  30.     40.times{Graphics.update;@savefile_windows.x-=640/40;@help_window.y+=2}
  31.     # 主循环
  32.     loop do
  33.       # 刷新游戏画面
  34.       Graphics.update
  35.       # 刷新输入信息
  36.       Input.update
  37.       # 刷新画面
  38.       update
  39.       # 如果画面被切换的话就中断循环
  40.       if $scene != self
  41.         break
  42.       end
  43.     end
  44.     40.times{Graphics.update;@savefile_windows.x+=640/40;@help_window.y-=2}
  45.     # 准备过渡
  46.     Graphics.freeze
  47.     # 释放窗口
  48.     @help_window.dispose
  49.     @savefile_windows.dispose
  50.     @spriteset.dispose
  51.   end
  52.   #--------------------------------------------------------------------------
  53.   # ● 刷新画面
  54.   #--------------------------------------------------------------------------
  55.   def update
  56.     # 刷新窗口
  57.     @help_window.update
  58.     @savefile_windows.update
  59.     # 按下 C 键的情况下
  60.     if Input.trigger?(Input::C)
  61.       # 调用过程 on_decision (定义继承目标)
  62.       on_decision(make_filename(@file_index))
  63.       $game_temp.last_file_index = @file_index
  64.       return
  65.     end
  66.     # 按下 B 键的情况下
  67.     if Input.trigger?(Input::B)
  68.       # 调用过程 on_cancel (定义继承目标)
  69.       on_cancel
  70.       return
  71.     end
  72.   end
  73.   #--------------------------------------------------------------------------
  74.   # ● 生成文件名
  75.   #     file_index : 文件名的索引 (0~3)
  76.   #--------------------------------------------------------------------------
  77.   def make_filename(file_index)
  78.     return "Save.rxdata"
  79.   end
  80. end
复制代码
附:范例
Project1.rar (186.63 KB, 下载次数: 464)
>>猛戳>>MetalSagaR游戏主页<<这里<<
欢迎提供您的意见
回复

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
10 小时
注册时间
2011-4-7
帖子
7
3
 楼主| 发表于 2011-4-7 17:43:33 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
10 小时
注册时间
2011-4-7
帖子
7
4
 楼主| 发表于 2011-4-7 17:47:46 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
10 小时
注册时间
2011-4-7
帖子
7
5
 楼主| 发表于 2011-4-7 17:57:50 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
10 小时
注册时间
2011-4-7
帖子
7
6
 楼主| 发表于 2011-4-7 18:01:37 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
10 小时
注册时间
2011-4-7
帖子
7
7
 楼主| 发表于 2011-4-11 12:35:46 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-29 06:54

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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