조회 수 1360 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
 
상태 창을 스크립트를 사용하여 화면에 띄울려고 합니다.

일단 스크립트 창을 열고 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좌표

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좌표

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좌표

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좌표

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

main_tokimiya # 구메소드의 호출

# 간이 윈도우의 해방
@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

# 윈도우 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

# 윈도우 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

# 윈도우 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

 

#=========================================================================
# ■ 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

 

 

 

 

여기까지가 스트립트 이구요..

문제가 무엇인지 아시는분은 꼭좀 알려주세요
?

List of Articles
번호 제목 글쓴이 날짜 조회 수
8841 @brrsim_7텔레그램 선불유심내구제 급전 뽀로로통신 선불유심매입 뽀로로통신 선불유심현금화하는업체 선불유심구매 간편무서류소액급전 선불유심내구제뽀로로통신 2026.07.07 76
8840 선불유심내구제 텔레그램@brrsim_7 선불유심매입 선불유심구매 뽀로로통신 급전 대학생내구제 비상금 연체자바로소액급전 주말소액급전 선불유심내구제뽀로로통신 2026.07.07 107
8839 @brrsim_7텔레그램 선불유심내구제 선불유심매입 선불폰내구제 뽀로로통신 급전 선불유심현금화하는업체 선불유심구매 무직신불자소액급전 선불유심내구제뽀로로통신 2026.07.07 78
8838 선불유심내구제 텔레그램@brrsim_7 급전 선불유심매입 뽀로로통신 청년비상금급전 내구제소액 소액급전 정식업체 선불유심구매 선불유심내구제뽀로로통신 2026.07.07 97
8837 선불유심내구제 텔레그램@brrsim_7 뽀로로통신 급전 선불유심매입 신불자소액내구제 연체자바로소액급전 선불유심구매 바로모바일급전 선불유심내구제뽀로로통신 2026.07.07 95
8836 선불유심삽니다 텔레그램@brrsim_7 선불유심내구제 뽀로로통신 선불유심매입 선불유심구매 소액내구제 급전 연체대납 바로소액급전 법인소액작업급전 선불유심내구제뽀로로통신 2026.07.07 98
8835 @brrsim_7텔레그램 선불폰유심내구제 선불유심매입 뽀로로통신 급전 선불유심내구제 급전해결내구제 선불유심현금화하는업체 선불유심구매 바로무직자급전 선불유심내구제뽀로로통신 2026.07.07 78
8834 선불유심매입 텔레그램@brrsim_7 선불유심내구제 뽀로로통신 바로소액내구제급전 선불유심구매 급전 선불유심매입 바로소액급전 무서류무방문급전 선불유심내구제뽀로로통신 2026.07.07 100
8833 @brrsim_7텔레그램 선불유심내구제 선불유심매입 뽀로로통신 급전 선불유심현금화하는업체 선불유심구매 백수바로급전내구제 선불유심내구제뽀로로통신 2026.07.07 105
8832 선불유심내구제 텔레그램@brrsim_7 선불유심매입 뽀로로통신 소액급전내구제 급전 연체자바로소액급전 선불유심구매 대학생용돈 선불유심내구제뽀로로통신 2026.07.07 96
8831 @brrsim_7텔레그램 선불유심내구제 뽀로로통신 급전 선불유심매입 유심현금화하는업체 무직비상금바로급전 선불유심구매 선불유심내구제뽀로로통신 2026.07.07 84
8830 선불유심내구제 정식업체 텔레그램@brrsim_7선불유심매입 뽀로로통신 소상공인긴급생활안정자금 급전 선불유심구매 선불유심내구제 소액급전대출 바로신불급전가능 선불유심내구제뽀로로통신 2026.07.07 76
8829 @brrsim_7텔레그램 선불유심매입 선불유심내구제 뽀로로통신 선불유심현금화하는업체 프리랜서소액급전 선불폰유심매입합니다 급전 선불유심구매 바로정산 선불유심내구제뽀로로통신 2026.07.07 96
8828 @brrsim_7텔레그램 선불유심내구제 선불유심매입 뽀로로통신 급전 선불유심현금화하는업체 선불유심구매 백수바로급전내구제 선불유심내구제뽀로로통신 2026.07.06 134
8827 쯔꾸르 mv 게임을 apk 파일로 변환했는데... 1 박하맛 2023.01.14 2256
8826 쯔꾸르 젖소이야기 결혼 방법좀 알려주세요... 2 백지씨 2021.12.20 3711
8825 apk포팅 승인 어케 하나요? game메이커xp 2021.11.29 2137
8824 Yanfly님의 Action Sequence Pack 질문드립니다 Neuromancer 2021.07.15 2676
8823 싸게 MV 를 먼저? 아니면 돈을 더 들어서라도 MZ? 2 Xatra 2021.07.06 2916
8822 RMMV - 스탯창과 대화창 변견 관련 질문입니다. (초보입니다 도움좀 주세요 ㅜㅜ) 2 scribble 2021.01.22 2506
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 443 Next
/ 443


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

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