❤ 0 Auteur : DrakeRoxas
Logiciel : RPG Maker XP
Nombre de scripts : 1
L'utilisation de ce script est destiné à des utilisateurs avertis.
Je ne pense pas que ce serais vraiment utile de mettre des screens puisqu'ils ne montrent pas vraiment le changement de couleur (du moins pas la fluidité)
Installation
Placer ce script au dessus du Main.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
| class Window_Base < Window
# x, y, w, h, text, align => identique au self.contents.draw_text
# speed => vitesse de changement de couleur (compris entre 1 et 255)
# num => numéro de la couleur (de préférence, changer de numéro pour chaque texte)
def draw_rainbow_text(x, y, w, h, text, align = 0, speed = 1, num = 0)
# Variables de départ
@color = [] if @color == nil
num = 0 if num < 0
speed = 255 if speed > 255
speed = 1 if speed < 1
align = 0 if (align < 0 or align > 2)
# Couleur de départ
if @color[num] == nil
@color[num] = []
@color[num][0] = 255 # Rouge
@color[num][1] = 0 # Vert
@color[num][2] = 0 # Bleu
end
# Changement de couleur
c = @color[num]
if c[0] == 255 and c[1] < 255 and c[2] == 0
c[1] += speed
c[1] = 255 if c[1] > 255
elsif c[0] > 0 and c[1] == 255 and c[2] == 0
c[0] -= speed
c[0] = 0 if c[0] < 0
elsif c[0] == 0 and c[1] == 255 and c[2] < 255
c[2] += speed
c[2] = 255 if c[2] > 255
elsif c[0] == 0 and c[1] > 0 and c[2] == 255
c[1] -= speed
c[1] = 0 if c[0] < 0
elsif c[0] < 255 and c[1] == 0 and c[2] == 255
c[0] += speed
c[0] = 255 if c[0] > 255
elsif c[0] == 255 and c[1] == 0 and c[2] > 0
c[2] -= speed
c[2] = 0 if c[0] < 0
end
# Ecrire
self.contents.font.color = Color.new(c[0], c[1], c[2])
self.contents.draw_text(x, y, w, h, text, align)
end
end |
Utilisation
Trouvez le texte où vous avez choisi de changer la couleur.
Pour ce faire :
- Allez dans votre fenêtre (Window_X, les noms sont assez explicite pour les scripts de base) et faites Ctrl+F.
- Cherchez le texte "self.contents.draw_text". Il devrait être au format
1
| self.contents.draw_text(x, y, w, h, text) |
ou
1
| self.contents.draw_text(x, y, w, h, text, align) |
(Tout ce qui est entre parenthèses est censé être écrit différemment)
- Remplacer "self.contents.draw_text" par "draw_rainbow_text"
- Optionnel : Personnalisez la commande (Voir le premier commentaire).
Maintenant le texte reste rouge, on vas donc chercher à le faire changer de couleur :
Vous êtes toujours dans votre Window_X. Le problème de ce script c'est qu'il faut lui dire de se mettre à jour tout seul ...
Pour celà :
- Utilisez Ctrl+Maj+F et rechercher votre "Window_X"
- Vous devriez trouver plusieurs lignes contenant "@x_window = Window_X.new". Et bien vous allez agir de la même manière pour tous ...
Double-cliquez sur la ligne, copier le "@x_window"
- Faites Ctrl+F et chercher "def update" (Il ne devrait en avoir qu'un seul pour tout le script)
- En dessous de "def update", ajouter la ligne
Voilà, le texte change de couleur
Bien sur, je reste disponible pour l'ajouter dans tel ou tel script (en particulier les scripts ajoutés, ce tuto ne leur conviens pas forcement ...)
Mis à jour le 22 novembre 2020.
|