조회 수 458 추천 수 0 댓글 13
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
제가 본 스크립트 2가지가 있는데
좀 알려주세요.

1. 대화할때 캐릭터 얼굴 나오는 스크립트
대화창 옆에나 위에 캐릭터의 얼굴이 나오더라고 요. 이 스크립트좀 알려주시거나 보내주세요.

2. 캐릭터 이름 띄우기 스크립트
외형적으로 말고, 주인공이 아니라 까로 대화창에 이름이 뜨더군요.
[누구누구] 가 아닌 다른 네모창 안에 이름이 뜹니다.
알려주세요.
?
  • ?
    컨트롤 2013.10.13 21:26
    #==============================================================================
    # 윈도우메세지(By.컴맹) 오류수정 완료
    #==============================================================================
    class Window_Message < Window_Selectable
    # 一文字ずつ描?
    DEFAULT_TYPING_ENABLE = true # falseにすると瞬間表示
    #--------------------------------------------------------------------------
    # 오류수정안내#01-Error#아방스
    #--------------------------------------------------------------------------
    alias xrxs9_initialize initialize
    def initialize
    xrxs9_initialize
    # 再生サウンド名がない場合は""とする
    if $soundname_on_speak == nil then
    $soundname_on_speak = ""
    end
    # 外字ファイルパス設定
    $gaiji_file = "./Graphics/Gaiji/sample.png"
    # 外字デ?タ?み?み
    if FileTest.exist?($gaiji_file)
    @gaiji_cache = Bitmap.new($gaiji_file)
    else
    @gaigi_cache = nil
    end
    # 文字透過?送用バッファ
    @opacity_text_buf = Bitmap.new(32, 32)
    end
    #--------------------------------------------------------------------------
    # ● メッセ?ジ終了?理
    #--------------------------------------------------------------------------
    alias xrxs9_terminate_message terminate_message
    def terminate_message
    if @name_window_frame != nil
    @name_window_frame.dispose
    @name_window_frame = nil
    end
    if @name_window_text != nil
    @name_window_text.dispose
    @name_window_text = nil
    end
    xrxs9_terminate_message
    end
    #--------------------------------------------------------------------------
    # ● リフレッシュ
    #--------------------------------------------------------------------------
    def refresh
    # 初期化
    self.contents.clear
    self.contents.font.color = normal_color
    self.contents.font.size = Font.default_size
    @x = @y = @max_x = @max_y = @indent = @lines = 0
    @face_indent = 0
    @opacity = 255
    @cursor_width = 0
    @write_speed = 0
    @write_wait = 0
    @mid_stop = false
    @face_file = nil
    # @popchar が -2 の場合、標準位置。-1の場合、文字センタ?。
    # 0以上の場合 キャラポップ。0は主人公、1以降はイベント。
    @popchar = -2
    # 選?肢なら字下げを行う
    if $game_temp.choice_start == 0
    @x = 8
    end
    # 表示待ちのメッセ?ジがある場合
    if $game_temp.message_text != nil
    @now_text = $game_temp.message_text
    # 顔表示指定Fがあるか?
    if (/A\[Ff][(.+?)]/.match(@now_text))!=nil then
    # ファイルチェック
    if FileTest.exist?("Graphics/Pictures/" + $1 + ".png")
    # 顔グラを描?
    @face_file = $1 + ".png"
    self.contents.blt(16, 16, RPG::Cache.picture(@face_file), Rect.new(0, 0, 96, 96))
    # 全行 128ピクセルのインデントを入れる。
    @x = @face_indent = 128
    end
    @now_text.gsub!(/\[Ff][(.*?)]/) { "" }
    end
    # 制御文字?理
    begin
    last_text = @now_text.clone
    # Vを?自ル?チンに?更(追加部分)
    @now_text.gsub!(/\[Vv][([IiWwAaSs]?)([0-9]+)]/) { convart_value($1, $2.to_i) }
    end until @now_text == last_text
    @now_text.gsub!(/\[Nn][([0-9]+)]/) do
    $game_actors[$1.to_i] != nil ? $game_actors[$1.to_i].name : ""
    end
    # nameがあるか?
    name_window_set = false
    if (/\[Nn]ame[(.+?)]/.match(@now_text)) != nil
    # 値を設定
    name_window_set = true
    name_text = $1
    # name[]部分を削除
    @now_text.sub!(/\[Nn]ame[(.*?)]/) { "" }
    end
    # ウィンドウ位置判定
    if (/\[Pp][([-1,0-9]+)]/.match(@now_text))!=nil then
    @popchar = $1.to_i
    if @popchar == -1
    @x = @indent = 48
    @y = 7
    end
    @now_text.gsub!(/\[Pp][([-1,0-9]+)]/) { "" }
    end
    # ウィンドウ幅の取得
    @max_choice_x = 0
    if @popchar >= 0
    @text_save = @now_text.clone
    @max_x = 0
    @max_y = 4
    for i in 0..3
    line = @now_text.split(/n/)[3-i]
    @max_y -= 1 if line == nil and @max_y <= 4-i
    next if line == nil
    line.gsub!(/\w[(w+)]/) { "" }
    cx = contents.text_size(line).width
    @max_x = cx if cx > @max_x
    if i >= $game_temp.choice_start
    @max_choice_x = cx if cx > @max_choice_x
    end
    end
    self.width = @max_x + 32 + @face_indent
    self.height = (@max_y - 1) * 32 + 64
    else
    @max_x = self.width - 32 - @face_indent
    for i in 0..3
    line = @now_text.split(/n/)[3-i]
    next if line == nil
    line.gsub!(/\w[(w+)]/) { "" }
    cx = contents.text_size(line).width
    if i >= $game_temp.choice_start
    @max_choice_x = cx if cx > @max_choice_x
    end
    end
    end
    @max_choice_x -= 128
    # 便宜上、"\\" を "00" に?換
    @now_text.gsub!(/\\/) { "00" }
    # "\C" を "01" に、"\G" を "02" に、
    # "\S" を "03" に、"\A" を "04" に?換
    @now_text.gsub!(/\[Cc][([0-9]+)]/) { "01[#{$1}]" }
    @now_text.gsub!(/\[Gg]/) { "02" }
    @now_text.gsub!(/\[Ss][([0-9]+)]/) { "03[#{$1}]" }
    @now_text.gsub!(/\[Aa][(.*?)]/) { "04[#{$1}]" }
    @now_text.gsub!(/\[.]/) { "05" }
    @now_text.gsub!(/\[|]/) { "06" }
    # 競合すると何かと?まずいので、16以降を使用する
    @now_text.gsub!(/\[>]/) { "16" }
    @now_text.gsub!(/\[<]/) { "17" }
    @now_text.gsub!(/\[!]/) { "20" }
    @now_text.gsub!(/\[~]/) { "21" }
    @now_text.gsub!(/\[Ee][([0-9]+)]/) { "22[#{$1}]" }
    # インデント設定(追加部分)
    @now_text.gsub!(/\[Ii]/) { "23" }
    # テキスト透過率指定(追加部分)
    @now_text.gsub!(/\[Oo][([0-9]+)]/) { "24[#{$1}]" }
    # テキストサイズ指定(追加部分)
    @now_text.gsub!(/\[Hh][([0-9]+)]/) { "25[#{$1}]" }
    # 空白?入(追加部分)
    @now_text.gsub!(/\[Bb][([0-9]+)]/) { "26[#{$1}]" }
    # ルビ表示(追加部分)
    @now_text.gsub!(/\[Rr][(.*?)]/) { "27[#{$1}]" }
    # ここで一旦ウィンドウ位置更新
    reset_window
    # nameがあるか?
    if name_window_set
    # オフセット位置
    off_x = 0
    off_y = -10
    # ?だけウィンドウの作成(余白を 2 に設定)
    space = 2
    x = self.x + off_x - space / 2
    y = self.y + off_y - space / 2
    w = self.contents.text_size(name_text).width + 8 + space
    h = 26 + space
    @name_window_frame = Window_Frame.new(x, y, w, h)
    @name_window_frame.z = self.z + 1
    # 擬似的な空中文字描?ウィンドウを作成
    x = self.x + off_x + 4
    y = self.y + off_y
    @name_window_text = Air_Text.new(x, y, name_text)
    @name_window_text.z = self.z + 2
    end
    end
    # ウィンドウを更新
    reset_window
    # 選?肢の場合
    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
    @input_number_window.y = self.y + $game_temp.num_input_start * 32
    end
    end
    #--------------------------------------------------------------------------
    # ● フレ?ム更新
    #--------------------------------------------------------------------------
    def update
    super
    # フェ?ドインの場合
    if @fade_in
    self.contents_opacity += 24
    if @input_number_window != nil
    @input_number_window.contents_opacity += 24
    end
    if self.contents_opacity == 255
    @fade_in = false
    end
    return
    end
    @now_text = nil if @now_text == "" # ?換
    # 表示待ちのメッセ?ジがある場合
    if @now_text != nil and @mid_stop == false
    if @write_wait > 0
    @write_wait -= 1
    return
    end
    text_not_skip = DEFAULT_TYPING_ENABLE
    while true
    # 最大 x y の保存。
    @max_x = @x if @max_x < @x
    @max_y = @y if @max_y < @y
    # c に 1 文字を取得 (文字が取得できなくなるまでル?プ)
    if (c = @now_text.slice!(/./m)) != nil
    # \ の場合
    if c == "00"
    # 本?の文字に?す
    c = "\"
    end
    # C[n] の場合
    if c == "01"
    # 文字色を?更
    @now_text.sub!(/[([0-9]+)]/, "")
    color = $1.to_i
    if color >= 0 and color <= 7
    self.contents.font.color = text_color(color)
    if @opacity != nil
    color = self.contents.font.color
    self.contents.font.color = Color.new(color.red, color.green, color.blue, color.alpha * @opacity / 255)
    end
    end
    # 次の文字へ
    c = ""
    end
    # G の場合
    if c == "02"
    # ゴ?ルドウィンドウを作成
    if @gold_window == nil and @popchar <= 0
    @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
    # 次の文字へ
    c = ""
    end
    # S[n] の場合
    if c == "03"
    # 文字色を?更
    @now_text.sub!(/[([0-9]+)]/, "")
    speed = $1.to_i
    if speed >= 0 and speed <= 19
    @write_speed = speed
    end
    # 次の文字へ
    c = ""
    end
    # A[soundname] の場合
    if c == "04"
    # 再生ファイルを?更するための準備
    @now_text.sub!(/[(.*?)]/, "")
    buftxt = $1.dup.to_s
    # 再生ファイル名に"/"があるか?
    if buftxt.match(///) == nil and buftxt != "" then
    # なければ"Audio/SE/"を結合する
    $soundname_on_speak = "Audio/SE/" + buftxt
    else
    # あればそのままコピ?
    $soundname_on_speak = buftxt.dup
    end
    # 次の文字へ
    c = ""
    elsif c == "04"
    # 次の文字へ
    c = ""
    end
    # . の場合
    if c == "05"
    @write_wait += 5
    c = ""
    end
    # | の場合
    if c == "06"
    @write_wait += 20
    c = ""
    end
    # > の場合
    if c == "16"
    text_not_skip = false
    c = ""
    end
    # <の場合
    if c == "17"
    text_not_skip = true
    c = ""
    end
    # !の場合
    if c == "20"
    @mid_stop = true
    c = ""
    end
    # ~の場合
    if c == "21"
    terminate_message
    return
    end
    # Iの場合(追加部分)
    if c == "23"
    # 今の@xをインデント位置に設定
    @indent = @x
    c = ""
    end
    # Oの場合(追加部分)
    if c == "24"
    @now_text.sub!(/[([0-9]+)]/, "")
    @opacity = $1.to_i
    color = self.contents.font.color
    self.contents.font.color = Color.new(color.red, color.green, color.blue, color.alpha * @opacity / 255)
    c = ""
    end
    # Hの場合(追加部分)
    if c == "25"
    @now_text.sub!(/[([0-9]+)]/, "")
    self.contents.font.size = [[$1.to_i, 6].max, 32].min
    c = ""
    end
    # Bの場合(追加部分)
    if c == "26"
    @now_text.sub!(/[([0-9]+)]/, "")
    @x += $1.to_i
    c = ""
    end
    # Rの場合(追加部分)
    if c == "27"
    @now_text.sub!(/[(.*?)]/, "")
    # 文字を描?
    @x += ruby_draw_text(self.contents, @x, @y * line_height + (line_height - self.contents.font.size), $1, @opacity)
    # 文字描?のSEを演奏
    if $soundname_on_speak != ""
    Audio.se_play($soundname_on_speak)
    end
    c = ""
    end
    # アイコン描?用シ?ケンスの場合(追加部分)
    if c == "30"
    # アイコンファイル名を取得
    @now_text.sub!(/[(.*?)]/, "")
    # アイコンを描?
    self.contents.blt(@x , @y * line_height + 8, RPG::Cache.icon($1), Rect.new(0, 0, 24, 24))
    # 文字描?のSEを演奏
    if $soundname_on_speak != ""
    Audio.se_play($soundname_on_speak)
    end
    @x += 24
    # 次の文字へ
    c = ""
    end
    # 改行文字の場合
    if c == "n"
    # 選?肢ならカ?ソルの幅を更新
    if @lines >= $game_temp.choice_start
    @cursor_width = [@cursor_width, @max_choice_x - @face_indent].max
    end
    # y に 1 を加算
    @lines += 1
    @y += 1
    @x = 0 + @indent + @face_indent
    # 選?肢なら字下げを行う
    if @lines >= $game_temp.choice_start
    @x = 8 + @indent + @face_indent
    end
    # 次の文字へ
    c = ""
    end
    # 外字表示の場合
    if c == "22"
    # []部分の除去
    @now_text.sub!(/[([0-9]+)]/, "")
    # 外字を表示
    @x += gaiji_draw(4 + @x, @y * line_height + (line_height - self.contents.font.size), $1.to_i)
    # 次の文字へ
    c = ""
    end
    if c != ""
    # 文字を描?
    self.contents.draw_text(4+@x, 4+ 32 * @y, 40, 32, c)
    @x += self.contents.text_size(c).width
    # 文字描?のSEを演奏
    if $soundname_on_speak != "" then
    Audio.se_play($soundname_on_speak)
    end
    end
    # Bボタンが押された場合
    if Input.press?(Input::B)
    text_not_skip = false
    end
    else
    text_not_skip = true
    break
    end
    # 終了判定
    if text_not_skip
    break
    end
    end
    @write_wait += @write_speed
    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
    # 選?肢の表示中でなければポ?ズサインを表示
    if $game_temp.choice_max == 0
    self.pause = true
    end
    # キャンセル
    if Input.trigger?(Input::B)
    if $game_temp.choice_max > 0 and $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
    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 @mid_stop
    @mid_stop = false
    return
    else
    terminate_message
    end
    end
    return
    end
    # フェ?ドアウト中以外で表示待ちのメッセ?ジか選?肢がある場合
    if @fade_out == false and $game_temp.message_text != nil
    @contents_showing = true
    $game_temp.message_window_showing = true
    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
    if self.opacity == 0
    self.visible = false
    @fade_out = false
    $game_temp.message_window_showing = false
    end
    return
    end
    end
    #--------------------------------------------------------------------------
    # ● キャラクタ?の取得
    # parameter : パラメ?タ
    #--------------------------------------------------------------------------
    def get_character(parameter)
    # パラメ?タで分岐
    case parameter
    when 0 # プレイヤ?
    return $game_player
    else # 特定のイベント
    events = $game_map.events
    return events == nil ? nil : events[parameter]
    end
    end
    #--------------------------------------------------------------------------
    # ● ウィンドウの位置と不透明度の設定
    #--------------------------------------------------------------------------
    def reset_window
    # 判定
    if @popchar >= 0
    events = $game_map.events
    if events != nil
    character = get_character(@popchar)
    x = [[character.screen_x - 0 - self.width / 2, 4].max, 636 - self.width].min
    y = [[character.screen_y - 48 - self.height, 4].max, 476 - self.height].min
    self.x = x
    self.y = y
    end
    elsif @popchar == -1
    self.x = -4
    self.y = -4
    self.width = 648
    self.height = 488
    else
    if $game_temp.in_battle
    self.y = 16
    else
    case $game_system.message_position
    when 0 # 上
    self.y = 16
    when 1 # 中
    self.y = 160
    when 2 # 下
    self.y = 304
    end
    self.x = 80
    if @face_file == nil
    self.width = 480
    else
    self.width = 600
    self.x -= 60
    end
    self.height = 160
    end
    end
    self.contents = Bitmap.new(self.width - 32, self.height - 32)
    if @face_file != nil
    self.contents.blt(16, 16, RPG::Cache.picture(@face_file), Rect.new(0, 0, 96, 96))
    end
    if @popchar == -1
    self.opacity = 255
    self.back_opacity = 0
    elsif $game_system.message_frame == 0
    self.opacity = 255
    self.back_opacity = 160
    else
    self.opacity = 0
    self.back_opacity = 160
    end
    end
    #--------------------------------------------------------------------------
    # ● 外字描?
    #--------------------------------------------------------------------------
    # x   :x座標
    # y   :y座標
    # num  :外字番?
    # 返り値:外字幅(@x?加値)
    #--------------------------------------------------------------------------
    def gaiji_draw(x, y, num)
    # 外字デ?タが存在しない場合は何もしない
    if @gaiji_cache == nil
    return 0
    else
    # 指定した外字がキャッシュ範?を超えている場合は何もしない
    if @gaiji_cache.width < num * 24
    return 0
    end

    # 文字サイズを計算
    if self.contents.font.size >= 20 and self.contents.font.size <= 24
    size = 24
    else
    size = self.contents.font.size * 100 * 24 / 2200
    end

    # 外字デ?タをstretch_bltで?送
    self.contents.stretch_blt(Rect.new(x, y, size, size), @gaiji_cache, Rect.new(num * 24, 0, 24, 24))

    # 文字描?のSEを演奏
    if $soundname_on_speak != "" then
    Audio.se_play($soundname_on_speak)
    end

    # 文字サイズを返す
    return size
    end
    end
    #--------------------------------------------------------------------------
    # ● line_height
    #--------------------------------------------------------------------------
    # 返り値:行の高さ(@y?加値)を返します。
    #--------------------------------------------------------------------------
    def line_height
    # 現?、選?肢等に??ができない?、自動的に32を返します。
    return 32

    # 文字サイズを計算
    if self.contents.font.size >= 20 and self.contents.font.size <= 24
    return 32
    else
    return self.contents.font.size * 15 / 10
    end
    end
    #--------------------------------------------------------------------------
    # ● ルビ文字描?
    #--------------------------------------------------------------------------
    # target :描??象。Bitmapクラスを指定。
    # x :x座標
    # y :y座標
    # str  :描?文字列。本文,ルビの形式で入力。
    #      ,?切りが2つ以上あった場合は自動的に無視される。
    # opacity:透過率(0~255)
    # 返り値 :文字幅(@x?加値)。
    #--------------------------------------------------------------------------
    def ruby_draw_text(target, x, y, str,opacity)
    # フォントサイズをバックアップしておく
    sizeback = target.font.size
    # ルビサイズの計算
    target.font.size * 3 / 2 > 32 ? rubysize = 32 - target.font.size : rubysize = target.font.size / 2
    rubysize = [rubysize, 6].max

    # opacityに規定値以上の値が入っている場合は修正。
    opacity = [[opacity, 0].max, 255].min
    # strをsplitで分割し、split_sに格納
    split_s = str.split(/,/)

    # split_sがnilの場合は""にしておく(誤動作防止)
    split_s[0] == nil ? split_s[0] = "" : nil
    split_s[1] == nil ? split_s[1] = "" : nil

    # heightとwidthを計算
    height = sizeback + rubysize
    width = target.text_size(split_s[0]).width

    # バッファ用の幅計算(ルビの幅が本文の幅を越える可能性がある?)
    target.font.size = rubysize
    ruby_width = target.text_size(split_s[1]).width
    target.font.size = sizeback

    buf_width = [target.text_size(split_s[0]).width, ruby_width].max

    # 本文の描?幅とルビの描?幅の差を1/2にして??に格納(後で使用)
    width - ruby_width != 0 ? sub_x = (width - ruby_width) / 2 : sub_x = 0

    # opacityが255(透過なし)の場合は通常描?
    if opacity == 255
    # ルビの描?
    target.font.size = rubysize
    target.draw_text(x + sub_x, y - target.font.size, target.text_size(split_s[1]).width, target.font.size, split_s[1])
    target.font.size = sizeback
    # 本文の描?
    target.draw_text(x, y, width, target.font.size, split_s[0])
    return width
    else
    # 表示テキストのheight、widthがバッファサイズを上回る場合は
    # バッファを再生成する。
    if @opacity_text_buf.width < buf_width or @opacity_text_buf.height < height
    @opacity_text_buf.dispose
    @opacity_text_buf = Bitmap.new(buf_width, height)
    # そうでない場合はバッファクリア。
    else
    @opacity_text_buf.clear
    end
    # バッファにテキスト描?
    # ルビの描?
    @opacity_text_buf.font.size = rubysize
    @opacity_text_buf.draw_text(0 , 0, buf_width, rubysize, split_s[1], 1)
    @opacity_text_buf.font.size = sizeback
    # 本文の描?
    @opacity_text_buf.draw_text(0 , rubysize, buf_width, sizeback, split_s[0], 1)
    # ルビの幅が本文の幅を下回る場合
    if sub_x >= 0
    target.blt(x, y - rubysize, @opacity_text_buf, Rect.new(0, 0, buf_width, height), opacity)
    # ルビの幅が本文の幅を上回る場合
    else
    target.blt(x + sub_x, y - rubysize, @opacity_text_buf, Rect.new(0, 0, buf_width, height), opacity)
    end
    # 文字サイズを返す
    return width
    end
    end
    #--------------------------------------------------------------------------
    # ● V?換
    #--------------------------------------------------------------------------
    # option :オプション。無指定又は規定外の場合はindexのユ?ザ??値を返す。
    # index :インデックス
    # 返り値 :?換結果(アイコン表示用シ?ケンス?み)
    #--------------------------------------------------------------------------
    def convart_value(option, index)
    # optionがnilの場合は""に直す(誤動作防止)
    option == nil ? option = "" : nil

    # optionはdowncaseしておく。
    option.downcase!

    # 30はアイコン表示用のシ?ケンス。30[アイコンファイル名]で定義。
    case option
    when "i"
    unless $data_items[index].name == nil
    r = sprintf("30[%s]%s", $data_items[index].icon_name, $data_items[index].name)
    end
    when "w"
    unless $data_weapons[index].name == nil
    r = sprintf("30[%s]%s", $data_weapons[index].icon_name, $data_weapons[index].name)
    end
    when "a"
    unless $data_armors[index].name == nil
    r = sprintf("30[%s]%s", $data_armors[index].icon_name, $data_armors[index].name)
    end
    when "s"
    unless $data_skills[index].name == nil
    r = sprintf("30[%s]%s", $data_skills[index].icon_name, $data_skills[index].name)
    end
    else
    r = $game_variables[index]
    end

    r == nil ? r = "" : nil
    return r
    end
    #--------------------------------------------------------------------------
    # ● 解放
    #--------------------------------------------------------------------------
    def dispose
    terminate_message

    # 外字キャッシュ開放
    if @gaiji_cache != nil
    unless @gaiji_cache.disposed?
    @gaiji_cache.dispose
    end
    end

    # 文字透過?送用バッファ開放
    unless @opacity_text_buf.disposed?
    @opacity_text_buf.dispose
    end

    $game_temp.message_window_showing = false
    if @input_number_window != nil
    @input_number_window.dispose
    end
    super
    end
    #--------------------------------------------------------------------------
    # ● カ?ソルの矩形更新
    #--------------------------------------------------------------------------
    def update_cursor_rect
    if @index >= 0
    n = $game_temp.choice_start + @index
    self.cursor_rect.set(4 + @indent + @face_indent, n * 32 + 4, @cursor_width, 32)
    else
    self.cursor_rect.empty
    end
    end
    end
    #==============================================================================
    # ■ Window_Frame (?だけで中身の無いウィンドウ)
    #==============================================================================
    class Window_Frame < Window_Base
    #--------------------------------------------------------------------------
    # ● オブジェクト初期化
    #--------------------------------------------------------------------------
    def initialize(x, y, width, height)
    super(x, y, width, height)
    self.contents = nil
    #self.back_opacity = 240
    end
    #--------------------------------------------------------------------------
    # ● 解放
    #--------------------------------------------------------------------------
    def dispose
    super
    end
    end
    #==============================================================================
    # ■ Air_Text (何も無いところに文字描? = ?の無い瞬間表示メッセ?ジウィンドウ)
    #==============================================================================
    class Air_Text < Window_Base
    #--------------------------------------------------------------------------
    # ● オブジェクト初期化
    #--------------------------------------------------------------------------
    def initialize(x, y, designate_text)
    super(x-16, y-16, 32 + designate_text.size * 12, 56)
    self.opacity = 0
    self.back_opacity = 0
    self.contents = Bitmap.new(self.width - 32, self.height - 32)
    w = self.contents.width
    h = self.contents.height
    self.contents.draw_text(0, 0, w, h, designate_text)
    end
    #--------------------------------------------------------------------------
    # ● 解放
    #--------------------------------------------------------------------------
    def dispose
    self.contents.clear
    super
    end
    end
  • ?
    ↑고수의길↑ 2013.10.13 21:26
    위에 두개중 어떤건가요?
  • ?
    ↑고수의길↑ 2013.10.13 21:27
    아 알겠습니다
  • ?
    Xanadu 2013.10.14 04:54
    슬래쉬가 아니라 역슬래쉬일겁니다.
    (/ 를 좌우 반전한 형태)

    두 문자는 형태는 다르지만, 문자코드가 같기 때문입니다.
  • ?
    XP데이 2013.10.14 02:31
    / = ₩

  • ?
    ↑고수의길↑ 2013.10.14 02:30
    그게 위에거랑 같은 겁니다^^
  • ?
    XP데이 2013.10.14 02:24
    저는 다른스크립트라서
    ₩name[] ☜이것도되네요
  • ?
    컨트롤 2013.10.13 21:27
    사용방법 : 문장의표시 - name[이름]

    //

    두번째 대화창에 이름 나오는 스크립트 입니다 제가 지금 사용하고있어서 댓글 달았어요
  • ?
    오니파이트 2013.10.13 21:44
    둘다 궁금했던 거군요
  • ?
    ↑고수의길↑ 2013.10.13 21:47
    네.
    저도 무척 궁금합니다.
  • ?
     운 2013.10.13 22:05
    메세지 스크립트사용해야겠군요.
  • ?
    XP데이 2013.10.19 23:29
    전 얼굴표시 이름표시 둘다되는스크립트네요.
  • ?
    ↑고수의길↑ 2013.10.14 02:30

  1. 제2회 인디사이드 게임제작대회 출품작 리스트.

    Date2016.10.24 By인디사이드운영자 Views32430 Votes0
    read more
  2. 인디사이드 활동 규정.(ver.20160119)

    Date2015.02.16 By천무 Views34192 Votes1
    read more
  3. 혹시 '이터니티' 라는게임 갖고 계시는분 있을까요?

    Date2026.02.01 ByDoingDogu Views518 Votes0
    Read More
  4. [스마일게이트 퓨처랩] 비버롹스 2025 온라인 전시관 오픈! (12/1~12/14)

    Date2025.12.01 By스마일게이트퓨처랩 Views444 Votes0
    Read More
  5. [스마일게이트 퓨처랩] 비버롹스 with 산나비! 게임 시연과 함께 굿즈 스토어까지!

    Date2025.11.26 By스마일게이트퓨처랩 Views413 Votes0
    Read More
  6. [스마일게이트 퓨처랩] 놓치면 후회! 비버롹스 2차 얼리버드 티켓 절찬 판매중!

    Date2025.11.20 By스마일게이트퓨처랩 Views415 Votes0
    Read More
  7. 코리아 인디게임 쇼케이스가 떴다

    Date2025.10.20 Bygls2024 Views459 Votes0
    Read More
  8. GGDC 2025 글로벌게임개발자컨퍼런스 2차 공개!

    Date2025.10.18 Byggdc Views425 Votes0
    Read More
  9. BEAVER ROCKS 2025 슈퍼 얼리버드 티켓 오픈!

    Date2025.10.17 By스마일게이트퓨처랩 Views413 Votes0
    Read More
  10. 이제 여기 다운로드는 다 막힌건가

    Date2025.10.12 ByRedgm Views701 Votes0
    Read More
  11. 안녕하세요

    Date2025.09.30 By우사준 Views483 Votes0
    Read More
  12. 혹시 이 사이트의 등업관련해서 질문이있는데요

    Date2025.09.23 By이드냐 Views656 Votes0
    Read More
  13. GGDC 2025 글로벌 게임 개발자 컨퍼런스

    Date2025.09.18 Byggdc Views898 Votes0
    Read More
  14. NGC2025 사전등록 이벤트 소식~ ^^

    Date2025.09.18 By태사자 Views426 Votes0
    Read More
  15. [대구디지털혁신진흥원] (NGC2025) NEXT GAME CONFERENCE 2025

    Date2025.09.12 By태사자 Views461 Votes0
    Read More
  16. [스마일게이트 퓨처랩]BEAVER ROCKS 인디게임&컬처 페스티벌, 2025 전시팀 모집

    Date2025.08.04 By스마일게이트퓨처랩 Views507 Votes0
    Read More
  17. [전남정보문화산업진흥원] 게임개발 취업 부트캠프

    Date2025.07.31 By유니버스 Views463 Votes0
    Read More
  18. 충청권 인디게임 공모전<인디유>

    Date2025.07.24 ByCBGC Views508 Votes0
    Read More
  19. 인디게임에 대한 간단한 생각

    Date2025.07.18 By철수와미애 Views814 Votes0
    Read More
  20. [스마일게이트 퓨처랩]스마일게이트 인디게임 프로토타이핑 챌린지 모집 (~7/31)

    Date2025.07.17 By스마일게이트퓨처랩 Views504 Votes0
    Read More
  21. 2025 충북글로벌게임센터 게임기업 신규 입주 모집(~7. 25.)

    Date2025.07.07 ByCBGC Views514 Votes0
    Read More
  22. 2025 충북글로벌게임센터 [충북게임아카데미] 교육생 모집(~6. 26.)

    Date2025.06.17 ByCBGC Views504 Votes0
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 1177 Next
/ 1177


[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)