Quicksave

La création de jeux indépendants/amateurs (tuto, entraide, questions...) sous les moteurs de la série RPG Maker.
nuki
Koruldia Warrior
Messages : 238
Localisation : Bruxelles
Contact :

Quicksave

Message non lu par nuki » dim. août 21, 2011 3:20 pm

Description
Module permettant de s'affranchir du système de sauvegarde normal. Il s'utilise au moyen de méthodes facilements accessibles.

Installation
Il suffit de coller le script au dessus de la portion de code Main.

Utilisation

Quicksave::load(id) -> Charge une partie sur un slot (id)
Quicksave::save(id) -> Sauvegarde une partie sur un slot (id)
Quicksave::erase(id) -> Supprime un slot (id)
Quicksave::exist?(id) -> retourne true ou false si un fichier existe ou pas selon son ID



Code

Code : Tout sélectionner

#Auteur: Nuki
#Liste des méthodes utilisables
#=============================================================
# Quicksave::load(id) -> Charge une partie sur un slot (id)
# Quicksave::save(id) -> Sauvegarde une partie sur un slot (id)
# Quicksave::delete(id) -> Supprime un slot (id)
# Quicksave::exist?(id) -> retourne true ou false si un fichier existe ou pas selon son ID
#=============================================================
module Quicksave
  @file = Scene_File.new(false, false, false)
  class << self
   
    def load(id)
      id = 1 if id < 1
      file = File.open(@file.make_filename(id -1), "rb")
      @file.read_save_data(file)
      file.close
      $scene = Scene_Map.new
      RPG::BGM.fade(1500)
      Graphics.fadeout(60)
      Graphics.wait(40)
      @file.last_bgm.play
      @file.last_bgs.play
    end
   
    def save(id)
      id = 1 if id < 1
      file = File.open(@file.make_filename(id -1), "wb")
      @file.write_save_data(file)
      file.close
    end
   
    def exist?(id)
      return File.exist?(@file.make_filename(id - 1))
    end
   
    def delete(id)
      id = 1 if id < 1
      unless exists?(id)
        raise RuntimeError.new("Argument Invalide Exception")
      end
      File.delete(@file.make_filename(id - 1))
    end
   
  end
end

class Scene_File < Scene_Base
  attr_accessor :last_bgm
  attr_accessor :last_bgs
end
Image