질문과 답변

Extra Form
종류 스크립트 작성

 

필요없는 메뉴를 제거했는데 제가 소지품,저장,종료 이 3가지만 남겨두고 다 지웠거든요? 경로는 맞는데 저장, 종료를 들어가고 다시 나가면 위에 사진처럼 밑에 불필요한 공백이 생깁니다. 처음엔 선택지를 안지웠나 했는데 그건 아니더라고요. 일단 제가 수정한 스크립트를 남겨놓겠습니다. scene_menu 스크립트 입니다.

 

#==============================================================================
# ** Scene_Menu
#------------------------------------------------------------------------------
#  This class performs menu screen processing.
#==============================================================================

class Scene_Menu
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     menu_index : command cursor's initial position
  #--------------------------------------------------------------------------
  def initialize(menu_index = 0)
    @menu_index = menu_index
  end
  #--------------------------------------------------------------------------
  # * Main Processing
  #--------------------------------------------------------------------------
  def main
    # Make command window
    s1 = $data_system.words.item
    s5 = "저장"
    s6 = "종료"
    @command_window = Window_Command.new(180, [s1, s5, s6])
    @command_window.index = @menu_index
    # If number of party members is 0
    if $game_party.actors.size == 0
      # Disable items, skills, equipment, and status
      @command_window.disable_item(0)
      @command_window.disable_item(1)
      @command_window.disable_item(2)
    end
    # If save is forbidden
    if $game_system.save_disabled
      # Disable save
      @command_window.disable_item(4)
    end
    # Make play time window
    @playtime_window = Window_PlayTime.new
    @playtime_window.x = 0
    @playtime_window.y = 224
    # Make steps window
    @steps_window = Window_Steps.new
    @steps_window.x = 0
    @steps_window.y = 320
    # Make gold window
    @gold_window = Window_Gold.new
    @gold_window.x = 0
    @gold_window.y = 416
    # Make status window
    @status_window = Window_MenuStatus.new
    @status_window.x = 160
    @status_window.y = 0
    # Execute transition
    Graphics.transition
    # Main loop
    loop do
      # Update game screen
      Graphics.update
      # Update input information
      Input.update
      # Frame update
      update
      # Abort loop if screen is changed
      if $scene != self
        break
      end
    end
    # Prepare for transition
    Graphics.freeze
    # Dispose of windows
    @command_window.dispose
    @playtime_window.dispose
    @steps_window.dispose
    @gold_window.dispose
    @status_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    # Update windows
    @command_window.update
    @playtime_window.update
    @steps_window.update
    @gold_window.update
    @status_window.update
    # If command window is active: call update_command
    if @command_window.active
      update_command
      return
    end
    # If status window is active: call update_status
    if @status_window.active
      update_status
      return
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when command window is active)
  #--------------------------------------------------------------------------
  def update_command
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Switch to map screen
      $scene = Scene_Map.new
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      # If command other than save or end game, and party members = 0
      if $game_party.actors.size == 0 and @command_window.index < 4
        # Play buzzer SE
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      # Branch by command window cursor position
      case @command_window.index
      when 0  # item
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to item screen
        $scene = Scene_Item.new
      when 1  # save
        # If saving is forbidden
        if $game_system.save_disabled
          # Play buzzer SE
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to save screen
        $scene = Scene_Save.new
      when 2  # end game
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to end game screen
        $scene = Scene_End.new
      end
      return
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when status window is active)
  #--------------------------------------------------------------------------
  def update_status
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Make command window active
      @command_window.active = true
      @status_window.active = false
      @status_window.index = -1
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      # Branch by command window cursor position
      case @command_window.index
      when 1  # skill
        # If this actor's action limit is 2 or more
        if $game_party.actors[@status_window.index].restriction >= 2
          # Play buzzer SE
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to skill screen
        $scene = Scene_Skill.new(@status_window.index)
      when 2  # equipment
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to equipment screen
        $scene = Scene_Equip.new(@status_window.index)
      when 3  # status
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to status screen
        $scene = Scene_Status.new(@status_window.index)
      end
      return
    end
  end
