상태 창을 스크립트를 사용하여 화면에 띄울려고 합니다.
일단 스크립트 창을 열고 main 위에 삽입을 하여 새 스크립트를 만든 다음
붙여 넣었으나. 아무것도 되지 않는군요
스크립트 내용중 15번 스위치가 on 되었을 때라는 조건이 붙어 이벤트로
15번 스위치 on을 만들었으나 출력 되지 않습니다. 원인을 아시는 분은 꼭좀 알려주세요.
그럼 스크립트 나갑니다...
#◆◇◆◇◆-----XRXS54. 맵상에서 간이 윈도우 표시 ver1. 0 -----◇◆◇◆◇
# by 각궁
# 「디폴트 기능 & 사양」
# ·WIN_2 = true. (이)라고 해도, 스윗치가 ON로 한편, 엑터가 존재하지 않으면
# 윈도우는 표시되지 않습니다. 이 3 요소가 갖추어졌을 때에 윈도우를 표시합니다.
# ·반대로 이 요소가 하나에서도 빠지면(자) 윈도우는 자동적으로 비표시가 됩니다.
# ·트크르 개시시는 스윗치는 OFF이므로, ON로 하지 않으면 표시되지 않습니다.
#------------------------------------------------------------------
# 커스터마이즈(customize) 포인트
#(*존재하지 않는 스윗치를 지정하시면(자) 에러가 됩니다. )
#----------------------------------------------------------------
WIN_1 = true # 엑터 1용 윈도우를 표시한다면 true, 하지 않으면 false.
SWITVH_1 = 15 # 엑터 1용 윈도우의 표시/비표시에 대응하는 스윗치의 ID.
#스위치에 관한 설명은 위를 참고해 주세요.
OPACITY_1 = 50 # 엑터 1용 윈도우의 투명도(0으로 가까울 정도 투명)
X_1 = 0 # 엑터 1용 윈도우의 X좌표
Y_1 = 384 # 엑터 1용 윈도우의 Y좌표
# by 각궁
# 「디폴트 기능 & 사양」
# ·WIN_2 = true. (이)라고 해도, 스윗치가 ON로 한편, 엑터가 존재하지 않으면
# 윈도우는 표시되지 않습니다. 이 3 요소가 갖추어졌을 때에 윈도우를 표시합니다.
# ·반대로 이 요소가 하나에서도 빠지면(자) 윈도우는 자동적으로 비표시가 됩니다.
# ·트크르 개시시는 스윗치는 OFF이므로, ON로 하지 않으면 표시되지 않습니다.
#------------------------------------------------------------------
# 커스터마이즈(customize) 포인트
#(*존재하지 않는 스윗치를 지정하시면(자) 에러가 됩니다. )
#----------------------------------------------------------------
WIN_1 = true # 엑터 1용 윈도우를 표시한다면 true, 하지 않으면 false.
SWITVH_1 = 15 # 엑터 1용 윈도우의 표시/비표시에 대응하는 스윗치의 ID.
#스위치에 관한 설명은 위를 참고해 주세요.
OPACITY_1 = 50 # 엑터 1용 윈도우의 투명도(0으로 가까울 정도 투명)
X_1 = 0 # 엑터 1용 윈도우의 X좌표
Y_1 = 384 # 엑터 1용 윈도우의 Y좌표
WIN_2 = true # 엑터 2용 윈도우를 표시한다면 true, 하지 않으면 false.
SWITVH_2 = 15 # 엑터 2용 윈도우의 표시/비표시에 대응하는 스윗치의 ID.
#스위치에 관한 설명은 위를 참고해 주세요.
OPACITY_2 = 50 # 엑터 2용 윈도우의 투명도(0으로 가까울 정도 투명)
X_2 = 160 # 엑터 2용 윈도우의 X좌표
Y_2 = 384 # 엑터 2용 윈도우의 Y좌표
SWITVH_2 = 15 # 엑터 2용 윈도우의 표시/비표시에 대응하는 스윗치의 ID.
#스위치에 관한 설명은 위를 참고해 주세요.
OPACITY_2 = 50 # 엑터 2용 윈도우의 투명도(0으로 가까울 정도 투명)
X_2 = 160 # 엑터 2용 윈도우의 X좌표
Y_2 = 384 # 엑터 2용 윈도우의 Y좌표
WIN_3 = true # 엑터 3용 윈도우를 표시한다면 true, 하지 않으면 false.
SWITVH_3 = 15 # 엑터 3용 윈도우의 표시/비표시에 대응하는 스윗치의 ID.
#스위치에 관한 설명은 위를 참고해 주세요.
OPACITY_3 = 50 # 엑터 3용 윈도우의 투명도(0으로 가까울 정도 투명)
X_3 = 320 # 엑터 3용 윈도우의 X좌표
Y_3 = 384 # 엑터 3용 윈도우의 Y좌표
SWITVH_3 = 15 # 엑터 3용 윈도우의 표시/비표시에 대응하는 스윗치의 ID.
#스위치에 관한 설명은 위를 참고해 주세요.
OPACITY_3 = 50 # 엑터 3용 윈도우의 투명도(0으로 가까울 정도 투명)
X_3 = 320 # 엑터 3용 윈도우의 X좌표
Y_3 = 384 # 엑터 3용 윈도우의 Y좌표
WIN_4 = true # 엑터 4용 윈도우를 표시한다면 true, 하지 않으면 false.
SWITVH_4 = 15 # 엑터 4용 윈도우의 표시/비표시에 대응하는 스윗치의 ID.
#스위치에 관한 설명은 위를 참고해 주세요.
OPACITY_4 = 100 # 엑터 4용 윈도우의 투명도(0으로 가까울 정도 투명)
X_4 = 480 # 엑터 4용 윈도우의 X좌표
Y_4 = 384 # 엑터 4용 윈도우의 Y좌표
SWITVH_4 = 15 # 엑터 4용 윈도우의 표시/비표시에 대응하는 스윗치의 ID.
#스위치에 관한 설명은 위를 참고해 주세요.
OPACITY_4 = 100 # 엑터 4용 윈도우의 투명도(0으로 가까울 정도 투명)
X_4 = 480 # 엑터 4용 윈도우의 X좌표
Y_4 = 384 # 엑터 4용 윈도우의 Y좌표
SET_SP = [true, true, true, true] # 각 윈도우의 SP표시 설정. false로 비표시.
OPTION = 16
# 「메세지 윈도우 표시시는 간이 윈도우를 소거한다」
# (이)라고 하는 기능의 ON/OFF에 대응하는 스윗치의 ID.
#=========================================================================
# ■ Scene_Map
#=========================================================================
class Scene_Map
#---------------------------------------------------------------------
# ● 프레임 갱신
#---------------------------------------------------------------------
alias main_tokimiya main
def main
# 간이 윈도우 1을 작성
@simple_window1 = Window_MapStatus.new(X_1, Y_1, 0)
@simple_window1.opacity = OPACITY_1
@simple_window1.visible = $game_switches[SWITVH_1]
unless $game_party.actors.size > 0
@simple_window1.visible = false
end
# 간이 윈도우 2를 작성
@simple_window2 = Window_MapStatus.new(X_2, Y_2, 1)
@simple_window2.opacity = OPACITY_2
@simple_window2.visible = $game_switches[SWITVH_2]
unless $game_party.actors.size > 1
@simple_window2.visible = false
end
# 간이 윈도우 3을 작성
@simple_window3 = Window_MapStatus.new(X_3, Y_3, 2)
@simple_window3.opacity = OPACITY_3
@simple_window3.visible = $game_switches[SWITVH_3]
unless $game_party.actors.size > 2
@simple_window3.visible = false
end
# 간이 윈도우 4를 작성
@simple_window4 = Window_MapStatus.new(X_4, Y_4, 3)
@simple_window4.opacity = OPACITY_4
@simple_window4.visible = $game_switches[SWITVH_4]
unless $game_party.actors.size > 3
@simple_window4.visible = false
end
OPTION = 16
# 「메세지 윈도우 표시시는 간이 윈도우를 소거한다」
# (이)라고 하는 기능의 ON/OFF에 대응하는 스윗치의 ID.
#=========================================================================
# ■ Scene_Map
#=========================================================================
class Scene_Map
#---------------------------------------------------------------------
# ● 프레임 갱신
#---------------------------------------------------------------------
alias main_tokimiya main
def main
# 간이 윈도우 1을 작성
@simple_window1 = Window_MapStatus.new(X_1, Y_1, 0)
@simple_window1.opacity = OPACITY_1
@simple_window1.visible = $game_switches[SWITVH_1]
unless $game_party.actors.size > 0
@simple_window1.visible = false
end
# 간이 윈도우 2를 작성
@simple_window2 = Window_MapStatus.new(X_2, Y_2, 1)
@simple_window2.opacity = OPACITY_2
@simple_window2.visible = $game_switches[SWITVH_2]
unless $game_party.actors.size > 1
@simple_window2.visible = false
end
# 간이 윈도우 3을 작성
@simple_window3 = Window_MapStatus.new(X_3, Y_3, 2)
@simple_window3.opacity = OPACITY_3
@simple_window3.visible = $game_switches[SWITVH_3]
unless $game_party.actors.size > 2
@simple_window3.visible = false
end
# 간이 윈도우 4를 작성
@simple_window4 = Window_MapStatus.new(X_4, Y_4, 3)
@simple_window4.opacity = OPACITY_4
@simple_window4.visible = $game_switches[SWITVH_4]
unless $game_party.actors.size > 3
@simple_window4.visible = false
end
main_tokimiya # 구메소드의 호출
# 간이 윈도우의 해방
@simple_window1.dispose
@simple_window2.dispose
@simple_window3.dispose
@simple_window4.dispose
end
@simple_window1.dispose
@simple_window2.dispose
@simple_window3.dispose
@simple_window4.dispose
end
#---------------------------------------------------------------------
# ● 프레임 갱신
#---------------------------------------------------------------------
alias update_tokimiya update
def update
update_tokimiya # 구메소드의 호출
# 이전의 파라미터와 상위가 있으면, 내용을 갱신한다.
#
# 윈도우 1의 갱신.
if WIN_1 == true and $game_party.actors.size > 0
# 데이터의 갱신
actor = $game_party.actors[0]
factor_1 = @simple_window1.before_1[0] != actor.name
factor_2 = @simple_window1.before_1[1] != actor.hp
factor_3 = @simple_window1.before_1[2] != actor.sp
if factor_1 or factor_2 or factor_3
@simple_window1.before_1[0] = actor.name
@simple_window1.before_1[1] = actor.hp
@simple_window1.before_1[2] = actor.sp
@simple_window1.refresh(0)
end
# 비표시 기능의 실행
if @message_window.visible == true and $game_switches[OPTION] == true
@simple_window1.before_1[3] = false
@simple_window1.visible = false
elsif @simple_window1.before_1[3] != $game_switches[SWITVH_1]
@simple_window1.before_1[3] = $game_switches[SWITVH_1]
@simple_window1.visible = $game_switches[SWITVH_1]
end
end
# ● 프레임 갱신
#---------------------------------------------------------------------
alias update_tokimiya update
def update
update_tokimiya # 구메소드의 호출
# 이전의 파라미터와 상위가 있으면, 내용을 갱신한다.
#
# 윈도우 1의 갱신.
if WIN_1 == true and $game_party.actors.size > 0
# 데이터의 갱신
actor = $game_party.actors[0]
factor_1 = @simple_window1.before_1[0] != actor.name
factor_2 = @simple_window1.before_1[1] != actor.hp
factor_3 = @simple_window1.before_1[2] != actor.sp
if factor_1 or factor_2 or factor_3
@simple_window1.before_1[0] = actor.name
@simple_window1.before_1[1] = actor.hp
@simple_window1.before_1[2] = actor.sp
@simple_window1.refresh(0)
end
# 비표시 기능의 실행
if @message_window.visible == true and $game_switches[OPTION] == true
@simple_window1.before_1[3] = false
@simple_window1.visible = false
elsif @simple_window1.before_1[3] != $game_switches[SWITVH_1]
@simple_window1.before_1[3] = $game_switches[SWITVH_1]
@simple_window1.visible = $game_switches[SWITVH_1]
end
end
# 윈도우 2의 갱신.
if WIN_2 == true and $game_party.actors.size > 1
# 데이터의 갱신
actor = $game_party.actors[1]
factor_1 = @simple_window2.before_2[0] != actor.name
factor_2 = @simple_window2.before_2[1] != actor.hp
factor_3 = @simple_window2.before_2[2] != actor.sp
if factor_1 or factor_2 or factor_3
@simple_window2.before_2[0] = actor.name
@simple_window2.before_2[1] = actor.hp
@simple_window2.before_2[2] = actor.sp
@simple_window2.refresh(1)
# 윈도우를 강제적으로 생성
@simple_window2.before_2[3] = true
@simple_window2.visible = true
end
# 비표시 기능의 실행
if @message_window.visible == true and $game_switches[OPTION] == true
@simple_window2.before_2[3] = false
@simple_window2.visible = false
elsif @simple_window2.before_2[3] != $game_switches[SWITVH_2]
@simple_window2.before_2[3] = $game_switches[SWITVH_2]
@simple_window2.visible = $game_switches[SWITVH_2]
end
# 엑터가 존재하지 않는데 윈도우가 표시된 채로의 경우.
elsif @simple_window2.visible == true and @simple_window2.before_2 != nil
# 윈도우를 소거.
@simple_window2.before_2[3] = false
@simple_window2.visible = false
end
if WIN_2 == true and $game_party.actors.size > 1
# 데이터의 갱신
actor = $game_party.actors[1]
factor_1 = @simple_window2.before_2[0] != actor.name
factor_2 = @simple_window2.before_2[1] != actor.hp
factor_3 = @simple_window2.before_2[2] != actor.sp
if factor_1 or factor_2 or factor_3
@simple_window2.before_2[0] = actor.name
@simple_window2.before_2[1] = actor.hp
@simple_window2.before_2[2] = actor.sp
@simple_window2.refresh(1)
# 윈도우를 강제적으로 생성
@simple_window2.before_2[3] = true
@simple_window2.visible = true
end
# 비표시 기능의 실행
if @message_window.visible == true and $game_switches[OPTION] == true
@simple_window2.before_2[3] = false
@simple_window2.visible = false
elsif @simple_window2.before_2[3] != $game_switches[SWITVH_2]
@simple_window2.before_2[3] = $game_switches[SWITVH_2]
@simple_window2.visible = $game_switches[SWITVH_2]
end
# 엑터가 존재하지 않는데 윈도우가 표시된 채로의 경우.
elsif @simple_window2.visible == true and @simple_window2.before_2 != nil
# 윈도우를 소거.
@simple_window2.before_2[3] = false
@simple_window2.visible = false
end
# 윈도우 3의 갱신.
if WIN_3 == true and $game_party.actors.size > 2
# 데이터의 갱신
actor = $game_party.actors[2]
factor_1 = @simple_window3.before_3[0] != actor.name
factor_2 = @simple_window3.before_3[1] != actor.hp
factor_3 = @simple_window3.before_3[2] != actor.sp
if factor_1 or factor_2 or factor_3
@simple_window3.before_3[0] = actor.name
@simple_window3.before_3[1] = actor.hp
@simple_window3.before_3[2] = actor.sp
@simple_window3.refresh(2)
# 윈도우를 강제적으로 생성
@simple_window3.before_3[3] = true
@simple_window3.visible = true
end
# 비표시 기능의 실행
if @message_window.visible == true and $game_switches[OPTION] == true
@simple_window3.before_3[3] = false
@simple_window3.visible = false
elsif @simple_window3.before_3[3] != $game_switches[SWITVH_3]
@simple_window3.before_3[3] = $game_switches[SWITVH_3]
@simple_window3.visible = $game_switches[SWITVH_3]
end
# 엑터가 존재하지 않는데 윈도우가 표시된 채로의 경우.
elsif @simple_window3.visible == true and @simple_window3.before_3 != nil
# 윈도우를 소거.
@simple_window3.before_3[3] = false
@simple_window3.visible = false
end
if WIN_3 == true and $game_party.actors.size > 2
# 데이터의 갱신
actor = $game_party.actors[2]
factor_1 = @simple_window3.before_3[0] != actor.name
factor_2 = @simple_window3.before_3[1] != actor.hp
factor_3 = @simple_window3.before_3[2] != actor.sp
if factor_1 or factor_2 or factor_3
@simple_window3.before_3[0] = actor.name
@simple_window3.before_3[1] = actor.hp
@simple_window3.before_3[2] = actor.sp
@simple_window3.refresh(2)
# 윈도우를 강제적으로 생성
@simple_window3.before_3[3] = true
@simple_window3.visible = true
end
# 비표시 기능의 실행
if @message_window.visible == true and $game_switches[OPTION] == true
@simple_window3.before_3[3] = false
@simple_window3.visible = false
elsif @simple_window3.before_3[3] != $game_switches[SWITVH_3]
@simple_window3.before_3[3] = $game_switches[SWITVH_3]
@simple_window3.visible = $game_switches[SWITVH_3]
end
# 엑터가 존재하지 않는데 윈도우가 표시된 채로의 경우.
elsif @simple_window3.visible == true and @simple_window3.before_3 != nil
# 윈도우를 소거.
@simple_window3.before_3[3] = false
@simple_window3.visible = false
end
# 윈도우 4의 갱신.
if WIN_4 == true and $game_party.actors.size > 3
# 데이터의 갱신
actor = $game_party.actors[3]
factor_1 = @simple_window4.before_4[0] != actor.name
factor_2 = @simple_window4.before_4[1] != actor.hp
factor_3 = @simple_window4.before_4[2] != actor.sp
if factor_1 or factor_2 or factor_3
@simple_window4.before_4[0] = actor.name
@simple_window4.before_4[1] = actor.hp
@simple_window4.before_4[2] = actor.sp
@simple_window4.refresh(3)
# 윈도우를 강제적으로 생성
@simple_window4.before_4[3] = true
@simple_window4. visible = true
end
# 비표시 기능의 실행
if @message_window.visible == true and $game_switches[OPTION] == true
@simple_window4.before_4[3] = false
@simple_window4.visible = false
elsif @simple_window4.before_4[3] != $game_switches[SWITVH_4]
@simple_window4.before_4[3] = $game_switches[SWITVH_4]
@simple_window4.visible = $game_switches[SWITVH_4]
end
# 엑터가 존재하지 않는데 윈도우가 표시된 채로의 경우.
elsif @simple_window4.visible == true and @simple_window4.before_4 != nil
# 윈도우를 소거.
@simple_window4.before_4[3] = false
@simple_window4.visible = false
end
end
end
if WIN_4 == true and $game_party.actors.size > 3
# 데이터의 갱신
actor = $game_party.actors[3]
factor_1 = @simple_window4.before_4[0] != actor.name
factor_2 = @simple_window4.before_4[1] != actor.hp
factor_3 = @simple_window4.before_4[2] != actor.sp
if factor_1 or factor_2 or factor_3
@simple_window4.before_4[0] = actor.name
@simple_window4.before_4[1] = actor.hp
@simple_window4.before_4[2] = actor.sp
@simple_window4.refresh(3)
# 윈도우를 강제적으로 생성
@simple_window4.before_4[3] = true
@simple_window4. visible = true
end
# 비표시 기능의 실행
if @message_window.visible == true and $game_switches[OPTION] == true
@simple_window4.before_4[3] = false
@simple_window4.visible = false
elsif @simple_window4.before_4[3] != $game_switches[SWITVH_4]
@simple_window4.before_4[3] = $game_switches[SWITVH_4]
@simple_window4.visible = $game_switches[SWITVH_4]
end
# 엑터가 존재하지 않는데 윈도우가 표시된 채로의 경우.
elsif @simple_window4.visible == true and @simple_window4.before_4 != nil
# 윈도우를 소거.
@simple_window4.before_4[3] = false
@simple_window4.visible = false
end
end
end
#=========================================================================
# ■ Window_MapStatus
#=========================================================================
class Window_MapStatus < Window_Base
#--------------------------------------------------------------------------
# ○공개 인스턴스 변수
#--------------------------------------------------------------------------
attr_accessor :before_1 # 갱신전의 윈도우 1의 파라미터
attr_accessor :before_2 # 갱신전의 윈도우 2의 파라미터
attr_accessor :before_3 # 갱신전의 윈도우 3의 파라미터
attr_accessor :before_4 # 갱신전의 윈도우 4의 파라미터
#---------------------------------------------------------------------
# ● 프레임 갱신
#---------------------------------------------------------------------
def initialize(x, y, id)
super(x, y, 160,96)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.size = 18
@before_1=[]
@before_2=[]
@before_3=[]
@before_4=[]
# 현단계의 엑터의 파라미터와 가시 상태를 기억.
data
# 항목의 묘화.
refresh(id)
end
#--------------------------------------------------------------------------
# ● 항목의 묘화
#--------------------------------------------------------------------------
def data
# 엑터 1의 기억(다만, 파티가 1명 이상의 경우)
if $game_party.actors.size > 0
actor = $game_party.actors[0]
@before_1 = [actor.name, actor.hp, actor.sp, true]
end
# 엑터 2의 기억(다만, 파티가 2명 이상의 경우)
if $game_party.actors.size > 1
actor = $game_party.actors[1]
@before_2 = [actor.name, actor.hp, actor.sp, true]
end
# 엑터 3의 기억(다만, 파티가 3명 이상의 경우)
if $game_party.actors.size > 2
actor = $game_party.actors[2]
@before_3 = [actor.name, actor.hp, actor.sp, true]
end
# 엑터 3의 기억(다만, 파티가 4명 이상의 경우)
if $game_party.actors.size > 3
actor = $game_party.actors[3]
@before_4 = [actor.name, actor.hp, actor.sp, true]
end
end
#--------------------------------------------------------------------------
# ● 항목의 묘화
#--------------------------------------------------------------------------
def refresh(id)
# 재묘화를 위해서(때문에) 일단 내용을 파기 한다
self.contents.clear
# 대응하는 엑터가 없으면, 아무것도하지 않고 종료한다.
actor = $game_party.actors[id]
if actor == nil
return
end
# 이름의 묘화
draw_actor_name(actor, 0, -5)
# HP의 묘화
if SET_SP[id]
draw_actor_hp_custom(actor, 0, 18)
else
draw_actor_hp_custom(actor, 0, 28)
end
# SP의 묘화
if SET_SP[id]
draw_actor_sp_custom(actor, 0, 36)
end
end
# ■ Window_MapStatus
#=========================================================================
class Window_MapStatus < Window_Base
#--------------------------------------------------------------------------
# ○공개 인스턴스 변수
#--------------------------------------------------------------------------
attr_accessor :before_1 # 갱신전의 윈도우 1의 파라미터
attr_accessor :before_2 # 갱신전의 윈도우 2의 파라미터
attr_accessor :before_3 # 갱신전의 윈도우 3의 파라미터
attr_accessor :before_4 # 갱신전의 윈도우 4의 파라미터
#---------------------------------------------------------------------
# ● 프레임 갱신
#---------------------------------------------------------------------
def initialize(x, y, id)
super(x, y, 160,96)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.size = 18
@before_1=[]
@before_2=[]
@before_3=[]
@before_4=[]
# 현단계의 엑터의 파라미터와 가시 상태를 기억.
data
# 항목의 묘화.
refresh(id)
end
#--------------------------------------------------------------------------
# ● 항목의 묘화
#--------------------------------------------------------------------------
def data
# 엑터 1의 기억(다만, 파티가 1명 이상의 경우)
if $game_party.actors.size > 0
actor = $game_party.actors[0]
@before_1 = [actor.name, actor.hp, actor.sp, true]
end
# 엑터 2의 기억(다만, 파티가 2명 이상의 경우)
if $game_party.actors.size > 1
actor = $game_party.actors[1]
@before_2 = [actor.name, actor.hp, actor.sp, true]
end
# 엑터 3의 기억(다만, 파티가 3명 이상의 경우)
if $game_party.actors.size > 2
actor = $game_party.actors[2]
@before_3 = [actor.name, actor.hp, actor.sp, true]
end
# 엑터 3의 기억(다만, 파티가 4명 이상의 경우)
if $game_party.actors.size > 3
actor = $game_party.actors[3]
@before_4 = [actor.name, actor.hp, actor.sp, true]
end
end
#--------------------------------------------------------------------------
# ● 항목의 묘화
#--------------------------------------------------------------------------
def refresh(id)
# 재묘화를 위해서(때문에) 일단 내용을 파기 한다
self.contents.clear
# 대응하는 엑터가 없으면, 아무것도하지 않고 종료한다.
actor = $game_party.actors[id]
if actor == nil
return
end
# 이름의 묘화
draw_actor_name(actor, 0, -5)
# HP의 묘화
if SET_SP[id]
draw_actor_hp_custom(actor, 0, 18)
else
draw_actor_hp_custom(actor, 0, 28)
end
# SP의 묘화
if SET_SP[id]
draw_actor_sp_custom(actor, 0, 36)
end
end
#--------------------------------------------------------------------------
# ● HP 의 묘화
# actor : 엑터
# x : 묘화처 X 좌표
# y : 묘화처 Y 좌표
# width : 묘화처의 폭
#--------------------------------------------------------------------------
def draw_actor_hp_custom(actor, x, y, width = 144)
# 캐릭터 라인 "HP" 를 묘화
self.contents.font.color = system_color
self.contents.draw_text(x, y, 32, 32, $data_system.words.hp)
# MaxHP 를 묘화 하는 스페이스가 있을까 계산
if width - 32 >= 108
hp_x = x + width - 108
flag = true
elsif width - 32 >= 48
hp_x = x + width - 48
flag = false
end
# HP 를 묘화
self.contents.font.color = actor.hp == 0 ? knockout_color :
actor.hp <= actor.maxhp / 4 ? crisis_color : normal_color
self.contents.draw_text(hp_x - 12, y, 48, 32, actor.hp.to_s, 2)
# MaxHP 를 묘화
if flag
self.contents.font.color = normal_color
self.contents.draw_text(hp_x + 48 - 12, y, 12, 32, "/", 1)
self.contents.draw_text(hp_x + 60 - 12, y, 48, 32, actor.maxhp.to_s)
end
end
#--------------------------------------------------------------------------
# ● SP 의 묘화
# actor : 엑터
# x : 묘화처 X 좌표
# y : 묘화처 Y 좌표
# width : 묘화처의 폭
#--------------------------------------------------------------------------
def draw_actor_sp_custom(actor, x, y, width = 144)
# 캐릭터 라인 "SP" 를 묘화
self.contents.font.color = system_color
self.contents.draw_text(x, y, 32, 32, $data_system.words.sp)
# MaxSP 를 묘화 하는 스페이스가 있을까 계산
if width - 32 >= 108
sp_x = x + width - 108
flag = true
elsif width - 32 >= 48
sp_x = x + width - 48
flag = false
end
# SP 를 묘화
self.contents.font.color = actor.sp == 0 ? knockout_color :
actor.sp <= actor.maxsp / 4 ? crisis_color : normal_color
self.contents.draw_text(sp_x - 12, y, 48, 32, actor.sp.to_s, 2)
# MaxSP 를 묘화
if flag
self.contents.font.color = normal_color
self.contents.draw_text(sp_x + 48 - 12, y, 12, 32, "/", 1)
self.contents.draw_text(sp_x + 60 - 12, y, 48, 32, actor.maxsp.to_s)
end
end
end
# ● HP 의 묘화
# actor : 엑터
# x : 묘화처 X 좌표
# y : 묘화처 Y 좌표
# width : 묘화처의 폭
#--------------------------------------------------------------------------
def draw_actor_hp_custom(actor, x, y, width = 144)
# 캐릭터 라인 "HP" 를 묘화
self.contents.font.color = system_color
self.contents.draw_text(x, y, 32, 32, $data_system.words.hp)
# MaxHP 를 묘화 하는 스페이스가 있을까 계산
if width - 32 >= 108
hp_x = x + width - 108
flag = true
elsif width - 32 >= 48
hp_x = x + width - 48
flag = false
end
# HP 를 묘화
self.contents.font.color = actor.hp == 0 ? knockout_color :
actor.hp <= actor.maxhp / 4 ? crisis_color : normal_color
self.contents.draw_text(hp_x - 12, y, 48, 32, actor.hp.to_s, 2)
# MaxHP 를 묘화
if flag
self.contents.font.color = normal_color
self.contents.draw_text(hp_x + 48 - 12, y, 12, 32, "/", 1)
self.contents.draw_text(hp_x + 60 - 12, y, 48, 32, actor.maxhp.to_s)
end
end
#--------------------------------------------------------------------------
# ● SP 의 묘화
# actor : 엑터
# x : 묘화처 X 좌표
# y : 묘화처 Y 좌표
# width : 묘화처의 폭
#--------------------------------------------------------------------------
def draw_actor_sp_custom(actor, x, y, width = 144)
# 캐릭터 라인 "SP" 를 묘화
self.contents.font.color = system_color
self.contents.draw_text(x, y, 32, 32, $data_system.words.sp)
# MaxSP 를 묘화 하는 스페이스가 있을까 계산
if width - 32 >= 108
sp_x = x + width - 108
flag = true
elsif width - 32 >= 48
sp_x = x + width - 48
flag = false
end
# SP 를 묘화
self.contents.font.color = actor.sp == 0 ? knockout_color :
actor.sp <= actor.maxsp / 4 ? crisis_color : normal_color
self.contents.draw_text(sp_x - 12, y, 48, 32, actor.sp.to_s, 2)
# MaxSP 를 묘화
if flag
self.contents.font.color = normal_color
self.contents.draw_text(sp_x + 48 - 12, y, 12, 32, "/", 1)
self.contents.draw_text(sp_x + 60 - 12, y, 48, 32, actor.maxsp.to_s)
end
end
end
여기까지가 스트립트 이구요..
문제가 무엇인지 아시는분은 꼭좀 알려주세요