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

Project1

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

[已经解决] 求助多周目Scene_Title的设定

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
65
在线时间
332 小时
注册时间
2009-9-10
帖子
115
跳转到指定楼层
1
发表于 2011-4-2 00:01:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
看了XP的教程 实在脚本无能找了半天改成这样 72行出错
是读取游戏的错误 实在不知道怎么办了求好人~!~
还希望请教我想8周目 开头都是一样的 周目区别为 半路分歧换主角
请教最简单的周目方法 只希望半路换主角就行







#==============================================================================
# ** Scene_Title
#------------------------------------------------------------------------------
#  这个类用来执行显示标题画面的程式。
#==============================================================================

class Scene_Title < Scene_Base
  #--------------------------------------------------------------------------
  # * 主程式
  #--------------------------------------------------------------------------
  def main
    if $BTEST                         # 战斗测试?
      battle_test                     # 开始战斗测试
    else                              # 正常游戏
      super                           # 正常执行主程式
    end
  end
  #--------------------------------------------------------------------------
  # * 程式开始
  #--------------------------------------------------------------------------
  def start
    super
    load_database                     # 加载数据库
    create_game_objects               # 创建游戏对象
    check_continue                    # 读档可行性判定
    create_title_graphic              # 创建标题图形
    create_command_window             # 创建命令窗口
    play_title_music                  # 播放标题画面BGM
  end
  #--------------------------------------------------------------------------
  # * 执行画面过渡显示渐变
  #--------------------------------------------------------------------------
  def perform_transition
    Graphics.transition(20)
  end
  #--------------------------------------------------------------------------
  # * 程式开始后的处理
  #--------------------------------------------------------------------------
  def post_start
    super
    open_command_window
  end
  #--------------------------------------------------------------------------
  # * 程式终止前的处理
  #--------------------------------------------------------------------------
  def pre_terminate
    super
    close_command_window
  end
  #--------------------------------------------------------------------------
  # * 终止程式
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_command_window
    snapshot_for_background
    dispose_title_graphic
  end
  #--------------------------------------------------------------------------
  # * 更新帧
  #--------------------------------------------------------------------------
  def update
    super
    @command_window.update
    if Input.trigger?(Input::C)
      case @command_window.index
      when 0
        if FileTest.exist?("Finished")    # 重新轮回
        command_renascence
        else    # 新的剧情
        command_new_game
      when 1    # 读取存档
        command_continue
      when 2    # 退出游戏
        command_shutdown
      end
  #--------------------------------------------------------------------------
  # * 读取数据
  #--------------------------------------------------------------------------
  def load_database
    $data_actors        = load_data("Data/Actors.rvdata")
    $data_classes       = load_data("Data/Classes.rvdata")
    $data_skills        = load_data("Data/Skills.rvdata")
    $data_items         = load_data("Data/Items.rvdata")
    $data_weapons       = load_data("Data/Weapons.rvdata")
    $data_armors        = load_data("Data/Armors.rvdata")
    $data_enemies       = load_data("Data/Enemies.rvdata")
    $data_troops        = load_data("Data/Troops.rvdata")
    $data_states        = load_data("Data/States.rvdata")
    $data_animations    = load_data("Data/Animations.rvdata")
    $data_common_events = load_data("Data/CommonEvents.rvdata")
    $data_system        = load_data("Data/System.rvdata")
    $data_areas         = load_data("Data/Areas.rvdata")
  end
  #--------------------------------------------------------------------------
  # * 读取数据(战斗测试用)
  #--------------------------------------------------------------------------
  def load_bt_database
    $data_actors        = load_data("Data/BT_Actors.rvdata")
    $data_classes       = load_data("Data/BT_Classes.rvdata")
    $data_skills        = load_data("Data/BT_Skills.rvdata")
    $data_items         = load_data("Data/BT_Items.rvdata")
    $data_weapons       = load_data("Data/BT_Weapons.rvdata")
    $data_armors        = load_data("Data/BT_Armors.rvdata")
    $data_enemies       = load_data("Data/BT_Enemies.rvdata")
    $data_troops        = load_data("Data/BT_Troops.rvdata")
    $data_states        = load_data("Data/BT_States.rvdata")
    $data_animations    = load_data("Data/BT_Animations.rvdata")
    $data_common_events = load_data("Data/BT_CommonEvents.rvdata")
    $data_system        = load_data("Data/BT_System.rvdata")
  end
  #--------------------------------------------------------------------------
  # * 创建游戏对象
  #--------------------------------------------------------------------------
  def create_game_objects
    $game_temp          = Game_Temp.new
    $game_message       = Game_Message.new
    $game_system        = Game_System.new
    $game_switches      = Game_Switches.new
    $game_variables     = Game_Variables.new
    $game_self_switches = Game_SelfSwitches.new
    $game_actors        = Game_Actors.new
    $game_party         = Game_Party.new
    $game_troop         = Game_Troop.new
    $game_map           = Game_Map.new
    $game_player        = Game_Player.new
  end
  #--------------------------------------------------------------------------
  # * 读档可行性判定
  #--------------------------------------------------------------------------
  def check_continue
    @continue_enabled = (Dir.glob('Save*.rvdata').size > 0)
  end
  #--------------------------------------------------------------------------
  # * 创建标题图形
  #--------------------------------------------------------------------------
  def create_title_graphic
    @sprite = Sprite.new
    @sprite.bitmap = Cache.system("Title")
   
    if filetet.exist?("finished.rxdata")
      s1 = Vocab::new_game
      s2 = Vocab::continue
      s3 = Vocab::shutdown
      S4 = Vocab::renascence
      @command_window = Window_Command.new(172, [s1, s2, s3.s4])
      @command_window.x = (544 - @command_window.width) / 2
      @command_window.y = 288
    else
      s1 = Vocab::new_game
      s2 = Vocab::continue
      s3 = Vocab::shutdown
      @command_window = Window_Command.new(172, [s1, s2, s3])
      @command_window.x = (544 - @command_window.width) / 2
      @command_window.y = 288
  end
  #--------------------------------------------------------------------------
  # * 清除标题图形
  #--------------------------------------------------------------------------
  def dispose_title_graphic
    @sprite.bitmap.dispose
    @sprite.dispose
  end
  #--------------------------------------------------------------------------
  # * 创建命令窗口
  #--------------------------------------------------------------------------
  def create_command_window
   
    if @continue_enabled                    # 如果[读取存档]可用
      @command_window.index = 1             # 移动光标至该命令项目上
    else                                    # 如果[读取存档]不可用
      @command_window.draw_item(1, false)   # 半透明显示该命令项目
    end
    @command_window.openness = 0
    @command_window.open
  end
  #--------------------------------------------------------------------------
  # * 清除命令窗口
  #--------------------------------------------------------------------------
  def dispose_command_window
    @command_window.dispose
  end
  #--------------------------------------------------------------------------
  # * 展开命令窗口
  #--------------------------------------------------------------------------
  def open_command_window
    @command_window.open
    begin
      @command_window.update
      Graphics.update
    end until @command_window.openness == 255
  end
  #--------------------------------------------------------------------------
  # * 合拢命令窗口
  #--------------------------------------------------------------------------
  def close_command_window
    @command_window.close
    begin
      @command_window.update
      Graphics.update
    end until @command_window.openness == 0
  end
  #--------------------------------------------------------------------------
  # * 播放标题画面BGM
  #--------------------------------------------------------------------------
  def play_title_music
    $data_system.title_bgm.play
    RPG::BGS.stop
    RPG::ME.stop
  end
  #--------------------------------------------------------------------------
  # * 检查玩家起点事件块是否存在
  #--------------------------------------------------------------------------
  def confirm_player_location
    if $data_system.start_map_id == 0
      print "玩家起始位置没有被指定。"
      exit
    end
  end
  #--------------------------------------------------------------------------
  # * 命令项目:新的剧情
  #--------------------------------------------------------------------------
  def command_new_game
    confirm_player_location
    Sound.play_decision
    $game_party.setup_starting_members            # 队伍初期阵容设置
    $game_map.setup($data_system.start_map_id)    # 玩家起始位置设置
    $game_player.moveto($data_system.start_x, $data_system.start_y)
    $game_player.refresh
    $scene = Scene_Map.new
    RPG::BGM.fade(1500)
    close_command_window
    Graphics.fadeout(60)
    Graphics.wait(40)
    Graphics.frame_count = 0
    if filetet.exist?("finished.rxdata")
      File = file.open("Finished.rxdata","rb")
      Marshal.dump($game_variables,file)
      file.close
    else
      $game_variables    =Game_Variablesn.new
    end
   
    RPG::BGM.stop
    $game_map.autoplay
  end #--------------------------------------------------------------------------
  # * 命令项目:重新轮回
  #--------------------------------------------------------------------------
  def command_renascence
    confirm_player_location
    Sound.play_decision
    $game_party.setup_starting_members            # 队伍初期阵容设置
    $game_map.setup($data_system.start_map_id)    # 玩家起始位置设置
    $game_player.moveto($data_system.start_x, $data_system.start_y)
    $game_player.refresh
    $scene = Scene_Map.new
    RPG::BGM.fade(1500)
    close_command_window
    Graphics.fadeout(60)
    Graphics.wait(40)
    Graphics.frame_count = 0
    if filetet.exist?("finished.rxdata")
      File = file.open("Finished.rxdata","rb")
      Marshal.dump($game_variables,file)
      file.close
    else
      $game_variables    =Game_Variablesn.new
    end
   
    RPG::BGM.stop
    $game_map.autoplay
  end
  #--------------------------------------------------------------------------
  # * 命令项目:读取存档
  #--------------------------------------------------------------------------
  def command_continue
    if @continue_enabled
      Sound.play_decision
      $scene = Scene_File.new(false, true, false)
    else
      Sound.play_buzzer
    end
  end
  #--------------------------------------------------------------------------
  # * 命令项目:退出游戏
  #--------------------------------------------------------------------------
  def command_shutdown
    Sound.play_decision
    RPG::BGM.fade(800)
    RPG::BGS.fade(800)
    RPG::ME.fade(800)
    $scene = nil
  end
  #--------------------------------------------------------------------------
  # * 战斗测试
  #--------------------------------------------------------------------------
  def battle_test
    load_bt_database                  # 从数据库中加载战斗测试所需数据
    create_game_objects               # 创建游戏对象
    Graphics.frame_count = 0          # 初始化游戏时间
    $game_party.setup_battle_test_members
    $game_troop.setup($data_system.test_troop_id)
    $game_troop.can_escape = true
    $game_system.battle_bgm.play
    snapshot_for_background
    $scene = Scene_Battle.new
  end
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
35 小时
注册时间
2008-5-13
帖子
55
2
发表于 2011-4-2 00:24:33 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

