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

Project1

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

[已经解决] 公共事件做菜单,继续游戏Scene_Load2出错

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
308 小时
注册时间
2011-4-9
帖子
84
跳转到指定楼层
1
发表于 2011-11-24 21:21:17 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

上图,求解。。。

评分

参与人数 1星屑 +499 收起 理由
eve592370698 + 499 给您补充经验

查看全部评分

Lv1.梦旅人

星君

梦石
0
星屑
83
在线时间
2980 小时
注册时间
2011-10-9
帖子
2317

贵宾短篇七萝莉正太组冠军

2
发表于 2011-11-24 21:23:42 | 只看该作者
Scene_Load?
VX默认脚本里面没有此Scene……
估计是LZ写错了

回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
308 小时
注册时间
2011-4-9
帖子
84
3
 楼主| 发表于 2011-11-24 21:27:28 | 只看该作者
本帖最后由 lyttmonkey 于 2011-11-24 21:58 编辑
皮卡星 发表于 2011-11-24 21:23
Scene_Load?
VX默认脚本里面没有此Scene……
估计是LZ写错了


Scene_Load2按教程添加的,Scene_Load确实没有。。


lyttmonkey于2011-11-24 21:37补充以下内容:
#==============================================================================
# ■ Scene_Load2
#------------------------------------------------------------------------------
#  处理自制菜单读档画面的类。
#==============================================================================

class Scene_Load2 < Scene_File
  #--------------------------------------------------------------------------
  # ● 初始化对像
  #--------------------------------------------------------------------------
  def initialize
    # 再生成临时对像
    $game_temp = Game_Temp.new
    # 选择存档时间最新的文件
    $game_temp.last_file_index = 0
    latest_time = Time.at(0)
    for i in 0..3
      filename = make_filename(i)
      if FileTest.exist?(filename)
        file = File.open(filename, "r")
        if file.mtime > latest_time
          latest_time = file.mtime
          $game_temp.last_file_index = i
        end
        file.close
      end
    end
    super("要载入哪个文件?")
  end
  #--------------------------------------------------------------------------
  # ● 确定时的处理
  #--------------------------------------------------------------------------
  def on_decision(filename)
    # 文件不存在的情况下
    unless FileTest.exist?(filename)
      # 演奏冻结 SE
      $game_system.se_play($data_system.buzzer_se)
      return
    end
    # 演奏读档 SE
    $game_system.se_play($data_system.load_se)
    # 写入存档数据
    file = File.open(filename, "rb")
    read_save_data(file)
    file.close
    # 还原 BGM、BGS
    $game_system.bgm_play($game_system.playing_bgm)
    $game_system.bgs_play($game_system.playing_bgs)
    # 刷新地图 (执行并行事件)
    $game_map.update
    # 切换到地图画面
    $scene = Scene_Map.new
  end
  #--------------------------------------------------------------------------
  # ● 取消时的处理
  #--------------------------------------------------------------------------
  def on_cancel
    # 演奏取消 SE
    $game_system.se_play($data_system.cancel_se)
    # 切换到标题画面
    $scene = Scene_Map.new
  end
  #--------------------------------------------------------------------------
  # ● 读取存档数据
  #     file : 读取用文件对像 (已经打开)
  #--------------------------------------------------------------------------
  def read_save_data(file)
    # 读取描绘存档文件用的角色数据
    characters = Marshal.load(file)
    # 读取测量游戏时间用画面计数
    Graphics.frame_count = Marshal.load(file)
    # 读取各种游戏对像
    $game_system        = Marshal.load(file)
    $game_switches      = Marshal.load(file)
    $game_variables     = Marshal.load(file)
    $game_self_switches = Marshal.load(file)
    $game_screen        = Marshal.load(file)
    $game_actors        = Marshal.load(file)
    $game_party         = Marshal.load(file)
    $game_troop         = Marshal.load(file)
    $game_map           = Marshal.load(file)
    $game_player        = Marshal.load(file)
    $map_bgm            = Marshal.load(file)
    $playing_self_BGM   = Marshal.load(file)
    $msg                = 0   
    # 魔法编号与保存时有差异的情况下
    # (加入编辑器的编辑过的数据)
    if $game_system.magic_number != $data_system.magic_number
      # 重新装载地图
      $game_map.setup($game_map.map_id)
      $game_player.center($game_player.x, $game_player.y)
    end
    # 刷新同伴成员
    $game_party.refresh
  end
