질문과 답변

RMVXA
2017.10.01 15:09

스크립트 에러

조회 수 211 추천 수 0 댓글 1
Atachment
첨부 '1'
Extra Form


아래 스크립트를 넣은 게임을 실행했을 때 전에는 잘만 되다 갑자기 이런 오류가 떴습니다.


dkdk.PNG





 #==============================================================================

# ** TitleManagerEx (RPG Maker VX Ace)

#==============================================================================

# Name       : TitleManagerEx

# Author     : 러닝은빛(biud436)

# Date       : 2015.09.07

# Version    : 1.0

# Usage      : DataManager.ending_setup("엔딩1")

#==============================================================================

# ** Tool

#------------------------------------------------------------------------------

# 타이틀에서 불러올 그래픽 파일들을 설정합니다

#==============================================================================

module Tool

  SYS = load_data("Data/System.rvdata2")

  RESOURCE = {

  #--------------------------------------------------------------------------

  # * 해당 엔딩에 맞는 타이틀 파일을 설정해주세요(Title1, Title2)

  # "엔딩명" => ["타이틀1의 파일명","타이틀2의 파일명","BGM명"],

  #--------------------------------------------------------------------------  

  "기본타이틀" => [SYS.title1_name,SYS.title2_name,SYS.title_bgm],

  "배드엔딩" => ["그림2","","Dungeon2"],

  "트루엔딩" => ["그림1","그림6","Field3"],

  "노멀엔딩-하나" => ["그림1","그림5","Dungeon2"],

  "노멀엔딩-재수" => ["그림1","","Dungeon2"], 

  #-------------------------------------------------------------------------- 

  }

end

 

#==============================================================================

# ** Position (Add-On)

#==============================================================================

module Position

  

  # 스페셜 맵의 ID

  MAP_ID = 10

  

  # 플레이어의 시작 X

  X = 6

  

  # 플레이어의 시작 Y

  Y = 11 

  

  # 이동 좌표

  RESULT = [MAP_ID,X,Y]

end

 

#==============================================================================

# ** DataManager

#------------------------------------------------------------------------------

# 엔딩값을 temp.dat 파일로 저장합니다

#==============================================================================

module DataManager

  #--------------------------------------------------------------------------

  # * 엔딩을 설정합니다

  #--------------------------------------------------------------------------    

  def self.ending_setup(string)

    begin

      File.open("temp.dat","wb") do |file|

        Marshal.dump(publish_key(string),file)

      end

    rescue

      return false

    end

  end

  #--------------------------------------------------------------------------

  # * 파일을 로드합니다

  #--------------------------------------------------------------------------    

  def self.load_background

    begin

      File.open("temp.dat","rb") do |file|

        Marshal.load(file)

      end

    rescue

      ending_null

    end

  end

  #--------------------------------------------------------------------------

  # * 엔딩키를 찾을 수 없을 때

  #--------------------------------------------------------------------------    

  def self.ending_null

    ending = {}

    ending[:version] = 0

    ending[:username] = "NULL"

    ending[:n] = Tool::RESOURCE["기본타이틀"]

    ending

  end

  #--------------------------------------------------------------------------

  # * 엔딩키 발급(게임의 버전/사용자의 이름/리소스의 이름)

  #--------------------------------------------------------------------------      

  def self.publish_key(string)

    begin

      ending = {}

      ending[:version] = 1000

      ending[:username] = ENV["USERNAME"]

      ending[:n] = Tool::RESOURCE[string]

      ending

    rescue

      ending_null    

    end

  end

end

 

#==============================================================================

# ** Header

#------------------------------------------------------------------------------

# 엔딩값을 외부파일에서 불러옵니다

#==============================================================================

module Header

  @@background = nil

  #--------------------------------------------------------------------------

  # * 엔딩키값을 로드합니다

  #--------------------------------------------------------------------------    

  def self.load

    f = DataManager.load_background

    return f[:version],f[:username],f[:n]

  end

  #--------------------------------------------------------------------------

  # * 배경화면 정보를 설정합니다

  #--------------------------------------------------------------------------    

  def self.choose_background?

    if [load[0],load[1]] == [1000,ENV["USERNAME"]]

      load_background(load[2])

      return true

    else

      @@background = Tool::RESOURCE["기본타이틀"]

      return false

    end

  end 

  #--------------------------------------------------------------------------

  # * 배경화면을 불러옵니다

  #--------------------------------------------------------------------------    

  def self.load_background(set)

    @@background = set

  end

  #--------------------------------------------------------------------------

  # * 배경화면을 배포합니다

  #--------------------------------------------------------------------------    

  def self.export_background

    return @@background

  end

end

 

#==============================================================================

# ** Scene_Title

#------------------------------------------------------------------------------

# create_background 메소드를 오버라이딩 합니다

#==============================================================================

class Scene_Title < Scene_Base

  #--------------------------------------------------------------------------

  # * 배경화면을 생성합니다

  #--------------------------------------------------------------------------    

  def create_background

    @sprite1 = Sprite.new

    @sprite2 = Sprite.new

    choose_background

    center_sprite(@sprite1)

    center_sprite(@sprite2)

  end  

  #--------------------------------------------------------------------------

  # * 배경화면을 선택합니다

  #--------------------------------------------------------------------------    

  def choose_background

    if Header.choose_background?

      @sprite1.bitmap = Cache.title1(Header.export_background[0])

      @sprite2.bitmap = Cache.title2(Header.export_background[1])          

    else 

      # 엔딩키를 찾을 수 없으면 기본 배경화면을 생성합니다

      @sprite1.bitmap = Cache.title1(Header.export_background[0])

      @sprite2.bitmap = Cache.title2(Header.export_background[1])

    end

  end

  #--------------------------------------------------------------------------

  # * 배경음악을 변경합니다

  #--------------------------------------------------------------------------    

  def play_title_music

    if Header.choose_background?

      $data_system.title_bgm.name = Header.export_background[2]

    end    

    $data_system.title_bgm.play

    RPG::BGS.stop

    RPG::ME.stop

  end  

end

 

#==============================================================================

# ** Header (Add-On)

#==============================================================================

module Header

  def self.special_menu?

    [load[0],load[1]] == [1000,ENV["USERNAME"]]

  end

end

 

#==============================================================================

# ** DataManager (Add-On)

#==============================================================================

module DataManager

  def self.setup_special_game(*args)

    create_game_objects

    $game_party.setup_starting_members

    $game_map.setup(args[0])

    $game_player.moveto(args[1], args[2])

    $game_player.refresh

    Graphics.frame_count = 0

  end  

end

 

#==============================================================================

# ** Window_TitleCommand (Add-On)

#==============================================================================

class Window_TitleCommand

  def alignment

    return 1

  end

  def make_command_list

    add_command(Vocab::new_game, :new_game)

    add_command(Vocab::continue, :continue, continue_enabled)

    add_command("아무도 알지 못했던 비밀",:special_menu) if Header.special_menu?

    add_command(Vocab::shutdown, :shutdown)

  end  

end

 

#==============================================================================

# ** Scene_Title (Add-On)

#==============================================================================

class Scene_Title

  alias thou_create_command_window create_command_window

  def create_command_window

    thou_create_command_window

    set_menu if Header.special_menu?

  end

  def set_menu

    @command_window.set_handler(:special_menu, method(:special_menu))

  end

  def special_menu

    DataManager.setup_special_game(*Position::RESULT)

    close_command_window

    fadeout_all

    $game_map.autoplay

    SceneManager.goto(Scene_Map)

  end

end


 

 

 

 

 도와주세요 고수님들 ㅠㅠ

 

 

 

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

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

Comment '1'
  • profile
    러닝은빛 2017.10.03 17:22
    omake와 충돌하는 것 같은데 해당 스크립트가 있어야 확인이 가능할 것 같습니다. 첨부한 스크립트에는 empty? 메소드 자체가 사용되지 않았습니다.

List of Articles
종류 분류 제목 글쓴이 날짜 조회 수
공지 묻고 답하기 가이드 습작 2014.06.14 12387
플러그인 사용 RMMV SuperToolsEngine 플러그인이 적용이 안되요 4 file 서하쨩 2024.02.21 27
플러그인 사용 RMMV 대사가 한글자 씩 출력될 때마다 소리가 나게 어떻게 하나요? 2 참치캔통 2024.02.21 65
이벤트 작성 RMMV 아이템을 사용하면 숙소로 복귀하는 이벤트 5 file pokapoka 2024.02.19 30
이벤트 작성 RMMV 보트가 움직여지지 않습니다. 3 file pokapoka 2024.02.19 14
이벤트 작성 RMMV 텍스트의 위치 및 행렬을 옮기고 싶습니다 참치캔통 2024.02.11 55
이벤트 작성 RMMZ 일반 이벤트가 두번 이상 확인해야 진행됩니다. 1 file blahdi 2024.02.11 28
스크립트 추천 RMVXA 변수를 화면에 띄우고 싶습니다. 1 홍홍이1 2024.02.09 29
기타 RMVXA 원샷같은 시스템 메세지창 띄우기 2 file 외눈요리 2024.02.09 58
턴제 전투 RMMV 턴제전투에서 스킥 선택창 어떻게 만드나요 1 ekdtbd 2024.02.08 23
스크립트 사용 RMMV 마우스 좌클로 맵 이동 막는 방법 질문 4 알만툴조아용 2024.02.08 31
기타 RMMZ 그림을 클릭하면 이벤트 발생 1 Sian 2024.02.07 21
스크립트 추천 RMVXA 미니게임을 하는동안 위에 점수판을 띄워주고싶은데 방법이 없을까요? 홍홍이1 2024.02.07 15
기본툴 사용법 RMMV 메세지에서 %1, %2, %3은 무엇을 나타내는 건가요? 2 file pokapoka 2024.02.05 27
기타 RMMV 도트를 그리고 다음 툴에 적용했는데 너무 커요 1 file 알송 2024.02.02 40
에러 해결 RMXP BGM을 발견못하는 오류 file wombat 2024.01.31 19
게임 번역 RMMV 게임 한글패치 자동으로 번역하는게 아니라 수동으로 번역하고 싶어요 알초자 2024.01.30 25
한글 패치 RM2k RM2k의 스팀 한글패치 다크크리에이터 2024.01.27 22
플러그인 추천 RMMV 타이틀의 그림이 움직이게 하는법을 알려주세요 1 file 알초자 2024.01.27 75
이벤트 작성 RMMV 이벤트 위치 설정에 관하여 1 pokapoka 2024.01.25 26
이벤트 작성 RMMZ 자동실행 관련 질문 3 Sian 2024.01.20 53
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ... 516 Next
/ 516