Lv4.逐梦者

弓箭手?剑兰

梦石
0
星屑
5524
在线时间
833 小时
注册时间
2010-11-17
帖子
1140
3
发表于 2011-4-2 11:04:29 | 只看该作者
72行错误是因为68行的if判断最后没有下end,所以应该:
  1.         if FileTest.exist?("Finished")    # 重新轮回
  2.         command_renascence
  3.         else    # 新的剧情
  4.         command_new_game
  5.         end
复制代码
改完后,多了一行。
然后会说146行错误,那是因为Vacab没有这个词。
那么开一个脚本页,然后输入:
  1. module Vocab
  2.   renascence = "重新轮回"
  3. end
复制代码
还有另外就是S4不能用,因为大写是常量,应该改为:
  1. s4 = Vocab::renascence
复制代码
之后回到脚本。147行有问题,不能用"."来分割,应该用",",改为:
  1. @command_window = Window_Command.new(172, [s1, s2, s3, s4])
复制代码
之后很有问题的是:filetet.exist?  # 有这个函数么?
将filetet.exist?全部应该改为FileTest.exist?,
你可以"右键"-->"取代",然后操作取代掉,
或者搜索手动取代。

238行和264行大小写混乱及常量问题,应改为:
  1. file = file.open("finished.rxdata","rb")
