루비의 신화님께서 요청하신 시작메뉴 수정, 추가, 삭제 강좌입니다.
시작메뉴에 관련된 모든 부분은 Scene_Title에 있습니다.
그러니 그 부분만 고치면 되겠지요.
#--------------------------------------------------------------------
# Scene_Title의 main부분입니다. 36번째 줄.
#--------------------------------------------------------------------
# 커멘드 윈도우를 작성
s1 = "뉴 게임"
s2 = "콘티 뉴"
s3 = "슛다운"
@command_window = Window_Command.new(192, [s1, s2, s3])
@command_window.back_opacity = 160
@command_window.x = 320 - @command_window.width / 2
@command_window.y = 288
#--------------------------------------------------------------------
쭉 내리시거나 Ctrl + F로 "커멘드 윈도우"를 검색하시면 되겠지요.
위의 s1, s2, s3 변수의 내용을 바꾸시면 수정이 됩니다.
만약 s4라는 변수에 "제작자"라는 것을 선언하여 Window_Command.new에 s4를 추가하면 제작자라는 부분이 생깁니다. 소스는 다음과 같습니다.
#--------------------------------------------------------------------
# Scene_Title의 main부분입니다.36번째 줄.
#--------------------------------------------------------------------
# 커멘드 윈도우를 작성
s1 = "뉴 게임"
s2 = "콘티 뉴"
s3 = "슛다운"
s4 = "제작자"
@command_window = Window_Command.new(192, [s1, s2, s3, s4])
@command_window.back_opacity = 160
@command_window.x = 320 - @command_window.width / 2
@command_window.y = 288
#--------------------------------------------------------------------
Window_Command.new의 변수를 추가하거나 삭제하면 수정이 되지요.
이 때, s1부터 끝까지의 순서는 0, 1, 2 ... 이런 식으로 설정됩니다.
이 순서를 잘 기억하시고 다음으로 넘어가죠.
#---------------------------------------------------------------------
# Scene_Title의 main부분입니다. 53번째 줄.
#---------------------------------------------------------------------
# 콘티 뉴가 유효한 경우, 커서를 콘티 뉴에 맞춘다
# 무효인 경우, 콘티 뉴의 문자를 그레이 표시로 한다
if @continue_enabled
@command_window.index = 1
else
@command_window.disable_item(1)
end
#---------------------------------------------------------------------
만약 로드하는 버튼의 위치가 바뀌어서 맨 처음(0)이거나 3번째(2)에 위치해있다면, 번호를 바꾸세요.
방금 말씀드렸던 0, 1, 2의 순서에 따라 번호를 바꾸시면 됩니다.
지금 설정된 숫자 1은 "컨티뉴"가 2번째에 있기 때문에 1로 한겁니다.
index, disable_item(x) 이 두가지를 다 바꾸시고, 다음으로 넘어갑니다.
#-------------------------------------------------------------------
# 프레임 갱신부분입니다. 88번째 줄.
#-------------------------------------------------------------------
def update
# 커멘드 윈도우를 갱신
@command_window.update
# C 버튼이 밀렸을 경우
if Input.trigger?(Input::C)
# 커멘드 윈도우의 커서 위치에서 분기
case @command_window.index
when 0 # 뉴 게임
command_new_game
when 1 # 콘티 뉴
command_continue
when 2 # 슛다운
command_shutdown
end
end
end
#--------------------------------------------------------------------
가장 중요한 부분이군요. C버튼(Enter)이 눌리면 커서 위치를 알아내어 해당 함수를 실행하는 부분입니다.
command_new_game, command_continue, command_shutdown 함수는 프레임 갱신 함수 바로 아래에 쭈욱 설정되어 있습니다.
순서를 수정하셨다면 그에 맞추어서 이 부분도 고치셔야 하지요.
만약 뉴 게임, 컨티뉴, 슛다운, 제작자 순서라면 소스는 다음과 같이 됩니다.
#-------------------------------------------------------------------
# 프레임 갱신부분입니다. 88번째 줄.
#-------------------------------------------------------------------
def update
# 커멘드 윈도우를 갱신
@command_window.update
# C 버튼이 밀렸을 경우
if Input.trigger?(Input::C)
# 커멘드 윈도우의 커서 위치에서 분기
case @command_window.index
when 0 # 뉴 게임
command_new_game
when 1 # 콘티 뉴
command_continue
when 2 # 슛다운
command_shutdown
when 3 # 제작자
command_credit
end
end
end
#--------------------------------------------------------------------
제작자를 실행하는 command_credit는 Scene_Title클래스 맨 아래에 정의하시면 됩니다.
정말 간단한 제작자 함수를 맨 아래에 넣어보세요. 전 정말 간단하게 이렇게 했습니다 -_-;
#---------------------------------------------------------------------
# 제작자 부분, 맨 아래에 넣으세요.
#---------------------------------------------------------------------
def command_credit
p "데카가 만들었다."
end
#---------------------------------------------------------------------
넣어보시기 바랍니다 -_-;
- 강좌 끝 -
시작메뉴에 관련된 모든 부분은 Scene_Title에 있습니다.
그러니 그 부분만 고치면 되겠지요.
#--------------------------------------------------------------------
# Scene_Title의 main부분입니다. 36번째 줄.
#--------------------------------------------------------------------
# 커멘드 윈도우를 작성
s1 = "뉴 게임"
s2 = "콘티 뉴"
s3 = "슛다운"
@command_window = Window_Command.new(192, [s1, s2, s3])
@command_window.back_opacity = 160
@command_window.x = 320 - @command_window.width / 2
@command_window.y = 288
#--------------------------------------------------------------------
쭉 내리시거나 Ctrl + F로 "커멘드 윈도우"를 검색하시면 되겠지요.
위의 s1, s2, s3 변수의 내용을 바꾸시면 수정이 됩니다.
만약 s4라는 변수에 "제작자"라는 것을 선언하여 Window_Command.new에 s4를 추가하면 제작자라는 부분이 생깁니다. 소스는 다음과 같습니다.
#--------------------------------------------------------------------
# Scene_Title의 main부분입니다.36번째 줄.
#--------------------------------------------------------------------
# 커멘드 윈도우를 작성
s1 = "뉴 게임"
s2 = "콘티 뉴"
s3 = "슛다운"
s4 = "제작자"
@command_window = Window_Command.new(192, [s1, s2, s3, s4])
@command_window.back_opacity = 160
@command_window.x = 320 - @command_window.width / 2
@command_window.y = 288
#--------------------------------------------------------------------
Window_Command.new의 변수를 추가하거나 삭제하면 수정이 되지요.
이 때, s1부터 끝까지의 순서는 0, 1, 2 ... 이런 식으로 설정됩니다.
이 순서를 잘 기억하시고 다음으로 넘어가죠.
#---------------------------------------------------------------------
# Scene_Title의 main부분입니다. 53번째 줄.
#---------------------------------------------------------------------
# 콘티 뉴가 유효한 경우, 커서를 콘티 뉴에 맞춘다
# 무효인 경우, 콘티 뉴의 문자를 그레이 표시로 한다
if @continue_enabled
@command_window.index = 1
else
@command_window.disable_item(1)
end
#---------------------------------------------------------------------
만약 로드하는 버튼의 위치가 바뀌어서 맨 처음(0)이거나 3번째(2)에 위치해있다면, 번호를 바꾸세요.
방금 말씀드렸던 0, 1, 2의 순서에 따라 번호를 바꾸시면 됩니다.
지금 설정된 숫자 1은 "컨티뉴"가 2번째에 있기 때문에 1로 한겁니다.
index, disable_item(x) 이 두가지를 다 바꾸시고, 다음으로 넘어갑니다.
#-------------------------------------------------------------------
# 프레임 갱신부분입니다. 88번째 줄.
#-------------------------------------------------------------------
def update
# 커멘드 윈도우를 갱신
@command_window.update
# C 버튼이 밀렸을 경우
if Input.trigger?(Input::C)
# 커멘드 윈도우의 커서 위치에서 분기
case @command_window.index
when 0 # 뉴 게임
command_new_game
when 1 # 콘티 뉴
command_continue
when 2 # 슛다운
command_shutdown
end
end
end
#--------------------------------------------------------------------
가장 중요한 부분이군요. C버튼(Enter)이 눌리면 커서 위치를 알아내어 해당 함수를 실행하는 부분입니다.
command_new_game, command_continue, command_shutdown 함수는 프레임 갱신 함수 바로 아래에 쭈욱 설정되어 있습니다.
순서를 수정하셨다면 그에 맞추어서 이 부분도 고치셔야 하지요.
만약 뉴 게임, 컨티뉴, 슛다운, 제작자 순서라면 소스는 다음과 같이 됩니다.
#-------------------------------------------------------------------
# 프레임 갱신부분입니다. 88번째 줄.
#-------------------------------------------------------------------
def update
# 커멘드 윈도우를 갱신
@command_window.update
# C 버튼이 밀렸을 경우
if Input.trigger?(Input::C)
# 커멘드 윈도우의 커서 위치에서 분기
case @command_window.index
when 0 # 뉴 게임
command_new_game
when 1 # 콘티 뉴
command_continue
when 2 # 슛다운
command_shutdown
when 3 # 제작자
command_credit
end
end
end
#--------------------------------------------------------------------
제작자를 실행하는 command_credit는 Scene_Title클래스 맨 아래에 정의하시면 됩니다.
정말 간단한 제작자 함수를 맨 아래에 넣어보세요. 전 정말 간단하게 이렇게 했습니다 -_-;
#---------------------------------------------------------------------
# 제작자 부분, 맨 아래에 넣으세요.
#---------------------------------------------------------------------
def command_credit
p "데카가 만들었다."
end
#---------------------------------------------------------------------
넣어보시기 바랍니다 -_-;
- 강좌 끝 -