질문과 답변

RMVXA
2017.10.01 15:09

스크립트 에러

조회 수 214 추천 수 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 13227
RMMV 스크립트 명령 수행이 심각하게 느린데 이유가 뭘까요 5 잠행인 2017.10.09 195
RMMV 모바일 구동 시 BGM이 늦게 나옵니다. 2 자몽 2017.10.09 130
RMVXA 데미지 계산식에서 a.level을 사용한 수를 적이 사용하게 되면 어떻게 되나요. 4 NoaBlua 2017.10.09 135
RMMV 이 플러그인 오류 고치는 방법 2 잠행인 2017.10.09 162
기타 MV에서 apk로 변환하려는데, intel XDK가 이상하네요 3 file pdm0822 2017.10.08 157
RMMV 게임 종료하면 타이틀 화면이 아니라 종료하는 방법 없을까요? 4 잠행인 2017.10.08 178
RMMV 이벤트 도중 새로운 이벤트를 등장 시키는 것. 2 두솔 2017.10.07 89
RMVXA 이거 일본어 지우는 방법 없을까요? 3 file 난몰라 2017.10.07 159
RMVXA 출현범위에 대해서 궁금합니다. 1 file 난몰라 2017.10.07 129
RMMV 모든 세이브파일이 스위치 공유 5 잠행인 2017.10.07 408
RMMV 도발과 같은 몬스터의 공격을 대신 맞아주는 스킬을 만드려는데, 3 pdm0822 2017.10.06 237
RMMV 지도 스크롤이 무슨 기능인가요? 4 시우A 2017.10.03 210
RMMV 타이틀에서 이어하기 말고 시작 버튼을 누르면 특별한 효과음을 주고싶은데 3 잠행인 2017.10.03 196
RMVXA 이것저것만지다가 타일색이 이상해졌어요... 도와주세요 3 file 지나가던팬더 2017.10.02 141
RMMV TP를 안쓰고싶은데 스텟창에 표시를 어떻게 안할 수 있을까요 1 잠행인 2017.10.02 138
RMMV 스텟 분배하는 플러그인이 있었던거 같은데 1 잠행인 2017.10.01 115
RMVXA 마나 다 떨어지면 혼란상태 빠지게 하고 싶습니다 6 매지션k 2017.10.01 132
RMVXA 스크립트 에러 1 file 가온누리55 2017.10.01 214
RMMV 캐릭터 생성기 말인데요? 3 safsdrt455 2017.09.30 222
RMVXA 게임 만들고 있는 초보입니다 4 매지션k 2017.09.28 204
Board Pagination Prev 1 ... 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 ... 517 Next
/ 517