end



lyttmonkey于2011-11-24 21:45补充以下内容:
如何注释?


lyttmonkey于2011-11-24 21:57补充以下内容:
按你说的修改后,进入选择档案界面,确定后出现错误

QQ截图20111124215450.png (3.79 KB, 下载次数: 0)

QQ截图20111124215450.png

点评

在那行加个“#”就行了,注意必须是在字前面,比如说“#super("要载入哪个文件?")” 这样  发表于 2011-11-24 21:52
28行注释掉就行了  发表于 2011-11-24 21:43
把脚本发出来吧0v0  发表于 2011-11-24 21:33
回复

使用道具 举报

Lv1.梦旅人

星君

梦石
0
星屑
83
在线时间
2980 小时
注册时间
2011-10-9
帖子
2317

贵宾短篇七萝莉正太组冠军

4
发表于 2011-11-24 22:10:53 | 只看该作者
本帖最后由 皮卡星 于 2011-11-24 22:13 编辑

我自己修改了以下,话说这是看哪个教程写的?表示本人很有兴趣
修改过的脚本(已测试,无BUG):
  1. #==============================================================================
  2. # ■ Scene_Load2
  3. #------------------------------------------------------------------------------
  4. #  处理自制菜单读档画面的类。
  5. #==============================================================================

  6. class Scene_Load2 < 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.     RPG::BGM.fade(1500)
  53.     Graphics.fadeout(60)
  54.     Graphics.wait(40)
  55.     @last_bgm.play
  56.     @last_bgs.play
  57.   end
  58.   #--------------------------------------------------------------------------
  59.   # ● 取消时的处理
  60.   #--------------------------------------------------------------------------
  61.   def on_cancel
  62.     # 演奏取消 SE
  63.     $game_system.se_play($data_system.cancel_se)
  64.     # 切换到标题画面
  65.     $scene = Scene_Map.new
  66.   end
  67.   #--------------------------------------------------------------------------
  68.   # ● 读取存档数据
  69.   #     file : 读取用文件对像 (已经打开)
  70.   #--------------------------------------------------------------------------
  71.   def read_save_data(file)
  72.     # 读取描绘存档文件用的角色数据
  73.     characters = Marshal.load(file)
  74.     # 读取测量游戏时间用画面计数
  75.     Graphics.frame_count = Marshal.load(file)
  76.     @last_bgm            = Marshal.load(file)
  77.     @last_bgs            = Marshal.load(file)
  78.     # 读取各种游戏对像
  79.     $game_system         = Marshal.load(file)
  80.     $game_message        = Marshal.load(file)
  81.     $game_switches       = Marshal.load(file)
  82.     $game_variables      = Marshal.load(file)
  83.     $game_self_switches  = 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
复制代码
PS:话说必要这么麻烦么?默认的就可以读档了……真奇怪= =

回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
308 小时
注册时间
2011-4-9
帖子
84
5
 楼主| 发表于 2011-11-24 22:18:39 | 只看该作者
皮卡星 发表于 2011-11-24 22:10
我自己修改了以下,话说这是看哪个教程写的?表示本人很有兴趣
修改过的脚本(已测试,无BUG):PS:话说必 ...

教我vx吧:handshake

点评

=3=||阿勒勒 这样我会很困扰的,可以去看看教程 http://bbs.66rpg.com/thread-115188-1-1.html http://bbs.66rpg.com/thread-127177-1-1.html  发表于 2011-11-24 22:32
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-2 02:45

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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