XP 스크립트



출처 : http://f44.aaa.livedoor.jp/~ytomy/tkool/rpgtech/frame.html

사진 - 있거여

---------------------- 밑에부터에영

#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#_/    ◆メッセージウィンドウ改造 - KGC_MessageAlter◆
#_/----------------------------------------------------------------------------
#_/  メッセージウィンドウを改造し、微妙な機能を追加します。
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

#==============================================================================
# ★ カスタマイズ項目 ★
#==============================================================================

module KGC
  # ◆ウィンドウサイズ自動調整初期設定
  MSGA_AUTO_ADJUST_DEFAULT = true
  # ◆スクロール機能初期設定
  MSGA_SCROLL_DEFAULT = false

  # ◆スクロール速度【単位:px】
  MSGA_SCROLL_SPEED = 4
  # ◆最下部到達必須
  #  true にすると、最下部までスクロールしないとメッセージが消せない
  MSGA_MUST_LOWEST = false

  # ◆顔グラフィック専用ウィンドウを使用
  MSGA_FACE_WINDOW = true
  # ◆名前ウィンドウの縦幅
  #  文字サイズも自動調整(48~64 あたりを推奨)
  MSGA_NAME_WINDOW_HEIGHT = 48
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

$imported = {} if $imported == nil
$imported["MessageAlter"] = true

#==============================================================================
# ■ Game_System
#==============================================================================

class Game_System
  #--------------------------------------------------------------------------
  # ● 公開インスタンス変数
  #--------------------------------------------------------------------------
  attr_accessor :message_auto_adjust      # メッセージウィンドウ自動サイズ調整
  attr_accessor :message_align            # メッセージウィンドウ アライン
  attr_accessor :message_scroll          # メッセージウィンドウ スクロール
  attr_accessor :name_window_skin        # 名前ウィンドウスキン
  attr_accessor :face_window_skin        # 顔グラフィック専用ウィンドウスキン
  #--------------------------------------------------------------------------
  # ● オブジェクト初期化
  #--------------------------------------------------------------------------
  alias initialize_KGC_MessageAlter initialize
  def initialize
    # 元の処理を実行
    initialize_KGC_MessageAlter

    @message_auto_adjust = KGC::MSGA_AUTO_ADJUST_DEFAULT
    @message_align = 0
    @message_scroll = KGC::MSGA_SCROLL_DEFAULT
    @name_window_skin = nil
    @face_window_skin = nil
  end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Window_Message
#==============================================================================

