Forum sur le projet Red Moonlight et sur le game making


    rgss2 pour les nuls

    Partagez
    avatar
    Adurna
    Nouveau
    Nouveau

    Messages : 22
    Date d'inscription : 08/09/2010

    rgss2 pour les nuls

    Message  Adurna le Mer 8 Sep - 22:04


    Tuto en cour de construction



    Adurna:
    Bien le bonjour Invité pour suivre ce tuto il te faudra tout de même de bonne base en évent car je ne compte pas re-expliqué ce qu'est une variable, un interrupteur, des condition,...
    en gros je te demande juste de savoir utiliser:
    -Variable
    -interrupteur
    -condition
    -+,-,*,/,(et éventuélement %)

    élève:
    Bon tu commences à être chiant à parler... On commence le cours, oui ou non!?

    Adurna:
    Oui oui, on commence mais c'était important de te mettre en garde ^^
    Bien pour commencer, on va faire une fenêtre et on va l'appeler "Window_La_Première"

    élève:
    Beuh c'est nul comme nom...

    Adurna:
    Oui tu as raison. De plus, c'est mieux de prendre un nom simple pour ses Windows, ça évite de faire des fautes en les manipulant ^^
    On va donc la nommer "Window_1"

    Maintenant, je te donne le code minimal :
    Code:
    class Window_1<Window_Base

        def initialize
          super(x,y,width,height)
          self.contents = Bitmap.new(width - 32, height - 32)
          refresh
        end

        def refresh
        end
    end

    Voilà voilà.

    élève:
    Euh... C'est normal que je ne comprenne pas? C'est un peu du chinois pour moi là!

    Adurna:
    Bah attend je vais t'expliquer ligne par ligne.
    Code:
    class Window_1<Window_Base
    Bien. Dans cette ligne je nomme ma fenêtre &quot;Window_1&quot; et je l'hérite de Window_Base. En gros ma fenêtre sera une fille de Window_Base, ce qui me permettra d'utiliser des bouts de code qui sont dans Window_Base.
    Bon en suite
    Code:
    def initilize
    c'est tout simplement la méthode (s'est un peut comme une fonction en C, un peu un sous programme) dans laquelle on va initialiser les variables.
    Code:
    super(x,y,width,height)
    super fait appèle à la méthode initilize de Window_Base qui va nous permette de créer réellement la fenêtre.
    Pour cela il faut :
    -remplacer x par la position horizontal de la fenêtre,
    -remplacer y par la position vertical de la fenêtre,
    -remplacer width par la longueur de la fenêtre,
    -et enfin remplacer height par la hauteur de la fenêtre.

    Code:
    self.contents = Bitmap.new(width - 32, height - 32)
    On crée une Bitmap dans la fenêtre celui si permettra d'ajouté du texte, des icônes, etc.
    Code:
    refresh
    On appelle la méthode refresh
    Code:
    end
    On ferme la méthode initialize.
    Code:
    def refresh
    end
    La méthode refresh, qui, pour l'instant est vide^^
    Dans cette méthode on va générer toute la partie graphique de notre fenêtre comme les textes, les icônes, l'affichage de variables, etc.

    élève:
    Euh oui merci, mais là elle est vide ma fenêtre, c'est trop laid et pas vraiment utile!

    Adurna:
    Oui attend, la suite arrive^^
    Puisque tu y tient tant, on va mettre du texte dans notre fenêtre.
    Pour afficher du texte la &quot;fonction&quot; que l'on va utiliser est :
    Code:

    self.contents.draw_text(x,y,width,height,valeur)

    Allez, c'est parti pour l'analyse du code:
    x,y,width et heith c'est comme pour la fenêtre, c'est la position et la taille (pour le &quot;rectangle&quot; dans le quel va s'afficher le texte)

    Et la valeur c'est ce que l'on va afficher:
    p
    Par exemple le texte est:
    Code:

    self.content.draw_text(x,y,width,height, "mon texte")
    Sinon par exemple pour afficher le contenu de la variable 1 des évents c'est:
    Code:

    self.content.draw_text(x,y,width,heigth,$game_variables[001])

    élève:
    Ok merci, mais peut-on changer la couleur, la police et la taille du texte?
    Parce que tout blanc et tout simple c'est un peut banal...

    Adurna:
    Oui bien-sur que l'on peut et en plus c'est tout simple regarde:
    Alors pour la police c'est:
    Code:

    self.contents.font.name = "nom de la police"
    pour la taille du texte c'est:
    Code:

    self.contents.font.size= taille #par exemple 12 (s'est les même taille que sur un traitement de texte)
    et enfin la couleur:
    Code:

    self.contents.font.color = color.new (R,V,B,α)

    élève:
    Euh, oui c'est bien gentil tout ça mais s'est quoi R,V,B et α?


    Adurna:
    R est le taux de rouge, tu peux le faire varier entre 0 et 255
    V est le taux de vert, tu peux le faire varier entre 0 et 255
    B est le taux de bleu, tu peux le faire varier entre 0 et 255
    et α est le taux de transparence, tu peux le faire varier entre...

    élève:
    0 et 255 si j'ai bien compris^^

    Adurna:
    oui C'est ça^^

    élève:
    O_o s'est un peut compliqué ça. T'aurais pas un truc pour me faciliter la tache par hasard?

    Adurna:
    Si tu va sur ton moteur de recherche adoré et tu cherche &quot;code couleur hexadécimal&quot; ou &quot;code couleur RVB (ou RGB)&quot; et tu trouvera plain de table de couleur^^


    élève:
    Oh super cool merci.
    Sinon tout à l'heure tu parlais de traitement de texte, alors dit moi y a pas moyen de (tout comme dans un traitement de texte) mettre en gras, italique, souligné et/ou barré?

      La date/heure actuelle est Mer 20 Sep - 2:27