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

Project1

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

[已经解决] 怎么让系统自动存档

[复制链接]

Lv1.梦旅人

梦石
0
星屑
80
在线时间
153 小时
注册时间
2012-8-22
帖子
41
跳转到指定楼层
1
发表于 2012-9-20 13:57:23 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
怎么样设置一个事件为存档,另一个事件设为读取这个存档?
就是不打开存档页面的那种

Lv3.寻梦者

昨日的黄昏

梦石
0
星屑
1005
在线时间
937 小时
注册时间
2006-11-5
帖子
4128

第2届短篇游戏比赛季军第3届短篇游戏大赛小游戏及其他组季军

2
发表于 2012-9-20 14:16:28 | 只看该作者
事件页  ——》脚本 ——》write_save_data(0)

写入0号存档,当然也可以是1 2 3 4 5 6
[url=http://weibo.com/2238291690?s=6uyXnP]
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
80
在线时间
153 小时
注册时间
2012-8-22
帖子
41
3
 楼主| 发表于 2012-9-20 16:10:06 | 只看该作者
七夕小雨 发表于 2012-9-20 14:16
事件页  ——》脚本 ——》write_save_data(0)

写入0号存档,当然也可以是1 2 3 4 5 6

出错了啊,显示“执行脚本时发生NoMethodError”
回复

使用道具 举报

Lv3.寻梦者

昨日的黄昏

梦石
0
星屑
1005
在线时间
937 小时
注册时间
2006-11-5
帖子
4128

第2届短篇游戏比赛季军第3届短篇游戏大赛小游戏及其他组季军

4
发表于 2012-9-20 16:12:26 | 只看该作者
咦,你自己用了什么奇怪的存档系统嘛?
[url=http://weibo.com/2238291690?s=6uyXnP]
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
80
在线时间
153 小时
注册时间
2012-8-22
帖子
41
5
 楼主| 发表于 2012-9-20 16:19:33 | 只看该作者
七夕小雨 发表于 2012-9-20 16:12
咦,你自己用了什么奇怪的存档系统嘛?

普通的存档系统啊,我没改过
回复

使用道具 举报

Lv3.寻梦者

昨日的黄昏

梦石
0
星屑
1005
在线时间
937 小时
注册时间
2006-11-5
帖子
4128

第2届短篇游戏比赛季军第3届短篇游戏大赛小游戏及其他组季军

6
发表于 2012-9-20 18:12:52 | 只看该作者


这是我差不多8年前的游戏工程的公共事件,就是这样一句呢

点评

不过我也记得RGSS doesn't has this method的吧?  发表于 2012-9-20 18:26
[url=http://weibo.com/2238291690?s=6uyXnP]
回复

使用道具 举报

Lv3.寻梦者

双子人

梦石
0
星屑
3185
在线时间
3618 小时
注册时间
2009-4-4
帖子
4154

开拓者

7
发表于 2012-9-21 14:06:38 | 只看该作者
七夕小雨 发表于 2012-9-20 18:12
这是我差不多8年前的游戏工程的公共事件,就是这样一句呢

七夕小雨这样的高手怎么可能会犯这种错误?!
脚本都没有定义到。



在main前面插入以下脚本
  1. #==============================================================================
  2. # ■ Auto_Save
  3. #------------------------------------------------------------------------------
  4. #  处理存档画面的类。
  5. #==============================================================================

  6. class Auto_Save
  7.   def initialize(file_index)
  8.     # 演奏存档 SE
  9.     $game_system.se_play($data_system.save_se)
  10.     # 写入存档数据
  11.     file = File.open(make_filename(file_index), "wb")
  12.     write_save_data(file)
  13.     file.close
  14.   end
  15.   def write_save_data(file)
  16.     # 生成描绘存档文件用的角色图形
  17.     characters = []
  18.     for i in 0...$game_party.actors.size
  19.       actor = $game_party.actors[i]
  20.       characters.push([actor.character_name, actor.character_hue])
  21.     end
  22.     # 写入描绘存档文件用的角色数据
  23.     Marshal.dump(characters, file)
  24.     # 写入测量游戏时间用画面计数
  25.     Marshal.dump(Graphics.frame_count, file)
  26.     # 增加 1 次存档次数
  27.     $game_system.save_count += 1
  28.     # 保存魔法编号
  29.     # (将编辑器保存的值以随机值替换)
  30.     $game_system.magic_number = $data_system.magic_number
  31.     # 写入各种游戏对像
  32.     Marshal.dump($game_system, file)
  33.     Marshal.dump($game_switches, file)
  34.     Marshal.dump($game_variables, file)
  35.     Marshal.dump($game_self_switches, file)
  36.     Marshal.dump($game_screen, file)
  37.     Marshal.dump($game_actors, file)
  38.     Marshal.dump($game_party, file)
  39.     Marshal.dump($game_troop, file)
  40.     Marshal.dump($game_map, file)
  41.     Marshal.dump($game_player, file)
  42.   end
  43.   def make_filename(file_index)
  44.     return "Save#{file_index + 1}.rxdata"
  45.   end
  46. end
复制代码
事件中使用Auto_Save.new(编号)就可以了。

点评

好吧,多年没用RM确实有些老糊涂了,原来当时是自己在Interpreter中定义了write_save_data(int)的方法,所以可以直接调用  发表于 2012-9-21 14:29
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
80
在线时间
153 小时
注册时间
2012-8-22
帖子
41
8
 楼主| 发表于 2012-9-24 22:33:51 | 只看该作者
hys111111 发表于 2012-9-21 14:06
七夕小雨这样的高手怎么可能会犯这种错误?!
脚本都没有定义到。

懂了,谢谢哈
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-22 04:25

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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