| 赞 | 0  | 
 
| VIP | 0 | 
 
| 好人卡 | 0 | 
 
| 积分 | 1 | 
 
| 经验 | 1586 | 
 
| 最后登录 | 2016-6-30 | 
 
| 在线时间 | 62 小时 | 
 
 
 
 
 
Lv1.梦旅人 
	- 梦石
 - 0 
 
        - 星屑
 - 50 
 
        - 在线时间
 - 62 小时
 
        - 注册时间
 - 2012-10-25
 
        - 帖子
 - 53
 
 
 
 | 
	
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员  
 
x
 
 本帖最后由 孤客 于 2013-2-9 21:27 编辑  
 
最下面就是那个“对话框选项”的脚本了,用过的来说明一下吧???谢谢! 
 
看得我头晕眼花了。。而且还是日文的我搞不懂啊。。  
还有听说这脚本有图片素材的,谁能给我个啊?或者给我个工程范本吧,谢谢了! 
- #==============================================================================
 
 - # □ 選択肢の作成 (for VX Ace)
 
 - #------------------------------------------------------------------------------
 
 - # Version : 1_20120112
 
 - # by サリサ・タイクーン
 
 - # http://www.tycoon812.com/rgss/
 
 - #==============================================================================
 
  
- #==============================================================================
 
 - # □ 素材スイッチ
 
 - #==============================================================================
 
 - $rgsslab = {} if $rgsslab == nil
 
 - $rgsslab["選択肢の作成"] = true
 
  
- if $rgsslab["選択肢の作成"]
 
 -   
 
 - #==============================================================================
 
 - # □ カスタマイズポイント
 
 - #==============================================================================
 
 - module RGSSLAB end
 
 - module RGSSLAB::Choices_Make
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 選択肢の作成
 
 -   #    記述方法:
 
 -   #    "呼び出しの文字列" => [ "選択肢",
 
 -   #                            "選択肢",
 
 -   #                                 …,
 
 -   #                          ],
 
 -   #    (最後の設定のみ、後ろのカンマを省略できます)
 
 -   #
 
 -   #    呼び出しの文字列は、その選択肢を呼び出す時のキーで
 
 -   #    イベントコマンドのスクリプトにおいて
 
 -   #    「call_choices("呼び出しの文字列")」
 
 -   #    と言うように記述する為にあるものです。
 
 -   #    
 
 -   #    選択肢の数の範囲は、2~7まで対応します。
 
 -   #
 
 -   #    尚、MODEが1の場合に限り、制御文字が扱えますが
 
 -   #    扱う場合は、\を1つ多く記述して下さい。
 
 -   #
 
 -   #    例:\N[1]の場合→ \\N[1] と言う風にして下さい。
 
 -   #--------------------------------------------------------------------------
 
 -   SETTING = {
 
 -   # 1:選択肢画面
 
 -   "選択肢画面" => [
 
 -     "1番目の選択肢", 
 
 -     "2番目の選択肢",
 
 -     "3番目の選択肢",
 
 -     "4番目の選択肢",
 
 -     "5番目の選択肢",
 
 -     "6番目の選択肢",
 
 -     "7番目の選択肢",
 
 -     ],
 
 -   ###
 
 -     
 
 -   }
 
 - end
 
  
- # カスタマイズポイントは、ここまで
 
  
- #==============================================================================
 
 - # □ RGSSLAB::Choices_Make [module]
 
 - #==============================================================================
 
 - module RGSSLAB::Choices_Make
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 素材設定用の定数定義
 
 -   #--------------------------------------------------------------------------
 
 -   MATERIAL_NAME = "選択肢の作成"
 
 -   VERSION       = 1
 
 -   RELEASE       = 20120112
 
 - end
 
  
- #==============================================================================
 
 - # ■ Game_Interpreter [class]
 
 - #==============================================================================
 
 - class Game_Interpreter
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ モジュールの設定
 
 -   #--------------------------------------------------------------------------
 
 -   RGSSLAB_052_2 = RGSSLAB::Choices_Make
 
 - end
 
  
