#┌───────────────────────────────────────
#│
#│ TRCS.11
#│ "전투배경확장" ver1.00 (2005.09.04 h15)
#│ by NO (해석 - CRZ쥬논)
#│ http://chobi.net/~no/
#│
#└───────────────────────────────────────
module TRCS11_BATTLEBACK_DISABLE
#--------------------------------------------------------------------------
# ○설정항목
#--------------------------------------------------------------------------
#전투배경표시 플러그용의 스위치명
DISP_BATTLEBACK_SW_NAME = "전투배경표시"
# 전투배경이 없을 때, 맵에 입히는 필터의 색
# →통상시에는 [0, 0, 0, 0] 으로 설정
TONE_IN_BATTLE = [-64, -64, -64, 0]
# 필터 의 페이드인에 걸리는 시간
TONE_DURATION = 60
end
#==============================================================================
# ■ Spriteset_Map
#==============================================================================
class Spriteset_Map
#--------------------------------------------------------------------------
# ○맵에 입히는 필터의 실행
#--------------------------------------------------------------------------
def change_map_tone(tone,duration)
d = duration
tone_target = tone.clone
# 시간이 0 이상일 경우
while d > 0
# 톤의 변경
@tilemap.viewport.tone.red += tone_target.red / duration
@tilemap.viewport.tone.green += tone_target.green / duration
@tilemap.viewport.tone.blue += tone_target.blue / duration
d -= 1
end
# 최종적인 미세조정
@tilemap.viewport.tone.red = tone_target.red
@tilemap.viewport.tone.green = tone_target.green
@tilemap.viewport.tone.blue = tone_target.blue
end
end
#==============================================================================
# ■ Spriteset_Battle
#==============================================================================
class Spriteset_Battle
#--------------------------------------------------------------------------
# ○ 인크루드
#--------------------------------------------------------------------------
include TRCS11_BATTLEBACK_DISABLE
#--------------------------------------------------------------------------
# ○ 프레임갱신
#--------------------------------------------------------------------------
alias trcs11_update update
def update
# 전투중의 경우
if $game_temp.in_battle
#전투배경표시 맵의 취득
id = $data_system.switches.index(DISP_BATTLEBACK_SW_NAME)
$scene.battleback_enabled = $game_switches[id]
# 전투배경을 표시하지않을 경우
if !$scene.battleback_enabled
# 전투배경을없게 한다
$game_temp.battleback_name = ""
#배틀백그래픽이 존재하는 경우
if @battleback_sprite.bitmap != nil
#배틀백그래픽을 해방
@battleback_sprite.bitmap.dispose
end
# 전투배경을 표시하는 경우에, 전투배경이 없을 경우
elsif $game_temp.battleback_name == ""
# 맵에 설정된 전투배경을 적용
$game_temp.battleback_name = $game_map.battleback_name
end
end
# 呼び?す
trcs11_update
end
end
#==============================================================================
# ■ Scene_Battle (분할정의 1)
#==============================================================================
class Scene_Battle
#--------------------------------------------------------------------------
# ○ 인크루드
#--------------------------------------------------------------------------
include TRCS11_BATTLEBACK_DISABLE
#--------------------------------------------------------------------------
# ○ 공개인스턴스
#--------------------------------------------------------------------------
attr_accessor :battleback_enabled #전투배경표시허가플러그
#--------------------------------------------------------------------------
# ○ 메인
#--------------------------------------------------------------------------
alias trcs11_main main
def main
# 전투배경표시허가플러그의 취득
id = $data_system.switches.index(DISP_BATTLEBACK_SW_NAME)
@battleback_enabled = $game_switches[id]
# 맵스프라이트격납용배열의 초기화
map_sprite = nil
# 전투테스트에는 없고, 전투배경이 비표시일 경우
if !$BTEST and !@battleback_enabled
# 현재의 맵의 맵스프라이트를 작성
map_sprite = Spriteset_Map.new
# 필터의 셋트
tone = Tone.new(*TONE_IN_BATTLE)
#슬렛드
Thread.start do
# 필터를 입힘
map_sprite.change_map_tone(tone,TONE_DURATION)
Thread.exit
end
end
# 호출
trcs11_main
# 맵스프라이트가 존재하는 경우
if map_sprite != nil
#맵스프라이트를 해방
map_sprite.dispose
end
end
end
#==============================================================================
# ■ Interpreter (분할정의1)
#==============================================================================
class Interpreter
#--------------------------------------------------------------------------
# ○ 인크루드
#--------------------------------------------------------------------------
include TRCS11_BATTLEBACK_DISABLE
#--------------------------------------------------------------------------
# ○ 맵의 설정을 변경
#--------------------------------------------------------------------------
alias trcs11_command_204 command_204
def command_204
# 전투중에 배경을 변경하는 경우
if $game_temp.in_battle and @parameters[0] == 2
# 전투벼경표시플러그를 셋트
$scene.battleback_enabled = true
end
# 호출
return trcs11_command_204
end
end
<사용법>
TRCS.12
「"전투배경확장" ver1.00 매뉴얼」 2005.09.04 h15
by NO (해석 - CRZ쥬논)
http://chobi.net/~no/
------------------
<<개요>>
1,전투시의 배경을 인카운터시의 맵으로 합니다.
・이때 맵에 필터를 사용가능합니다.
2,위상태를 스취치로 변경가능
・통상전투는 배경、이벤트전투는 배틀백그래픽으로 하는 것도 가능
・이벤트커맨드「맵의 설정변경」에도 대응。
------------------
<<사용전에>>
1,스위치의 준비
・아래 이름으로 만든 스위치를 준비。ID는 뭐든 상관없음
스위치명:[전투배경표시] (스크립트도 전투배경표시 로 바꿔놓아야합니다)
2, 스크립트 의 설정항목을 바꿔써주세요
------------------
<<사용방법>>
・스위치[전투배경표시]가 ON 이 되면、배틀백그래픽을 표시
・스위치[전투배경표시]が OFF 되면、인카운더 시 맵표시
・이벤트커맨드「맵의 설정변경」이 실행된 경우는 설정된 배틀백그래픽으로 자동적변경
-------------------
<<사양 -본스크립트->>
・전투중「이벤트커맨드「맵의 설정변경」이 실행된 경우 설정된 배틀백그래픽으로 자동변경
이므로 배틀백그래픽변경이외의 용도로 이벤트커맨드「맵의 설정변경」을 실행한 경우는、
예기치않은 동작이 발상핼 가능성이 있음
전투중 포그그래픽을 변경하는 일은 없다고 생각하지만 어쩔 수 없습니다.
==========================================================
CBS-R1(사이드뷰)에 적용해보려했으나...
....그러나 CBS-R1에는 적용되지 않았다(..털썩;;)
역시 신_배틀 이 변경되는 것이라 그런것인가...
배틀백그래픽이 없이 맵상에서 전투를 하게 되는 경우에 쓸만하겠습니다만...
사이드뷰나 화려한 전투애니가 없으면 오히려 지저분해 보이겠습니다.....
그림은 저~~~~~밑에 블루다운님의 글을 참고하세요.
요샌 액알이 많아서 뭐 쓸일이 없겠군.
제가 쓸까하기도 하고 세루군이 사용법을 모르겠다는 꼬릿말이 있어서 그냥 해석해봤슴다..
#│
#│ TRCS.11
#│ "전투배경확장" ver1.00 (2005.09.04 h15)
#│ by NO (해석 - CRZ쥬논)
#│ http://chobi.net/~no/
#│
#└───────────────────────────────────────
module TRCS11_BATTLEBACK_DISABLE
#--------------------------------------------------------------------------
# ○설정항목
#--------------------------------------------------------------------------
#전투배경표시 플러그용의 스위치명
DISP_BATTLEBACK_SW_NAME = "전투배경표시"
# 전투배경이 없을 때, 맵에 입히는 필터의 색
# →통상시에는 [0, 0, 0, 0] 으로 설정
TONE_IN_BATTLE = [-64, -64, -64, 0]
# 필터 의 페이드인에 걸리는 시간
TONE_DURATION = 60
end
#==============================================================================
# ■ Spriteset_Map
#==============================================================================
class Spriteset_Map
#--------------------------------------------------------------------------
# ○맵에 입히는 필터의 실행
#--------------------------------------------------------------------------
def change_map_tone(tone,duration)
d = duration
tone_target = tone.clone
# 시간이 0 이상일 경우
while d > 0
# 톤의 변경
@tilemap.viewport.tone.red += tone_target.red / duration
@tilemap.viewport.tone.green += tone_target.green / duration
@tilemap.viewport.tone.blue += tone_target.blue / duration
d -= 1
end
# 최종적인 미세조정
@tilemap.viewport.tone.red = tone_target.red
@tilemap.viewport.tone.green = tone_target.green
@tilemap.viewport.tone.blue = tone_target.blue
end
end
#==============================================================================
# ■ Spriteset_Battle
#==============================================================================
class Spriteset_Battle
#--------------------------------------------------------------------------
# ○ 인크루드
#--------------------------------------------------------------------------
include TRCS11_BATTLEBACK_DISABLE
#--------------------------------------------------------------------------
# ○ 프레임갱신
#--------------------------------------------------------------------------
alias trcs11_update update
def update
# 전투중의 경우
if $game_temp.in_battle
#전투배경표시 맵의 취득
id = $data_system.switches.index(DISP_BATTLEBACK_SW_NAME)
$scene.battleback_enabled = $game_switches[id]
# 전투배경을 표시하지않을 경우
if !$scene.battleback_enabled
# 전투배경을없게 한다
$game_temp.battleback_name = ""
#배틀백그래픽이 존재하는 경우
if @battleback_sprite.bitmap != nil
#배틀백그래픽을 해방
@battleback_sprite.bitmap.dispose
end
# 전투배경을 표시하는 경우에, 전투배경이 없을 경우
elsif $game_temp.battleback_name == ""
# 맵에 설정된 전투배경을 적용
$game_temp.battleback_name = $game_map.battleback_name
end
end
# 呼び?す
trcs11_update
end
end
#==============================================================================
# ■ Scene_Battle (분할정의 1)
#==============================================================================
class Scene_Battle
#--------------------------------------------------------------------------
# ○ 인크루드
#--------------------------------------------------------------------------
include TRCS11_BATTLEBACK_DISABLE
#--------------------------------------------------------------------------
# ○ 공개인스턴스
#--------------------------------------------------------------------------
attr_accessor :battleback_enabled #전투배경표시허가플러그
#--------------------------------------------------------------------------
# ○ 메인
#--------------------------------------------------------------------------
alias trcs11_main main
def main
# 전투배경표시허가플러그의 취득
id = $data_system.switches.index(DISP_BATTLEBACK_SW_NAME)
@battleback_enabled = $game_switches[id]
# 맵스프라이트격납용배열의 초기화
map_sprite = nil
# 전투테스트에는 없고, 전투배경이 비표시일 경우
if !$BTEST and !@battleback_enabled
# 현재의 맵의 맵스프라이트를 작성
map_sprite = Spriteset_Map.new
# 필터의 셋트
tone = Tone.new(*TONE_IN_BATTLE)
#슬렛드
Thread.start do
# 필터를 입힘
map_sprite.change_map_tone(tone,TONE_DURATION)
Thread.exit
end
end
# 호출
trcs11_main
# 맵스프라이트가 존재하는 경우
if map_sprite != nil
#맵스프라이트를 해방
map_sprite.dispose
end
end
end
#==============================================================================
# ■ Interpreter (분할정의1)
#==============================================================================
class Interpreter
#--------------------------------------------------------------------------
# ○ 인크루드
#--------------------------------------------------------------------------
include TRCS11_BATTLEBACK_DISABLE
#--------------------------------------------------------------------------
# ○ 맵의 설정을 변경
#--------------------------------------------------------------------------
alias trcs11_command_204 command_204
def command_204
# 전투중에 배경을 변경하는 경우
if $game_temp.in_battle and @parameters[0] == 2
# 전투벼경표시플러그를 셋트
$scene.battleback_enabled = true
end
# 호출
return trcs11_command_204
end
end
<사용법>
TRCS.12
「"전투배경확장" ver1.00 매뉴얼」 2005.09.04 h15
by NO (해석 - CRZ쥬논)
http://chobi.net/~no/
------------------
<<개요>>
1,전투시의 배경을 인카운터시의 맵으로 합니다.
・이때 맵에 필터를 사용가능합니다.
2,위상태를 스취치로 변경가능
・통상전투는 배경、이벤트전투는 배틀백그래픽으로 하는 것도 가능
・이벤트커맨드「맵의 설정변경」에도 대응。
------------------
<<사용전에>>
1,스위치의 준비
・아래 이름으로 만든 스위치를 준비。ID는 뭐든 상관없음
스위치명:[전투배경표시] (스크립트도 전투배경표시 로 바꿔놓아야합니다)
2, 스크립트 의 설정항목을 바꿔써주세요
------------------
<<사용방법>>
・스위치[전투배경표시]가 ON 이 되면、배틀백그래픽을 표시
・스위치[전투배경표시]が OFF 되면、인카운더 시 맵표시
・이벤트커맨드「맵의 설정변경」이 실행된 경우는 설정된 배틀백그래픽으로 자동적변경
-------------------
<<사양 -본스크립트->>
・전투중「이벤트커맨드「맵의 설정변경」이 실행된 경우 설정된 배틀백그래픽으로 자동변경
이므로 배틀백그래픽변경이외의 용도로 이벤트커맨드「맵의 설정변경」을 실행한 경우는、
예기치않은 동작이 발상핼 가능성이 있음
전투중 포그그래픽을 변경하는 일은 없다고 생각하지만 어쩔 수 없습니다.
==========================================================
CBS-R1(사이드뷰)에 적용해보려했으나...
....그러나 CBS-R1에는 적용되지 않았다(..털썩;;)
역시 신_배틀 이 변경되는 것이라 그런것인가...
배틀백그래픽이 없이 맵상에서 전투를 하게 되는 경우에 쓸만하겠습니다만...
사이드뷰나 화려한 전투애니가 없으면 오히려 지저분해 보이겠습니다.....
그림은 저~~~~~밑에 블루다운님의 글을 참고하세요.
요샌 액알이 많아서 뭐 쓸일이 없겠군.
제가 쓸까하기도 하고 세루군이 사용법을 모르겠다는 꼬릿말이 있어서 그냥 해석해봤슴다..