XP 스크립트

#==============================================================================
# ◆심플 세이브&로드 개조
# www.ac.cyberhome.ne.jp/~daydream/
#==============================================================================
# 설명
#  필요에 따라 여러 개의 세이브 데이터를 만들고 불러올 수 있는 스크립트입니다.
#  세이브, 로드시에 윈도우는 나타나지 않습니다.
#==============================================================================
# 변경해야 할 것
# Window_SaveFile의 22행의 @filename = "Save#{@file_index + 1}.rxdata" 를
# @filename = "Save#{$game_variables[숫자]}.rxdata"로 바꿔주세요.
#==============================================================================
class Scene_Save
  #--------------------------------------------------------------------------
  # ● 메인 처리
  #--------------------------------------------------------------------------
  def main
    # 데이타베이스를 로드
    file = File.open("SaveData#{$game_variables[숫자]}.rxdata", "wb")
    # 데이터를 씁니다.
    Marshal.dump($game_system, file)
    Marshal.dump($game_switches, file)
    Marshal.dump($game_variables, file)
    Marshal.dump($game_self_switches, file)
    Marshal.dump($game_screen, file)
    Marshal.dump($game_actors, file)
    Marshal.dump($game_party, file)
    Marshal.dump($game_troop, file)
    Marshal.dump($game_map, file)
    Marshal.dump($game_player, file)
    file.close
    # 이벤트로부터 불려 가고 있는 경우
    if $game_temp.save_calling
      # 세이브 호출 플래그를 클리어
      $game_temp.save_calling = false
      # 맵 화면으로 전환해
      $scene = Scene_Map.new
      return
    end
    # 맵 화면으로 전환해
    $scene = Scene_Map.new 
  end
end


#==============================================================================
# ■ Scene_Load
#------------------------------------------------------------------------------
#  로드의 처리를 실시하는 클래스입니다.
#==============================================================================

class Scene_Load
  #--------------------------------------------------------------------------
  # ● 메인 처리
  #--------------------------------------------------------------------------
  def main
    # 로드 SE(을)를 연주
    $game_system.se_play($data_system.load_se)
    # 데이타베이스를 로드
    file = File.open("SaveData#{$game_variables[숫자]}.rxdata", "rb")
    # 데이터를 읽어들입니다.
    $game_system        = Marshal.load(file)
    $game_switches      = Marshal.load(file)
    $game_variables    = Marshal.load(file)
    $game_self_switches = Marshal.load(file)
    $game_screen        = Marshal.load(file)
    $game_actors        = Marshal.load(file)
    $game_party        = Marshal.load(file)
    $game_troop        = Marshal.load(file)
    $game_map          = Marshal.load(file)
    $game_player        = Marshal.load(file)
    # (에디터로 편집이 더해지고 있는 경우)
    if $game_system.magic_number != $data_system.magic_number
      # 맵을 리로드
      $game_map.setup($game_map.map_id)
      $game_player.center($game_player.x, $game_player.y)
    end
    # 파티 멤버를 리프레쉬
    $game_party.refresh
    file.close
    # BGM,BGS (을)를 복귀
    $game_system.bgm_play($game_system.playing_bgm)
    $game_system.bgs_play($game_system.playing_bgs)
    # 맵을 갱신 (병렬 이벤트 실행)
    $game_map.update
    # 맵 화면으로 전환해
    $scene = Scene_Map.new
  end
end

 

↑ 위의 end 부분까지 복사해주세요.

------------------------------------------------------------------------------------------

 

백호님이 올리신 심플 세이브&로드 스크립트를 개조했습니다.

출처는 www.ac.cyberhome.ne.jp/~daydream/ 인데 2011년 2월 24일 기준 접속이 되질 않고 있습니다.

남이 제작한 것을 개조하는 일 자체가 나쁜 일이지만 먄악이라도 필요하신 분이 계실까봐 올려봅니다.

혹시라도 스크립트를 제작하신 분께서 문의를 하신다면(.. 있을리는 없겠지만) 삭제하겠습니다.

 

 

※ 사용법

 

1. 위의 스크립트 내용 $game_variables[숫자] 부분에서 "숫자"에 원하는 수를 넣으면 게임상에 있는 변수로

    세이브 슬롯을 설정할 수 있습니다.

                                                   Ex) 1번 변수가 1이라면, 1번 슬롯의 데이터를 저장하거나 불러올 수 있음

2. 자신이 원하는 때에 이벤트 → 스크립트$scene = Scene_Save.new 를 넣으면 세이브가,

                                                               $scene = Scene_Load.new 를 넣으면 로드가 실행됩니다.