- #==============================================================================
 
 - # □ Scene_Choices [class]
 
 - #==============================================================================
 
 - class Scene_Choices
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ モジュールの設定
 
 -   #--------------------------------------------------------------------------
 
 -   RGSSLAB_052_2 = RGSSLAB::Choices_Make
 
 - end
 
  
- end
 
  复制代码 
- #==============================================================================
 
 - # □ 選択肢画面 (for VX Ace)
 
 - #------------------------------------------------------------------------------
 
 - # Version : 2_20120223
 
 - # by サリサ・タイクーン
 
 - # http://www.tycoon812.com/rgss/
 
 - #==============================================================================
 
  
- #==============================================================================
 
 - # □ 素材スイッチ
 
 - #==============================================================================
 
 - $rgsslab = {} if $rgsslab == nil
 
 - $rgsslab["選択肢画面"] = true
 
  
- if $rgsslab["選択肢画面"]
 
 -   
 
 - #==============================================================================
 
 - # □ カスタマイズポイント
 
 - #==============================================================================
 
 - module RGSSLAB end
 
 - module RGSSLAB::Scene_Choices
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 結果内容を受け取る変数
 
 -   #    受け取る変数を指定します。
 
 -   #
 
 -   #    注意:
 
 -   #    変数拡張の変数に設定する事はできません。
 
 -   #--------------------------------------------------------------------------
 
 -   RESULT_VARIABLE = 3
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 選択肢の番号表示
 
 -   #    0 : アラビア数字
 
 -   #    1 : アルファベット
 
 -   #    2 : ローマ数字
 
 -   #    3 : 漢数字
 
 -   #
 
 -   #    上記以外は、0として扱われます。
 
 -   #--------------------------------------------------------------------------
 
 -   DRAW = 0
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ モードの選択(New!)
 
 -   #    この素材のモードを選択します。
 
 -   #
 
 -   #    0 : 通常モード(制御文字は使えません)
 
 -   #    1 : 制御文字モード
 
 -   #
 
 -   #    これら以外の数値は0として扱われます。
 
 -   #
 
 -   #    使えない制御文字もありますので、ご注意下さい。
 
 -   #--------------------------------------------------------------------------
 
 -   MODE = 0
 
 - end
 
  
- # カスタマイズポイントは、ここまで
 
  
- #==============================================================================
 
 - # □ RGSSLAB::Scene_Choices [module]
 
 - #==============================================================================
 
 - module RGSSLAB::Scene_Choices
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 素材設定用の定数定義
 
 -   #--------------------------------------------------------------------------
 
 -   MATERIAL_NAME = "選択肢画面"
 
 -   VERSION       = 2
 
 -   RELEASE       = 20120223
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 操作エラー
 
 -   #     error_number : エラー番号
 
 -   #--------------------------------------------------------------------------
 
 -   def self.operate_error(error_number)
 
 -     text = "【RGSS研究所:#{MATERIAL_NAME}】"
 
 -     case error_number
 
 -     when 1
 
 -       msgbox_p text,
 
 -       "呼び出しの文字列を記述して下さい。"
 
 -     when 2
 
 -       msgbox_p text,
 
 -       "呼び出しの文字列:#{string}は存在しない為、実行できません。"
 
 -     when 3
 
 -       msgbox_p text,
 
 -       "選択肢の数が2よりも小さい為、実行できません。"
 
 -     when 4
 
 -       msgbox_p text,
 
 -       "選択肢の数が7よりも多い為、実行できません。"
 
 -     end
 
 -   end
 
 - end
 
  
- #==============================================================================
 
 - # ■ Game_Interpreter [class]
 
 - #==============================================================================
 
 - class Game_Interpreter
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ モジュールの設定
 
 -   #--------------------------------------------------------------------------
 
 -   RGSSLAB_052 = RGSSLAB::Scene_Choices
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 選択肢画面の呼び出し
 
 -   #     index : 選択肢の種類
 
 -   #--------------------------------------------------------------------------
 
 -   def call_choices(index)
 
 -     if index == nil
 
 -       RGSSLAB_052.operate_error(1)
 
 -       return
 
 -     end
 
 -     if RGSSLAB_052_2::SETTING[index] == nil
 
 -       RGSSLAB_052.operate_error(2, index)
 
 -       return
 
 -     end
 
 -     if RGSSLAB_052_2::SETTING[index].size < 2
 
 -       RGSSLAB_052.operate_error(3)
 
 -       return
 
 -     end
 
 -     if RGSSLAB_052_2::SETTING[index].size > 7
 
 -       RGSSLAB_052.operate_error(4)
 
 -       return
 
 -     end
 
 -     SceneManager.call(Scene_Choices)
 
 -     SceneManager.scene.prepare(index)
 
 -     Fiber.yield
 
 -   end
 
 - end
 
  
- #==============================================================================
 
 - # □ Window_Dummy_052 [class]
 
 - #==============================================================================
 
 - class Window_Dummy_052 < Window_Base
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ オブジェクト初期化 [オーバーライド]
 
 -   #--------------------------------------------------------------------------
 
 -   def initialize
 
 -     if $rgsslab["XP画面サイズ"]
 
 -       super(48, 288, 544, 160)
 
 -     else
 
 -       super(0, 256, 544, 160)
 
 -     end
 
 -   end
 
 - end
 
  
- #==============================================================================
 
 - # □ Window_Choices_Display [class]
 
 - #==============================================================================
 
 - class Window_Choices_Display < Window_Base
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ モジュールの設定
 
 -   #--------------------------------------------------------------------------
 
 -   RGSSLAB_052 = RGSSLAB::Scene_Choices
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ オブジェクト初期化 [オーバーライド]
 
 -   #     text : 最初に描画させる選択肢の文字列
 
 -   #--------------------------------------------------------------------------
 
 -   def initialize(text = "")
 
 -     if $rgsslab["XP画面サイズ"]
 
 -       super(48, 288, 544, 80)
 
 -     else
 
 -       super(0, 256, 544, 80)
 
 -     end
 
 -     self.opacity  = 0
 
 -     refresh(text)
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ リフレッシュ
 
 -   #     text : 現在選択中の選択肢の文字列
 
 -   #--------------------------------------------------------------------------
 
 -   def refresh(text)
 
 -     contents.clear
 
 -     contents.font.color = normal_color
 
 -     case RGSSLAB_052::MODE
 
 -     when 0 ; contents.draw_text(4, 0, self.width - 40, 32, text)
 
 -     when 1 ; draw_text_ex(4, 0, text)
 
 -     else   ; contents.draw_text(4, 0, self.width - 40, 32, text)
 
 -     end
 
 -   end
 
 - end
 
  
- #==============================================================================
 
 - # □ Window_Label_Display [class]
 
 - #==============================================================================
 
 - class Window_Label_Display < Window_Selectable
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ モジュールの設定
 
 -   #--------------------------------------------------------------------------
 
 -   RGSSLAB_052 = RGSSLAB::Scene_Choices
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ オブジェクト初期化 [オーバーライド]
 
 -   #     item_max : 候補数
 
 -   #--------------------------------------------------------------------------
 
 -   def initialize(item_max)
 
 -     @item_max     = item_max
 
 -     if $rgsslab["XP画面サイズ"]
 
 -       super(48, 368, 544, 80)
 
 -     else
 
 -       super(0, 336, 544, 80)
 
 -     end
 
 -     self.index    = -1
 
 -     self.opacity  = 0
 
 -     case RGSSLAB_052::DRAW
 
 -     when 1 ; @label = ["A", "B", "C", "D", "E", "F", "G"]
 
 -     when 2 ; @label = ["Ⅰ", "Ⅱ", "Ⅲ", "Ⅳ", "Ⅴ", "Ⅵ", "Ⅶ"]
 
 -     when 3 ; @label = ["一", "二", "三", "四", "五", "六", "七"]
 
 -     else   ; @label = ["1", "2", "3", "4", "5", "6", "7"]
 
 -     end
 
 -     refresh
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 桁数の取得 [オーバーライド]
 
 -   #--------------------------------------------------------------------------
 
 -   def col_max
 
 -     return 7
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 項目数の取得 [オーバーライド]
 
 -   #--------------------------------------------------------------------------
 
 -   def item_max
 
 -     @item_max
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ リフレッシュ
 
 -   #--------------------------------------------------------------------------
 
 -   def refresh
 
 -     contents.clear
 
 -     for i in 0...@item_max
 
 -       draw_item(i)
 
 -     end
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 項目の描画
 
 -   #     index : 項目番号
 
 -   #--------------------------------------------------------------------------
 
 -   def draw_item(index)
 
 -     rect = Rect.new(10 + index * 32, 0, 32, 32)
 
 -     self.contents.draw_text(rect, @label[index])
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ カーソルの矩形更新 [オーバーライド]
 
 -   #--------------------------------------------------------------------------
 
 -   def update_cursor
 
 -     if @index < 0
 
 -       self.cursor_rect.empty
 
 -     else
 
 -       self.cursor_rect.set(4 + @index * 32, 0, 32, 32)
 
 -     end
 
 -   end
 
 - end
 
  
- #==============================================================================
 
 - # □ Scene_Choices [class]
 
 - #==============================================================================
 
 - class Scene_Choices < Scene_Base
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ モジュールの設定
 
 -   #--------------------------------------------------------------------------
 
 -   RGSSLAB_052 = RGSSLAB::Scene_Choices
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 準備
 
 -   #     index : 選択肢の種類
 
 -   #--------------------------------------------------------------------------
 
 -   def prepare(index)
 
 -     @index    = RGSSLAB_052_2::SETTING[index]
 
 -     @item_max = RGSSLAB_052_2::SETTING[index].size
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 開始処理 [オーバーライド]
 
 -   #--------------------------------------------------------------------------
 
 -   def start
 
 -     super
 
 -     create_spriteset
 
 -     create_all_windows
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ スプライトセットの作成
 
 -   #--------------------------------------------------------------------------
 
 -   def create_spriteset
 
 -     @spriteset = Spriteset_Map.new
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 全ウィンドウの作成
 
 -   #--------------------------------------------------------------------------
 
 -   def create_all_windows
 
 -     [url=home.php?mod=space&uid=37298]@Window[/url]              = Window_Dummy_052.new
 
 -     @choices_window      = Window_Choices_Display.new(@index[0])
 
 -     @label_window        = Window_Label_Display.new(@item_max)
 
 -     @label_window.index  = 0
 
 -     @label_window.active = true
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ フレーム更新 [オーバーライド]
 
 -   #--------------------------------------------------------------------------
 
 -   def update
 
 -     super
 
 -     update_choices
 
 -     update_input
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 選択肢の更新
 
 -   #--------------------------------------------------------------------------
 
 -   def update_choices
 
 -     @choices_window.refresh(@index[@label_window.index])
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 入力
 
 -   #--------------------------------------------------------------------------
 
 -   def update_input
 
 -     if Input.trigger?(:C)
 
 -       Sound.play_ok
 
 -       $game_variables[RGSSLAB_052::RESULT_VARIABLE] = @label_window.index + 1
 
 -       return_scene
 
 -     end
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ 終了処理 [オーバーライド]
 
 -   #--------------------------------------------------------------------------
 
 -   def terminate
 
 -     super
 
 -     dispose_spriteset
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ○ スプライトセットの解放
 
 -   #--------------------------------------------------------------------------
 
 -   def dispose_spriteset
 
 -     @spriteset.dispose
 
 -   end
 
 - end
 
  
- end
 
  复制代码 = =我发现这脚本后半段有问题啊。。 
如图,那个【/url】后的部分。。。= =要怎么才能变正常啊。。 
 
 |   
 
 
 
 |