- =begin ************************************************************************ 
-   ◆ 画像コマンドスクリプト (ベーススクリプト) Ver.1.82 
-   --------------------------------------------------------------------------- 
-     画像コマンドのベーススクリプトです。回転アイコンコマンドが使えます。 
- =end # ************************************************************************ 
-   
- #-information------------------------------------------------------------------ 
- $ziifee ||= {} 
- $ziifee[:SpriteCommand] = true 
- #------------------------------------------------------------------------------ 
- #-memo------------------------------------------------------------------------- 
- #  [必要画像] 以下の画像を Graphics/System にインポートしてください。 
- #    回転コマンド用カーソル画像 ( ファイル名 : RollIconCursor ) 
- # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
- #  このスクリプトは可能な限り素材の中で上部に導入してください。 
- #  回転アイコンコマンド選択を行いたいクラスに以下を記述します。 
- #    include ZiifSpriteCommand_RollIcon  # 回転アイコンコマンド選択 
- #------------------------------------------------------------------------------ 
-   
- #============================================================================== 
- # ■ ZiifManager 
- #============================================================================== 
-   
- module ZiifManager 
-   #-------------------------------------------------------------------------- 
-   # ▼ 定数 (アイコン番号) 
-   #-memo--------------------------------------------------------------------- 
-   #  回転コマンド上に表示するアイコンはここで設定します。 
-   #  以下の定義の symbol がここで設定するシンボルになります。 
-   #    add_command(name, symbol, enabled, ext) # コマンドの追加 
-   # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
-   #  IconSet[シンボル] = Hash.new(アイコン番号) 
-   #  IconSet[:skill][スキルタイプ番号] = アイコン番号  # スキルタイプ 
-   #-------------------------------------------------------------------------- 
-   IconSet ||= Hash.new(Hash.new(16))           # デフォルト 
-   IconSet[:fight]       = Hash.new(147)        # 戦う   (バトル) 
-   IconSet[:escape]      = Hash.new(467)        # 逃げる (バトル) 
-   IconSet[:attack]      = Hash.new(175)        # 攻撃   (バトル) 
-   IconSet[:guard]       = Hash.new(506)        # 防御   (バトル) 
-   IconSet[:item]        = Hash.new(260)        # アイテム 
-   IconSet[:skill]       = Hash.new(112)        # スキル 
-   IconSet[:skill][1]    = 115                  # スキルタイプ ID:01 
-   IconSet[:skill][2]    = 117                  # スキルタイプ ID:02 
-   IconSet[:equip]       = Hash.new(436)        # 装備 
-   IconSet[:weapon]      = Hash.new(147)        # 武器 
-   IconSet[:armor]       = Hash.new(506)        # 防具 
-   IconSet[:key_item]    = Hash.new(243)        # キーアイテム 
-   IconSet[:optimize]    = Hash.new(437)        # 最強装備 
-   IconSet[:clear]       = Hash.new(143)        # 外す 
-   IconSet[:status]      = Hash.new(121)        # ステータス 
-   IconSet[:formation]   = Hash.new(183)        # 並び替え 
-   IconSet[:save]        = Hash.new(224)        # セーブ 
-   IconSet[:buy]         = Hash.new(270)        # 購入 
-   IconSet[:sell]        = Hash.new(262)        # 売却 
-   IconSet[:cancel]      = Hash.new(12)         # キャンセル 
-   IconSet[:new_game]    = Hash.new(234)        # ニューゲーム 
-   IconSet[:continue]    = Hash.new(224)        # コンティニュー 
-   IconSet[:game_end]    = Hash.new(257)        # ゲーム終了 
-   IconSet[:to_title]    = Hash.new(257)        # タイトルへ 
-   IconSet[:shutdown]    = Hash.new(143)        # シャットダウン 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドアイコン番号の取得 
-   #     command : ウィンドウのコマンド 
-   #-------------------------------------------------------------------------- 
-   def self.command_icon_index(command) 
-     IconSet[command[:symbol]][command[:ext]] 
-   end 
- end 
-   
- #============================================================================== 
- # ■ Game_System 
- #============================================================================== 
-   
- class Game_System 
-   #-------------------------------------------------------------------------- 
-   # ● 公開インスタンス変数 (オプション拡張用) 
-   #-------------------------------------------------------------------------- 
-   attr_writer   :ziifop_reverse_roll      # 逆回転 ( true / false ) 
-   attr_writer   :ziifop_roll_input_type   # 回転時 キー入力タイプ (0~2) 
-   attr_writer   :ziifop_roll_speed        # 回転時 速度 (0~4) 
-   #-------------------------------------------------------------------------- 
-   # ▼ 逆回転の取得 
-   #-------------------------------------------------------------------------- 
-   def ziifop_reverse_roll 
-     return false 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ▼ 回転キー入力タイプの取得 (0:プレス, 1:トリガー, 2:リピート) 
-   #-------------------------------------------------------------------------- 
-   def ziifop_roll_input_type 
-     return 0 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ▼ 回転速度の取得 (0:遅い ~ 4:速い) 
-   #-------------------------------------------------------------------------- 
-   def ziifop_roll_speed 
-     return 1 
-   end 
- end 
-   
- #****************************************************************************** 
- # ▼ 画像コマンド基本部 
- #****************************************************************************** 
-   
- #============================================================================== 
- # ■ Sprite_ZiifCommandSprite 
- #------------------------------------------------------------------------------ 
- #  コマンド画像・背景・カーソル表示用スプライトのスーパークラスです。 
- #============================================================================== 
-   
- class Sprite_ZiifCommandSprite < Sprite 
-   #-------------------------------------------------------------------------- 
-   # ● オブジェクト初期化 
-   #-------------------------------------------------------------------------- 
-   def initialize(command_set) 
-     super(command_set.viewport) 
-     @command_set = command_set 
-     init_basic_values 
-     create_bitmap 
-     update 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 基本変数の初期化 
-   #-------------------------------------------------------------------------- 
-   def init_basic_values 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● ビットマップの作成 
-   #-------------------------------------------------------------------------- 
-   def create_bitmap 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 内容の作成 
-   #-------------------------------------------------------------------------- 
-   def create_contents 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 内容の削除 
-   #-------------------------------------------------------------------------- 
-   def clear_contents 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● スプライトコマンドの取得 
-   #-------------------------------------------------------------------------- 
-   def command_set 
-     return @command_set 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 位置の取得 
-   #-------------------------------------------------------------------------- 
-   def index 
-     return command_set.sprite_index(self) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドのビューポートの取得 
-   #-------------------------------------------------------------------------- 
-   def command_set_viewport 
-     return command_set.viewport 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドの可視状態の取得 
-   #-------------------------------------------------------------------------- 
-   def command_set_visible 
-     return command_set.visible && !command_set.close? 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドの透明度の取得 
-   #-------------------------------------------------------------------------- 
-   def command_set_opacity 
-     return command_set.contents_opacity 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 位置情報の更新 
-   #-------------------------------------------------------------------------- 
-   def update_position 
-     self.viewport = command_set_viewport 
-     self.visible  = command_set_visible 
-     self.opacity  = command_set_opacity 
-   end 
- end 
-   
- #============================================================================== 
- # ■ ZiifSpriteCommand 
- #------------------------------------------------------------------------------ 
- #  画像コマンド選択を行うためのモジュールです。Mix-Inにより使用します。 
- #============================================================================== 
-   
- module ZiifSpriteCommand 
-   #-------------------------------------------------------------------------- 
-   # ● 公開インスタンス変数 
-   #-------------------------------------------------------------------------- 
-   attr_reader   :windowskin               # ウィンドウスキン 
-   attr_reader   :viewport                 # ビューポート 
-   attr_reader   :active                   # 選択状態 
-   attr_reader   :visible                  # 可視状態 
-   attr_reader   :x                        # X座標 
-   attr_reader   :y                        # Y座標 
-   attr_reader   :width                    # 幅 
-   attr_reader   :height                   # 高さ 
-   attr_reader   :z                        # Z座標 
-   attr_reader   :ox                       # 転送元原点 X座標 
-   attr_reader   :oy                       # 転送元原点 Y座標 
-   attr_reader   :padding                  # 余白の大きさ 
-   attr_reader   :padding_bottom           # 下線余白の大きさ 
-   attr_reader   :opacity                  # 不透明度 
-   attr_reader   :back_opacity             # 背景の不透明度 
-   attr_reader   :contents_opacity         # コマンドの不透明度 
-   attr_reader   :openness                 # オープン度 
-   attr_reader   :tone                     # 背景の色調 
-   attr_reader   :index                    # カーソル位置 
-   attr_reader   :help_window              # ヘルプウィンドウ 
-   attr_accessor :cursor_fix               # カーソル固定フラグ 
-   attr_accessor :cursor_all               # カーソル全選択フラグ 
-   #-------------------------------------------------------------------------- 
-   # ● オブジェクト初期化 
-   #-------------------------------------------------------------------------- 
-   def initialize(*args) 
-     init_basic_values(*args) 
-     init_sprite_command 
-     update_tone 
-     refresh 
-     select(0) 
-     activate 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 基本変数の初期化 
-   #-------------------------------------------------------------------------- 
-   def init_basic_values(x, y, width = window_width, height = window_height) 
-     @windowskin       = Cache.system("Window") 
-     @viewport         = nil 
-     @active           = true 
-     @visible          = true 
-     @x                = x 
-     @y                = y 
-     @width            = width 
-     @height = height 
-     @z                = 100 
-     @ox               = 0 
-     @oy               = 0 
-     @padding          = 12 
-     @padding_bottom   = 12 
-     @opacity          = 255 
-     @back_opacity     = 255 
-     @contents_opacity = 255 
-     @openness         = 255 
-     @tone             = Tone.new 
-     @index            = -1 
-     @handler          = {} 
-     @cursor_fix       = false 
-     @cursor_all       = false 
-     @opening          = false 
-     @closing          = false 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● スプライトコマンド変数の初期化 
-   #-------------------------------------------------------------------------- 
-   def init_sprite_command 
-     @command_sprites  = [] 
-     @object_sprites   = {} 
-     create_dummy_bitmap 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 解放 
-   #-------------------------------------------------------------------------- 
-   def dispose 
-     dispose_dummy_bitmap 
-     dispose_object_sprites 
-     dispose_command_sprites 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● ウィンドウ幅の取得 
-   #-------------------------------------------------------------------------- 
-   def window_width 
-     return 96 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● ウィンドウ高さの取得 
-   #-------------------------------------------------------------------------- 
-   def window_height 
-     return 88 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 項目数の取得 
-   #-------------------------------------------------------------------------- 
-   def item_max 
-     @list.size 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドリストのクリア 
-   #-------------------------------------------------------------------------- 
-   def clear_command_list 
-     @list = [] 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドリストの作成 
-   #-------------------------------------------------------------------------- 
-   def make_command_list 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドの追加 
-   #     name    : コマンド名 
-   #     symbol  : 対応するシンボル 
-   #     enabled : 有効状態フラグ 
-   #     ext     : 任意の拡張データ 
-   #-------------------------------------------------------------------------- 
-   def add_command(name, symbol, enabled = true, ext = nil) 
-     @list.push({:name=>name, :symbol=>symbol, :enabled=>enabled, :ext=>ext}) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンド名の取得 
-   #-------------------------------------------------------------------------- 
-   def command(index) 
-     @list[index] 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンド名の取得 
-   #-------------------------------------------------------------------------- 
-   def command_name(index) 
-     @list[index][:name] 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドの有効状態を取得 
-   #-------------------------------------------------------------------------- 
-   def command_enabled?(index) 
-     @list[index][:enabled] 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドシンボルの取得 
-   #-------------------------------------------------------------------------- 
-   def command_symbol(index) 
-     @list[index][:symbol] 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドの拡張データの取得 
-   #-------------------------------------------------------------------------- 
-   def command_ext(index) 
-     @list[index][:ext] 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 選択項目のコマンドデータを取得 
-   #-------------------------------------------------------------------------- 
-   def current_data 
-     index >= 0 ? @list[index] : nil 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 選択項目のコマンド名を取得 
-   #-------------------------------------------------------------------------- 
-   def current_item_name 
-     current_data ? current_data[:name] : "" 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 選択項目の有効状態を取得 
-   #-------------------------------------------------------------------------- 
-   def current_item_enabled? 
-     current_data ? current_data[:enabled] : false 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 選択項目のシンボルを取得 
-   #-------------------------------------------------------------------------- 
-   def current_symbol 
-     current_data ? current_data[:symbol] : nil 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 選択項目の拡張データを取得 
-   #-------------------------------------------------------------------------- 
-   def current_ext 
-     current_data ? current_data[:ext] : nil 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 指定されたシンボルを持つコマンドにカーソルを移動 
-   #-------------------------------------------------------------------------- 
-   def select_symbol(symbol) 
-     @list.each_index {|i| select(i) if @list[i][:symbol] == symbol } 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 指定された拡張データを持つコマンドにカーソルを移動 
-   #-------------------------------------------------------------------------- 
-   def select_ext(ext) 
-     @list.each_index {|i| select(i) if @list[i][:ext] == ext } 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● スプライトコマンドクラスの取得 
-   #-------------------------------------------------------------------------- 
-   def sprite_command_class 
-     return Sprite_ZiifCommandSprite 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンド背景クラスの取得 
-   #-------------------------------------------------------------------------- 
-   def sprite_background_class 
-     return Sprite_ZiifCommandSprite 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドカーソルクラスの取得 
-   #-------------------------------------------------------------------------- 
-   def sprite_cursor_class 
-     return Sprite_ZiifCommandSprite 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドスプライトの位置を取得 
-   #-------------------------------------------------------------------------- 
-   def sprite_index(sprite) 
-     @command_sprites.index(sprite) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドスプライトの作成 
-   #-------------------------------------------------------------------------- 
-   def make_command_sprites 
-     item_max.times {|i| @command_sprites[i] = sprite_command_class.new(self) } 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドスプライトの解放 
-   #-------------------------------------------------------------------------- 
-   def dispose_command_sprites 
-     @command_sprites.each {|sprite| sprite.dispose } 
-     @command_sprites.clear 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドスプライトの更新 
-   #-------------------------------------------------------------------------- 
-   def update_command_sprites 
-     @command_sprites.each {|sprite| sprite.update } 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドスプライトの位置情報を更新 
-   #-------------------------------------------------------------------------- 
-   def update_command_sprites_position 
-     @command_sprites.each {|sprite| sprite.update_position } 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● オブジェクトスプライトの作成 
-   #-------------------------------------------------------------------------- 
-   def make_object_sprites 
-     @object_sprites[:background] = sprite_background_class.new(self) 
-     @object_sprites[:cursor]     = sprite_cursor_class.new(self) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● オブジェクトスプライトの解放 
-   #-------------------------------------------------------------------------- 
-   def dispose_object_sprites 
-     @object_sprites.each_value {|sprite| sprite.dispose } 
-     @object_sprites.clear 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● オブジェクトスプライトの更新 
-   #-------------------------------------------------------------------------- 
-   def update_object_sprites 
-     @object_sprites.each_value {|sprite| sprite.update } 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● オブジェクトスプライトの位置情報を更新 
-   #-------------------------------------------------------------------------- 
-   def update_object_sprites_position 
-     @object_sprites.each_value {|sprite| sprite.update_position } 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンド内容の作成 
-   #-------------------------------------------------------------------------- 
-   def create_contents 
-     dispose_object_sprites 
-     dispose_command_sprites 
-     make_command_sprites 
-     make_object_sprites 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● フレーム更新 
-   #-------------------------------------------------------------------------- 
-   def update 
-     update_tone 
-     update_open if @opening 
-     update_close if @closing 
-     update_move 
-     update_command_sprites 
-     update_object_sprites 
-     process_cursor_move 
-     process_handling 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 位置情報の更新 
-   #-------------------------------------------------------------------------- 
-   def update_position 
-     update_command_sprites_position 
-     update_object_sprites_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● X座標の変更 
-   #-------------------------------------------------------------------------- 
-   def x=(x) 
-     @x = x 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● Y座標の変更 
-   #-------------------------------------------------------------------------- 
-   def y=(y) 
-     @y = y 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 幅の変更 
-   #-------------------------------------------------------------------------- 
-   def width=(width) 
-     @width = width 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 高さの変更 
-   #-------------------------------------------------------------------------- 
-   def height=(height) 
-     @height = height 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● Z座標の変更 
-   #-------------------------------------------------------------------------- 
-   def z=(z) 
-     @z = z 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● X座標、Y座標、幅、高さをまとめて変更 
-   #-------------------------------------------------------------------------- 
-   def move(x, y, width, height) 
-     @x      = x 
-     @y      = y 
-     @width  = width 
-     @height = height 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 転送元原点 X座標の変更 
-   #-------------------------------------------------------------------------- 
-   def ox=(ox) 
-     @ox = ox 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 転送元原点 Y座標の変更 
-   #-------------------------------------------------------------------------- 
-   def oy=(oy) 
-     @oy = oy 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 余白の大きさの変更 
-   #-------------------------------------------------------------------------- 
-   def padding=(padding) 
-     @padding        = padding 
-     @padding_bottom = padding_bottom 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 下線余白の大きさの変更 
-   #-------------------------------------------------------------------------- 
-   def padding_bottom=(padding_bottom) 
-     @padding_bottom = padding_bottom 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● ウィンドウスキンの変更 
-   #-------------------------------------------------------------------------- 
-   def windowskin=(windowskin) 
-     @windowskin = windowskin 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● ビューポートの変更 
-   #-------------------------------------------------------------------------- 
-   def viewport=(viewport) 
-     @viewport = viewport 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 可視状態の変更 
-   #-------------------------------------------------------------------------- 
-   def visible=(visible) 
-     @visible = visible 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 表示 
-   #-------------------------------------------------------------------------- 
-   def show 
-     self.visible = true 
-     self 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 非表示 
-   #-------------------------------------------------------------------------- 
-   def hide 
-     self.visible = false 
-     self 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● アクティブ状態の変更 
-   #-------------------------------------------------------------------------- 
-   def active=(active) 
-     @active = active 
-     update_cursor 
-     call_update_help 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● アクティブ化 
-   #-------------------------------------------------------------------------- 
-   def activate 
-     self.active = true 
-     self 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 非アクティブ化 
-   #-------------------------------------------------------------------------- 
-   def deactivate 
-     self.active = false 
-     self 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 不透明度の変更 
-   #-------------------------------------------------------------------------- 
-   def opacity=(opacity) 
-     @opacity = [[opacity, 255].min, 0].max 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 背景の不透明度の変更 
-   #-------------------------------------------------------------------------- 
-   def back_opacity=(opacity) 
-     @back_opacity = [[opacity, 255].min, 0].max 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 内容の不透明度の変更 
-   #-------------------------------------------------------------------------- 
-   def contents_opacity=(opacity) 
-     @contents_opacity = [[opacity, 255].min, 0].max 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● オープン度の変更 
-   #-------------------------------------------------------------------------- 
-   def openness=(openness) 
-     @openness = [[openness, 255].min, 0].max 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 完全に開いた状態かどうか? 
-   #-------------------------------------------------------------------------- 
-   def open? 
-     (@openness == 255) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 完全に閉じた状態かどうか? 
-   #-------------------------------------------------------------------------- 
-   def close? 
-     (@openness == 0) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 開く処理値の取得 
-   #-------------------------------------------------------------------------- 
-   def opening_value 
-     return 48 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 閉じる処理値の取得 
-   #-------------------------------------------------------------------------- 
-   def closing_value 
-     return 48 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 開く処理の更新 
-   #-------------------------------------------------------------------------- 
-   def update_open 
-     self.openness += opening_value 
-     @opening = false if open? 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 閉じる処理の更新 
-   #-------------------------------------------------------------------------- 
-   def update_close 
-     self.openness -= closing_value 
-     @closing = false if close? 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 開く 
-   #-------------------------------------------------------------------------- 
-   def open 
-     @opening = true unless open? 
-     @closing = false 
-     self 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 閉じる 
-   #-------------------------------------------------------------------------- 
-   def close 
-     @closing = true unless close? 
-     @opening = false 
-     self 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 色調の更新 
-   #-------------------------------------------------------------------------- 
-   def update_tone 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 移動中かどうか? 
-   #-------------------------------------------------------------------------- 
-   def move? 
-     return false 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 停止中かどうか? 
-   #-------------------------------------------------------------------------- 
-   def stop? 
-     return true 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 位置移動の更新 
-   #-------------------------------------------------------------------------- 
-   def update_move 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソル位置の設定 
-   #-------------------------------------------------------------------------- 
-   def index=(index) 
-     @index = index 
-     update_cursor 
-     call_update_help 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 項目の選択 
-   #-------------------------------------------------------------------------- 
-   def select(index) 
-     self.index = index if index 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 項目の選択解除 
-   #-------------------------------------------------------------------------- 
-   def unselect 
-     self.index = -1 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 動作に対応するハンドラの設定 
-   #     method : ハンドラとして設定するメソッド (Method オブジェクト) 
-   #-------------------------------------------------------------------------- 
-   def set_handler(symbol, method) 
-     @handler[symbol] = method 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● ハンドラの存在確認 
-   #-------------------------------------------------------------------------- 
-   def handle?(symbol) 
-     @handler.include?(symbol) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● ハンドラの呼び出し 
-   #-------------------------------------------------------------------------- 
-   def call_handler(symbol) 
-     @handler[symbol].call if handle?(symbol) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソルの移動可能判定 
-   #-------------------------------------------------------------------------- 
-   def cursor_movable? 
-     stop? && active && open? && !@cursor_fix && !@cursor_all && item_max > 0 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 下キーが押されているかどうか? 
-   #-------------------------------------------------------------------------- 
-   def input_down? 
-     Input.repeat?(:DOWN) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 上キーが押されているかどうか? 
-   #-------------------------------------------------------------------------- 
-   def input_up? 
-     Input.repeat?(:UP) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 右キーが押されているかどうか? 
-   #-------------------------------------------------------------------------- 
-   def input_right? 
-     Input.repeat?(:RIGHT) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 左キーが押されているかどうか? 
-   #-------------------------------------------------------------------------- 
-   def input_left? 
-     Input.repeat?(:LEFT) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソルを下に移動 
-   #-------------------------------------------------------------------------- 
-   def cursor_down(wrap = false) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソルを上に移動 
-   #-------------------------------------------------------------------------- 
-   def cursor_up(wrap = false) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソルを右に移動 
-   #-------------------------------------------------------------------------- 
-   def cursor_right(wrap = false) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソルを左に移動 
-   #-------------------------------------------------------------------------- 
-   def cursor_left(wrap = false) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソルの移動前処理 
-   #-------------------------------------------------------------------------- 
-   def process_before_cursor_move 
-     @cursor_sound_value = @index 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソルの移動後処理 
-   #-------------------------------------------------------------------------- 
-   def process_after_cursor_move 
-     Sound.play_cursor if @index != @cursor_sound_value 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソルの移動処理 
-   #-------------------------------------------------------------------------- 
-   def process_cursor_move 
-     return unless cursor_movable? 
-     process_before_cursor_move 
-     cursor_down (Input.trigger?(:DOWN))  if input_down? 
-     cursor_up   (Input.trigger?(:UP))    if input_up? 
-     cursor_right(Input.trigger?(:RIGHT)) if input_right? 
-     cursor_left (Input.trigger?(:LEFT))  if input_left? 
-     process_after_cursor_move 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 決定やキャンセルなどのハンドリング処理 
-   #-------------------------------------------------------------------------- 
-   def process_handling 
-     return unless open? && active && stop? 
-     return process_ok       if ok_enabled?        && Input.trigger?(:C) 
-     return process_cancel   if cancel_enabled?    && Input.trigger?(:B) 
-     return process_pagedown if handle?(:pagedown) && Input.trigger?(:R) 
-     return process_pageup   if handle?(:pageup)   && Input.trigger?(:L) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 決定処理の有効状態を取得 
-   #-------------------------------------------------------------------------- 
-   def ok_enabled? 
-     return true 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● キャンセル処理の有効状態を取得 
-   #-------------------------------------------------------------------------- 
-   def cancel_enabled? 
-     handle?(:cancel) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 決定ボタンが押されたときの処理 
-   #-------------------------------------------------------------------------- 
-   def process_ok 
-     if current_item_enabled? 
-       Sound.play_ok 
-       Input.update 
-       deactivate 
-       call_ok_handler 
-     else 
-       Sound.play_buzzer 
-     end 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 決定ハンドラの呼び出し 
-   #-------------------------------------------------------------------------- 
-   def call_ok_handler 
-     if handle?(current_symbol) 
-       call_handler(current_symbol) 
-     elsif handle?(:ok) 
-       call_ok_handler_default 
-     else 
-       activate 
-     end 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 決定ハンドラの呼び出し (デフォルト) 
-   #-------------------------------------------------------------------------- 
-   def call_ok_handler_default 
-     call_handler(:ok) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● キャンセルボタンが押されたときの処理 
-   #-------------------------------------------------------------------------- 
-   def process_cancel 
-     Sound.play_cancel 
-     Input.update 
-     deactivate 
-     call_cancel_handler 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● キャンセルハンドラの呼び出し 
-   #-------------------------------------------------------------------------- 
-   def call_cancel_handler 
-     call_handler(:cancel) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● L ボタン(PageUp)が押されたときの処理 
-   #-------------------------------------------------------------------------- 
-   def process_pageup 
-     Sound.play_cursor 
-     Input.update 
-     deactivate 
-     call_handler(:pageup) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● R ボタン(PageDown)が押されたときの処理 
-   #-------------------------------------------------------------------------- 
-   def process_pagedown 
-     Sound.play_cursor 
-     Input.update 
-     deactivate 
-     call_handler(:pagedown) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソルの更新 
-   #-------------------------------------------------------------------------- 
-   def update_cursor 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● ヘルプウィンドウの設定 
-   #-------------------------------------------------------------------------- 
-   def help_window=(help_window) 
-     @help_window = help_window 
-     call_update_help 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● ヘルプウィンドウ更新メソッドの呼び出し 
-   #-------------------------------------------------------------------------- 
-   def call_update_help 
-     update_help if active && @help_window 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● ヘルプウィンドウの更新 
-   #-------------------------------------------------------------------------- 
-   def update_help 
-     @help_window.clear 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 全項目の描画 
-   #-------------------------------------------------------------------------- 
-   def draw_all_items 
-     item_max.times {|i| draw_item(i) } 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 項目の描画 
-   #-------------------------------------------------------------------------- 
-   def draw_item(index) 
-     @command_sprites[index].create_contents 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 項目の消去 
-   #-------------------------------------------------------------------------- 
-   def clear_item(index) 
-     @command_sprites[index].clear_contents 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 項目の再描画 
-   #-------------------------------------------------------------------------- 
-   def redraw_item(index) 
-     clear_item(index) if index >= 0 
-     draw_item(index)  if index >= 0 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 選択項目の再描画 
-   #-------------------------------------------------------------------------- 
-   def redraw_current_item 
-     redraw_item(@index) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● リフレッシュ 
-   #-------------------------------------------------------------------------- 
-   def refresh 
-     clear_command_list 
-     make_command_list 
-     create_contents 
-     draw_all_items 
-     update_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ○ ダミービットマップの作成 (ウィンドウ互換用) 
-   #-------------------------------------------------------------------------- 
-   def create_dummy_bitmap 
-     @dummy_bitmap = Bitmap.new(32, 32) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ○ ダミービットマップの解放 (ウィンドウ互換用) 
-   #-------------------------------------------------------------------------- 
-   def dispose_dummy_bitmap 
-     @dummy_bitmap.dispose 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ○ ウィンドウ内容の取得 (ウィンドウ互換用) 
-   #-------------------------------------------------------------------------- 
-   def contents 
-     @dummy_bitmap 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ○ カーソルの矩形 (ウィンドウ互換用) 
-   #-------------------------------------------------------------------------- 
-   def cursor_rect 
-     Rect.new(self.x, self.y, self.width, self.height) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ○ スクロール用矢印の可視状態 (ウィンドウ互換用) 
-   #-------------------------------------------------------------------------- 
-   def arrows_visible 
-     return true 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ○ スクロール用矢印の可視状態の変更 (ウィンドウ互換用) 
-   #-------------------------------------------------------------------------- 
-   def arrows_visible=(arrows_visible) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ○ ポーズの可視状態 (ウィンドウ互換用) 
-   #-------------------------------------------------------------------------- 
-   def pause 
-     return false 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ○ ポーズの可視状態の変更 (ウィンドウ互換用) 
-   #-------------------------------------------------------------------------- 
-   def pause=(pause) 
-   end 
- end 
-   
- #****************************************************************************** 
- # ▼ 回転アイコンコマンド部 
- #****************************************************************************** 
-   
- #============================================================================== 
- # ■ Sprite_ZiifRollIconCommand 
- #------------------------------------------------------------------------------ 
- #  回転コマンドアイコン表示用のスプライトです。 
- #============================================================================== 
-   
- class Sprite_ZiifRollIconCommand < Sprite_ZiifCommandSprite 
-   #-------------------------------------------------------------------------- 
-   # ● 解放 
-   #-------------------------------------------------------------------------- 
-   def dispose 
-     self.bitmap.dispose 
-     super 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● ビットマップの作成 
-   #-------------------------------------------------------------------------- 
-   def create_bitmap 
-     self.bitmap = Bitmap.new(24, 24) 
-     self.ox     = self.bitmap.width / 2 
-     self.oy     = self.bitmap.height / 2 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● アイコン番号の取得 
-   #-------------------------------------------------------------------------- 
-   def icon_index 
-     ZiifManager.command_icon_index(command_set.command(self.index)) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● アイコン番号の取得 
-   #-------------------------------------------------------------------------- 
-   def enabled 
-     command_set.command_enabled?(self.index) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 半透明描画用のアルファ値を取得 
-   #-------------------------------------------------------------------------- 
-   def translucent_alpha 
-     return 160 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 内容の作成 
-   #-------------------------------------------------------------------------- 
-   def create_contents 
-     draw_icon 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● アイコンを描画 
-   #-------------------------------------------------------------------------- 
-   def draw_icon 
-     bitmap     = Cache.system("Iconset") 
-     icon_index = self.icon_index 
-     rect       = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24) 
-     self.bitmap.blt(0, 0, bitmap, rect, enabled ? 255 : translucent_alpha) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 内容の削除 
-   #-------------------------------------------------------------------------- 
-   def clear_contents 
-     self.bitmap.clear 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 位置情報の更新 
-   #-------------------------------------------------------------------------- 
-   def update_position 
-     super 
-     update_roll 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 回転幅の取得 
-   #-------------------------------------------------------------------------- 
-   def roll_width 
-     command_set.width * command_set.openness / 510 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 回転高さの取得 
-   #-------------------------------------------------------------------------- 
-   def roll_height 
-     command_set.height * command_set.openness / 510 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 回転角度の取得 
-   #-------------------------------------------------------------------------- 
-   def roll_angle 
-     angle  = (self.index - command_set.index) * command_set.move_size 
-     angle += command_set.roll_angle 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 回転位置の更新 
-   #-------------------------------------------------------------------------- 
-   def update_roll 
-     angle  = roll_angle 
-     self.x = roll_width  * Math.sin(angle)    + command_set.x 
-     self.y = roll_height * (-Math.cos(angle)) + command_set.y 
-     self.z = command_set.z 
-   end 
- end 
-   
- #============================================================================== 
- # ■ Sprite_ZiifRollIconBackground 
- #------------------------------------------------------------------------------ 
- #  画像コマンド背景のスプライトです。 
- #============================================================================== 
-   
- class Sprite_ZiifRollIconBackground < Sprite_ZiifCommandSprite 
-   #-------------------------------------------------------------------------- 
-   # ● 解放 
-   #-------------------------------------------------------------------------- 
-   def dispose 
-     self.bitmap.dispose if command_set.background_filename.empty? 
-     super 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● ビットマップの作成 
-   #-------------------------------------------------------------------------- 
-   def create_bitmap 
-     self.bitmap = Cache.system(command_set.background_filename) 
-     self.ox     = self.bitmap.width / 2 
-     self.oy     = self.bitmap.height / 2 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドの透明度の取得 
-   #-------------------------------------------------------------------------- 
-   def command_set_opacity 
-     opacity  = command_set.opacity 
-     opacity *= command_set.back_opacity 
-     opacity *= command_set.openness 
-     opacity /= 65025 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 位置情報の更新 
-   #-------------------------------------------------------------------------- 
-   def update_position 
-     super 
-     self.x = command_set.x 
-     self.y = command_set.y 
-     self.z = command_set.z - 10 
-   end 
- end 
-   
- #============================================================================== 
- # ■ Sprite_ZiifRollIconCursor 
- #------------------------------------------------------------------------------ 
- #  画像コマンドカーソルのスプライトです。 
- #============================================================================== 
-   
- class Sprite_ZiifRollIconCursor < Sprite_ZiifCommandSprite 
-   #-------------------------------------------------------------------------- 
-   # ● 解放 
-   #-------------------------------------------------------------------------- 
-   def dispose 
-     self.bitmap.dispose if command_set.cursor_filename.empty? 
-     super 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● ビットマップの作成 
-   #-------------------------------------------------------------------------- 
-   def create_bitmap 
-     self.bitmap   = Cache.system(command_set.cursor_filename) 
-     self.ox       = self.bitmap.width / 2 
-     self.oy       = self.bitmap.height / 2 
-     @effect_count = 0 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドの透明度の取得 
-   #-------------------------------------------------------------------------- 
-   def command_set_opacity 
-     if @effect_count < 32 
-       value = 176 + @effect_count * 4 
-     else 
-       value = 432 - @effect_count * 4 
-     end 
-     return (value * command_set.contents_opacity / 255) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● フレーム更新 
-   #-------------------------------------------------------------------------- 
-   def update 
-     super 
-     update_effect 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 演出効果の更新 
-   #-------------------------------------------------------------------------- 
-   def update_effect 
-     self.opacity   = command_set_opacity 
-     @effect_count  = 0 if @effect_count == 64 
-     @effect_count += 1 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 回転幅の取得 
-   #-------------------------------------------------------------------------- 
-   def roll_width 
-     return 0 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 回転高さの取得 
-   #-------------------------------------------------------------------------- 
-   def roll_height 
-     (- command_set.height * command_set.openness / 510) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 位置情報の更新 
-   #-------------------------------------------------------------------------- 
-   def update_position 
-     super 
-     self.x = command_set.x + roll_width 
-     self.y = command_set.y + roll_height 
-     self.z = command_set.z - 5 
-   end 
- end 
-   
- #============================================================================== 
- # ■ Window_ZiifRollIconCommandName 
- #------------------------------------------------------------------------------ 
- #  回転アイコンコマンドの選択コマンド名を表示するウィンドウです。 
- #============================================================================== 
-   
- class Window_ZiifRollIconCommandName < Window_Base 
-   #-------------------------------------------------------------------------- 
-   # ● オブジェクト初期化 
-   #-------------------------------------------------------------------------- 
-   def initialize(command_set) 
-     super(0, 0, command_set.width, fitting_height(1)) 
-     @command_set = command_set 
-     self.opacity = 0 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● スプライトコマンドの取得 
-   #-------------------------------------------------------------------------- 
-   def command_set 
-     return @command_set 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● X座標の取得 
-   #-------------------------------------------------------------------------- 
-   def window_x 
-     (command_set.x - self.width / 2) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● Y座標の取得 
-   #-------------------------------------------------------------------------- 
-   def window_y 
-     (command_set.y - self.height / 2) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドのビューポートの取得 
-   #-------------------------------------------------------------------------- 
-   def command_set_viewport 
-     return command_set.viewport 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドの可視状態の取得 
-   #-------------------------------------------------------------------------- 
-   def command_set_visible 
-     return command_set.visible && command_set.open? 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドの透明度の取得 
-   #-------------------------------------------------------------------------- 
-   def command_set_opacity 
-     return command_set.contents_opacity 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 位置情報の更新 
-   #-------------------------------------------------------------------------- 
-   def update_position 
-     set_information 
-     update_base_position 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 基本の位置情報の更新 
-   #-------------------------------------------------------------------------- 
-   def update_base_position 
-     self.viewport         = command_set_viewport 
-     self.visible          = command_set_visible 
-     self.contents_opacity = command_set_opacity 
-     self.x                = window_x + command_set.info_window_offset_x 
-     self.y                = window_y + command_set.info_window_offset_y 
-     self.z                = command_set.z + 10 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 表示情報の設定 
-   #-------------------------------------------------------------------------- 
-   def set_information 
-     return if command_set.current_item_name == @name 
-     @name = command_set.current_item_name 
-     refresh 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● リフレッシュ 
-   #-------------------------------------------------------------------------- 
-   def refresh 
-     contents.clear 
-     texts = command_set.info_text_separate? ? @name.scan(/\S+/) : [@name] 
-     texts.push("") if texts.empty? 
-     self.width  = texts.collect {|text| text_size(text).width + 8 }.max 
-     self.width += standard_padding * 2 
-     self.height = fitting_height(texts.size) 
-     create_contents 
-     texts.each_with_index do |text, line| 
-       draw_text(0, line_height * line, contents.width, line_height, text, 1) 
-     end 
-   end 
- end 
-   
- #============================================================================== 
- # ■ ZiifSpriteCommand_RollIcon 
- #------------------------------------------------------------------------------ 
- #  回転アイコンコマンド選択を行うモジュールです。Mix-Inにより使用します。 
- #============================================================================== 
-   
- module ZiifSpriteCommand_RollIcon 
-   #-------------------------------------------------------------------------- 
-   # ● Mix-In 
-   #-------------------------------------------------------------------------- 
-   include ZiifSpriteCommand               # 画像コマンド選択モジュール 
-   #-------------------------------------------------------------------------- 
-   # ● 公開インスタンス変数 
-   #-------------------------------------------------------------------------- 
-   attr_reader   :move_size                # 移動サイズ 
-   attr_reader   :move_speed               # 移動速度 
-   attr_reader   :move_count               # 移動カウント 
-   attr_reader   :move_type                # 移動タイプ 
-   #-------------------------------------------------------------------------- 
-   # ● スプライトコマンド変数の初期化 
-   #-------------------------------------------------------------------------- 
-   def init_sprite_command 
-     super 
-     @move_size  = 0 
-     @move_speed = 64 
-     @move_count = 0 
-     @move_type  = nil 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 逆回転の判定 
-   #-------------------------------------------------------------------------- 
-   def reverse_roll? 
-     return $game_system.ziifop_reverse_roll 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 角度の差の取得 
-   #-------------------------------------------------------------------------- 
-   def angle_difference 
-     (item_max > 0 ? Math::PI * 2 / item_max : 0) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 回転速度の取得 
-   #-------------------------------------------------------------------------- 
-   def roll_speed 
-     ([64 - item_max * 3, 16].max * correct_roll_speed) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 回転速度の補正値の取得 
-   #-------------------------------------------------------------------------- 
-   def correct_roll_speed 
-     case $game_system.ziifop_roll_speed 
-     when 0; return 0.6   # 遅い 
-     when 1; return 0.8   # やや遅い 
-     when 2; return 1     # 普通 
-     when 3; return 1.2   # やや速い 
-     when 4; return 1.4   # 速い 
-     end 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 回転動作時の角度の取得 
-   #-------------------------------------------------------------------------- 
-   def roll_angle 
-     (move? ? move_count * move_speed * correct_roll_angle / 360 : 0) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 回転方向の補正値の取得 
-   #-------------------------------------------------------------------------- 
-   def correct_roll_angle 
-     case @move_type 
-     when :right ; return 1   # 右回転 
-     when :left  ; return -1  # 左回転 
-     else        ; return 0 
-     end 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 回転カウント値の設定 
-   #-------------------------------------------------------------------------- 
-   def roll_count 
-     (move_size * 360 / move_speed) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 背景画像のファイル名を取得 
-   #-------------------------------------------------------------------------- 
-   def background_filename 
-     return "" 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソル画像のファイル名を取得 
-   #-------------------------------------------------------------------------- 
-   def cursor_filename 
-     return "RollIconCursor" 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 情報ウィンドウの空白文字での改行判定 
-   #-------------------------------------------------------------------------- 
-   def info_text_separate? 
-     return false 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 情報ウィンドウのX座標調整 
-   #-------------------------------------------------------------------------- 
-   def info_window_offset_x 
-     return 0 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 情報ウィンドウのY座標調整 
-   #-------------------------------------------------------------------------- 
-   def info_window_offset_y 
-     return 0 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● スプライトコマンドクラスの取得 
-   #-------------------------------------------------------------------------- 
-   def sprite_command_class 
-     return Sprite_ZiifRollIconCommand 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンド背景クラスの取得 
-   #-------------------------------------------------------------------------- 
-   def sprite_background_class 
-     return Sprite_ZiifRollIconBackground 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドカーソルクラスの取得 
-   #-------------------------------------------------------------------------- 
-   def sprite_cursor_class 
-     return Sprite_ZiifRollIconCursor 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 情報ウィンドウクラスの取得 
-   #-------------------------------------------------------------------------- 
-   def info_window_class 
-     return Window_ZiifRollIconCommandName 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● オブジェクトスプライトの作成 
-   #-------------------------------------------------------------------------- 
-   def make_object_sprites 
-     @object_sprites[:info_window] = info_window_class.new(self) 
-     super 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンド内容の作成 
-   #-------------------------------------------------------------------------- 
-   def create_contents 
-     super 
-     set_roll_value 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 回転値の設定 
-   #-------------------------------------------------------------------------- 
-   def set_roll_value 
-     @move_size  = angle_difference 
-     @move_speed = roll_speed 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 動作中かどうか? 
-   #-------------------------------------------------------------------------- 
-   def move? 
-     @move_type 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 停止中かどうか? 
-   #-------------------------------------------------------------------------- 
-   def stop? 
-     !@move_type 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 位置移動の更新 
-   #-------------------------------------------------------------------------- 
-   def update_move 
-     if move? 
-       @move_count -= 1 
-       @move_type   = nil if @move_count <= 0 
-       update_cursor 
-     end 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドを右に回転 
-   #-------------------------------------------------------------------------- 
-   def roll_right 
-     @index      = (@index + 1) % item_max 
-     @move_type  = :right 
-     @move_count = roll_count 
-     call_update_help 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● コマンドを左に回転 
-   #-------------------------------------------------------------------------- 
-   def roll_left 
-     @index      = (@index - 1 + item_max) % item_max 
-     @move_type  = :left 
-     @move_count = roll_count 
-     call_update_help 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 回転キーが押されているかどうか? 
-   #-------------------------------------------------------------------------- 
-   def input_roll?(symbol) 
-     case $game_system.ziifop_roll_input_type 
-     when 0; return Input.press?(symbol)     # プレス 
-     when 1; return Input.trigger?(symbol)   # トリガー 
-     when 2; return Input.repeat?(symbol)    # リピート 
-     else  ; return Input.repeat?(symbol) 
-     end 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソルの移動前処理 
-   #-------------------------------------------------------------------------- 
-   def process_before_cursor_move 
-     @cursor_sound_value = false 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソルの移動後処理 
-   #-------------------------------------------------------------------------- 
-   def process_after_cursor_move 
-     Sound.play_cursor if @cursor_sound_value 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 右キーが押されているかどうか? 
-   #-------------------------------------------------------------------------- 
-   def input_right? 
-     input_roll?(:RIGHT) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● 左キーが押されているかどうか? 
-   #-------------------------------------------------------------------------- 
-   def input_left? 
-     input_roll?(:LEFT) 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソルを右に移動 
-   #-------------------------------------------------------------------------- 
-   def cursor_right(wrap = false) 
-     reverse_roll? ? roll_left : roll_right 
-     @cursor_sound_value = true 
-   end 
-   #-------------------------------------------------------------------------- 
-   # ● カーソルを左に移動 
-   #-------------------------------------------------------------------------- 
-   def cursor_left(wrap = false) 
-     reverse_roll? ? roll_right : roll_left 
-     @cursor_sound_value = true 
-   end 
- end