- LightNoxMembre
- Nombre de messages : 1759
Age : 33
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008
RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Lun 1 Oct 2012 - 12:42
Bonjour amis maker ^^, aujourd'hui nous allons voir comment afficher un icone dans la fenetre que nous avons vue hier et aussi comment afficher un texte
Cela va vous permettre d'apprendre RGSS3 sans vous prendre la tête, grâce à des cours facile de compréhension.
Mais tout d'abord, nous allons voir ensemble des notions que nous n'avons pas vue hier
Les variables, les classe et les méthodes, ont va les expliqués comme ça se sera plus clair pour vous.
il y a 5 types de variables :
il y a les variables dites "Globale", elle se représente comme ceci => $test et elle sont utilisable partout (je vous le déconseille pour le moment).
il y a les variables dites "De Classe", elle se représente comme ceci => @test et elle sont accessible dans la class ou l'on travaille.
il y a les variables dites "Locale", elle se représente comme ceci => test (toute en minuscule) elle sont utilisable dans le bloc de déclaration.
il y a les variables dites "Constante", elle se représente comme ceci => Test => Test (la première lettre doit être une majuscule) une fois déclarer et initialiser avec une valeur elle sont inchangeable.
il y a les variables dites "De Classe Partager", elle se représente comme ceci => @@test elle sont accessible par tous les objets d'une même classe.
Class : elle se représente par le mot clé "class" et se termine par un "end" => Une classe est une représentation abstraite d'une chose présentant des propriétés et des fonctionnalités. Prenons un exemple : les plans d'une voitures sont une classe, c'est abstrait, et l'on ne peut pas la conduire. Il faut passer par un "constructeur" pour utiliser ces plans et en faire un objet concret exploitable.
Méthode : elle se représente par le mot clé "def" et se termine par un "end" => une fois qu'une méthode et défini on a pas besoin de la redéfinir 100000x pour la réutiliser, cela permet de gagner en lisibilité et en place dans notre code.
/1\Comment afficher un icône dans une fenêtre ? :
On va mettre le code suivant dans la méthode "refresh" de votre window_test, juste en dessous de "self.contents.clear"
donc :
- Code:
bitmap = Cache.system("Iconset")
icon_index = 260
icon_index2 = 270
rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
rect2 = Rect.new(icon_index2 % 16 * 24, icon_index2 / 16 * 24, 24, 24)
contents.blt(0, 0, bitmap, rect)
contents.blt(270, 0, bitmap, rect2)
ceci :
- Code:
bitmap = Cache.system("Iconset")
l'Iconset pour ceux qui ne connaissent pas, c'est une planche d’icône ou les icônes font 16x24 pixel, ces icônes permettent d'imager les objets que vous pourriez posséder dans votre jeu.
ceci :
- Code:
icon_index = 260 et icon_index2 = 270
ceci :
- Code:
rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
et rect2 = Rect.new(icon_index2 % 16 * 24, icon_index2 / 16 * 24, 24, 24)
ceci :
- Code:
contents.blt(0, 0, bitmap, rect) et
contents.blt(270, 0, bitmap, rect2)
Voilà pour l'affichage d'un icône ^^.
/2\Comment afficher un texte dans une fenêtre ? :
Ne vous inquiétez pas pour afficher un texte c'est beaucoup plus simple x)
il vous suffit de mettre en dessous des deux "contents.blt" ceci :
- Code:
contents.draw_text(25, 0, 300, 25, "Test 1")
contents.draw_text(300, 0, 300, 25, "Test 2")
x et y les coordonnées de positionnement du texte;
width et height les coordonnées de positionnement sur la largeur et la hauteur de la fenêtre.
ce qui vous donne comme code entier :
- Code:
#-------------------------------------------------------------------------------
class Window_Test < Window_Base
#-------------------------------------------------------------------------------
def initialize
super(0, 0, Graphics.width, Graphics.height)
refresh
end
#-------------------------------------------------------------------------------
def refresh
self.contents.clear
bitmap = Cache.system("Iconset")
icon_index = 260
icon_index2 = 270
rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
rect2 = Rect.new(icon_index2 % 16 * 24, icon_index2 / 16 * 24, 24, 24)
contents.blt(0, 0, bitmap, rect)
contents.blt(270, 0, bitmap, rect2)
contents.draw_text(25, 0, 300, 25, "Test 1")
contents.draw_text(300, 0, 300, 25, "Test 2")
end
end
#-------------------------------------------------------------------------------
class Scene_Test < Scene_Base
#-------------------------------------------------------------------------------
def start
super
create_window_test
end
#-------------------------------------------------------------------------------
def update
super
return_scene if Input.trigger?(:B)
if Input.trigger?(:B)
Sound.play_cancel
end
end
#-------------------------------------------------------------------------------
def create_window_test
@window_test = Window_Test.new
end
end
#-------------------------------------------------------------------------------
Voilà c'est la fin du cour sur l'affichage d'un icône et d'un texte sur une fenêtre de base.
A bientôt les nuls
- YasanMembre
- Nombre de messages : 149
Age : 38
Distinction : aucune
Date d'inscription : 18/01/2011
Re: RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Lun 1 Oct 2012 - 13:25
Merci pour le tuto ^^
Donc, l'affichage d'éléments se fait dans la méthode Refresh puisque c'est celle qui est vérifiée à chaque fois, c'est ça ?
Par contre, la formule qui permet de récupérer le bloc correspondant à notre icône dans la bitmap, c'est une formule qu'on utilise à chaque fois qu'on veut utiliser une icône dans une fenêtre ? Et si, imaginons, on veut faire apparaître un bloc d'un charset, la formule change j'imagine mais comment on fait pour la connaitre ?
Donc, l'affichage d'éléments se fait dans la méthode Refresh puisque c'est celle qui est vérifiée à chaque fois, c'est ça ?
Par contre, la formule qui permet de récupérer le bloc correspondant à notre icône dans la bitmap, c'est une formule qu'on utilise à chaque fois qu'on veut utiliser une icône dans une fenêtre ? Et si, imaginons, on veut faire apparaître un bloc d'un charset, la formule change j'imagine mais comment on fait pour la connaitre ?
- LightNoxMembre
- Nombre de messages : 1759
Age : 33
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008
Re: RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Lun 1 Oct 2012 - 13:28
Donc, l'affichage d'éléments se fait dans la méthode Refresh puisque c'est celle qui est vérifiée à chaque fois, c'est ça ?
Oui c'est ça vue que dans la méthode initialize, le refresh et appeler ^^
Par contre, la formule qui permet de récupérer le bloc correspondant à notre icône dans la bitmap, c'est une formule qu'on utilise à chaque fois qu'on veut utiliser une icône dans une fenêtre ?
Oui cette formule permet de récupérer l'icône voulu grâce a l'index. Mais il y a plus simple(mais plus long a expliquer ^^) mais sa je l'expliquerais plus tard dans un autre cour ^^.
Et si, imaginons, on veut faire apparaître un bloc d'un charset, la formule change j'imagine mais comment on fait pour la connaitre ?
Ahah cette formule je vous la donnerais dans le prochain cour mais il va falloir patienter un peu x).
Re: RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Lun 1 Oct 2012 - 14:51
LightNox a écrit:Donc, l'affichage d'éléments se fait dans la méthode Refresh puisque c'est celle qui est vérifiée à chaque fois, c'est ça ?
Oui c'est ça vue que dans la méthode initialize, le refresh et appeler ^^
Attention, la méthode refresh, n'a pour objectif, par convention, de dessiner sur l'objet Bitmap "contents" de la fenêtre. Et ne doit surtout pas être appelé à chaque boucle. Cette méthode est appelé uniquement dans le cas où ce qui est affiché doit être modifié.
- YasanMembre
- Nombre de messages : 149
Age : 38
Distinction : aucune
Date d'inscription : 18/01/2011
Re: RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Lun 1 Oct 2012 - 16:32
Tu veux dire que si, par exemple, on intègre une image de fond fixe pour toute la scène, on ne l'intègre pas dans Refresh, mais dans Initialize (par exemple), mais que par contre, une image qui changerais, genre une icône d'armure qui change selon ce que tu sélectionnes, c'est dans Refresh.
J'ai bon ?
J'ai bon ?
- GummyStaffeux retraité
- Nombre de messages : 2666
Age : 32
Localisation : Belgique
Distinction : Modérateur imprévisible
Papy Lolo' [Nabots Nimousse]
Date d'inscription : 27/01/2008
Re: RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Lun 1 Oct 2012 - 19:14
C'est ça Yasan, tout en prenant soin de vérifier qu'il est nécessaire de changer l'image dans la boucle en cours, pour éviter des opérations inutiles et optimiser l'exécution bien entendu.
- LightNoxMembre
- Nombre de messages : 1759
Age : 33
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008
Re: RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Lun 1 Oct 2012 - 19:45
Oui c'est sur mais la pour l'exemple j'ai préférer le mettre dans le refresh ^^
mais en temps normal oui la méthode refresh sert a rafraichir le bitmap si une information et modifier en autre la on modifie pas d'information donc j'ai préférer faire comme ça ^^
mais en temps normal oui la méthode refresh sert a rafraichir le bitmap si une information et modifier en autre la on modifie pas d'information donc j'ai préférer faire comme ça ^^
Re: RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Mer 3 Oct 2012 - 17:14
Je pense que pour éviter la confusion @test peut être appelé une variable d'instance et @@test une variable de classe. In Fact, une classe en ruby est un Objet de type "Class".
Par exemple:
Je pense tout de même que, bien que je salue vraiment ton initiative, il faudrait peut être expliquer en long en large ce qu'est l'orienté objet (orienté classe) et comment ça fonctionne?
Par exemple:
- Code:
class Test
p self
end
Je pense tout de même que, bien que je salue vraiment ton initiative, il faudrait peut être expliquer en long en large ce qu'est l'orienté objet (orienté classe) et comment ça fonctionne?
- LightNoxMembre
- Nombre de messages : 1759
Age : 33
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008
Re: RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Mer 3 Oct 2012 - 19:35
oui tu as raison grimimi je ferais une petite parenthèse sur ce sujet dans le prochain cour ^^
mais je ne suis pas encore a parler des variables de classe partager comme dans le script Window_MenuCommand
mais j'y viendrais bientôt je pense
merci pour le compliment
mais je ne suis pas encore a parler des variables de classe partager comme dans le script Window_MenuCommand
mais j'y viendrais bientôt je pense
merci pour le compliment
- kuro01Membre
- Nombre de messages : 4
Distinction : aucune
Date d'inscription : 10/12/2012
Re: RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Lun 17 Déc 2012 - 23:42
salut, j'ai commencé a suivre tes cours ce qui me permet de comprendre un peu mieux comment fonctionnent les scripts. Merci beaucoup et vivement le prochain cours !
- LightNoxMembre
- Nombre de messages : 1759
Age : 33
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008
Re: RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Lun 17 Déc 2012 - 23:55
C'est un plaisir kuro ^^
Le problème c'est qui n'y aura pas de cour sur le rgss3 avant l'année prochaine x)
Mais dès que j'aurais fait le 3ème cour je ferais aussi une feuille d'exercice pratique sur le rgss3
Le problème c'est qui n'y aura pas de cour sur le rgss3 avant l'année prochaine x)
Mais dès que j'aurais fait le 3ème cour je ferais aussi une feuille d'exercice pratique sur le rgss3
- Medal'Membre
- Nombre de messages : 413
Age : 27
Localisation : Alsace
Distinction : aucune
Date d'inscription : 23/12/2012
Re: RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Lun 24 Déc 2012 - 12:26
Cool, ces cours, depuis le temps que j'attendais ça : )
Vivement la partie 3 : )
Vivement la partie 3 : )
Re: RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Dim 7 Juil 2013 - 13:28
Merci pour tes cours
Je vois que tu passes toujours sur le forum, à quand un chapitre 3?
Je vois que tu passes toujours sur le forum, à quand un chapitre 3?
- Medal'Membre
- Nombre de messages : 413
Age : 27
Localisation : Alsace
Distinction : aucune
Date d'inscription : 23/12/2012
Re: RGSS3 pour les nul (Chapitre 2: Affichage d'un Icone et d'un Texte)
Ven 23 Aoû 2013 - 21:26
Tu est le seul qui fait des cours sur le RGSS 3.
Pour l'instant je révise mais c'est pour quand la partie 3 ?
Pour l'instant je révise mais c'est pour quand la partie 3 ?
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|