复制代码
309添加end

update方法(函数)最后应该添加2个end

create_title_graphic最后也应该添加一个end

然后测试就有成果了!!!
但是新的游戏会杯具= =(245行)

那么245行就改为:
  1. load_database
复制代码
再来一次,没问题!:victory:

但是很遗憾的告诉你,你目前的功能跟不同的标题没有任何分别= =,
那么告诉你什么用处吧,当你的文件夹下有:finished.rxdata
的话,那么就会有两个可能性:
新的开始 将$game_variables储存
多一个选择:"重新轮回" 也是储存$game_variables
但是确定的是那时候$game_variables还没建立= =
更何况finished.rxdata是xp的存档格式= =

那么将他改为finished.rvdata

最后
有关那个finished.rvdata的做法以及用法可以后来找我帮你解决,
那么如果是看不明白上面的解决方法,我就发脚本了:
  1. #==============================================================================
  2. # ** Scene_Title
  3. #------------------------------------------------------------------------------
  4. #  这个类用来执行显示标题画面的程式。
  5. #==============================================================================

  6. class Scene_Title < Scene_Base
  7.   #--------------------------------------------------------------------------
  8.   # * 主程式
  9.   #--------------------------------------------------------------------------
  10.   def main
  11.     if $BTEST                         # 战斗测试?
  12.       battle_test                     # 开始战斗测试
  13.     else                              # 正常游戏
  14.       super                           # 正常执行主程式
  15.     end
  16.   end
  17.   #--------------------------------------------------------------------------
  18.   # * 程式开始
  19.   #--------------------------------------------------------------------------
  20.   def start
  21.     super
  22.     load_database                     # 加载数据库
  23.     create_game_objects               # 创建游戏对象
  24.     check_continue                    # 读档可行性判定
  25.     create_title_graphic              # 创建标题图形
  26.     create_command_window             # 创建命令窗口
  27.     play_title_music                  # 播放标题画面BGM
  28.   end
  29.   #--------------------------------------------------------------------------
  30.   # * 执行画面过渡显示渐变
  31.   #--------------------------------------------------------------------------
  32.   def perform_transition
  33.     Graphics.transition(20)
  34.   end
  35.   #--------------------------------------------------------------------------
  36.   # * 程式开始后的处理
  37.   #--------------------------------------------------------------------------
  38.   def post_start
  39.     super
  40.     open_command_window
  41.   end
  42.   #--------------------------------------------------------------------------
  43.   # * 程式终止前的处理
  44.   #--------------------------------------------------------------------------
  45.   def pre_terminate
  46.     super
  47.     close_command_window
  48.   end
  49.   #--------------------------------------------------------------------------
  50.   # * 终止程式
  51.   #--------------------------------------------------------------------------
  52.   def terminate
  53.     super
  54.     dispose_command_window
  55.     snapshot_for_background
  56.     dispose_title_graphic
  57.   end
  58.   #--------------------------------------------------------------------------
  59.   # * 更新帧
  60.   #--------------------------------------------------------------------------
  61.   def update
  62.     super
  63.     @command_window.update
  64.     if Input.trigger?(Input::C)
  65.       case @command_window.index
  66.       when 0
  67.         if FileTest.exist?("Finished")    # 重新轮回
  68.         command_renascence
  69.         else    # 新的剧情
  70.         command_new_game
  71.         end
  72.       when 1    # 读取存档
  73.         command_continue
  74.       when 2    # 退出游戏
  75.         command_shutdown
  76.       end
  77.     end
  78.   end
  79.   #--------------------------------------------------------------------------
  80.   # * 读取数据
  81.   #--------------------------------------------------------------------------
  82.   def load_database
  83.     $data_actors        = load_data("Data/Actors.rvdata")
  84.     $data_classes       = load_data("Data/Classes.rvdata")
  85.     $data_skills        = load_data("Data/Skills.rvdata")
  86.     $data_items         = load_data("Data/Items.rvdata")
  87.     $data_weapons       = load_data("Data/Weapons.rvdata")
  88.     $data_armors        = load_data("Data/Armors.rvdata")
  89.     $data_enemies       = load_data("Data/Enemies.rvdata")
  90.     $data_troops        = load_data("Data/Troops.rvdata")
  91.     $data_states        = load_data("Data/States.rvdata")
  92.     $data_animations    = load_data("Data/Animations.rvdata")
  93.     $data_common_events = load_data("Data/CommonEvents.rvdata")
  94.     $data_system        = load_data("Data/System.rvdata")
  95.     $data_areas         = load_data("Data/Areas.rvdata")
  96.   end
  97.   #--------------------------------------------------------------------------
  98.   # * 读取数据(战斗测试用)
  99.   #--------------------------------------------------------------------------
  100.   def load_bt_database
  101.     $data_actors        = load_data("Data/BT_Actors.rvdata")
  102.     $data_classes       = load_data("Data/BT_Classes.rvdata")
  103.     $data_skills        = load_data("Data/BT_Skills.rvdata")
  104.     $data_items         = load_data("Data/BT_Items.rvdata")
  105.     $data_weapons       = load_data("Data/BT_Weapons.rvdata")
  106.     $data_armors        = load_data("Data/BT_Armors.rvdata")
  107.     $data_enemies       = load_data("Data/BT_Enemies.rvdata")
  108.     $data_troops        = load_data("Data/BT_Troops.rvdata")
  109.     $data_states        = load_data("Data/BT_States.rvdata")
  110.     $data_animations    = load_data("Data/BT_Animations.rvdata")
  111.     $data_common_events = load_data("Data/BT_CommonEvents.rvdata")
  112.     $data_system        = load_data("Data/BT_System.rvdata")
  113.   end
  114.   #--------------------------------------------------------------------------
  115.   # * 创建游戏对象
  116.   #--------------------------------------------------------------------------
  117.   def create_game_objects
  118.     $game_temp          = Game_Temp.new
  119.     $game_message       = Game_Message.new
  120.     $game_system        = Game_System.new
  121.     $game_switches      = Game_Switches.new
  122.     $game_variables     = Game_Variables.new
  123.     $game_self_switches = Game_SelfSwitches.new
  124.     $game_actors        = Game_Actors.new
  125.     $game_party         = Game_Party.new
  126.     $game_troop         = Game_Troop.new
  127.     $game_map           = Game_Map.new
  128.     $game_player        = Game_Player.new
  129.   end
  130.   #--------------------------------------------------------------------------
  131.   # * 读档可行性判定
  132.   #--------------------------------------------------------------------------
  133.   def check_continue
  134.     @continue_enabled = (Dir.glob('Save*.rvdata').size > 0)
  135.   end
  136.   #--------------------------------------------------------------------------
  137.   # * 创建标题图形
  138.   #--------------------------------------------------------------------------
  139.   def create_title_graphic
  140.     @sprite = Sprite.new
  141.     @sprite.bitmap = Cache.system("Title")
  142.    
  143.     if FileTest.exist?("finished.rvdata")
  144.       s1 = Vocab::new_game
  145.       s2 = Vocab::continue
  146.       s3 = Vocab::shutdown
  147.       s4 = Vocab::renascence
  148.       @command_window = Window_Command.new(172, [s1, s2, s3, s4])
  149.       @command_window.x = (544 - @command_window.width) / 2
  150.       @command_window.y = 288
  151.     else
  152.       s1 = Vocab::new_game
  153.       s2 = Vocab::continue
  154.       s3 = Vocab::shutdown
  155.       @command_window = Window_Command.new(172, [s1, s2, s3])
  156.       @command_window.x = (544 - @command_window.width) / 2
  157.       @command_window.y = 288
  158.     end
  159.   end
  160.   #--------------------------------------------------------------------------
  161.   # * 清除标题图形
  162.   #--------------------------------------------------------------------------
  163.   def dispose_title_graphic
  164.     @sprite.bitmap.dispose
  165.     @sprite.dispose
  166.   end
  167.   #--------------------------------------------------------------------------
  168.   # * 创建命令窗口
  169.   #--------------------------------------------------------------------------
  170.   def create_command_window
  171.    
  172.     if @continue_enabled                    # 如果[读取存档]可用
  173.       @command_window.index = 1             # 移动光标至该命令项目上
  174.     else                                    # 如果[读取存档]不可用
  175.       @command_window.draw_item(1, false)   # 半透明显示该命令项目
  176.     end
  177.     @command_window.openness = 0
  178.     @command_window.open
  179.   end
  180.   #--------------------------------------------------------------------------
  181.   # * 清除命令窗口
  182.   #--------------------------------------------------------------------------
  183.   def dispose_command_window
  184.     @command_window.dispose
  185.   end
  186.   #--------------------------------------------------------------------------
  187.   # * 展开命令窗口
  188.   #--------------------------------------------------------------------------
  189.   def open_command_window
  190.     @command_window.open
  191.     begin
  192.       @command_window.update
  193.       Graphics.update
  194.     end until @command_window.openness == 255
  195.   end
  196.   #--------------------------------------------------------------------------
  197.   # * 合拢命令窗口
  198.   #--------------------------------------------------------------------------
  199.   def close_command_window
  200.     @command_window.close
  201.     begin
  202.       @command_window.update
  203.       Graphics.update
  204.     end until @command_window.openness == 0
  205.   end
  206.   #--------------------------------------------------------------------------
  207.   # * 播放标题画面BGM
  208.   #--------------------------------------------------------------------------
  209.   def play_title_music
  210.     $data_system.title_bgm.play
  211.     RPG::BGS.stop
  212.     RPG::ME.stop
  213.   end
  214.   #--------------------------------------------------------------------------
  215.   # * 检查玩家起点事件块是否存在
  216.   #--------------------------------------------------------------------------
  217.   def confirm_player_location
  218.     if $data_system.start_map_id == 0
  219.       print "玩家起始位置没有被指定。"
  220.       exit
  221.     end
  222.   end
  223.   #--------------------------------------------------------------------------
  224.   # * 命令项目:新的剧情
  225.   #--------------------------------------------------------------------------
  226.   def command_new_game
  227.     confirm_player_location
  228.     Sound.play_decision
  229.     $game_party.setup_starting_members            # 队伍初期阵容设置
  230.     $game_map.setup($data_system.start_map_id)    # 玩家起始位置设置
  231.     $game_player.moveto($data_system.start_x, $data_system.start_y)
  232.     $game_player.refresh
  233.     $scene = Scene_Map.new
  234.     RPG::BGM.fade(1500)
  235.     close_command_window
  236.     Graphics.fadeout(60)
  237.     Graphics.wait(40)
  238.     Graphics.frame_count = 0
  239.     if FileTest.exist?("finished.rvdata")
  240.       file = file.open("finished.rvdata","rb")
  241.       Marshal.dump($game_variables,file)
  242.       file.close
  243.     else
  244.       load_database
  245.     end
  246.    
  247.     RPG::BGM.stop
  248.     $game_map.autoplay
  249.   end#--------------------------------------------------------------------------
  250.   # * 命令项目:重新轮回
  251.   #--------------------------------------------------------------------------
  252.   def command_renascence
  253.     confirm_player_location
  254.     Sound.play_decision
  255.     $game_party.setup_starting_members            # 队伍初期阵容设置
  256.     $game_map.setup($data_system.start_map_id)    # 玩家起始位置设置
  257.     $game_player.moveto($data_system.start_x, $data_system.start_y)
  258.     $game_player.refresh
  259.     $scene = Scene_Map.new
  260.     RPG::BGM.fade(1500)
  261.     close_command_window
  262.     Graphics.fadeout(60)
  263.     Graphics.wait(40)
  264.     Graphics.frame_count = 0
  265.     if FileTest.exist?("finished.rvdata")
  266.       file = file.open("finished.rvdata","rb")
  267.       Marshal.dump($game_variables,file)
  268.       file.close
  269.     else
  270.       $game_variables    =Game_Variablesn.new
  271.     end
  272.    
  273.     RPG::BGM.stop
  274.     $game_map.autoplay
  275.   end
  276.   #--------------------------------------------------------------------------
  277.   # * 命令项目:读取存档
  278.   #--------------------------------------------------------------------------
  279.   def command_continue
  280.     if @continue_enabled
  281.       Sound.play_decision
  282.       $scene = Scene_File.new(false, true, false)
  283.     else
  284.       Sound.play_buzzer
  285.     end
  286.   end
  287.   #--------------------------------------------------------------------------
  288.   # * 命令项目:退出游戏
  289.   #--------------------------------------------------------------------------
  290.   def command_shutdown
  291.     Sound.play_decision
  292.     RPG::BGM.fade(800)
  293.     RPG::BGS.fade(800)
  294.     RPG::ME.fade(800)
  295.     $scene = nil
  296.   end
  297.   #--------------------------------------------------------------------------
  298.   # * 战斗测试
  299.   #--------------------------------------------------------------------------
  300.   def battle_test
  301.     load_bt_database                  # 从数据库中加载战斗测试所需数据
  302.     create_game_objects               # 创建游戏对象
  303.     Graphics.frame_count = 0          # 初始化游戏时间
  304.     $game_party.setup_battle_test_members
  305.     $game_troop.setup($data_system.test_troop_id)
  306.     $game_troop.can_escape = true
  307.     $game_system.battle_bgm.play
  308.     snapshot_for_background
  309.     $scene = Scene_Battle.new
  310.   end
  311. end
  312. module Vocab
  313.   renascence = "重新轮回"
  314. end
