AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  ConnexionConnexion  

Partagez | 
 

 Sauvegarde automatique

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Trabounet
Nouvel Arrivant
avatar

Masculin Nombre de messages : 7
Age : 21
Localisation : Chez moi
Niveau : : A vous de juger
Projet(s) : : Collège & Kaziku I
Argent (Po) : :
7 / 1007 / 100

Date d'inscription : 02/02/2008

MessageSujet: Sauvegarde automatique   Sam 2 Fév - 12:57

Auteur : Corwin

Fonction : Ce script permet de sauvegarder automatiquement (sans aucune demande, ni confirmation)

Code:
  =begin
-----------
AUTOSAVE SCRIPT v1.0
par Corwin


Suite à une demande, voici un script qui va permettre
de faire une sauvegarde automatique, dans le slot voulu.
Pour cela, il suffit :

- créer un nouveau script et y coller le présent script
- créer un évènement parallèle, à lancer sur Appel
Dans cet évènement, y mettre un script ainsi :
<> call_autosave(X)
et mettre à la place du X le numéro du slot désiré
- lorsque vous voulez sauvegarder une partie automatiquement,
il suffit d'appeler cet évènement parallèle

Dans ce script vous pouvez tout modifier, il est suffisament commenté pour cela.

Bon dév !
----------------------------------
=end

# pour informer l'utilisateur qu'il y a eu une sauvegarde
$autosave_userYP = true
# à mettre true si vous voulez que le joueur soit informé
# à mettre false si vous ne voulez pas que le joueur soit informé

class Scene_Auto_Saving

def main

if $autosave_userYP # si c'est true, alors le joueur est informé...
# lancement de la fenêtre d'info de l'autosave
@autosaving_window = Window_autosaving.new
# on lance la fonction de sauvegarde
autosaving_fct

else # l'info ne doit pas être fournie au joueur
# on lance la fonction de sauvegarde UNIQUEMENT
autosaving_fct
end


# Boucle de transition, mise à jour graphique et entré clavier
Graphics.transition
# boucle

loop do
# Mise à jour graphique
Graphics.update
# Mise à jour des entrées clavier

Input.update
# Mise à jour de la class
update

# Si la scene n'existe plus, alors sortir de la boucle
if $scene != self
break
end

end
# figer les graphiques
Graphics.freeze
# destruction des objets
if $autosave_userYP
if @autosaving_window.dispose != nil
@autosaving_window.dispose
end
end

end

#--------------------------------------------------------------------------
# ● update
#--------------------------------------------------------------------------
def update

if $autosave_userYP # si c'est true, alors le joueur est informé...
# on force d'attendre 2 secondes
sleep(2)
end

# puis on réaffiche le tout...
$scene = Scene_Map.new
return
end

end #fin class

# ----------------------------------------
# on définit la fonction à appeler,
# avec la variable alpha qui représente le
# slot de sauvegarde à utiliser
# ----------------------------------------
def call_autosave(alpha)
if alpha != nil
$autosave_slot = alpha
else
$autosave_slot = 1
end

# on lance la scene en question
$scene = Scene_Auto_Saving.new
end


def autosaving_fct # fonction de sauvegarde :
autosave_point = Scene_Save.new # on appelle la class de save
autosave_filename="Save#{$autosave_slot}.rxdata" # on définit le fichier de save

# /!\ attention... vous DEVEZ mettre le nom par défaut de vos sauvegardes
# dans la version sur laquelle le script est fait, c'est "Save"
# pour savoir quel est le nom exact, regardez dans le script Scene_File
# et dans la fonction make_filename (normalement ligne 109)
# et adapter la ligne ci-dessus en conséquent

autosave_file = File.open(autosave_filename, "wb") # on ouvre le fichier de save
autosave_point.write_save_data(autosave_file) # on y inscrit les données de save
autosave_file.close # on ferme le fichier de save
end

#--------------------------------------------------------------------------
class Window_autosaving < Window_Base
#--------------------------------------------------------------------------

def initialize
super(0, 0, 640,480)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.clear
self.back_opacity = 160
self.opacity = 160
self.visible = true
refresh
end

def refresh
# calcul de la largeur du texte
self.contents.font.name = $fontface
self.contents.font.size = $fontsize+6
self.contents.font.color = system_color
autosave_txt = "Partie sauvegardée"
autosave_txt_wh = contents.text_size(autosave_txt).width
self.contents.clear

# écriture d'un petit texte qui va dire que la partie a été sauvée
self.contents.font.size = $fontsize+6
self.contents.draw_text(150, 200, autosave_txt_wh, 32, autosave_txt, 2)

end

end # end class


Pour sauvegarder :
call_autosave(x) où X représente de slot. de 1 à 4 par defaut.
Si vous entrez "call_autosave()", sa sauvegarde san le "1". Modifiable à la ligne 102.

A partir de la ligne 125, vous pouvez modifier le message affiché et la facon dont il est affiché.

A la ligne 26 vous pouvez choisir de désactiver le message.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://elfilina.skyrock.com/
Lunatic
Maître des Lieux
Maître des Lieux
avatar

Masculin Nombre de messages : 110
Age : 110
Localisation : En vacance. Revient le 9 février !
Niveau : : Assez bon.
Projet(s) : : Zelda Project - Pause -, PET's : version Dog.
Argent (Po) : :
100 / 100100 / 100

Date d'inscription : 26/01/2008

MessageSujet: Re: Sauvegarde automatique   Sam 2 Fév - 13:28

Oh merci ! Je cherchai justement un script du genre Smile

_________________
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://maisonmakers.1fr1.net
Trabounet
Nouvel Arrivant
avatar

Masculin Nombre de messages : 7
Age : 21
Localisation : Chez moi
Niveau : : A vous de juger
Projet(s) : : Collège & Kaziku I
Argent (Po) : :
7 / 1007 / 100

Date d'inscription : 02/02/2008

MessageSujet: Re: Sauvegarde automatique   Sam 2 Fév - 16:01

Pas de problèmes x)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://elfilina.skyrock.com/
Zexion
Surveillant
Surveillant
avatar

Masculin Nombre de messages : 158
Age : 25
Argent (Po) : :
100 / 100100 / 100

Date d'inscription : 28/01/2008

MessageSujet: Re: Sauvegarde automatique   Sam 2 Fév - 16:06

Sympa, ca peut servir ^^
D'ailleurs, je me demande si je vais pas le faire.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Sauvegarde automatique   

Revenir en haut Aller en bas
 
Sauvegarde automatique
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Résolu] save oe - sauvegarde automatique ou manuel ?
» [Résolu] Sauvegarde automatique de documents
» Problème Sauvegarde automatique du forum
» Sauvegarde automatique des histoiriques de la Chatbox
» [résolu]PC très ralentit / nombreux programmes bloquent

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
La Maison des Maker's :: RPG MAKER :: Les Scripts :: Divers-
Sauter vers: