조회 수 1775 추천 수 2 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

#==============================================================================
# *** 자동 저장
# 원본제작자 - 모름
# 원본게시물 - 귀찮아‡ (yoseb031) 님의 게시물 (http://www.acoc.co.kr/bbs/view.php?id=acoc_board_ideatip&no=455&n_mode=n)
# 한글화 - JamesClifford (http://www.acoc.co.kr에 배포합니다)
# 덧붙이는말) 직접 번역했으며, 의미가 자연스럽도록 없는 단어 조금씩 붙여서
# 의역 했습니다. 잘못된 부분이 있으면 지적해주시기 바랍니다.
# 이 스크립트를 분석하는분께 도움이 됬으면 하는 바람입니다.
#------------------------------------------------------------------------------
# 이 모듈은 '자동저장(AutoSaving)'에 대한 모듈입니다
#==============================================================================
module AutoSave
#--------------------------------------------------------------------------
# * 파일 저장
#--------------------------------------------------------------------------
def self.save
  begin
    #Saves the file to whatever $game_system.filename is
    file = File.open($game_system.filename, "wb")
    a = Scene_Save.new
    a.write_save_data(file)
  ensure
    file.close
  end
end
#--------------------------------------------------------------------------
# * 파일 삭제
#--------------------------------------------------------------------------
def self.deletesave
  begin
    if FileTest.exits?($game_system.filename)
      File.delete($game_system.filename)
    end 
  end
end
end
#==============================================================================


#==============================================================================
# ** 장면저장(Scene_Save)
#------------------------------------------------------------------------------
# 이 클래스는 화면 저장 작업을 진행합니다.
# 알림! SCENE_SAVE는 더 이상 게임 저장에 사용할 수 없습니다.
# 이것은 자동저장 파일(autosave file)로 변경됩니다.
#==============================================================================


class Scene_Save < Scene_File
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
  super("Which file would you like to autosave to?")
end
#--------------------------------------------------------------------------
# * 진행 결정
#--------------------------------------------------------------------------
def on_decision(filename)
  # Play save SE
  $game_system.se_play($data_system.save_se)
  $game_system.filename_c(filename)
  $scene = Scene_Menu.new
end
end


#==============================================================================
# ** 장면 부르기 (Scene_Load)
#------------------------------------------------------------------------------
#  이 클래스는 화면을 부르는 작업을 진행합니다
#==============================================================================
class Scene_Load < Scene_File


alias old_doloadthingie on_decision
#--------------------------------------------------------------------------
# * 작업 진행
#--------------------------------------------------------------------------
def on_decision(filename)
  $game_system.filename_c(filename)
  old_doloadthingie(filename)
end
end


#==============================================================================
# ** 게임 시스템(Game_System)
#------------------------------------------------------------------------------
#  This class handles data surrounding the system. Backround music, etc.
#  is managed here as well. Refer to "$game_system" for the instance of
#  this class.
#==============================================================================
class Game_System
#--------------------------------------------------------------------------
# * Aliasing Objects
#--------------------------------------------------------------------------
alias autosaveinit initialize
#--------------------------------------------------------------------------
# * 초기화
#--------------------------------------------------------------------------
def initialize
  autosaveinit
  @filename = "Save1.rxdata"
end
#--------------------------------------------------------------------------
# * 파일명 -> 자동저장 파일명을 얻습니다
#--------------------------------------------------------------------------
def filename
  if @filename != nil
    return @filename
  else
    return "Save1.rxdata"
  end 
end
#--------------------------------------------------------------------------
# * 파일명 변경 -> 새로운 자동저장 파일명을 설정합니다
#--------------------------------------------------------------------------
def filename_c(newname)
  return if newname == "" or newname == nil
  @filename = newname
end
end


#==============================================================================
# ** 게임 파티 (Game_Party)
#------------------------------------------------------------------------------
# 이것은 파티(party)클래스 입니다. 이것은 금(gold)의 총액과 아이템에 대한 정보를
# 포함합니다. 이 클래스를 위해서 "$game_party"에서 자료를 불러옵니다.
#==============================================================================
class Game_Party


