출처 : http://www.rpgmakervxace.net/topic/663-simple-self-switches/
셀프 스위치의 활용도를 높여주는 스크립트.
설명은 '예' 부분을 참고하세요.
---바로 아래부터 끝까지 복사하세요---
#==============================================================================
# Simple Self Switches (간단한 셀프 스위치)
# 만든 이: Nicke
# 제작일자: 16/06/2011
# 수정일자: 03/01/2012
# 버전: 1.0a
#==============================================================================
# 사용방법
# -----------------------------------------------------------------------------
# 스크립트 편집기를 열고 Materials 아래, Main 위 빈 공간에
# 복사/붙여넣기하세요.
#
# 이 스크립트를 사용하려면 이벤트 설정 창 3페이지의 [고급] - 스크립트에서
# 아래의 콜 스크립트를 입력하세요. true=ON(켜기) / false=OFF(끄기)
#
# -콜 스크립트
# setSelfSwitch(맵ID, 이벤트ID, "A-D", true/false)
# isSelfSwitch?(맵ID, 이벤트ID, "A-D", true)
# setAllSelf(맵ID, 이벤트ID, true/false)
#
# 주의사항 : 셀프스위치 지정은 " "안에 넣어서 해야합니다. 예)"A" (셀프스위치 A)
# 주석: 콜 스크립트가 입력된 이벤트와 같은 맵에 있는 이벤트의 셀프스위치를
# 작동한다면 @map_id로 그 맵 ID를 지정할 수 있습니다.
#
# 예 1: setSelfSwitch(@map_id, 1, "A", true)
# 이것은 콜 스크립트 이벤트와 같은 맵에 있는 이벤트 중 ID가 1(EV001)
# 인 이벤트의 셀프 스위치 A를 ON(켜다)로 설정합니다.
# 예 2: setSelfSwitch(2, 1, "A", false)
# 이것은 맵 아이디 2(MAP002)에 있는 이벤트ID 1(EV001)의 셀프 스위치 A를
# OFF(끄다)상태로 설정합니다.
#
# 셀프 스위치의 ON/OFF 상태에 따라 조건분기를 할 수도 있습니다.
# 예: isSelfSwitch?(2, 1, "A") # 맵ID 2에서 이벤트ID 1의 셀프 스위치 A가 ON?
# 예: !isSelfSwitch?(@map_id, 1, "A") # 현재맵의 이벤트ID 1의 셀프 스위치 A가 OFF?
# 조건 분기 내의 스크립트에 위의 예처럼 입력하세요.
#
# 한 이벤트의 모든 셀프 스위치(A-D)를 한꺼번에 켜고 끌 수 있습니다.
# 예 1: setAllSelf(2, 1, true) 맵ID 2의 이벤트ID 1의 모든 셀프 스위치 ON(켜기).
# 예 2: setAllSelf(@map_id, 1, true) 현재 맵의 이벤트ID 1의 모든 셀프 스위치 ON.
#
# *** RPG Maker VX Ace에서만 사용할 수 있습니다. ***
#==============================================================================
($imported ||= {})["NICKE-EVENT-SELFSWITCHES"] = true
# *** 스크립트에 대해 잘 모르실 경우 아래 사항을 수정하시면 안 됩니다. ***
#==============================================================================#
# ** Game_Interpreter
#==============================================================================#
class Game_Interpreter
# // Set SelfSwitch to true/false.
def setSelfSwitch(map, eID, selfSwitch, trueFalse)
switch = [map, eID, selfSwitch]
$game_self_switches[switch] = trueFalse
end
# // Is SelfSwitch true/false?
def isSelfSwitch?(map, eID, selfSwitch)
switch = [map, eID, selfSwitch]
$game_self_switches[switch]
end
# // Set all SelfSwitches to true/false.
def setAllSelf(map, eID, trueFalse)
switches = ["A","B","C","D"]
for i in switches
setSelfSwitch(map, eID, i, trueFalse)
end
end
end # END OF FILE
#=*==========================================================================*=#
# ** END OF FILE
#=*==========================================================================*=#