class Window_Message < Window_Selectable
  #--------------------------------------------------------------------------
  # ● オブジェクト初期化
  #--------------------------------------------------------------------------
  alias initialize_KGC_MessageAlter initialize
  def initialize
    # 元の処理を実行
    initialize_KGC_MessageAlter

    # 名前用小型ウィンドウ作成
    @name_window = Window_Base.new(80, 240, 160, KGC::MSGA_NAME_WINDOW_HEIGHT)
    @name_window.visible = false
    @name_window.back_opacity = 160
    @name_window.z = 9999
    # 顔グラフィック専用ウィンドウ作成
    @face_window = Window_Base.new(0, 0, 32, 32)
    @face_window.visible = false
    @face_window.back_opacity = 160
    @face_window.z = 9998
  end
  #--------------------------------------------------------------------------
  # ● 解放
  #--------------------------------------------------------------------------
  alias dispose_KGC_MessageAlter dispose
  def dispose
    # ウィンドウ解放
    @name_window.dispose
    @face_window.dispose

    # 元の処理を実行
    dispose_KGC_MessageAlter
  end
  #--------------------------------------------------------------------------
  # ● リフレッシュ
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    # ウィンドウ初期化
    initialize_window
    # 文字列バッファ作成
    text_buf, trans_x = [Bitmap.new(608, 32)], [0]
    # メッセージウィンドウ自動サイズ調整がオフの場合
    unless $game_system.message_auto_adjust
      self.contents = Bitmap.new(width - 32, height - 32)
    end
    text_buf[0].font.color = self.normal_color
    x = y = max_x = 0
    @cursor_width = 0
    # 選択肢なら字下げを行う
    x = 8 if $game_temp.choice_start == 0
    # 表示待ちのメッセージがある場合
    if $game_temp.message_text != nil
      text = $game_temp.message_text
      # 制御文字処理
      begin
        last_text = text.clone
        text.gsub!(/\[V][(d+)]/i) { $game_variables[$1.to_i] }
        text.gsub!(/\IN[(d+)]/i) { $data_items[$1.to_i] == nil ?
          "" : $data_items[$1.to_i].name }
        text.gsub!(/\WN[(d+)]/i) { $data_weapons[$1.to_i] == nil ?
          "" : $data_weapons[$1.to_i].name }
        text.gsub!(/\AN[(d+)]/i) { $data_armors[$1.to_i] == nil ?
          "" : $data_armors[$1.to_i].name }
      end until text == last_text
      text.gsub!(/\[N][(d+)]/i) do
        $game_actors[$1.to_i] != nil ? $game_actors[$1.to_i].name : ""
      end
      # 便宜上、"\\" を "00" に変換
      text.gsub!(/\\/) { "00" }
      # "\C" を "01" に、"\G" を "02" に変換
      text.gsub!(/\[C][(d+)]/i) { "01[#{$1}]" }
      text.gsub!(/\[G]/i) { "02" }

      text.gsub!(/\AL[(d+)]/i) { "x10[#{$1}]" }
      text.gsub!(/\IT[(d+)]/i) { "x11[#{$1}]" }
      text.gsub!(/\WP[(d+)]/i) { "x12[#{$1}]" }
      text.gsub!(/\AR[(d+)]/i) { "x13[#{$1}]" }
      # c に 1 文字を取得 (文字が取得できなくなるまでループ)
      while ((c = text.slice!(/./m)) != nil)
        # \ の場合
        if c == "00"
          # 本来の文字に戻す
          c = "\"
        end
        # C[n] の場合
        if c == "01"
          # 文字色を変更
          text.sub!(/[(d+)]/, "")
          color = $1.to_i
          if color >= 0 && color <= 7
            text_buf[y].font.color = self.text_color(color)
          end
          # 次の文字へ
          next
        end
        # G の場合
        if c == "02"
          # ゴールドウィンドウを作成
          if @gold_window == nil
            @gold_window = Window_Gold.new
            @gold_window.x = 560 - @gold_window.width
            if $game_temp.in_battle
              @gold_window.y = 192
            else
              @gold_window.y = self.y >= 128 ? 32 : 384
            end
            @gold_window.opacity = self.opacity
            @gold_window.back_opacity = self.back_opacity
          end
          # 次の文字へ
          next
        end
        # AL[n] の場合
        if c == "x10"
          # アラインタイプを変更
          text.sub!(/[(d+)]/, "")
          align = $1.to_i
          # 次の文字へ
          next
        end
        # 改行文字の場合
        if c == "n"
          # 選択肢ならカーソルの幅を更新
          if y >= $game_temp.choice_start
            @cursor_width = [@cursor_width, x].max
          end
          # y に 1 を加算
          y += 1
          # 新しい文字列バッファを作成
          text_buf[y] = Bitmap.new(608, 32)
          text_buf[y].font.color = self.normal_color
          # x の最大値更新判定
          max_x = [x, max_x].max
          # x を初期化
          x = 0
          # 選択肢なら字下げを行う
          x = 8 if y >= $game_temp.choice_start
          # 次の文字へ
          next
        end
        # IT[n] の場合
        if c == "x11"
          text.sub!(/[(d+)]/, "")
          item = $data_items[$1.to_i]
          if item != nil
            # アイテム名をアイコン付きで描画
            icon = RPG::Cache.icon(item.icon_name)
            text_buf[y].blt(x + 4, [(32 - icon.height) / 2, 0].max, icon, icon.rect)
            x += icon.width + 8
            cx = text_buf[y].text_size(item.name).width + 8
            text_buf[y].draw_text(x, 0, cx, 32, item.name)
            x += cx - 8
          end
          next
        end
        # WP[n] の場合
        if c == "x12"
          text.sub!(/[(d+)]/, "")
          item = $data_weapons[$1.to_i]
          if item != nil
            # 武器名をアイコン付きで描画
            icon = RPG::Cache.icon(item.icon_name)
            text_buf[y].blt(x + 4, [(32 - icon.height) / 2, 0].max, icon, icon.rect)
            x += icon.width + 8
            cx = text_buf[y].text_size(item.name).width + 8
            text_buf[y].draw_text(x, 0, cx, 32, item.name)
            x += cx - 8
          end
          next
        end
        # AR[n] の場合
        if c == "x13"
          text.sub!(/[(d+)]/, "")
          item = $data_armors[$1.to_i]
          if item != nil
            # 武器名をアイコン付きで描画
            icon = RPG::Cache.icon(item.icon_name)
            text_buf[y].blt(x + 4, [(32 - icon.height) / 2, 0].max, icon, icon.rect)
            x += icon.width + 8
            cx = text_buf[y].text_size(item.name).width + 8
            text_buf[y].draw_text(x, 0, cx, 32, item.name)
            x += cx - 8
          end
          next
        end
        # 文字を描画
        text_buf[y].draw_text(4 + x, 0, 40, 32, c)
        # x に描画した文字の幅を加算
        x += text_buf[y].text_size(c).width
        # 転送用X座標保存
        trans_x[y] = x
        # 選択肢の場合はインデント分戻す
        trans_x[y] += 12 if $game_temp.choice_max > 0
      end
    end
    # メッセージウィンドウ自動サイズ調整がオンの場合
    if $game_system.message_auto_adjust
      # 数値入力の場合は1行余分に追加
      y += 1 if $game_temp.num_input_variable_id > 0
      # ウィンドウサイズを調整
      self.width = max_x + 48
      self.height = [y, 4].min * 32 + 32
      # 顔グラフィックが存在する場合
      if @face_bitmap != nil && !KGC::MSGA_FACE_WINDOW
        # ウィンドウの幅を加算
        self.width += @face_bitmap.width + 16
        # ウィンドウの高さが顔グラフィックよりも小さい場合
        if @face_bitmap.height + 32 > self.height
          # 顔グラフィックより大きいサイズに設定
          self.height = @face_bitmap.height + 32
        end
        self.contents = Bitmap.new(width - 32, [y * 32, @face_bitmap.height].max)
        face_y = (self.contents.height - @face_bitmap.height) / 2
        # 顔グラフィックが左側表示の場合
        if $msg_face[1] == 0
          @text_x = @face_bitmap.width + 16
          self.contents.blt(8, face_y, @face_bitmap,
            Rect.new(0, 0, @face_bitmap.width, @face_bitmap.height))
        else
          @text_x = 0
          self.contents.blt(self.contents.width - @face_bitmap.width - 8,
            face_y, @face_bitmap,
            Rect.new(0, 0, @face_bitmap.width, @face_bitmap.height))
        end
      else
        @text_x = 0
        self.contents = Bitmap.new(width - 32, y * 32)
      end
    # メッセージウィンドウ自動サイズ調整がオフの場合
    else
      # 顔グラフィックが存在する場合
      if @face_bitmap != nil && !KGC::MSGA_FACE_WINDOW
        # ウィンドウの高さが顔グラフィックよりも小さい場合
        if @face_bitmap.height + 32 > self.height
          # 顔グラフィックより大きいサイズに設定
          self.height = @face_bitmap.height + 32
        end
        face_y = (self.contents.height - @face_bitmap.height) / 2
        # 顔グラフィックが左側表示の場合
        if $msg_face[1] == 0
          @text_x = @face_bitmap.width + 16
          self.contents.blt(8, face_y, @face_bitmap,
            Rect.new(0, 0, @face_bitmap.width, @face_bitmap.height))
        else
          @text_x = 0
          self.contents.blt(self.contents.width - @face_bitmap.width - 8,
            face_y, @face_bitmap,
            Rect.new(0, 0, @face_bitmap.width, @face_bitmap.height))
        end
      else
        @text_x = 0
      end
    end
    # ウィンドウ内容を描画
    for i in 0...text_buf.size
      next if text_buf[i] == nil
      trans_x[i] = 0 if trans_x[i] == nil
      # 転送用X座標設定
      align = $game_system.message_align if align == nil
      case align
      when 0, nil  # 左側
        tx = @text_x
      when 1  # 中央
        if $msg_face != nil && $msg_face[1] == 1
          tx = (self.contents.width - trans_x[i] - @face_bitmap.width - 16) / 2
        else
          tx = (self.contents.width - trans_x[i] + @text_x) / 2
        end
      when 2  # 右側
        if $msg_face != nil && $msg_face[1] == 0
          tx = self.contents.width - trans_x[i] - 8
        elsif $msg_face != nil && $msg_face[1] == 1
          tx = self.contents.width - trans_x[i] - @face_bitmap.width - 24
        else
          tx = self.contents.width - trans_x[i] + @text_x - 8
        end
      end
      self.contents.blt(tx, i * 32, text_buf[i], text_buf[i].rect)
      text_buf[i].dispose
    end
    # 選択肢の場合
    if $game_temp.choice_max > 0
      @item_max = $game_temp.choice_max
      self.active = true
      self.index = 0
    end
    # 数値入力の場合
    if $game_temp.num_input_variable_id > 0
      digits_max = $game_temp.num_input_digits_max
      number = $game_variables[$game_temp.num_input_variable_id]
      @input_number_window = Window_InputNumber.new(digits_max)
      @input_number_window.number = number
      @input_number_window.x = self.x + 8 + @text_x
      @input_number_window.y = self.y + $game_temp.num_input_start * 32
      # メッセージウィンドウ自動サイズ調整がオンの場合
      if $game_system.message_auto_adjust
        # ウィンドウの幅を調整
        self.width = [self.width, @input_number_window.width + 16].max
        # ウィンドウを中央へ移動
        centering_window
        # 数値入力ウィンドウ位置を調整
        @input_number_window.x = self.x + 8 + @text_x
      end
    end
    # 名前が設定されている場合、名前表示
    if $msg_name != nil
      fs = [[22 - (64 - KGC::MSGA_NAME_WINDOW_HEIGHT) / 4, 12].max, 80].min
      bitmap = Bitmap.new(32, 32)
      bitmap.font.size = fs
      cx = bitmap.text_size($msg_name).width
      @name_window.width = cx + 32
      @name_window.contents.dispose if @name_window.contents != nil
      @name_window.contents = Bitmap.new(cx, KGC::MSGA_NAME_WINDOW_HEIGHT - 32)
      @name_window.contents.font.size = fs
      @name_window.contents.draw_text(0, 0, cx + 8, KGC::MSGA_NAME_WINDOW_HEIGHT - 32, $msg_name)
      @name_window.visible = true
      if $game_system.name_window_skin != nil
        @name_window.windowskin = RPG::Cache.windowskin($game_system.name_window_skin)
      else
        @name_window.windowskin = self.windowskin
      end
    # 名前が設定されていない場合、ウィンドウ消去
    else
      @name_window.visible = false
    end
    # 顔グラフィック専用ウィンドウ表示
    if $msg_face != nil && KGC::MSGA_FACE_WINDOW
      @face_window.width = @face_bitmap.width + 32
      @face_window.height = [@face_bitmap.height + 32, self.height].max
      self.height = [@face_window.height, self.height].max
      face_y = (@face_window.height - @face_bitmap.height - 32) / 2
      @face_window.contents.dispose if @face_window.contents != nil
      @face_window.contents = Bitmap.new(@face_window.width - 32, @face_window.height - 32)
      @face_window.contents.blt(0, face_y, @face_bitmap, @face_bitmap.rect)
      if $game_system.face_window_skin != nil
        @face_window.windowskin = RPG::Cache.windowskin($game_system.face_window_skin)
      else
        @face_window.windowskin = self.windowskin
      end
      @face_window.visible = true
    else
      @face_window.visible = false
    end
    # 中央に移動
    centering_window
  end
  #--------------------------------------------------------------------------
  # ● ウィンドウ設定初期化
  #--------------------------------------------------------------------------
  def initialize_window
    if $msg_face == nil || $msg_face[0] == nil || $msg_face[1] == nil
      @face_bitmap.dispose if @face_bitmap != nil
      @face_bitmap = nil
      self.width = 480
    else
      @face_bitmap = RPG::Cache.picture($msg_face[0])
      self.width = KGC::MSGA_FACE_WINDOW ? 480 : 496 + @face_bitmap.width
    end
    centering_window
    self.y = 304
    self.oy = 0
    self.height = 160
    reset_window
  end
  #--------------------------------------------------------------------------
  # ● ウィンドウを中央に移動
  #--------------------------------------------------------------------------
  def centering_window
    if @face_window.visible && $msg_face != nil
      cx = 640 - self.width - @face_window.width
      case $msg_face[1]
      when 1  # 右
        @face_window.x = cx / 2 + self.width
        self.x = cx / 2
        @name_window.x = self.x
      else  # 左
        @face_window.x = cx / 2
        self.x = cx / 2 + @face_window.width
        @name_window.x = @face_window.x
      end
    else
      cx = 640 - self.width
      self.x = cx / 2
      @name_window.x = self.x
    end
  end
  #--------------------------------------------------------------------------
  # ● ウィンドウの位置と不透明度の設定
  #--------------------------------------------------------------------------
  def reset_window
    if $game_temp.in_battle
      self.y = 32
    else
      case $game_system.message_position
      when 0  # 上
        self.y = 32
      when 1  # 中
        self.y = 160
      when 2  # 下
        self.y = 304
      end
    end
    if $game_system.message_frame == 0
      self.opacity = 255
    else
      self.opacity = 0
    end
    @name_window.y = self.y - KGC::MSGA_NAME_WINDOW_HEIGHT + 16
    @name_window.opacity = self.opacity
    @face_window.y = self.y
    @face_window.opacity = self.opacity
    self.back_opacity = 160
    self.pause = false
  end
  #--------------------------------------------------------------------------
  # ● フレーム更新
  #--------------------------------------------------------------------------
  def update
    super
    # ウィンドウを更新
    @name_window.update
    @face_window.update
    # フェードインの場合
    if @fade_in
      self.contents_opacity += 24
      @name_window.contents_opacity += 24 if $msg_name != nil
      @face_window.contents_opacity += 24 if $msg_face != nil
      if @input_number_window != nil
        @input_number_window.contents_opacity += 24
      end
      if self.contents_opacity == 255
        @fade_in = false
      end
      return
    end
    # 数値入力中の場合
    if @input_number_window != nil
      @input_number_window.update
      # 決定
      if Input.trigger?(Input::C)
        $game_system.se_play($data_system.decision_se)
        $game_variables[$game_temp.num_input_variable_id] =
          @input_number_window.number
        $game_map.need_refresh = true
        # 数値入力ウィンドウを解放
        @input_number_window.dispose
        @input_number_window = nil
        terminate_message
      end
      return
    end
    # メッセージ表示中の場合
    if @contents_showing
      # スクロール最大位置を計算
      scroll_max = self.contents.height - (self.height - 32)
      # 選択肢の表示中でなければポーズサインを表示
      if $game_temp.choice_max == 0
        self.pause = true
      end
      # キャンセル
      if Input.trigger?(Input::B) && $game_temp.choice_max > 0 &&
          $game_temp.choice_cancel_type > 0
        $game_system.se_play($data_system.cancel_se)
        $game_temp.choice_proc.call($game_temp.choice_cancel_type - 1)
        terminate_message
      end
      # 決定
      if Input.trigger?(Input::C)
        if $game_temp.choice_max > 0
          $game_system.se_play($data_system.decision_se)
          $game_temp.choice_proc.call(self.index)
        end
        # スクロール機能がオン、かつ選択肢でない場合
        if $game_system.message_scroll && $game_temp.choice_max == 0
          # 最下部到達判定
          if KGC::MSGA_MUST_LOWEST
            terminate_message if self.oy == scroll_max
          else
            terminate_message
          end
        else
          terminate_message
        end
      end
      # スクロール機能がオン、かつ選択肢でない場合
      if $game_system.message_scroll && $game_temp.choice_max == 0
        # 方向ボタンの上が押されている場合
        if Input.press?(Input::UP)
          self.oy = [self.oy - KGC::MSGA_SCROLL_SPEED, 0].max
        # 方向ボタンの下が押されている場合
        elsif Input.press?(Input::DOWN)
          self.oy = [self.oy + KGC::MSGA_SCROLL_SPEED, scroll_max].min
        # R ボタンが押された場合
        elsif Input.repeat?(Input::R)
          self.oy = [self.oy + (self.height - 32), scroll_max].min
        # L ボタンが押された場合
        elsif Input.repeat?(Input::L)
          self.oy = [self.oy - (self.height - 32), 0].max
        end
        # ウィンドウ最下部に達した場合
        if $game_temp.choice_max == 0 && self.oy == scroll_max
          # ポーズサインを表示
          self.pause = true
        else
          # ポーズサインを消去
          self.pause = false
        end
      end
      return
    end
    # フェードアウト中以外で表示待ちのメッセージか選択肢がある場合
    if !@fade_out && $game_temp.message_text != nil
      @contents_showing = true
      $game_temp.message_window_showing = true
      reset_window
      refresh
      Graphics.frame_reset
      self.visible = true
      self.contents_opacity = 0
      if @input_number_window != nil
        @input_number_window.contents_opacity = 0
      end
      @fade_in = true
      return
    end
    # 表示すべきメッセージがないが、ウィンドウが可視状態の場合
    if self.visible
      @fade_out = true
      self.opacity -= 48
      @name_window.opacity -= 48
      @face_window.opacity -= 48
      if self.opacity == 0
        self.visible = false
        @name_window.visible = false
        @face_window.visible = false
        @fade_out = false
        $game_temp.message_window_showing = false
      end
      return
    end
  end
  #--------------------------------------------------------------------------
  # ● カーソルの矩形更新
  #--------------------------------------------------------------------------
  def update_cursor_rect
    if @index >= 0
      n = $game_temp.choice_start + @index
      self.cursor_rect.set(8 + @text_x, n * 32, @cursor_width, 32)
    else
      self.cursor_rect.empty
    end
  end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Interpreter (分割定義 3)
