Bienvenue visiteur !
|
Statistiques
Liste des membres
Contact
Mentions légales
272 connectés actuellement
30743103 visiteurs depuis l'ouverture
3476 visiteurs aujourd'hui
Partenaires
Tous nos partenaires
Devenir partenaire
|
❤ 0 Script : AUTOLIGHT 1.3.1
Auteur : Kylock, porté par ???
Logiciel : RPG Maker VX ace
Description : Ce script permet de créer des effets de lumières sur les maps, il est très simple d'utilisation.
1) Placez ce script au dessus de "Main", nommez le comme bon vous semble :
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
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
| #==============================================================================
# AUTOLIGHT 1.3.1 UNOFFICIAL PORTING VX ACE
# 12.27.2008
#------------------------------------------------------------------------------
# SCRIPT BY: Kylock
# PORTING BY: I don't want to be credited.
#
#==============================================================================
# INSTRUCTIONS
#
# Remember, you must have the file "le.png" in your "Graphics\Pictures" folder!
#
# To make an event glow, choose the desired event and comment with the applied
# term. If you want Light 1, comment "LIGHT 1".
#==============================================================================
# ? Change Log
#------------------------------------------------------------------------------
# 1.0 - Original Release
# 1.1 - New light modes added: LIGHT2, TORCHLIT 1, TORCHLIT 2
# - Changed sprite blend mode to ADD
# - Fire-based lights are now red in color
# 1.2 - Bug fixed with looping maps and lights displaying above message boxes
# 1.3 - More bugfixes
#==============================================================================
# ? Light Modes
#------------------------------------------------------------------------------
#LIGHT 1 - Lumière blanche régulière. (Petit)
#FIREPIT - Scintillement.
#LIGHT 2 - Lumière blanche régulière. (Grand)
#LIGHT 3 - Lumière blanche régulière.
#TORCHLIT 1 - Scintillement. (Lourd)
#TORCHLIT 2 - Scintillement. (Lumière)
#==============================================================================
module LES
#The switch used to turn lights ON/OFF
#If the Switch is ON the lights turn OFF
#If the Switch is OFF the lights turn ON
SWITCH = 30
end
#==============================================================================
# ■ Spriteset_Map
#==============================================================================
class Spriteset_Map
alias les_spriteset_map_initalize initialize
def initialize
initialize_effects
les_spriteset_map_initalize
update
end
def initialize_effects
@light_effects = []
setup_lights
end
alias les_spriteset_map_dispose dispose
def dispose
les_spriteset_map_dispose
dispose_effects
end
def dispose_effects
for effect in @light_effects
effect.light.dispose
end
@light_effects = []
end
alias les_spriteset_map_update update
def update
les_spriteset_map_update
update_light_effects
end
def setup_lights
for event in $game_map.events.values
next if event.list == nil
for i in 0...event.list.size
if event.list[i].code == 108 and event.list[i].parameters == ["LIGHT 1"]
type = "LIGHT 1"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 2
light_effects.light.zoom_y = 2
light_effects.light.opacity = 100
@light_effects.push(light_effects)
end
if event.list[i].code == 108 and event.list[i].parameters == ["FIREPIT"]
type = "FIREPIT"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 300 / 100.0
light_effects.light.zoom_y = 300 / 100.0
light_effects.light.opacity = 100
@light_effects.push(light_effects)
end
if event.list[i].code == 108 and event.list[i].parameters == ["LIGHT 2"]
type = "LIGHT 2"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 1
light_effects.light.zoom_y = 1
light_effects.light.opacity = 150
@light_effects.push(light_effects)
end
if event.list[i].code == 108 and event.list[i].parameters == ["LIGHT 3"]
type = "LIGHT 3"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 6
light_effects.light.zoom_y = 6
light_effects.light.opacity = 150
@light_effects.push(light_effects)
end
if event.list[i].code == 108 and event.list[i].parameters == ["TORCHLIT 1"]
type = "TORCHLIT 1"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 6
light_effects.light.zoom_y = 6
light_effects.light.opacity = 150
@light_effects.push(light_effects)
end
if event.list[i].code == 108 and event.list[i].parameters == ["TORCHLIT 2"]
type = "TORCHLIT 2"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 6
light_effects.light.zoom_y = 6
light_effects.light.opacity = 150
@light_effects.push(light_effects)
end
end
end
for effect in @light_effects
case effect.type
when "LIGHT 1"
effect.light.x = effect.event.screen_x - 64
effect.light.y = effect.event.screen_y - 86
effect.light.blend_type = 1
when "FIREPIT"
effect.light.x = effect.event.screen_x - 96 + rand(6) - 3
effect.light.y = effect.event.screen_y - 118 + rand(6) - 3
effect.light.tone = Tone.new(255,-100,-255, 0)
effect.light.blend_type = 1
when "LIGHT 2"
effect.light.x = effect.event.screen_x - 32
effect.light.y = effect.event.screen_y - 54
effect.light.blend_type = 1
when "LIGHT 3"
effect.light.x = effect.event.screen_x - 182 - 20
effect.light.y = effect.event.screen_y - 214
effect.light.blend_type = 1
when "TORCHLIT 1"
effect.light.x = effect.event.screen_x - 182 - 20 + rand(20) - 10
effect.light.y = effect.event.screen_y - 214 + rand(20) - 10
effect.light.tone = Tone.new(255,-100,-255, 0)
effect.light.blend_type = 1
when "TORCHLIT 2"
effect.light.x = effect.event.screen_x - 182 - 20
effect.light.y = effect.event.screen_y - 214
effect.light.tone = Tone.new(255,-100,-255, 0)
effect.light.blend_type = 1
end
end
end #def setup_lights
def update_light_effects
if $game_switches[LES::SWITCH]
for effect in @light_effects
effect.light.visible = false
end
else
for effect in @light_effects
effect.light.visible = true
end
end
for effect in @light_effects
case effect.type
when "LIGHT 1"
effect.light.x = effect.event.screen_x - 64
effect.light.y = effect.event.screen_y - 86
when "FIREPIT"
effect.light.x = effect.event.screen_x - 96 + rand(6) - 3
effect.light.y = effect.event.screen_y - 118 + rand(6) - 3
effect.light.opacity = rand(10) + 90
when "LIGHT 2"
effect.light.x = effect.event.screen_x - 32
effect.light.y = effect.event.screen_y - 54
when "LIGHT 3"
effect.light.x = effect.event.screen_x - 182 - 20
effect.light.y = effect.event.screen_y - 214
when "TORCHLIT 1"
effect.light.x = effect.event.screen_x - 182 - 20 + rand(20) - 10
effect.light.y = effect.event.screen_y - 214 + rand(20) - 10
effect.light.opacity = rand(30) + 70
when "TORCHLIT 2"
effect.light.x = effect.event.screen_x - 182 - 20
effect.light.y = effect.event.screen_y - 214
effect.light.opacity = rand(10) + 90
end
end
end #def update_light_effects
end #class Spriteset_Map
#==============================================================================
# ■ Light_Effect
#==============================================================================
class Light_Effect
attr_accessor :light
attr_accessor :event
attr_accessor :type
def initialize(event, type)
@light = Sprite.new
@light.bitmap = Cache.picture("le.png")
@light.visible = true
@light.z = 190
@event = event
@type = type
end
end #class Light_Effect
#==============================================================================
# ■ Scene_Map
#==============================================================================
class Scene_Map
alias les_pre_transfer pre_transfer
def pre_transfer
les_pre_transfer
@spriteset.dispose_effects
end
alias les_post_transfer post_transfer
def post_transfer
@spriteset.initialize_effects
les_post_transfer
end
end #Scene_Map
#==============================================================================
# END OF FILE
#============================================================================== |
2) Placez cette image dans "Graphics/Pictures" en la nommant "le" :
3) Créez un événement puis mettez l'un de ces choix dans un commentaire :
LIGHT 1 - Lumière blanche régulière. (Petit)
FIREPIT - Scintillement.
LIGHT 2 - Lumière blanche régulière. (Grand)
LIGHT 3 - Lumière blanche régulière.
TORCHLIT 1 - Scintillement. (Lourd)
TORCHLIT 2 - Scintillement. (Lumière)
SCREEN :
|
naouchel98 -
posté le 12/10/2014 à 15:27:26 (47 messages postés)
| Je suis un carton... | Merci Beaucoup pour ce script! Il fonctionne à merveille! Très Utile pour ceux qui utilisent les changements Jour/Nuit! Je te reremerci!
|
J'aime les shorts, ça garde les genoux bien au frais! |
Necromandien -
posté le 15/10/2014 à 23:49:46 (156 messages postés)
| Des p'tits trous, des p'tits trous, TOUJOURS DES P'TITS TROUS !!! | Mais de rien, c'est un plaisir de faire plaisir
|
Un magicien n'est jamais en retard, ni en avance d'ailleurs, il arrive précisément à l'heure prévue ! |
Mouton frisée -
posté le 07/06/2015 à 20:45:00 (16 messages postés)
| Erre dans les prairies à la recherche d'autres moutons frisés... | Merci beaucoup!! Ca va beaucoup m'aider pour mon jeu d'horreur
|
selhan -
posté le 30/08/2015 à 14:29:34 (127 messages postés)
| | Bonjour,
Merci beaucoup pour ce script simple et efficace.
Une question toutefois: comment "annuler" un effet de lumière? Je souhaite que sur mon évènement x, l'effet lumineux n'apparaisse qu'à un instant T (défini via variable) puis disparaisse à un instant T2 (idem).
Mais je n'y arrive pas: l'effet lumineux n'attend pas la variable T pour apparaître, et ne disparaît pas en T2 même en effaçant l'évènement. Quelqu'un peut-il m'aider?
EDIT: question stupide. Promis, à l'avenir, je lis les scripts avant de poser des questions.
|
Dave30 -
posté le 23/07/2016 à 19:58:07 (5 messages postés)
| | NICE !
|
| | Bonjour,
Je sais que ce post date d'un an mais je n'ai pas compris comment on faisait pour mettre la lumière en ON/OFF avec le Switch, car j'ai beau le faire avec diffèrent switch, la lumière est toujours allumée. Est ce que quelqu'un pourrait m'expliquer, s'il vous plait ? Merci ^^
|
Verehn -
posté le 03/08/2016 à 15:00:55 (9058 messages postés)
- | Vhehrhehn | AliceAndSakura: Il faut peut-être changer de page avec un switch local ? Sur une page tu fais briller, sur l'autre tu ne le fais pas, et tu changes de page en fonction de la situation.
|
Eldrao ~ PakuPaku ~ Winged Light ~ Ruin ~ Ma galerie ~ LTDAD ~ Don de graphismes plateforme 2D |
| | Verehn: J'ai justement essayé de faire avec plusieurs pages sur le switch mais ça ne marche pas justement. C'est pour ça que je ne comprends pas. Pourtant ça marche pour d'autres événements que j'ai fait (pour ouvrir des portes avec un levier par exemple) mais pour celui la ça ne marche pas étrangement. J'ai essayé avec une condition aussi et la lumière reste allumée tout le temps. Alors c’est pour ça que je demande parce que je pensais qu'il y avait un truc spécial qu'il fallait faire ^^.
|
Gari -
posté le 22/10/2020 à 17:45:52 (5901 messages postés)
- | | Si le script est comme celui de VX, il faut forcer l'actualisation des graphismes, un interrupteur ne suffira pas.
Après, je ne saurais plus dire s'il s'agissait de Graphics.update dans un appel de script ou autre chose (par exemple update_light_effects).
| |
|
|