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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
| =begin
\--------------------------------------------------------------------------------------------------------/
--------------- Réputation ---------------
/--------------------------------------------------------------------------------------------------------\
Ecrit par : Mariolucky
Date : le 04-08-2012
Version : 1.0
Fonction : Ajoute une réputation à l'équipe, qu'on peut après utiliser dans les événements.
Utilisation : Placez ce script au dessus de Main et lisez les instructions dans le script.
Installation :
- Modification du script Main :
Allez dans le script Main et, à la ligne 11, collez ceci :
unless Reputation.check?
print "Les valeurs par défauts de la réputation sont incorrectes !"
exit
end
Cela sert à vérifier si les valeurs par défauts sont correctes, si non ça renvoie un message d'erreur.
- Personnalisation du script :
A partir de la ligne 64, c'est le module de configuration du script (Ok il est petit, mais j'utilise les modules
pour mieux m'organiser.). Vous pouvez respectivement modifier : la valeur maximale de la réputation (la
valeur minimale est automatiquement 0), la valeur par défaut et le nom de la réputation. Ne toucher à rien
de ce qu'il y a après.
- Utilisation du script :
Pour augmenter la réputation, il faut utiliser la commande "Appeler script..." et mettre ceci :
$game_party.modif_reputation(VALEUR)
où VALEUR est la valeur à ajouter. Pour retirer de la réputation, effectuez la même opération mais mettez
un chiffre négatif, comme -3.
Pour tester la réputation, on utilise une condition et à la 4ème page, dans Script, on met :
$game_party.reputation SYMBOLE CHIFFRE
Pour ceux qui ne programme pas, voici les différents symbole que vous pouvez utiliser :
== : strictement égal à.
!= : différent de.
>= : supérieur ou égal à.
<= : inférieur ou égal à.
> : strictement supérieur à.
< : strictement inférieur à.
pour CHIFFRE, vous pouvez mettre un chiffre, ou une variable. En Ruby, pour mettre une variable on utilise
$game_variables[ID], où ID est l'id de la variable.
exemple : $game_party.reputation >= 65
on test si la réputation est supérieur ou égale à 65.
Voilà ^^
=end
# Module Reputation : module de configuration du script
module Reputation
MaxValue = 100 # Valeur maximale de la réputation
DefaultValue = 50 # Valeur par défaut de la réputation
Name = "Réputation" # Nom de la réputation
def self.check?
if MaxValue <= 0 or MaxValue <= DefaultValue
return false
else
return true
end
end
end
# Window_Reputation : fenêtre de la réputation à afficher dans le menu
class Window_Reputation < Window_Base
# Initialisation
def initialize(x, y)
super(x, y, 160, (WLH + 32) * 2 - 16)
refresh
end
def refresh
self.contents.clear
draw_currency_value($game_party.reputation, 4, 0, 120)
end
# Affichage du texte
def draw_currency_value(value, x, y, width)
self.contents.font.color = normal_color
self.contents.draw_text(x, y + 32, width, WLH, value, 2)
self.contents.font.color = system_color
self.contents.draw_text(x, y, width, WLH, Reputation::Name, 0)
end
end
# Modification de Game_Party pour ajouter une variable @reputation
class Game_Party < Game_Unit
attr_reader :reputation # Création de la variable @reputation en lecture
alias initialize_reput initialize
# Initialisation
def initialize
initialize_reput
@reputation = Reputation::DefaultValue
if @reputation > Reputation::MaxValue
@reputation = Reputation::MaxValue
elsif @reputation < 0
@reputation = 0
end
end
# Modification de la réputation
def modif_reputation(num)
if num.is_a?(Integer)
@reputation += num
if @reputation > Reputation::MaxValue
@reputation = Reputation::MaxValue
elsif @reputation < 0
@reputation = 0
end
else
print ("Impossible de modifier la valeur de la réputation.")
return
end
end
end
# Modification de Scene_Menu pour afficher la fenêtre dans le menu
class Scene_Menu < Scene_Base
# Création d'alias pour implenter la fenêtre de Réputation
alias start_reput start
alias update_reput update
alias terminate_reput terminate
def start
start_reput
@reput_window = Window_Reputation.new(0, 0)
@reput_window.y = @gold_window.y - @reput_window.height
end
def update
update_reput
@reput_window.update
end
def terminate
terminate_reput
@reput_window.dispose
end
end |