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

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: hypnoszero
打印 上一主题 下一主题

关于改变存档方式

 关闭 [复制链接]
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-2-1
帖子
23
11
 楼主| 发表于 2008-2-17 05:11:32 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
466 小时
注册时间
2006-2-25
帖子
1863
12
发表于 2008-2-17 05:28:33 | 只看该作者
  1. #○☆====================================================☆○
  2. # 本脚本来在www.66rpg.com,使用和转载请保留此信息
  3. #○☆====================================================☆○

  4. #○☆====================================================☆○
  5. #メニューからロードを呼び出す際に使うグローバル変数にnilを代入
  6. $menu_load = nil
  7. #○☆====================================================☆○
  8. #==============================================================================
  9. # ■ Scene_Menu
  10. #------------------------------------------------------------------------------
  11. #  メニュー画面の処理を行うクラスです。
  12. #==============================================================================

  13. class Scene_Menu
  14. #--------------------------------------------------------------------------
  15. # ● オブジェクト初期化
  16. #     menu_index : コマンドのカーソル初期位置
  17. #--------------------------------------------------------------------------
  18. def initialize(menu_index = 0)
  19.    @menu_index = menu_index
  20. end
  21. #--------------------------------------------------------------------------
  22. # ● メイン処理
  23. #--------------------------------------------------------------------------
  24. def main
  25. #○☆====================================================☆○
  26.    # コマンドウィンドウを作成
  27.    s0 = $data_system.words.item
  28.    s1 = $data_system.words.skill
  29.    s2 = $data_system.words.equip
  30.    s3 = "状态"
  31.    s4 = "读取进度"
  32.    s5 = "退出游戏"
  33.    @command_window = Window_Command.new(160, [s0, s1, s2, s3, s4, s5])
  34.    #@command_window.height -= 32
  35. #○☆====================================================☆○
  36.    @command_window.index = @menu_index
  37.    # パーティ人数が 0 人の場合
  38.    if $game_party.actors.size == 0
  39.      # アイテム、スキル、装備、ステータスを無効化
  40.      @command_window.disable_item(0)
  41.      @command_window.disable_item(1)
  42.      @command_window.disable_item(2)
  43.      @command_window.disable_item(3)
  44.    end
  45. #○☆====================================================☆○
  46. # ロード有効判定
  47. # セーブファイルがひとつでも存在するかどうかを調べる
  48.    @continue_enabled = false
  49.    for i in 0..3
  50.      if FileTest.exist?("Save#{i+1}.rxdata")
  51.        @continue_enabled = true
  52.      end
  53.    end
  54.    if @continue_enabled
  55.    else
  56.      @command_window.disable_item(4)
  57.    end
  58. #○☆====================================================☆○
  59.    # プレイ時間ウィンドウを作成
  60.    @playtime_window = Window_PlayTime.new
  61.    @playtime_window.x = 0
  62.    @playtime_window.y = 224
  63.    # 歩数ウィンドウを作成
  64.    @steps_window = Window_Steps.new
  65.    @steps_window.x = 0
  66.    @steps_window.y = 320
  67.    # ゴールドウィンドウを作成
  68.    @gold_window = Window_Gold.new
  69.    @gold_window.x = 0
  70.    @gold_window.y = 416
  71.    # ステータスウィンドウを作成
  72.    @status_window = Window_MenuStatus.new
  73.    @status_window.x = 160
  74.    @status_window.y = 0
  75.    # トランジション実行
  76.    Graphics.transition
  77.    # メインループ
  78.    loop do
  79.      # ゲーム画面を更新
  80.      Graphics.update
  81.      # 入力情報を更新
  82.      Input.update
  83.      # フレーム更新
  84.      update
  85.      # 画面が切り替わったらループを中断
  86.      if $scene != self
  87.        break
  88.      end
  89.    end
  90.    # トランジション準備
  91.    Graphics.freeze
  92.    # ウィンドウを解放
  93.    @command_window.dispose
  94.    @playtime_window.dispose
  95.    @steps_window.dispose
  96.    @gold_window.dispose
  97.    @status_window.dispose
  98. end
  99. #--------------------------------------------------------------------------
  100. # ● フレーム更新 (コマンドウィンドウがアクティブの場合)
  101. #--------------------------------------------------------------------------
  102. def update_command
  103.    # B ボタンが押された場合
  104.    if Input.trigger?(Input::B)
  105.      # キャンセル SE を演奏
  106.      $game_system.se_play($data_system.cancel_se)
  107.      # マップ画面に切り替え
  108.      $scene = Scene_Map.new
  109.      return
  110.    end
  111.    # C ボタンが押された場合
  112.    if Input.trigger?(Input::C)
  113.      # パーティ人数が 0 人で、セーブ、ゲーム終了以外のコマンドの場合
  114.      if $game_party.actors.size == 0 and @command_window.index < 4
  115.        # ブザー SE を演奏
  116.        $game_system.se_play($data_system.buzzer_se)
  117.        return
  118.      end
  119.      # コマンドウィンドウのカーソル位置で分岐
  120.      case @command_window.index
  121.      when 0  # アイテム
  122.        # 決定  SE を演奏
  123.        $game_system.se_play($data_system.decision_se)
  124.        # アイテム画面に切り替え
  125.        $scene = Scene_Item.new
  126.      when 1  # スキル
  127.        # 決定 SE を演奏
  128.        $game_system.se_play($data_system.decision_se)
  129.        # ステータスウィンドウをアクティブにする
  130.        @command_window.active = false
  131.        @status_window.active = true
  132.        @status_window.index = 0
  133.      when 2  # 装備
  134.        # 決定 SE を演奏
  135.        $game_system.se_play($data_system.decision_se)
  136.        # ステータスウィンドウをアクティブにする
  137.        @command_window.active = false
  138.        @status_window.active = true
  139.        @status_window.index = 0
  140.      when 3  # ステータス
  141.        # 決定 SE を演奏
  142.        $game_system.se_play($data_system.decision_se)
  143.        # ステータスウィンドウをアクティブにする
  144.        @command_window.active = false
  145.        @status_window.active = true
  146.        @status_window.index = 0
  147. #○☆====================================================☆○
  148.      when 4  # ロード
  149.    # ロード有効判定
  150.    # セーブファイルがひとつでも存在するかどうかを調べる
  151.    @continue_enabled = false
  152.    for i in 0..3
  153.      if FileTest.exist?("Save#{i+1}.rxdata")
  154.        @continue_enabled = true
  155.      end
  156.    end
  157.    if @continue_enabled
  158.      # 決定 SE を演奏
  159.      $game_system.se_play($data_system.decision_se)
  160.      # グローバル変数に適当な語句を代入
  161.      $menu_load = "marimo"
  162.      # ロード画面に切り替え
  163.      $scene = Scene_Load.new
  164.    else
  165.      # ブザー SE を演奏
  166.      $game_system.se_play($data_system.buzzer_se)
  167.    end
  168.      when 5  # ゲーム終了
  169.        # 決定 SE を演奏
  170.        $game_system.se_play($data_system.decision_se)
  171.        # ゲーム終了画面に切り替え
  172.        $scene = Scene_End.new
  173.      end
  174. #○☆====================================================☆○
  175.      return
  176.    end
  177. end
  178. end

  179. #==============================================================================
  180. # ■ Scene_Load
  181. #------------------------------------------------------------------------------
  182. #  ロード画面の処理を行うクラスです。
  183. #==============================================================================

  184. class Scene_Load < Scene_File
  185. #--------------------------------------------------------------------------
  186. # ● 取消时的处理
  187. #--------------------------------------------------------------------------
  188. def on_cancel
  189.    # キャンセル SE を演奏
  190.    $game_system.se_play($data_system.cancel_se)
  191. #○☆====================================================☆○
  192.    if $menu_load == nil
  193.    # タイトル画面に切り替え
  194.    $scene = Scene_Title.new
  195. else
  196.    # メニュー画面に切り替え
  197.    $scene = Scene_Menu.new(4)
  198.    end
  199. #○☆====================================================☆○
  200. end
  201. end

  202. #==============================================================================
  203. # ■ Scene_End
  204. #------------------------------------------------------------------------------
  205. #  ゲーム終了画面の処理を行うクラスです。
  206. #==============================================================================

  207. class Scene_End
  208. #--------------------------------------------------------------------------
  209. # ● フレーム更新
  210. #--------------------------------------------------------------------------
  211. def update
  212.    # コマンドウィンドウを更新
  213.    @command_window.update
  214.    # B ボタンが押された場合
  215.    if Input.trigger?(Input::B)
  216.      # キャンセル SE を演奏
  217.      $game_system.se_play($data_system.cancel_se)
  218. #○☆====================================================☆○
  219.      # メニュー画面に切り替え
  220.      $scene = Scene_Menu.new(5)
  221. #○☆====================================================☆○
  222.      return
  223.    end
  224.    # C ボタンが押された場合
  225.    if Input.trigger?(Input::C)
  226.      # コマンドウィンドウのカーソル位置で分岐
  227.      case @command_window.index
  228.      when 0  # タイトルへ
  229.        command_to_title
  230.      when 1  # シャットダウン
  231.        command_shutdown
  232.      when 2  # やめる
  233.        command_cancel
  234.      end
  235.      return
  236.    end
  237. end
  238. #--------------------------------------------------------------------------
  239. # ● コマンド [やめる] 選択時の処理
  240. #--------------------------------------------------------------------------
  241. def command_cancel
  242.    # 決定 SE を演奏
  243.    $game_system.se_play($data_system.decision_se)
  244. #○☆====================================================☆○
  245.    # メニュー画面に切り替え
  246.    $scene = Scene_Menu.new(5)
  247. #○☆====================================================☆○
  248. end
  249. end
复制代码

帮你改好了
你测试下看看有没问题吧
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-2-1
帖子
23
13
 楼主| 发表于 2008-2-17 05:37:34 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
466 小时
注册时间
2006-2-25
帖子
1863
14
发表于 2008-2-17 06:23:49 | 只看该作者
没有一定的ruby基础是听不懂的- -
建议先看看F1的脚本入门和RGSS里的Ruby的语法
然后到网上找些RM脚本教程看看..
回复 支持 反对

使用道具 举报

Lv1.梦旅人

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
帖子
1875
15
发表于 2008-2-17 06:54:11 | 只看该作者
以下引用诡异の猫于2008-2-16 22:23:49的发言:

没有一定的ruby基础是听不懂的- -
建议先看看F1的脚本入门和RGSS里的Ruby的语法
然后到网上找些RM脚本教程看看..

另外,lz可以结帖了吗?
不常在线,有事PM
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-2 19:49

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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