| 赞 | 0  | 
 
| VIP | 0 | 
 
| 好人卡 | 4 | 
 
| 积分 | 1 | 
 
| 经验 | 3136 | 
 
| 最后登录 | 2012-10-31 | 
 
| 在线时间 | 120 小时 | 
 
 
 
 
 
Lv1.梦旅人 
	- 梦石
 - 0 
 
        - 星屑
 - 50 
 
        - 在线时间
 - 120 小时
 
        - 注册时间
 - 2011-2-16
 
        - 帖子
 - 84
 
 
 
 | 
	
接触RM的第4天,昨天居然通宵研究了…… 
几天下来,除了制作一些素材和建立了初步的地图外,对于事件触发也大致摸出了些心得 
然后想着开始打造自己的系统 
当我打开脚本器,里面各种脚本看得我头大……经过反复比较,对于某些脚本功能的用法也稍微有了些眉目 
这时我想到了一个一直想有,可原始版本中不存在的功能:游戏进行中读档 
经过我的观察,我发现Scene_Title里就是游戏开始画面的脚本 
而其中command_continue就是控制读档的函数,做了对比,我发现$scene = Scene_File.new(true, false, false) 
就是真正运行读档的语句,而check_continue只是检查是否有存档而已,并非必要的…… 
于是我做了一次嫁接,将该语句复制 
之后在Scene_Menu下的update_command_selection这个控制选择菜单的函数中,自己添加了一个选择,s7 = "读取",并把它放在了S6之前 
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s7, s6]) 
显示很正常,和我预计的一样,确实在游戏结束之前多了一个读档选项 
 
之后又在update_command_selec中增加了这条复制的语句…… 
 def update_command_selection 
    if Input.trigger?(Input::B) 
      Sound.play_cancel 
      $scene = Scene_Map.new 
    elsif Input.trigger?(Input::C) 
      if $game_party.members.size == 0 and @command_window.index < 4 
        Sound.play_buzzer 
        return 
      elsif $game_system.save_disabled and @command_window.index == 4 
        Sound.play_buzzer 
        return 
      end 
      Sound.play_decision 
      case @command_window.index 
      when 0      # 物品 
        $scene = Scene_Item.new 
      when 1,2,3  # 特技、装备、状态 
        start_actor_selection 
      when 4      # 存档 
        $scene = Scene_File.new(true, false, false) 
      when 5      # 读档 
        $scene = Scene_File.new(true, false, false) 
      when 6      # 游戏结束 
        $scene = Scene_End.new 
      end 
    end 
  end 
 
好了,这样一来,确实能读档了,可问题也来了…… 
读档是没问题,可一旦进入读档画面中,此时想取消返回之前的画面,就会回到标题画面…… 
之后我也试过其他方法,但不奏效 
我觉得这可能和Scene_File.new的设置有关,但我找不到哪里有关于Scene_File.new的声明函数 
毕竟这条读档语句是复制过来的 
各位大大谁能帮忙解答下? 
感激不敬 
 
另外如果能顺便解答一下有什么方便的确定坐标的方法就更好了,要确定游戏画面中的坐标点很难啊,总会有误差,很多时候要试很多次才行…… |   
 
 
 
 |