end
 

 

 

 

 

 

 

 

■ 질문전 필독!
  • 질문할 내용이 이 게시판이나 강좌에 이미 있는지 확인합니다.
  • 하나의 게시물에는 하나의 질문만 합니다.
  • 제목은 질문의 핵심 내용으로 작성합니다.
  • 질문 내용은 답변자가 쉽게 이해할 수 있도록 최대한 상세하게 작성합니다.
  • 스크립트의 전문이 필요할 경우 txt 파일 등으로 첨부해 주시기 바랍니다.
  • 답변받은 게시물은 삭제하지 않습니다.
  • 답변이 완료된 경우 해당 답변해주신 분들께 감사의 댓글을 달아줍니다.
    • 처음 오신 분들은 공지 게시물을 반드시 읽어주세요!

※ 미준수시 사전경고 없이 게시물을 삭제합니다.

Comment '3'
  • profile
    노마리(Nomary) 2022.05.10 00:18
    S5, S6 부분들을 S2, S3로 1,2,3 순서에 맞게 바꿔주시면 될 거 같아요!
  • ?
    김빡빡 2022.05.11 21:59
    그래도 안되네요ㅠ 답변 감사합니다...
  • ?
    김빡빡 2022.05.17 22:16
    오류 수정했습니다! 생각보다 복잡했네요...

List of Articles
종류 분류 제목 글쓴이 날짜 조회 수
공지 묻고 답하기 가이드 습작 2014.06.14 12451
RMXP BGM 일주 후 다른 BGM 실행하도록 하는 법 5 조석진 2013.08.21 856
RMXP BGM을 바꿀때 이벤트 또는 액터(주인공)이 속도가 느려져요. 2 Hacker 2010.12.23 713
에러 해결 RMXP BGM을 발견못하는 오류 file wombat 2024.01.31 22
RMXP BGM을 중간에 중단 하려면 어떻게 해야하나요...? 2 꿀호꿈하 2010.09.30 673
RMXP BGM이 바로 재생이 안되내요. 달마야놀자 2012.01.27 2370
RMXP BGM이 안나오네요;; 2 구운닭 2011.11.24 1801
RMXP bgm이안들려요ㅠㅠ 3 쿠키쿠키 2012.06.22 1423
RMXP BGM재생시끊김현상발생합니다 빵테의비밀 2013.08.18 1200
RMXP bgs페이드인 할 수 없나요? 1 CJYG* 2011.07.26 1485
RMXP Blizz - abs 2.84v와, HUD를 호환, Blizz abs 이벤트 기능들을 알고 싶습니다. Nto'ze 2012.06.03 2178
RMXP BlockXP로 암호화 시킨 프로젝트 되살릴수 없나요? 1 우켈켈켈 2012.01.22 3914
RMXP Broad Cast 자바채팅이랑 netplay랑 합치면 한글채팅되나여? 1 김똘식 2010.09.14 1787
에러 해결 RMXP B버튼 (X키 Esc키 키패드0) 이 눌려지지가 않습니다 코발트 2020.03.21 128
RMXP CG 수집 기능을 구현할 수 있을까요? 6 얍얍 2013.10.18 1366
RMXP ctrl+방향키 누르면 통과가 가능 4 조규상 2011.09.17 1726
RMXP DireckX Audio 초기화 실패 2 뭐한거지 2010.09.19 1320
RMXP em 2 na linda 'Syntaxerror'에 대해 아시는 분? 4 bluesu1004 2012.12.31 730
RMXP ESC눌렀을때 나오는 메뉴창에 대해서.... 1 붉은갈색 2013.07.19 768
RMXP ev001이벤트가 쳐다본곳에 통행설정이 불가능한 경우라는 조건 2 CJYG* 2011.11.06 1934
RMXP extraction finished라는 메세지가 뜹니다. 2 짱구야 2010.12.09 1024
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ... 90 Next
/ 90