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 파티 [신기술 체험] 2p파티시스템(액알) 8 file 백호 2009.02.22 3193
840 파티 파티 확장 11 file 백호 2009.02.22 3182
839 전투 간단한 액알 스크립트!(1번째) 2 백호 2009.02.21 3165
838 메뉴 메뉴등에서 움직이는 엑터 9 file 백호 2009.02.22 3161
837 전투 KGC_DamageAlter(데미지 표시 개조) 8.24 14 file 백호 2009.02.22 3154
836 XP의 느린FPS 빠르게하기 16 주유공근615 2011.02.22 3138
835 온라인 온라인스크립트 99Q(NM=No Map)버전 5 백호 2009.02.22 3121
834 메뉴 메뉴에 얼굴 그래픽 표시 4 file 백호 2009.02.21 3112
833 기타 플레이어 발소리 스크립트 20 백호 2009.02.22 3107
832 온라인 멀티넷플레이 99Q Beta 3 27 백호 2009.02.22 3107
831 HUD 강화 나침반 스크립트 (원본 by 허걱) 16 file JACKY 2010.08.16 3105
830 타크티카르바트르시스템 17 WMN 2008.04.06 3096
829 HUD 넷플레이 HUD표시 2 file 백호 2009.02.22 3093
828 전투 에너미 HP·SP투시 11 file 백호 2009.02.21 3086
827 이동 및 탈것 [■ Game_Player] 8방향이동 스크립트 13 file - 하늘 - 2009.08.06 3083
826 메시지 문자 메세지 띄우기 스크립트 10 file 백호 2009.02.21 3069
825 HUD HP/SP 상태를 표시해주는 간이 윈도우 3 file 백호 2009.02.21 3067
824 스킬 스킬창 업그레이드? ps인간 2009.01.23 3061
823 메시지 Hermes(Hermes Extends RPGXP Message System) 0.4 by derula 1 Alkaid 2011.02.27 3053
822 전투 시뮬레이션 턴알 3 file 백호 2009.02.21 3052
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