메뉴창에 설명띄우는방법.

by 협객 posted May 20, 2005
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

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


만드신 Scene_Menu클래스를 올려주시면 직접 손봐드릴 수 있습니다만.

일단 필요한 부분만 말씀드리겠습니다.

메인 메소드안에 넣습니다.
    @help_window = Window_Help.new
    @help_window.set_text("아이템창을 불러옵니다",1)

바로 헬프윈도우의 생성입니다.
그리고 끝에
@help_window.dispose
넣어줍니다. 헬프윈도우의 파기입니다.

업데이트에서
@help_window.update
넣어주는 것 잊지 마세요.

이제 여기서부터가 중요합니다.
메뉴에서 커서가 움직이면 헬프 윈도우의 텍스트가 바뀌어야 하니까요.
텍스트 바꾸는 명령은 이렇게 텍스트를 세팅해주는겁니다.
    @help_window.set_text("아이템창을 불러옵니다",1)

이제 조건을 걸어줘야지요. 언제 텍스트를 바꾸는가.
당연히 커서가 움직였을 때입니다.

case @command_window.index
로 커맨드 윈도우의 인덱스로 분기해줍니다.
"일부"만 보여주셨으니 저도 "일부"만 예를 들겠습니다.

case @command_window.index
      when 0  # 아이템
    @help_window.set_text("아이템창을 불러옵니다",1)

이제 이것을 어디에 넣어야 할까.
키가 눌렸을 경우에만 세팅해주도록, 위, 아래 키가 눌렸을 경우로 분기해줍니다.

Input을 조건으로 합니다. UP, DOWN을 조건으로. (XMS링메뉴 참조)
업데이트에 넣을지 업데이트커맨드에 넣을지는 실험을 통해 어느 쪽이 더 나은지 판단하세요.

이해가 안 되시면 단지 경험부족이라서 그런 것이니 그냥 해당스크립트 전체를 올리시길. ㅡ.ㅡ;;;
별로 많이 고쳐야 하는것도 아니고.

스샷의 경우는

    if Input.press?(Input::UP) or  Input.press?(Input::DOWN)
          case @함대_window.index
      when 0  #함대 정보
        @help_window.set_text("함대의 정보를 표시합니다",1)
      when 1  #함선 정보
        @help_window.set_text("함선의 정보를 표시합니다",1)
      when 2  #대열 변경
        @help_window.set_text("함대의 대열을 편성합니다",1)
      when 3  #함선 처분
        @help_window.set_text("함선을 폐기합니다",1)
      when 4  #적하 정보
        @help_window.set_text("각함선의 적하정보를 표시합니다",1)
      when 5  #적하 일람
        @help_window.set_text("적하를 일람합니다",1)
      when 6  #적하 편성
      @help_window.set_text("각함선의 적하를 편성합니다",1)
      return
      end
    end

이렇게 해준 것이지요. THDO스크립트에 말씀하신 것을 적용해보았습니다.
무엇을 넣을지는 다 말씀해드린 셈이니, 이제 어디에 넣느냐가 문제지요?
그걸 모른다면 스크립트 전체를 올리셔야지요. ㅡ.ㅡ;;;;

THDO스크립트의 경우 링메뉴와 서브메뉴를 같이 쓰기 때문에, 위의 스크립트만 적재적소에 추가하는 것으로 땡이었습니다. 이미 다른 부분은 클래스에 구비되어 있거든요. 헬프윈도우등...
>
>
>
>    헬프 윈도우를 제가 직접 만든 메뉴에서 띄워서 메뉴에 대한 설명을 했으면 좋겠는데요..
>
>
>    방금 이리저리 해봤지만.. 안되더군요..... 혹시...
>
>
>    스크립트 잘 만지시는분.. 해결 부탁드립니다.....
>
>    
>    헬프윈도우를 띄워서 각 선택에 맞는 설명을 띄울수 있는 방법...
>
>
>
>헬프 윈도우를 사용하고 싶은 스크립트 일부를 올립니다.
>
>    # 커멘드 윈도우를 작성
>    s1 = "ITEM"
>    s2 = "STATUS"
>    s3 = "SKILL"
>    s4 = "EQUIP"
>    s5 = "SAVE"
>    s6 = "EXIT"
>    @command_window = Window_Command.new(192, [s1, s2, s3, s4, s5, s6])
>    @command_window.x = 320 - @command_window.width / 2
>    @command_window.y = 240 - @command_window.height / 2
>
>저기서 s1 에 선택칸이 있으면 헬프 윈도우에 아이템창을 불러옵니다. 라던지.. 그런
>
>것을하고 싶은데.....