alias gainglod_autosave gain_gold
alias gainitem_autosave gain_item
alias gainweap_autosave gain_weapon
alias gainarmor_autosave gain_armor
#--------------------------------------------------------------------------
# * 금(Gold) 받아오기 (혹은 잃기)
# n : 금(Gold)의 총액
#--------------------------------------------------------------------------
def gain_gold(n)
  gainglod_autosave(n)
  AutoSave.save
end
#--------------------------------------------------------------------------
# * 아이템 얻어오기 (혹은 잃기)
# item_id : item ID
# n : 수량
#--------------------------------------------------------------------------
def gain_item(item_id, n)
  gainitem_autosave(item_id, n)
  AutoSave.save
end
#--------------------------------------------------------------------------
# * 무기 얻어오기 (혹은 잃기)
# weapon_id : 무기(weapon) ID
# n : 수량
#--------------------------------------------------------------------------
def gain_weapon(weapon_id, n)
  gainweap_autosave(weapon_id, n)
  AutoSave.save
end
#--------------------------------------------------------------------------
# * 방어구 얻어오기 (혹은 잃기)
# armor_id : 갑옷 ID
# n : 수량
#--------------------------------------------------------------------------
def gain_armor(armor_id, n)
  gainarmor_autosave(armor_id, n)
  AutoSave.save
end
end


#==============================================================================
# ** 맵의 장면변화
#------------------------------------------------------------------------------
# 이것은 순간이동(teleporting)했을때 장면이 튀어나오게 합니다
#==============================================================================
class Scene_Map
alias autosavescript_changemap_main main
#--------------------------------------------------------------------------
# * 메인(Main)
#--------------------------------------------------------------------------
def main
  autosavescript_changemap_main
  AutoSave.save
end
end


 

?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
641 언어/기타 바실리어트 4. 소스 준비 Vermond 2007.08.14 4630
640 언어/기타 [C++] 최단거리 구하는 알고리즘, E log V Dijkstra 악희 2007.08.05 2314
639 언어/기타 [DX/VB] DirectDraw? 별거 아냐! (3) 더블 버퍼의 생성과 블리팅 악희 2007.08.03 1839
638 언어/기타 0707후반기[제작자포럼]공성결과 천무 2007.08.01 1372
637 언어/기타 [DX/VB] DirectDraw? 별거 아냐! (2) 블리팅, 그리고 투명도 악희 2007.07.31 1913
636 언어/기타 7월상반기(제작자포럼)공성결과 천무 2007.07.30 1094
635 언어/기타 [DX/VB] DirectDraw? 별거 아냐! (1) DirectDraw객체의 생성과 표면의 생성 악희 2007.07.29 1758
634 언어/기타 두드리는 미니게임... JIN[晉] 2007.07.25 1439
633 언어/기타 바실리어트 2. 스크립트 입문 1 Vermond 2007.07.05 4977
632 언어/기타 바실리어트 1. 시작하기 전에 Vermond 2007.07.03 6075
631 언어/기타 [THDO]판화 세계지도제작 스크립트. file 협객 2007.06.25 2704
630 언어/기타 바실리어트 - 비주얼노벨형 게임 제작용 엔진 플루비아♥ 2007.06.25 2640
629 언어/기타 삭제 게이지의달인 2007.06.14 537
628 언어/기타 [C++] 클래스(객체지향) - 기본 생성자와 소멸자 Sirjhswin 2007.06.13 1956
627 언어/기타 기본을 배울수 있는 사이트입니다... 2 미친쌀벌레 2007.06.02 900
626 언어/기타 삭제 게이지의달인 2007.06.02 530
625 언어/기타 [C++] 한글과 영어가 섞인 문자열의 길이 체크 Zeprod 2007.06.01 2152
624 언어/기타 경험치 게이지 간단 설명 1 린쌍 2007.05.28 619
623 언어/기타 [DX&C++] 화면에 글씨를 써볼까요. 10 Zeprod 2007.05.22 1740
622 언어/기타 골프게임은? Nadoo 2007.05.21 1109
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 36 Next
/ 36






[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)