閲覧数 378 推奨数 0 コメント 0
?

Shortcut

Prev前へ 書き込み

Next次へ 書き込み

Larger Font Smaller Font 上へ 下へ Go comment 印刷 修正 削除
?

Shortcut

Prev前へ 書き込み

Next次へ 書き込み

Larger Font Smaller Font 上へ 下へ Go comment 印刷 修正 削除
>저가 스크린샷 대로 해봤는데..스크린샷처럼..
>빈공간이 생기네요..ㅠ.ㅠ
>키보드를 ↑ 이거 한번만 눌러보면 없어지는데..
>세이브나...게임종료 버튼만 눌렀다가 esc를 눌르면..저렇게 빈 공간이 생김니다..
>어떻게 처리 해야 하나요??
>
>저가 처리한 스크립트도 올리겠습니다
>
>#==============================================================================
># ■ Scene_Menu
>#------------------------------------------------------------------------------
>#  메뉴 화면의 처리를 실시하는 클래스입니다.
>#==============================================================================
>
>class Scene_Menu
>  #--------------------------------------------------------------------------
>  # ● 오브젝트 초기화
>  #     menu_index : 커멘드의 커서 초기 위치
>  #--------------------------------------------------------------------------
>  def initialize(menu_index = 0)
>    @menu_index = menu_index
>  end
>  #--------------------------------------------------------------------------
>  # ● 메인 처리
>  #--------------------------------------------------------------------------
>  def main
>    # 커멘드 윈도우를 작성
>    s1 = $data_system.words.item
>    s2 = $data_system.words.equip
>    s3 = "세이브"
>    s4 = "게임 종료"
>    @command_window = Window_Command.new(160, [s1, s2, s3, s4])
>    @command_window.index = @menu_index
>    # 파티 인원수가 0 명의 경우
>    if $game_party.actors.size == 0
>      # 아이템, 스킬, 장비, 스테이터스를 무효화
>      @command_window.disable_item(0)
>      @command_window.disable_item(1)
>    end
>    # 세이브 금지의 경우
>    if $game_system.save_disabled
>      # 세이브를 무효로 한다
>      @command_window.disable_item(2)
>    end
>    # 플레이 시간 윈도우를 작성
>    @playtime_window = Window_PlayTime.new
>    @playtime_window.x = 0
>    @playtime_window.y = 224
>    # 보수 윈도우를 작성
>    @steps_window = Window_Steps.new
>    @steps_window.x = 0
>    @steps_window.y = 320
>    # 골드 윈도우를 작성
>    @gold_window = Window_Gold.new
>    @gold_window.x = 0
>    @gold_window.y = 416
>    # 스테이터스 윈도우를 작성
>    @status_window = Window_MenuStatus.new
>    @status_window.x = 160
>    @status_window.y = 0
>    # 트란지션 실행
>    Graphics.transition
>    # 메인 루프
>    loop do
>      # 게임 화면을 갱신
>      Graphics.update
>      # 입력 정보를 갱신
>      Input.update
>      # 프레임 갱신
>      update
>      # 화면이 바뀌면 루프를 중단
>      if $scene != self
>        break
>      end
>    end
>    # 트란지션 준비
>    Graphics.freeze
>    # 윈도우를 해방
>    @command_window.dispose
>    @playtime_window.dispose
>    @steps_window.dispose
>    @gold_window.dispose
>    @status_window.dispose
>  end
>  #--------------------------------------------------------------------------
>  # ● 프레임 갱신
>  #--------------------------------------------------------------------------
>  def update
>    # 윈도우를 갱신
>    @command_window.update
>    @playtime_window.update
># 커멘드 윈도우가 액티브의 경우: update_command 를 부른다
>if @command_window.active
>  update_command
>      return
>    end
>    # 스테이터스 윈도우가 액티브의 경우: update_status 를 부른다
>    if @status_window.active
>      update_status
>      return
>    end
>  end
>  #--------------------------------------------------------------------------
>  # ● 프레임 갱신 (커멘드 윈도우가 액티브의 경우)
>  #--------------------------------------------------------------------------
>  def update_command
>    # B 버튼이 밀렸을 경우
>    if Input.trigger?(Input::B)
>      # 캔슬 SE 를 연주
>      $game_system.se_play($data_system.cancel_se)
>      # 맵 화면으로 전환해
>      $scene = Scene_Map.new
>      return
>    end
>    # C 버튼이 밀렸을 경우
>    if Input.trigger?(Input::C)
>      # 파티 인원수가 0 명으로, 세이브, 게임 종료 이외의 커멘드의 경우
>      if $game_party.actors.size == 0 and @command_window.index < 4
>        # 버저 SE 를 연주
>        $game_system.se_play($data_system.buzzer_se)
>        return
>      end
>      # 커멘드 윈도우의 커서 위치에서 분기
>      case @command_window.index
>      when 0  # 아이템
>        # 결정  SE 를 연주
>        $game_system.se_play($data_system.decision_se)
>        # 아이템 화면으로 전환해
>        $scene = Scene_Item.new
>      when 1  # 장비
>        # 결정 SE 를 연주
>        $game_system.se_play($data_system.decision_se)
>        # 스테이터스 윈도우를 액티브하게 한다
>        @command_window.active = false
>        @status_window.active = true
>        @status_window.index = 0
>      when 2  # 세이브
>        # 세이브 금지의 경우
>        if $game_system.save_disabled
>          # 버저 SE 를 연주
>          $game_system.se_play($data_system.buzzer_se)
>          return
>        end
>        # 결정 SE 를 연주
>        $game_system.se_play($data_system.decision_se)
>        # 세이브 화면으로 전환해
>        $scene = Scene_Save.new
>      when 3  # 게임 종료
>        # 결정 SE 를 연주
>        $game_system.se_play($data_system.decision_se)
>        # 게임 종료 화면으로 전환해
>        $scene = Scene_End.new
>      end
>      return
>    end
>  end
>  #--------------------------------------------------------------------------
>  # ● 프레임 갱신 (스테이터스 윈도우가 액티브의 경우)
>  #--------------------------------------------------------------------------
>  def update_status
>    # B 버튼이 밀렸을 경우
>    if Input.trigger?(Input::B)
>      # 캔슬 SE 를 연주
>      $game_system.se_play($data_system.cancel_se)
>      # 커멘드 윈도우를 액티브하게 한다
>      @command_window.active = true
>      @status_window.active = false
>      @status_window.index = -1
>      return
>    end
>    # C 버튼이 밀렸을 경우
>    if Input.trigger?(Input::C)
>      # 커멘드 윈도우의 커서 위치에서 분기
>      case @command_window.index
>      when 1  # 장비
>        # 결정 SE 를 연주
>        $game_system.se_play($data_system.decision_se)
>        # 장비 화면으로 전환해
>        $scene = Scene_Equip.new(@status_window.index)
>        when 2  # 스테이터스
>        # 결정 SE 를 연주
>        $game_system.se_play($data_system.decision_se)
>        # 스테이터스 화면으로 전환해
>        $scene = Scene_Status.new(@status_window.index)
>      end
>      return
>    end
>  end
>end
>
>
>이게 저가 해낸 것입니다..
>어떻게 처리 해야 하나요??




