XP 스크립트

제가 한글화 했어여 ㅎㅎㅎ- 어머 ;

중복이면 댓글로

--------------- 이밑 부터 드래그


#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#_/ ◆메세지 윈도우 개조 -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

#--------------------------------------------------------------------------
# ● 윈도우를 중앙에 이동
#--------------------------------------------------------------------------
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

Comment '3'
  • ?
    Aerkers 2009.02.28 14:08
    마음에 드는 스크립트네요, 잘쓸게요,
  • ?
    L Triple 2010.02.26 23:51

    잘써보겠습니다.

    좋은 자료 언제나 감사 하구요 ^^

  • ?
    L Triple 2010.02.26 23:56

    다른 스크립트랑 겹쳐서

    오류가 나는군요.

    안타깝네요 .


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 5737
883 HUD 맵이름표시 ps인간 2009.01.23 3437
882 능력치 올리기 스크립트 21 file 아방스 2007.11.09 3434
881 전투 Mr. Mo's ABS 5.5 13 Alkaid 2010.09.10 3431
880 이동 및 탈것 반칸 이동하기 14 file 느싱 2009.03.09 3429
879 이동 및 탈것 3D 캐릭 스크립트 7 백호 2009.02.22 3429
878 미니맵 던전용 미니맵 스크립트[사용법 추가] 16 file 배포 2008.03.02 3411
877 미니맵 스크립트 이용하여 미니맵 만들기 16 file 아방스 2007.11.09 3411
876 전투 CTB by Charlie Fleed 3.2 - FF10 스타일의 전투 시스템 7 Alkaid 2010.10.14 3404
875 타이틀/게임오버 타이틀을 스킵하는 스크립트. 16 file 따배 2009.09.30 3402
874 메뉴 스탯올리기 시스템 (액알가능) 27 file 백호 2009.02.22 3400
873 미니맵 미니맵(중복률100%? 한글번역!) 17 백호 2009.02.21 3395
872 메뉴 자작 메뉴 스크립트들(L's Simple CMS and menu scenes) (SDK 호환?) 10 Alkaid 2010.09.02 3393
871 기타 FPLE 2 - First Person Labyrinth Explorer by MGC 1 Alkaid 2012.01.17 3386
870 기타 한글 입력 스크립트 입니다. (vx -> xp) 23 file 헤르코스 2009.04.18 3378
869 이동 및 탈것 멈췄을때 행동. 17 file Bera 2010.10.17 3377
868 메뉴 [자작]명성치 사용 스크립트 16 Rainsy 2009.03.22 3375
867 스탯 포인트 시스템 3차수정 ( ' 백호 ' 님이 올리신 자료 수정.) 26 카이어덱터 2010.01.04 3342
» 메시지 ◆메세지 윈도우 개조 -KGC_MessageAlter◆ 3 백호 2009.02.22 3340
865 전투 ATB전투 5 백호 2009.02.22 3339
864 아이템 아이템 인벤토리 2 file 백호 2009.02.22 3327
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