지난 서버 롤백 때 날아가서 다시 올립니다.
메뉴화면에서 보수(걸음수)창과 플레이시간 창을 치우고, 대신 플레이어에게 '다음 할 일'을 알려주는 창을 넣는 것입니다.
지정변수에 따라 다른 문구를 표시할 수 있습니다. 매우 간단한 수정이지만 초짜인 저는 헤매야 했지요.....ㅋㅋㅋ
질답게시판에서 Lighna 님과 습작 님이 적극 조언해주셨습니다. 감사합니다!
사용법
1) Scene_Menu의 '# 플레이 시간 윈도우를 작성' 부분을 지우거나, x/y 한 축을 999로 해서 멀리 치웁니다.
2) 그 아래 '# 보수 윈도우의 작성' 부분을
@steps_window = Window_NextQuest.new
@steps_window.x = 0
@steps_window.y = 224
로 바꿉니다.
3) 섹션창의 Window_PlayTime 아래에 새 섹션을 추가해 Window_NextQuest로 이름붙이고,
이하 붙여넣기합니다.
#==============================================================================
# ■ Window_NextQuest
#------------------------------------------------------------------------------
# 메뉴 화면에서 다음 해야 할 일을 알려주는 윈도우입니다.
#==============================================================================
class Window_NextQuest < Window_Base
#--------------------------------------------------------------------------
# ● 오브젝트 초기화
#--------------------------------------------------------------------------
def initialize
super(0, 0, 160, 192)
self.contents = Bitmap.new(width - 32, height - 32)
refresh
end
#--------------------------------------------------------------------------
# ● 리프레쉬
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.color = system_color
self.contents.draw_text(4, 0, 150, 32, "해야 할 일")
self.contents.font.color = normal_color
self.contents.font.size = 16
line = []
line_width = 0
text = ""
text2 = ""
bitmap = Bitmap.new(1,1)
case $game_variables[4]
when 0
text = "집으로 올라가자."
when 1
text = "집 안으로 들어가자."
when 2
text = "전화를 받자."
end
for i in text.scan(/./)
rect = bitmap.text_size(i)
if line_width + rect.width > 150
line_width = 0
line.push(text2)
text2 = ""
text2 += i
line_width += rect.width
else
text2 += i
line_width += rect.width
end
end
line.push(text2)
for i in 0...line.size
self.contents.draw_text(4, 25 + 22 * i, 150, 32, line[i])
end
end
end
case $game_variables[4]가 지정변수 ID 넣는 곳입니다.([]안에 변수번호를 넣습니다. 여기서는 0004번 변수)
즉 지정변수가 1일 때, '해야 할 일' 창에 '집으로 올라가자.' 가 표시되고
2일 때 '집 안으로 들어가자.', 3일 때 '전화를 받자.' 가 표시되는 것입니다. 문장이 길어져도 자동줄바꿈이 됩니다. 습작님의 마법주문이 있거든요.
이하로 계속 늘려나가시면 됩니다.
써보시고 혹시 문제 있으면 알려주세요. 다시 확인해보고 썼지만 잘못 썼을 수가 있으니까요... 도움이 되길 바랍니다!