#==============================================================================

class Interpreter
  #--------------------------------------------------------------------------
  # ● 文章の表示
  #--------------------------------------------------------------------------
  def command_101
    # ほかの文章が message_text に設定済み、かつスクロール機能がオフの場合
    if $game_temp.message_text != nil && !$game_system.message_scroll
      # 終了
      return false
    end
    # メッセージ終了待機中フラグおよびコールバックを設定
    @message_waiting = true
    $game_temp.message_proc = Proc.new { @message_waiting = false }
    # message_text に 1 行目を設定
    $game_temp.message_text = @list[@index].parameters[0] + "n"
    line_count = 1
    # ループ
    loop {
      # 次のイベントコマンドが文章 2 行目以降の場合
      if @list[@index+1].code == 401
        # message_text に 2 行目以降を追加
        $game_temp.message_text += @list[@index+1].parameters[0] + "n"
        line_count += 1
      # イベントコマンドが文章 2 行目以降ではない場合
      else
        # 次のイベントコマンドが文章表示、かつスクロール機能がオンの場合
        if @list[@index+1].code == 101 && $game_system.message_scroll
          # message_text に次の文章を追加
          $game_temp.message_text += @list[@index+1].parameters[0] + "n"
          line_count += 1
          # インデックスを進める
          @index += 1
          next
        # 次のイベントコマンドが選択肢の表示の場合
        elsif @list[@index+1].code == 102
          # 選択肢が画面に収まる場合
          if @list[@index+1].parameters[0].size <= 4 - line_count
            # インデックスを進める
            @index += 1
            # 選択肢のセットアップ
            $game_temp.choice_start = line_count
            setup_choices(@list[@index].parameters)
          end
        # 次のイベントコマンドが数値入力の処理の場合
        elsif @list[@index+1].code == 103
          # 数値入力ウィンドウが画面に収まる場合
          if line_count < 4
            # インデックスを進める
            @index += 1
            # 数値入力のセットアップ
            $game_temp.num_input_start = line_count
            $game_temp.num_input_variable_id = @list[@index].parameters[0]
            $game_temp.num_input_digits_max = @list[@index].parameters[1]
          end
        end
        # 継続
        return true
      end
      # インデックスを進める
      @index += 1
    }
  end
