Project1

标题: 我想自己做个事件tittle,有点问题 [打印本页]

作者: Losses    时间: 2011-6-5 20:21
标题: 我想自己做个事件tittle,有点问题
1、如何绕过Tittle直接跳入33号地图?
2、如何通过事件判断是否有存档?

= =~ 这个……我真的忘记怎么做了……
我记得四年前好像看过一个类似的教程可是……
我真的找不到了……dsu_plus_rewardpost_czw
作者: oОS+WEi    时间: 2011-6-5 21:05
  1. #==============================================================================
  2. # ■ Scene_LOGO
  3. #------------------------------------------------------------------------------
  4. #  处理标题画面的类。
  5. #==============================================================================

  6. class Scene_Logo
  7.   #--------------------------------------------------------------------------
  8.   # ● 住处理
  9.   #--------------------------------------------------------------------------
  10.   def main
  11.     # 战斗测试的情况下
  12.     if $BTEST
  13.       battle_test
  14.       return
  15.     end
  16.     # 载入数据库
  17.     $data_actors        = load_data("Data/Actors.rxdata")
  18.     $data_classes       = load_data("Data/Classes.rxdata")
  19.     $data_skills        = load_data("Data/Skills.rxdata")
  20.     $data_items         = load_data("Data/Items.rxdata")
  21.     $data_weapons       = load_data("Data/Weapons.rxdata")
  22.     $data_armors        = load_data("Data/Armors.rxdata")
  23.     $data_enemies       = load_data("Data/Enemies.rxdata")
  24.     $data_troops        = load_data("Data/Troops.rxdata")
  25.     $data_states        = load_data("Data/States.rxdata")
  26.     $data_animations    = load_data("Data/Animations.rxdata")
  27.     $data_tilesets      = load_data("Data/Tilesets.rxdata")
  28.     $data_common_events = load_data("Data/CommonEvents.rxdata")
  29.     $data_system        = load_data("Data/System.rxdata")
  30.     $continue_enabled = false
  31.     for i in 0..19
  32.       if FileTest.exist?("Save/Save#{i}.rxdata")
  33.         $continue_enabled = true
  34.       end
  35.     end
  36.     # 如果不是从梦境过来就演奏标题 BGM
  37.     if $from_dream_to_title == false
  38.       $game_system.bgm_play($data_system.title_bgm)
  39.     else
  40.       $from_dream_to_title = false
  41.     end   
  42.     Audio.me_stop;    Audio.bgs_stop
  43.     command_goto_title_map
  44.   end
  45.   
  46.   def command_goto_title_map              # 生成各种游戏对像并转到Title地图
  47.     $game_temp          = Game_Temp.new
  48.     $game_system        = Game_System.new
  49.     $game_switches      = Game_Switches.new
  50.     $game_variables     = Game_Variables.new
  51.     $game_self_switches = Game_SelfSwitches.new
  52.     $game_screen        = Game_Screen.new
  53.     $game_actors        = Game_Actors.new
  54.     $game_party         = Game_Party.new
  55.     $game_troop         = Game_Troop.new
  56.     $game_map           = Game_Map.new
  57.     $game_player        = Game_Player.new
  58.     $game_party.setup_starting_members    # 设置初期同伴位置
  59.    $game_map.setup(33)                  # 设置Title的地图
  60.    $game_player.moveto(0,0)              # 主角向初期位置移动
  61.     $game_player.refresh                  # 刷新主角
  62.    $game_map.update                      # 刷新地图 (执行并行事件)
  63.     $title_selecting = true
  64.     $scene = Scene_Map.new                # 切换地图画面
  65.   end
  66.   
  67.   def battle_test
  68.     # 载入数据库 (战斗测试用)
  69.     $data_actors        = load_data("Data/BT_Actors.rxdata")
  70.     $data_classes       = load_data("Data/BT_Classes.rxdata")
  71.     $data_skills        = load_data("Data/BT_Skills.rxdata")
  72.     $data_items         = load_data("Data/BT_Items.rxdata")
  73.     $data_weapons       = load_data("Data/BT_Weapons.rxdata")
  74.     $data_armors        = load_data("Data/BT_Armors.rxdata")
  75.     $data_enemies       = load_data("Data/BT_Enemies.rxdata")
  76.     $data_troops        = load_data("Data/BT_Troops.rxdata")
  77.     $data_states        = load_data("Data/BT_States.rxdata")
  78.     $data_animations    = load_data("Data/BT_Animations.rxdata")
  79.     $data_tilesets      = load_data("Data/BT_Tilesets.rxdata")
  80.     $data_common_events = load_data("Data/BT_CommonEvents.rxdata")
  81.     $data_system        = load_data("Data/BT_System.rxdata")
  82.     # 重置测量游戏时间用的画面计数器
  83.     Graphics.frame_count = 0
  84.     # 生成各种游戏对像
  85.     $game_temp          = Game_Temp.new
  86.     $game_system        = Game_System.new
  87.     $game_switches      = Game_Switches.new
  88.     $game_variables     = Game_Variables.new
  89.     $game_self_switches = Game_SelfSwitches.new
  90.     $game_screen        = Game_Screen.new
  91.     $game_actors        = Game_Actors.new
  92.     $game_party         = Game_Party.new
  93.     $game_troop         = Game_Troop.new
  94.     $game_map           = Game_Map.new
  95.     $game_player        = Game_Player.new
  96.     # 设置战斗测试用同伴
  97.     $game_party.setup_battle_test_members
  98.     # 设置队伍 ID、可以逃走标志、战斗背景
  99.     $game_temp.battle_troop_id = $data_system.test_troop_id
  100.     $game_temp.battle_can_escape = true
  101.     $game_map.battleback_name = $data_system.battleback_name
  102.     # 演奏战斗开始 BGM
  103.     $game_system.se_play($data_system.battle_start_se)
  104.     # 演奏战斗 BGM
  105.     $game_system.bgm_play($game_system.battle_bgm)
  106.     # 切换到战斗画面
  107.     $scene = Scene_Battle.new
  108.   end
  109. end
  110. #==============================================================================
  111. # ■ Main
  112. #------------------------------------------------------------------------------
  113. #  各定义结束后、从这里开始实际处理。
  114. #==============================================================================

  115. begin
  116.   # 准备过渡
  117.   # 设置系统默认字体
  118.   Font.default_name = (["黑体"])
  119.   Graphics.freeze
  120.   # 生成场景对像 (标题画面)
  121.   $DEBUG = true
  122.   $scene = Scene_Logo.new
  123.   # $scene 为有效的情况下调用 main 过程
  124.   while $scene != nil
  125.     $scene.main
  126.   end
  127.   # 淡入淡出
  128.   Graphics.transition(20)
  129. rescue Errno::ENOENT
  130.   # 补充 Errno::ENOENT 以外错误
  131.   # 无法打开文件的情况下、显示信息后结束
  132.   filename = $!.message.sub("No such file or directory - ", "")
  133.   print("找不到文件 #{filename}。 ")
  134. end
复制代码
插入该脚本就能直接跳入地图,已经帮你改好在33号地图了,第二个无能解答
作者: uniquetruth    时间: 2011-6-6 00:04
本帖最后由 uniquetruth 于 2011-6-6 00:09 编辑

第二问:
将以下代码加入游戏脚本
  1. class Interpreter
  2.   def isSaved
  3.     for i in 0..3
  4.       if FileTest.exist?("Save#{i+1}.rxdata")
  5.         return true
  6.       end
  7.     end
  8.   return false
  9.   end
  10. end
复制代码
事件中条件分歧的时候选择脚本,填写isSaved





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1