질문과 답변

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 12408
RMXP 게임하다가 일정 이벤트가 뜨면 게임 폴더 속 파일이 자동 실행되도록 할수 있나요? 2 찐콩땅콩 2015.11.15 339
RMVX 힐이 특정 상대 에게 데미지로 박히게 하는방법 3 OvercomE 2014.01.04 1032
RMVX 흰색없는 이미지 올리기? 13 file Thyella 2013.03.05 1441
기본툴 사용법 RMVXA 흡혈 스킬 만들기 3 겜만들고싶다앙 2021.01.06 290
RMVXA 흔들림 효과 질문 3 달밤에왈츠 2012.07.03 1678
기타 RMVXA 흑백 스킬 애니메이션을 만들었는데 검은 색이 계속 투명처리가 됩니다 2 file 오황불 2020.12.31 89
RMXP 흐읗읗 2 쿠크 2011.02.12 1076
RMVX 흐음..제가 액토이동경로 이벤트에대해 아쳐 2015.04.19 199
RMXP 흐엏엏 2 file 쿠크 2011.02.11 1146
RMXP 흐아아.. 맵칩 관련 질문 입니다. 4 미니쿠키 2011.01.22 1107
RM2k 흐미 1 알이즈웰 2011.01.13 1852
RMXP 훈장 시스템 3 솔로몬 2013.02.18 906
RMVX 훈덕 님이 올리신 스킬 사용 조건(번역) 사용방법 file 엿데브 2011.06.07 1677
RMVXA 후크 샷 스크립트 2 불청객 2013.01.17 1086
RMVX 후레시 같은거 어떻게 만들죠? 6 후라이팬샷 2013.08.19 1319
RMVXA 후레쉬효과? 1 아이디어창고 2015.07.11 265
RMVX 후레쉬같은 이벤트 질문 2 노이치 2012.07.08 3448
RMVX 후레쉬 스크립트..? 3 아인이다 2012.10.25 1410
기본툴 사용법 RMMV 효과음이나 브금 추가하는 법을 모르겠어요ㅜ 3 클라시메이트 2019.01.18 478
기본툴 사용법 RMMV 효과음을 끊기거나 겹치지 않게 반복시킬 수 있나요? 2 PPPL 2019.11.22 314
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