3. 만약 세이브 파일이 저장되지 않은 슬롯을 로드할 경우 에러가 발생하여 자동으로 게임이 꺼집니다.

4. 이 스크립트는 타이틀 화면에서의 로드 기능을 지원하지 않으니 타이틀 화면을 직접 만든 다음

   이벤트 → 스크립트를 사용해서 직접 불러오시는 것을 추천합니다.

 

 

 

PS. 예제를 올리고 싶어도 첨부용량이 부족해서 올리지 못했습니다.

      혹시라도 필요하신 분은 이 곳에 업로드하는 방법을 가르쳐주세요. << 일일히 보내드릴 수가 없어요

 

 

Comment '5'
  • profile
    빠삐코선장 2011.05.24 20:52

    감사합니다

  • ?
    베넘 2011.07.11 06:51

    우와~ 멋지네요. 감사합니다. +_+

  • ?
    베넘 2011.07.12 08:33

      로드 처리하는 부분의

    def main  밑에다가

    ==================================================

     

         name = "SaveData#{$game_variables[숫자]}.rxdata"

          unless FileTest.exist?(name)
                $game_system.se_play($data_system.buzzer_se)
                $game_map.update
                $scene = Scene_Map.new
               return
             end

    ====================================================

    ↑이렇게 넣으면 적어도 오류나서 꺼지는 건 막을 수 있습니다.

    파일이 없다는 문장같은 걸 띄워보려고 삽질했는데 거기까진 못하네요. ㅜㅜ

  • ?
    나렌시아 2011.07.22 14:39

    에고.. 이렇게 직접 시간을 들여서 만들어주시다니..

    정말 감사합니다 ~ ♪

    경고메시지는 기본 RPG 스크립트 참고하면 만들 수 있을 것기도 하네요.

  • ?
    Amaster 2011.12.19 22:32

    흐음....스크립트에서 타이틀에서 콘티뉴에서 설정을

    센스_로드.뉴로 바꾸고 하니깐 에러가 뜨내요 역시

    근데 게임을 한번 시작하고 Load 시킨다음 타이틀로 돌아가서

    그 상태로 로드하면 에러가 안납니다...

    아마 변수가 저장되있어서 그런가..? 으악 어려워!


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 6203
361 기타 무기 회피율, 방어구 공격력 지정 스크립트 6 백호 2009.02.22 1248
360 기타 무기& 방어구 레벨제한 스크립트 23 file 백호 2009.02.21 1880
359 변수/스위치 무기변수 스크립트 1 file 백호 2009.02.22 1614
358 메시지 문자 메세지 띄우기 스크립트 10 file 백호 2009.02.21 3070
357 전투 물리친 적의수 표시 file 백호 2009.02.21 1131
356 미니맵 미니맵 만들기~! 14 file 블리치캐릭셋원함 2010.11.24 4354
355 미니맵 미니맵 스크랩트 + 예재 15 file WMN 2008.03.17 2674
354 미니맵 미니맵(중복률100%? 한글번역!) 17 백호 2009.02.21 3423
353 미니맵 미니맵을 표시해주는 스크립트입니다... 41 file - 하늘 - 2009.08.05 5191
352 이동 및 탈것 밑에 KIN 님의 MP 없어지는 대쉬, 제가 손좀 봤음 1 백호 2009.02.22 1247
351 상점 밑에 글 영어로 뜨는거 수정(여관시스템) 7 file 백호 2009.02.22 1684
350 이동 및 탈것 반칸 이동하기 14 file 느싱 2009.03.09 3461
349 기타 발소리 스크립트 4 file 백호 2009.02.21 1614
348 기타 밤/낮 변화 시스템 스크립트 4 file 백호 2009.02.21 1770
347 밤낮 구별 하는 스크랩트 입니다..? 32 WMN 2008.03.17 2552
346 전투 방어시에 속성 저항,스테이트무시 스크립트 1 백호 2009.02.22 1018
345 전투 방어시회복하는거래요. 8 카르닉스 2010.02.26 1579
344 이동 및 탈것 방향키를 누름에따라 점프의 거리가 길어진다 - 출처:엑사포 의 비밀소년님과 연금술사님의 스크립트를 개량함 3 백호 2009.02.21 1235
343 전투 배틀 리포트 화면 변경 스크립트 2 file 백호 2009.02.21 1444
342 전투 배틀 스테이터스·클리어 디자인 13 file 백호 2009.02.21 2468
Board Pagination Prev 1 ... 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 ... 52 Next
/ 52