- Azuma-01Membre
- Nombre de messages : 94
Age : 31
Localisation : Amos
Distinction : aucune
Date d'inscription : 22/09/2009
[Résolu]charger une variable au menu titre
Lun 9 Nov 2009 - 18:28
Ceci est plus une question d'écriture que d'une demande de script...
Comment fait-on pour charger une variable provenant de la sauvegarde la plus récente dans le menu titre?
Merci à l'avance.
Azuma-01
EDIT: Si il est impossible (ou trop compliquer) d'utiliser la sauvegarde la plus récente vous pouvez faire charger la variable via la sauvegarde 1 (c'est mon auto save).
Comment fait-on pour charger une variable provenant de la sauvegarde la plus récente dans le menu titre?
Merci à l'avance.
Azuma-01
EDIT: Si il est impossible (ou trop compliquer) d'utiliser la sauvegarde la plus récente vous pouvez faire charger la variable via la sauvegarde 1 (c'est mon auto save).
- Azuma-01Membre
- Nombre de messages : 94
Age : 31
Localisation : Amos
Distinction : aucune
Date d'inscription : 22/09/2009
Re: [Résolu]charger une variable au menu titre
Lun 18 Jan 2010 - 17:25
Je profite de ce petit pour redire ma question dans un contexte plus claire (du moins, je l'espère... )
Quand on lance le jeux, je veux que le systemeloadcharge la variable provenant de la sauvegarde la plus récente. je crois que c'eat la ligne 193 de Scene_Title qui est à modifier, mais je ne sais quoi écrire...
Cette ligne est:
Donc, ma question est: Quel est la commande qu'il faut utiliser pour charger une variable provenant de la sauvegarde la plus récente (ou la sauvegarde 1) à l'écran titre?
Je profite de ce petit re pour y montrer mes progrès.
Mes recherche: j'ai trouver ce script de Woratana permettant de changer l'écran titre selon le niveau le plus élevé du héros.
Merci à celui qui m'aidera
EDIT2: résolu
Quand on lance le jeux, je veux que le systeme
Cette ligne est:
- Code:
$game_variables = Game_Variables.new
- Spoiler:
- Code:
$game_variables = Game_Variables.new ("Save/Saveslot1.rvdata") if ("Save/Saveslot1.rvdata") != nil
- Spoiler:
- Code:
$game_variables = Game_Variables.load_data("Save/Saveslot1.rvdata") if ("Save/Saveslot1.rvdata") != nil
Donc, ma question est: Quel est la commande qu'il faut utiliser pour charger une variable provenant de la sauvegarde la plus récente (ou la sauvegarde 1) à l'écran titre?
Je profite de ce petit re pour y montrer mes progrès.
Mes recherche: j'ai trouver ce script de Woratana permettant de changer l'écran titre selon le niveau le plus élevé du héros.
- Spoiler:
- Code:
class Scene_Title < Scene_Base
MAX_SAVEFILE = 4
# Quel nombre de sauvegarde a votre jeu ? Par défaut 4.
# Changer la variable MAX_SAVEFILE en fonction du nombre de sauvegarde maximum que votre jeu a.
Title_lv = Array.new
Title_lv = [10,25,50,80]
# Title_lv = (Utilisez Nouveau titre pour le niveau ..) [.., ... (autant que vous le voulez)]
# Le nom du Nouveau Titre Fichier doit être dans le répertoire "System"
# me Nouveau Titre Fichier doit être: "Title(Vérifier le niveau dans Title_lv)"
# FPour example, Title_lv = [10,20]
# Si le niveau le plus haut du personnage dans toutes les sauvegardes est compris entre 0 et 9: Le Titre du Fichier est "Title"
# Si le plus haut niveau est compris entre 10 et 19: Le Titre du Fichier est "Title10"
# Si le niveau le plus haut est supérieur à 20: Le Titre du Fichier est "Title20"
alias wor_title_start start
def start
wor_find_max_level
wor_title_start
end
def create_title_graphic
@title_lv = 0
@sprite = Sprite.new
(0..(Title_lv.size - 1)).each do |i|
@title_lv = Title_lv if Title_lv <= @max_lv
end
@title_lv = nil if @title_lv == 0
@sprite.bitmap = Cache.system("Title#{@title_lv}")
end
def wor_find_max_level
@max_lv = 0
(1..MAX_SAVEFILE).each do |id|
next if not FileTest.exist?("Save#{id}.rvdata")
file = File.open("Save#{id}.rvdata", "rb")
(1..9).each do
trash = Marshal.load(file)
end
$game_actors = Marshal.load(file)
$game_party = Marshal.load(file)
(0..($game_party.members.size - 1)).each do |mem|
@max_lv = $game_party.members[mem].level if $game_party.members[mem].level > @max_lv
end
file.close
end
trash = nil
end
end
Merci à celui qui m'aidera
EDIT2: résolu
- Code:
def load_variable(file_index, id_var)
File.open("Save/Saveslot#{file_index}.rvdata") { |file|
# On ouvre le fichier auquel on applique la procédure qui suit.
7.times { Marshal.load(file) }
# La marshalisation fonctionne "en curseur". Un premier
# Marshal.load va lire la première instance mrshalisé un
# second la seconde etc. On veut recuperer la 8eme
# instance celle de Game_Variables on réalise donc 7
# Marshal.load préalable pour déplacer le curseur.
return Marshal.load(file)[id_var]
# On renvoi maintenant la valeur de la variable d'id "id_var"
} rescue return 0
# Fin de la procedure
# Le rescue placé ici permet de recuperer une eventuelle exception
# levée par File.open dans le cas ou le fichier n'existerait pas.
# Si donc l'exception est levée, c'est qu'il n'y a pas de sauvegarde
# on renvoi dans ce cas 0, valeur par défaut d'une variable.
end
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|