复制代码

评分

参与人数 2星屑 +300 收起 理由
一瞬间的幻觉 + 280 很敬业!!
Rion幻音 + 20 剑兰兄威武~

查看全部评分

回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
65
在线时间
332 小时
注册时间
2009-9-10
帖子
115
4
 楼主| 发表于 2011-4-2 18:19:50 | 只看该作者
啊我明白一点 是不是现在新游戏和新选项是一个功能 如果把脚本的240~247多余的地方删掉 然后新的剧情是不是就正常了
回复

使用道具 举报

Lv4.逐梦者

弓箭手?剑兰

梦石
0
星屑
5524
在线时间
833 小时
注册时间
2010-11-17
帖子
1140
5
发表于 2011-4-2 18:29:02 | 只看该作者
回复 gaoling0727 的帖子

是的,240-247应该删掉。
但是新选项是不是想读取公用的变量?(你现在是储存)
如果是读取请将266-272改为:
  1.     file = file.open("finished.rvdata","rb")
  2.     Marshal.load($game_variables)
  3.     file.close
复制代码
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
65
在线时间
332 小时
注册时间
2009-9-10
帖子
115
6
 楼主| 发表于 2011-4-2 18:42:03 | 只看该作者
再次麻烦再次问一下 正常通关怎么设置对话脚本?
File = file.open("Finished.rvdata","wb")
Marshal.dump($game_variables,file)
Marshal.dump($game_actors,file)
file.close
对么?
我一跟设置这个事件脚本的NPC说话就出现什么
Name Error.
undefinde local variable or method "file" for #<Game Interpretre:0x13 cd950>
回复

使用道具 举报

Lv4.逐梦者

弓箭手?剑兰

梦石
0
星屑
5524
在线时间
833 小时
注册时间
2010-11-17
帖子
1140
7
发表于 2011-4-3 22:04:35 | 只看该作者
回复 gaoling0727 的帖子

大小写不要乱用,大写是常量,无法变。
还有是File.open,不是file.open。
  1. file = File.open("Finished.txt","wb")
  2. Marshal.dump($game_variables,file)
  3. Marshal.dump($game_actors,file)
  4. file.close
复制代码
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-23 11:16

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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