end

Who's 백호

?

이상혁입니다.

http://elab.kr

Atachment
첨부 '1'
Comment '4'

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 6153
841 기타 상점 변동시세 적용 스크립트 3 file 백호 2009.02.21 1159
840 기타 전투 승리 BGM+페이드아웃 스크립트 1 file 백호 2009.02.21 1159
839 상태/속성 순간 적으로 무적상태되는 스크립트 백호 2009.02.21 1161
838 전투 데미지마루 백호 2009.02.21 1162
837 기타 Resolution Changer Ultimate by Zeus81 7 file 습작 2013.05.05 1162
836 이름입력 Advanced Enter Hero Name Window by RPG Advocate 백호 2009.02.22 1167
835 기타 마우스로 길찾기 스크립트 예제 file 백호 2009.02.21 1168
834 기타 메세지를 분출해 표시 백호 2009.02.22 1169
833 기타 Shift Puzzles v2 by SephirothSpawn (SDK호환) 3 file 백호 2009.02.22 1170
832 장비 장비무기가이드&쉴드방어 1 백호 2009.02.22 1178
831 기타 현재 맵BGM을 그대로 전투 BGM으로 연결 from phylomortis.com 백호 2009.02.22 1180
830 기타 Steal Script (SDK Required) file 백호 2009.02.21 1182
829 전투 RTAB 1.15와 애드온 from 歯車の城 4 file 백호 2009.02.22 1186
828 영상 XP에서 AVI파일을 지원가능하게 하는 스크립트 2 백호 2009.02.21 1188
827 전투 Advanced Individual Battle Command v2.1 by Trickster@rmxp.org (SDK호환) 1 file 백호 2009.02.22 1189
826 이동 및 탈것 RMVX dash for RMXP by PK8 2 Alkaid 2013.01.22 1192
825 전투 SimpleAction (출처 -RPGXP 포럼 비밀소년님의 자작품) 1 file 백호 2009.02.21 1193
824 스킬 KGC - 도주스킬 스크립트 백호 2009.02.22 1193
823 저장 StupidStormy36's Custom Save System 3 Alkaid 2010.10.05 1199
822 변수/스위치 Switchless Common Events by PK8(XP/VX/VXA) Alkaid 2012.09.15 1199
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ... 52 Next
/ 52