RPG Maker Détente
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.



 
RechercherDernières imagesPortailAccueilAccueilForumPraline au mielS'enregistrerConnexion

-20%
Le deal à ne pas rater :
Drone Dji DJI Mini 4K (EU)
239 € 299 €
Voir le deal

 

 Windowsoffgame

Aller en bas 
2 participants
AuteurMessage
Monos

Monos


Messages : 521


Windowsoffgame Empty
MessageSujet: Windowsoffgame   Windowsoffgame Icon_minitimeDim 11 Déc - 0:38

WindowsOffgame
Réalisé par Monos.
Version 1.0


Huhu j'apprend à faire des scripts. Je fais partager.
Script pour VX qui permet de changer le fichier Window en fonction d'une variable.
(Par défaut, c'est la 1er)
Si la variable vaut 5 par exemple, il va aller chercher le fichier Window5
donc Window plus le numéro de la variable.
Le fichier Window se trouve dans le dossier System.
(Attention si c'est 0, il appelle simplement Window, et non Window0)

Vous pouvez paramétrer la transparence par défaut, et la modifier avec une autre variable. (2em variable par défaut)
Si la variable = 0 (et donc au lancement du jeu), la transparence prend la valeur par défaut.
Sinon elle prend la valeur de la variable. (Attention entre 1 et 256) - 1 (pour connaitre la valeur exacte)

Pas de screen car c'est inutile.

Code:
#==========================================
#                              Windows_Offgame
# ** Changer le Windowskin d'après une variable**
# **Modifier l'opacité des fenêtres d'arpès une variable**
#----------------------------------------------------------------------------
#--- Version 1.0 du 11/12/2011                             
#--- Offgame 2011. Réalisé par Monos
#---¨Pour Rpg Maker Vx
#--- http://offgame.org
#--- Distribution autorisé sans autorisation
#==========================================

#<--Mode d'emplois pour le fichier Window -->
# La valeur contenue dans la variable choisis  permet de changer le windows skins.
# Si la variable = 0 (donc au démarage) alors c'est le fichier Window.png qui est utilisé. (Le fichier natif)
# Si la variable = 1 alors c'est le fichier Window1.png qui est utilisé.
# Si la variable = 2 alors c'est le fichier Window2.png qui est utilisé.
# Si la variable = 3 alors c'est le fichier Window3.png qui est utilisé...

#<--Mode d'emplois pour l'opacité -->
#La valeur contenue dans la variable choisis permet de régler l'opacité des fenêtres.
#Si la Vairiable à pour valeur 0, c'est la valeur réglé par défaut  qui est utilisée.
#Sinon c'est la valeur comprise entre (1 <=> 256)-1 qui est utilisée.



#--------------------------------------------------------------------------
#=Configuration=
#--------------------------------------------------------------------------

#Choix de la variable pour le fichier Window#
IdVariableWindow = 1 #Numéro de la variable à utiliser pour le Window

#Opacité par défaut#
OpaciteDep = 200 #L'opacité de départ (0 (transparent) à 255 (Opaque))

#Choix de la variable pour le réglage de l'opacitét#
IdVariableOpacite  =  2 # Numéros de la variable pour  l'o'opacité des menus.
#(0 (opacité de départ), 1 (transparent) à 256 (Opaque))  (Attention, il y a 1 unité de différence par apport à la norme.)

#--------------------------------------------------------------------------
#=Fin de configuration=
#--------------------------------------------------------------------------

class Window_Base < Window
def initialize(x, y, width, height)
super()

    #Gestion du  fichier Window
        if  $game_variables[IdVariableWindow]==0
        self.windowskin = Cache.system("Window")
else
self.windowskin = Cache.system("Window"+$game_variables[IdVariableWindow].to_s)
end 
    #Fin de Gestion du fichier Window
 
    self.x = x
    self.y = y
    self.width = width
    self.height = height
    self.z = 100
   
    #Gestion de l'opacité
    if  $game_variables[IdVariableOpacite]==0
      self.back_opacity = OpaciteDep
    else
    self.back_opacity = $game_variables[IdVariableOpacite]-1
      end
#Fin de gestion de l'opacité.

    self.openness = 255
    create_contents
    @opening = false
    @closing = false
 
end
end

Lien en fichier texte



Revenir en haut Aller en bas
Zangther

Zangther


Messages : 444


Windowsoffgame Empty
MessageSujet: Re: Windowsoffgame   Windowsoffgame Icon_minitimeDim 11 Déc - 12:19

Tu peux même pousser un peu plus loin en faisant carrément un array avec les noms de fichier dedans.

Exemple :

Code:
params = ["WinBlue","WinRed","WinDows"]
#Blablabla
self.windowskin = Cache.system(params[$game_variables[IdVariableWindow]])
#Blablabla

Enfin, le gros problème de ton code, c'est simplement qu'il "écrase" tout le reste. C'est à dire que si tu le place après un script qui fait des modifs sur l'initialize de WindowBase, ben ces modifs sont inutiles.
Ruby, permet un truc cool pour les systèmes tels que RPG maker qui est de pouvoir aliaser ses methodes. Cela permet d'utiliser la précédente version de la méthode afin 'd'ajouter' du code. En programation normale, c'est stupide, mais quand on a des systèmes qui s'ajoutent en un script c'est hyper pratique (ça permet d'assurer la compatibilité tout en restant simple pour l'utilisateur final).

Voici ce que tu pourrais faire.
Code:
  alias init_old initialize
  def initialize(x, y, width, height)
    init_old(x, y, width, height)
    self.windowskin = Cache.system("Style 10")
    # Blablabla
  end

En gros, cela fera tous les éléments de la methode initialise PLUS tout ce que tu as ajouté là.


Dernière chose. Par rapport à ça :
Code:
"Window"+$game_variables[IdVariableWindow].to_s

Personellement je préfere faire ça :
Code:
"Window#{$game_variables[IdVariableWindow]"
ou alors
Code:
sprintf("Window%d", $game_variables[IdVariableWindow])



Après, je vais pas dire que c'est un révolution ce script étant donné qu'il en existe plein de même genre. Mais bon, la plupart des gens qui ont commencé sur VX sont passé par là (dont moi).

Bon courage pour la suite !
Revenir en haut Aller en bas
Monos

Monos


Messages : 521


Windowsoffgame Empty
MessageSujet: Re: Windowsoffgame   Windowsoffgame Icon_minitimeDim 11 Déc - 12:46

Merci je prend note.

Oué je débute, alors je reste simple. Je cherche comme je peux.
Citation :
Tu peux même pousser un peu plus loin en faisant carrément un array avec les noms de fichier dedans.
Oui mais ce n'est pas trop ce que je voulais. (Enfin aussi que j'ai du mal avec les tableaux)
Car je sais que les gens n'aime pas trop bidouiller les scripts vraiment pour ajouter des choses.
La c'est simple, juste le nom de fichier, par apport à la valeur de la variable choisis. \o/
Plus besoin en théorie de revenir dans le script pour le bidouiller si tu ajoutes un Window.
Juste à la nommer correctement.

Je sais c'est con comme raisonnement, mais pratique.


Revenir en haut Aller en bas
Contenu sponsorisé





Windowsoffgame Empty
MessageSujet: Re: Windowsoffgame   Windowsoffgame Icon_minitime

Revenir en haut Aller en bas
 
Windowsoffgame
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Maker Détente :: Entrepôt :: Scripts :: Scripts Vx-
Sauter vers: