질문과 답변

RMVXA
2017.10.01 15:09

스크립트 에러

조회 수 212 추천 수 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 12460
RMVXA 이 오브젝트들 사용하고싶은데 계속 크기가 잘립니다 어떻게해야되나요? 1 file 알만툴NewB 2017.01.17 155
RMVXA 이 시스템 구현 어떻게 하나요? 10 file AccelHacker 2016.03.04 262
RMVXA 이 스크립트좀 바꿔주세요..! file 버섯수프 2016.08.17 119
RMVXA 이 스크립트좀 바꿔주세요! file 버섯수프 2016.08.29 161
RMVXA 이 스크립트의(오버레이 맵핑) 원리나 이유를 모르겠네요 2 file 마루TV 2015.04.12 317
RMVXA 이 스크립트의 윈도우를 반투명하게 만들 수 있을까요? file 쏘쿨 2016.09.27 180
RMVXA 이 스크립트에서 폰트 크기를 제어하려면 어떻게 해야하나요? 4 file 수이스 2013.11.24 916
RMVXA 이 스크립트를 조금 바꿔주실수 있을까요 버섯수프 2017.01.06 74
RMVXA 이 스크립트는 어떻게 사용하나요 3 thentlr 2016.06.06 139
RMVXA 이 스크립트 한글화 가능하나요? file AccelHacker 2016.03.05 162
RMVXA 이 스크립트 적용에 대해서 질문이요 AccelHacker 2016.04.03 92
스크립트 사용 RMVXA 이 스크립트 어떻게 사용하는 건가요? 2 둣녀 2022.01.04 148
RMVXA 이 스크립트 쓰고싶은데 변수를 모르겠는데요! 1 니꺼해 2017.04.21 95
이벤트 작성 RMVXA 의자를 특정 장소로 이동시킨 후 올라타는 이벤트를 만들고 싶습니다. 5 MAYO 2019.08.17 156
기본툴 사용법 RMVXA 의자를 옮긴후 의자를 밟고 올라가는 이벤트를 만들고싶습니다. 2 LWH 2019.01.28 135
RMVXA 의미불명의 오류 2 file 아무개 2015.04.25 323
RMVXA 음악이나 변수 스위치등을 사용한 이벤트를 빠르게 알수있는 기능이 없나요? ksu127 2016.10.27 102
RMVXA 음악 추천 부탁드려요! 대자연, 맹수와의 사투를 주제로 하는 게임을 제작 중입니다. 2 달밤에왈츠 2012.06.13 1381
RMVXA 음 아무리 검색해도 않나오네요 방어 효과율 2 너무어려운알만툴 2013.01.18 740
RMVXA 은행시스템에 이자 시스템 넣기!! 닉네잉 2012.10.05 1181
Board Pagination Prev 1 ... 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 ... 150 Next
/ 150