폴스 세이브

by Man... posted Oct 28, 2008
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

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

Screenshot


For the curious kitten...


DEMO

DEMO

시작!!!
#==============================================================================
# ** Force Save
#------------------------------------------------------------------------------
# Author  : puppeto4 (puppeto5@hotmail.com)
# Version : 1.0 revision 1
# Date    : 06 / 06 / 2008
# Note    : Order Pizza Hut, support the rebellion.
# Check RPG RPG Revolution(http://www.rpgrevolution.com) for support
#------------------------------------------------------------------------------
# Function :  
#   This script will force player to save when starting a new game.
#==============================================================================
#==============================================================================
# ** Puppeto
#------------------------------------------------------------------------------
#  This module handles setup for any script writen by me ^^.
#==============================================================================

module Puppeto
  # Message shown when the force save screen appear.
  ForceMessage     = "Please save your game before proceed"
#==============================================================================
# ** End of Puppeto module
#------------------------------------------------------------------------------
end  
#==============================================================================
# ** Class Alias
#==============================================================================
#----------------------------------------------------------------------------
# * Aliased Class(es) : Scene_Title, Scene_File
#----------------------------------------------------------------------------
#==============================================================================
# ** Scene_Title
#------------------------------------------------------------------------------
#  This class performs the title screen processing.
#==============================================================================
#----------------------------------------------------------------------------
# * Aliased Method(s) : command_new_game
#----------------------------------------------------------------------------

class Scene_Title < Scene_Base
  #--------------------------------------------------------------------------
  # * Alias Listing
  #--------------------------------------------------------------------------
  alias puppet_forcesave_command_new_game command_new_game    
  #--------------------------------------------------------------------------
  # * Command: New Game
  #--------------------------------------------------------------------------
  def command_new_game
    # The usual
    puppet_forcesave_command_new_game
    # If $FSAVE is false or nil
    if $FSAVE == false or $FSAVE.nil?
      # Call Scene_File(save type)
      $scene = Scene_File.new(true, true, false)
      # Set $FSAVE to true to enable force_save in Scene_File
      $FSAVE = true
    end  
  end
end
#==============================================================================
# ** Scene_File
#------------------------------------------------------------------------------
#  This class performs the save and load screen processing.
#==============================================================================
#----------------------------------------------------------------------------
# * Aliased Method(s) : main, start, return_scene
# * New Method(s)     : force_save
#----------------------------------------------------------------------------

class Scene_File < Scene_Base
  #--------------------------------------------------------------------------
  # * Alias Listing
  #--------------------------------------------------------------------------
  if @new_stack.nil?
    alias puppet_forcesave_main main    
    alias puppet_forcesave_start start    
    alias puppet_forcesave_return_scene return_scene  
    @new_stack = true
  end  
  #--------------------------------------------------------------------------
  # * Main Processing
  #--------------------------------------------------------------------------
  def main
    puppet_forcesave_main             # The usual
    force_save if $FSAVE              # Start force save if $FSAVE is true
  end
  #--------------------------------------------------------------------------
  # * Start processing
  #--------------------------------------------------------------------------
  def start
    # The usual
    puppet_forcesave_start
    # Set a difference text on help windo if $FSAVE is true
    @help_window.set_text(Puppeto::ForceMessage, 1) if $FSAVE
  end  
  #--------------------------------------------------------------------------
  # * Return to Original Screen
  #--------------------------------------------------------------------------
  def return_scene
    # If $FSAVE is true
    if $FSAVE
      # If Input::B is triggered
      if Input.trigger?(Input::B)
        # Stop all SE playback
        Audio.se_stop
        # Ignore if play_buzzer SE
        next if Sound.play_buzzer
        # Return
        return
      end  
    end  
    # The usual
    puppet_forcesave_return_scene
  end    
  #--------------------------------------------------------------------------
  # * Force Save
  #--------------------------------------------------------------------------
  def force_save
    # Call Scene_Map
    $scene = Scene_Map.new
    # Set $FSAVE to false to prevent looping
    $FSAVE = false      
  end  
end
#==============================================================================
# ** End of Class Alias
#==============================================================================