아시다 시피, 윈도우 아래에 있는 검은색은 어쩔수 없습니다.
그리고 커맨드에 이상이 오는 것은, 커맨드의 기초가 샐랙터블인데,
그 상태에서 열이 없는 부분에 소환을 시키면 자동생성이 되버리기 때문에
생기는 현상입니다.

수정법은 간단합니다.

Scene_Item, Equip, Status, Skill, End 에서, update 메소드에서,
if Input.trigger?(Input::B) 라는 것이 있을것입니다.
그 아래에 $scene = Scene_Menu.new(랜덤) 이라고 적혀 있을 겁니다.
Item은 0, Equip은 1, 세이브는 2, End 는 3.....이런식으로 교체해 주시면 됩니다.
그 외에 Status나 Skill은 Map 같은것으로 전환해 주세요.
(맵으로 전환하는 방법은 $scene = Scene_Map.new 이라고 적으시면 됩니다.)
?

  1. 쯔꾸르 mv 게임을 apk 파일로 변환했는데...

    Date2023.01.14 By박하맛 Views2184
    Read More
  2. 쯔꾸르 젖소이야기 결혼 방법좀 알려주세요...

    Date2021.12.20 By백지씨 Views3649
    Read More
  3. apk포팅 승인 어케 하나요?

    Date2021.11.29 Bygame메이커xp Views2083
    Read More
  4. Yanfly님의 Action Sequence Pack 질문드립니다

    Date2021.07.15 ByNeuromancer Views2614
    Read More
  5. 싸게 MV 를 먼저? 아니면 돈을 더 들어서라도 MZ?

    Date2021.07.06 ByXatra Views2831
    Read More
  6. RMMV - 스탯창과 대화창 변견 관련 질문입니다. (초보입니다 도움좀 주세요 ㅜㅜ)

    Date2021.01.22 Byscribble Views2432
    Read More
  7. 아오오니를 하는 사람인데요 질문 두가지가 있어요

    Date2021.01.16 By오니개무서워 Views2503
    Read More
  8. 재밌는게임

    Date2020.12.07 Byland_tnt Views2276
    Read More
  9. c언어 질문

    Date2020.11.10 By세종기항19 Views2650
    Read More
  10. 코딩 질문

    Date2020.11.08 By세종기항19 Views2529
    Read More
  11. 혹시나 물어보는데

    Date2020.11.07 By드래곤규 Views2555
    Read More
  12. 오픈보 게임 더블드래곤 리로디드 얼티네이트에 대해 궁금

    Date2020.09.09 By이부닝 Views2065
    Read More
  13. 상태이상 확률 결정

    Date2020.09.02 By스트레이보우 Views1816
    Read More
  14. 다음 인디사이드 제작대회는 언제쯤 열릴까요?

    Date2020.05.23 ByWOONAALAA Views1834
    Read More
  15. xp로 제작된 어플 실행자체가 안된다는 분이 있습니다.(제생각엔 apk로 변환하는 과정에서 버전자체가 낮은 것 같습니다)

    Date2020.05.04 By라엔 Views2282
    Read More
  16. apk 포팅하는데 게임 이름이 필요합니다 뜨는데

    Date2020.05.03 Bykashu Views2162
    Read More
  17. 쯔꾸르VX Ace렉먹음 도와주세요...

    Date2020.03.22 By랖랖 Views2811
    Read More
  18. 안녕하세요

    Date2020.02.14 By청월령 Views1751
    Read More
  19. 포팅 중 '게임 이름이 필요합니다' 오류

    Date2020.02.11 By아이비스 Views1694
    Read More
  20. RPGMV 거리 추적

    Date2020.01.19 By정욱 Views1719
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 442 Next
/ 442