1 |
i do host a room with random modes. but i know what your asking.. an automatic rotation room..
|
1 |
i do host a room with random modes. but i know what your asking.. an automatic rotation room..
|
2 |
my worry is since many modes were written long ago and have bugs that i can not yet fix (lack of skills) i would prefer to wait another year before i think they will all be ready for the public.
|
2 |
my worry is since many modes were written long ago and have bugs that i can not yet fix (lack of skills) i would prefer to wait another year before i think they will all be ready for the public.
|
3 |
\n
|
3 |
\n
|
4 |
this is the second time you have tried to deter me from making these modes DKBuzz
|
4 |
this is the second time you have tried to deter me from making these modes DKBuzz
|
5 |
\n
|
5 |
\n
|
6 |
"we just need trains in zk, not 20234782380727304740 different mods no one plays anyways"
|
6 |
"we just need trains in zk, not 20234782380727304740 different mods no one plays anyways"
|
7 |
\n
|
7 |
\n
|
8 |
so i will remain civil. i will accept the truths that few if any may ever be played. and indeed there use is limited.
|
8 |
so i will remain civil. i will accept the truths that few if any may ever be played. and indeed there use is limited.
|
9 |
\n
|
9 |
\n
|
10 |
however you cannot control what i enjoy. every mode i make is helping me learn lua.. the latest mode i made involved writing code myself that i could not have done 1 month ago.
|
10 |
however you cannot control what i enjoy. every mode i make is helping me learn lua.. the latest mode i made involved writing code myself that i could not have done 1 month ago.
|
11 |
\n
|
11 |
\n
|
12 |
i figure if im going to write this code to learn to program then why not share it and have fun in the process.
|
12 |
i figure if im going to write this code to learn to program then why not share it and have fun in the process.
|
13 |
\n
|
13 |
\n
|
14 |
and yes this mode was played by other people yesterday.. all my modes have been tried by people.. did they enjoy them.. not always.. did they sometimes get angry.. yes.. but did they also sometimes enjoy and play for hours.. yes
|
14 |
and yes this mode was played by other people yesterday.. all my modes have been tried by people.. did they enjoy them.. not always.. did they sometimes get angry.. yes.. but did they also sometimes enjoy and play for hours.. yes
|
15 |
\n
|
15 |
\n
|
16 |
\n
|
16 |
\n
|
17 |
this mode was actualy made at the request of Googlefrog the game developer "Some sort of more controllable magnetic units?"
|
17 |
this mode was actualy made at the request of Googlefrog the game developer "Some sort of more controllable magnetic units?"
|
18 |
but
i
think
it
can
be
done
much
better.
so
im
remaking
this
mod
as
we
speak
|
18 |
but
i
think
it
can
be
done
much
better.
|
|
|
19 |
especialy since this mode doesnt even seem to pull units properly
|
|
|
20 |
im going to modify a outlaw weapon instead
|
|
|
21 |
so im remaking this mod as we speak
|
19 |
\n
|
22 |
\n
|
20 |
for
example
i
just
learned
to
use
nil
and
not
not
checks
for
condition
checking
when
modifying
undefined
keypair
values
=)
|
23 |
i
need
to
make
these
modes
if
im
going
to
make
trains
mode
because
i
lack
the
skills
to
do
it
yet.
for
example
i
just
learned
to
use
nil
and
not
'not'
checks
for
condition
checking
when
modifying
undefined
keypair
values
=)
|
21 |
\n
|
24 |
\n
|
22 |
75%
complete
everything
is
a
lobster
|
25 |
here
is
a
sneakpeak
of
another
mode
im
working
on
=)
75%
complete
everything
is
a
lobster
|
23 |
[spoiler] local targetNames = {
|
26 |
[spoiler] local targetNames = {
|
24 |
Conjurer = true,
|
27 |
Conjurer = true,
|
25 |
Glaive = true,
|
28 |
Glaive = true,
|
26 |
Scythe = true,
|
29 |
Scythe = true,
|
27 |
Ronin = true,
|
30 |
Ronin = true,
|
28 |
Reaver = true,
|
31 |
Reaver = true,
|
29 |
Knight = true,
|
32 |
Knight = true,
|
30 |
Sling = true,
|
33 |
Sling = true,
|
31 |
Phantom = true,
|
34 |
Phantom = true,
|
32 |
Gremlin = true,
|
35 |
Gremlin = true,
|
33 |
Imp = true,
|
36 |
Imp = true,
|
34 |
Iris = true,
|
37 |
Iris = true,
|
35 |
\n
|
38 |
\n
|
36 |
Convict = true,
|
39 |
Convict = true,
|
37 |
Dirtbag = true,
|
40 |
Dirtbag = true,
|
38 |
Bandit = true,
|
41 |
Bandit = true,
|
39 |
Rogue = true,
|
42 |
Rogue = true,
|
40 |
Thug = true,
|
43 |
Thug = true,
|
41 |
Outlaw = true,
|
44 |
Outlaw = true,
|
42 |
Felon = true,
|
45 |
Felon = true,
|
43 |
Racketeer = true,
|
46 |
Racketeer = true,
|
44 |
Vandal = true,
|
47 |
Vandal = true,
|
45 |
Snitch = true,
|
48 |
Snitch = true,
|
46 |
Aspis = true,
|
49 |
Aspis = true,
|
47 |
\n
|
50 |
\n
|
48 |
Mason = true,
|
51 |
Mason = true,
|
49 |
Dart = true,
|
52 |
Dart = true,
|
50 |
Scorcher = true,
|
53 |
Scorcher = true,
|
51 |
Fencer = true,
|
54 |
Fencer = true,
|
52 |
Ripper = true,
|
55 |
Ripper = true,
|
53 |
Ravager = true,
|
56 |
Ravager = true,
|
54 |
Dominatrix = true,
|
57 |
Dominatrix = true,
|
55 |
Badger = true,
|
58 |
Badger = true,
|
56 |
Impaler = true,
|
59 |
Impaler = true,
|
57 |
Crasher = true,
|
60 |
Crasher = true,
|
58 |
\n
|
61 |
\n
|
59 |
Quill = true,
|
62 |
Quill = true,
|
60 |
Dagger = true,
|
63 |
Dagger = true,
|
61 |
Scalpel = true,
|
64 |
Scalpel = true,
|
62 |
Halberd = true,
|
65 |
Halberd = true,
|
63 |
Claymore = true,
|
66 |
Claymore = true,
|
64 |
Mace = true,
|
67 |
Mace = true,
|
65 |
Lance = true,
|
68 |
Lance = true,
|
66 |
Flail = true,
|
69 |
Flail = true,
|
67 |
Bolas = true,
|
70 |
Bolas = true,
|
68 |
\n
|
71 |
\n
|
69 |
Wasp = true,
|
72 |
Wasp = true,
|
70 |
Blastwing = true,
|
73 |
Blastwing = true,
|
71 |
Gnat = true,
|
74 |
Gnat = true,
|
72 |
Locust = true,
|
75 |
Locust = true,
|
73 |
Harpy = true,
|
76 |
Harpy = true,
|
74 |
Nimbus = true,
|
77 |
Nimbus = true,
|
75 |
Revenant = true,
|
78 |
Revenant = true,
|
76 |
Krow = true,
|
79 |
Krow = true,
|
77 |
Trident = true,
|
80 |
Trident = true,
|
78 |
Charon = true,
|
81 |
Charon = true,
|
79 |
Hercules = true,
|
82 |
Hercules = true,
|
80 |
\n
|
83 |
\n
|
81 |
Crane = true,
|
84 |
Crane = true,
|
82 |
Swift = true,
|
85 |
Swift = true,
|
83 |
Raptor = true,
|
86 |
Raptor = true,
|
84 |
Raven = true,
|
87 |
Raven = true,
|
85 |
Magpie = true,
|
88 |
Magpie = true,
|
86 |
Phoenix = true,
|
89 |
Phoenix = true,
|
87 |
Thunderbird = true,
|
90 |
Thunderbird = true,
|
88 |
Likho = true,
|
91 |
Likho = true,
|
89 |
Odin = true,
|
92 |
Odin = true,
|
90 |
Sparrow = true,
|
93 |
Sparrow = true,
|
91 |
Owl = true,
|
94 |
Owl = true,
|
92 |
\n
|
95 |
\n
|
93 |
Weaver = true,
|
96 |
Weaver = true,
|
94 |
Flea = true,
|
97 |
Flea = true,
|
95 |
Hermit = true,
|
98 |
Hermit = true,
|
96 |
Venom = true,
|
99 |
Venom = true,
|
97 |
Redback = true,
|
100 |
Redback = true,
|
98 |
Recluse = true,
|
101 |
Recluse = true,
|
99 |
Crab = true,
|
102 |
Crab = true,
|
100 |
Tarantula = true,
|
103 |
Tarantula = true,
|
101 |
Widow = true,
|
104 |
Widow = true,
|
102 |
\n
|
105 |
\n
|
103 |
Constable = true,
|
106 |
Constable = true,
|
104 |
Puppy = true,
|
107 |
Puppy = true,
|
105 |
Pyro = true,
|
108 |
Pyro = true,
|
106 |
Placeholder = true,
|
109 |
Placeholder = true,
|
107 |
Moderator = true,
|
110 |
Moderator = true,
|
108 |
Jack = true,
|
111 |
Jack = true,
|
109 |
Jugglenaut = true,
|
112 |
Jugglenaut = true,
|
110 |
Firewalker = true,
|
113 |
Firewalker = true,
|
111 |
Toad = true,
|
114 |
Toad = true,
|
112 |
Skuttle = true,
|
115 |
Skuttle = true,
|
113 |
\n
|
116 |
\n
|
114 |
Welder = true,
|
117 |
Welder = true,
|
115 |
Kodachi = true,
|
118 |
Kodachi = true,
|
116 |
Blitz = true,
|
119 |
Blitz = true,
|
117 |
Ogre = true,
|
120 |
Ogre = true,
|
118 |
Minotaur = true,
|
121 |
Minotaur = true,
|
119 |
Cyclops = true,
|
122 |
Cyclops = true,
|
120 |
Emissary = true,
|
123 |
Emissary = true,
|
121 |
Tremor = true,
|
124 |
Tremor = true,
|
122 |
Ettin = true,
|
125 |
Ettin = true,
|
123 |
\n
|
126 |
\n
|
124 |
Conch = true,
|
127 |
Conch = true,
|
125 |
Duck = true,
|
128 |
Duck = true,
|
126 |
Archer = true,
|
129 |
Archer = true,
|
127 |
Bulkhead = true,
|
130 |
Bulkhead = true,
|
128 |
Buoy = true,
|
131 |
Buoy = true,
|
129 |
Scallop = true,
|
132 |
Scallop = true,
|
130 |
Grizzly = true,
|
133 |
Grizzly = true,
|
131 |
Angler = true,
|
134 |
Angler = true,
|
132 |
Limpet = true,
|
135 |
Limpet = true,
|
133 |
Lobster = true,
|
136 |
Lobster = true,
|
134 |
Djinn = true,
|
137 |
Djinn = true,
|
135 |
\n
|
138 |
\n
|
136 |
Mariner = true,
|
139 |
Mariner = true,
|
137 |
Cutter = true,
|
140 |
Cutter = true,
|
138 |
Hunter = true,
|
141 |
Hunter = true,
|
139 |
Seawolf = true,
|
142 |
Seawolf = true,
|
140 |
Corsair = true,
|
143 |
Corsair = true,
|
141 |
Mistral = true,
|
144 |
Mistral = true,
|
142 |
Siren = true,
|
145 |
Siren = true,
|
143 |
Envoy = true,
|
146 |
Envoy = true,
|
144 |
Zephyr = true,
|
147 |
Zephyr = true,
|
145 |
\n
|
148 |
\n
|
146 |
Athena = true,
|
149 |
Athena = true,
|
147 |
Ultimatum = true,
|
150 |
Ultimatum = true,
|
148 |
Scorpion = true,
|
151 |
Scorpion = true,
|
149 |
Dante = true,
|
152 |
Dante = true,
|
150 |
Merlin = true,
|
153 |
Merlin = true,
|
151 |
Funnelweb = true,
|
154 |
Funnelweb = true,
|
152 |
Paladin = true,
|
155 |
Paladin = true,
|
153 |
Detriment = true,
|
156 |
Detriment = true,
|
154 |
Shogun = true,
|
157 |
Shogun = true,
|
155 |
Reef = true,
|
158 |
Reef = true,
|
156 |
Scylla = true,
|
159 |
Scylla = true,
|
157 |
\n
|
160 |
\n
|
158 |
Picket = true,
|
161 |
Picket = true,
|
159 |
Lotus = true,
|
162 |
Lotus = true,
|
160 |
Urchin = true,
|
163 |
Urchin = true,
|
161 |
Newton = true,
|
164 |
Newton = true,
|
162 |
Faraday = true,
|
165 |
Faraday = true,
|
163 |
Stardust = true,
|
166 |
Stardust = true,
|
164 |
Stinger = true,
|
167 |
Stinger = true,
|
165 |
Gauss = true,
|
168 |
Gauss = true,
|
166 |
Desolator = true,
|
169 |
Desolator = true,
|
167 |
Lucifer = true,
|
170 |
Lucifer = true,
|
168 |
Cerberus = true
|
171 |
Cerberus = true
|
169 |
}
|
172 |
}
|
170 |
\n
|
173 |
\n
|
171 |
local newWeaponType = {
|
174 |
local newWeaponType = {
|
172 |
{
|
175 |
{
|
173 |
def = "newnewnew1",
|
176 |
def = "newnewnew1",
|
174 |
badTargetCategory = "FIXEDWING GUNSHIP",
|
177 |
badTargetCategory = "FIXEDWING GUNSHIP",
|
175 |
onlyTargetCategory = "SWIM FIXEDWING HOVER LAND SINK TURRET FLOAT SHIP GUNSHIP",
|
178 |
onlyTargetCategory = "SWIM FIXEDWING HOVER LAND SINK TURRET FLOAT SHIP GUNSHIP",
|
176 |
},
|
179 |
},
|
177 |
{
|
180 |
{
|
178 |
def = "newnewnew2",
|
181 |
def = "newnewnew2",
|
179 |
badTargetCategory = "FIXEDWING GUNSHIP",
|
182 |
badTargetCategory = "FIXEDWING GUNSHIP",
|
180 |
onlyTargetCategory = "SWIM FIXEDWING HOVER LAND SINK TURRET FLOAT SHIP GUNSHIP",
|
183 |
onlyTargetCategory = "SWIM FIXEDWING HOVER LAND SINK TURRET FLOAT SHIP GUNSHIP",
|
181 |
}
|
184 |
}
|
182 |
}
|
185 |
}
|
183 |
\n
|
186 |
\n
|
184 |
local newSFX = {
|
187 |
local newSFX = {
|
185 |
[[custom:thrower_shockwave]],
|
188 |
[[custom:thrower_shockwave]],
|
186 |
}
|
189 |
}
|
187 |
\n
|
190 |
\n
|
188 |
for name, ud in pairs(UnitDefs) do
|
191 |
for name, ud in pairs(UnitDefs) do
|
189 |
if targetNames[ud.name] then
|
192 |
if targetNames[ud.name] then
|
190 |
Spring.Echo("ud.name: " .. ud.name)
|
193 |
Spring.Echo("ud.name: " .. ud.name)
|
191 |
\n
|
194 |
\n
|
192 |
local newWeaponDef = {
|
195 |
local newWeaponDef = {
|
193 |
newnewnew1 = {
|
196 |
newnewnew1 = {
|
194 |
\n
|
197 |
\n
|
195 |
name = [[Unit Launcher]],
|
198 |
name = [[Unit Launcher]],
|
196 |
accuracy = 0,
|
199 |
accuracy = 0,
|
197 |
areaOfEffect = 224, -- UI
|
200 |
areaOfEffect = 224, -- UI
|
198 |
avoidFeature = false,
|
201 |
avoidFeature = false,
|
199 |
avoidFriendly = false,
|
202 |
avoidFriendly = false,
|
200 |
avoidGround = false,
|
203 |
avoidGround = false,
|
201 |
burnblow = true,
|
204 |
burnblow = true,
|
202 |
craterBoost = 0,
|
205 |
craterBoost = 0,
|
203 |
craterMult = 0,
|
206 |
craterMult = 0,
|
204 |
\n
|
207 |
\n
|
205 |
customParams = {
|
208 |
customParams = {
|
206 |
ui_manual_fire = 1,
|
209 |
ui_manual_fire = 1,
|
207 |
lups_noshockwave = [[1]],
|
210 |
lups_noshockwave = [[1]],
|
208 |
thower_weapon = 1,
|
211 |
thower_weapon = 1,
|
209 |
},
|
212 |
},
|
210 |
\n
|
213 |
\n
|
211 |
damage = {
|
214 |
damage = {
|
212 |
default = 0,
|
215 |
default = 0,
|
213 |
},
|
216 |
},
|
214 |
\n
|
217 |
\n
|
215 |
explosionSpeed = 50,
|
218 |
explosionSpeed = 50,
|
216 |
intensity = 0.9,
|
219 |
intensity = 0.9,
|
217 |
interceptedByShieldType = 1,
|
220 |
interceptedByShieldType = 1,
|
218 |
leadLimit = 0,
|
221 |
leadLimit = 0,
|
219 |
myGravity = 0.05,
|
222 |
myGravity = 0.05,
|
220 |
projectiles = 1,
|
223 |
projectiles = 1,
|
221 |
range = 620,
|
224 |
range = 620,
|
222 |
reloadtime = 14,
|
225 |
reloadtime = 14,
|
223 |
rgbColor = [[0.05 0.45 0.95]],
|
226 |
rgbColor = [[0.05 0.45 0.95]],
|
224 |
size = 0.005,
|
227 |
size = 0.005,
|
225 |
soundStart = [[Launcher]],
|
228 |
soundStart = [[Launcher]],
|
226 |
soundStartVolume = 6000,
|
229 |
soundStartVolume = 6000,
|
227 |
turret = true,
|
230 |
turret = true,
|
228 |
weaponType = [[Cannon]],
|
231 |
weaponType = [[Cannon]],
|
229 |
weaponVelocity = 350,
|
232 |
weaponVelocity = 350,
|
230 |
waterweapon = true,
|
233 |
waterweapon = true,
|
231 |
\n
|
234 |
\n
|
232 |
},
|
235 |
},
|
233 |
newnewnew2 = {
|
236 |
newnewnew2 = {
|
234 |
\n
|
237 |
\n
|
235 |
name = [[Bogus Unit Launcher]],
|
238 |
name = [[Bogus Unit Launcher]],
|
236 |
accuracy = 0,
|
239 |
accuracy = 0,
|
237 |
areaOfEffect = 224, -- UI
|
240 |
areaOfEffect = 224, -- UI
|
238 |
avoidFeature = false,
|
241 |
avoidFeature = false,
|
239 |
avoidFriendly = false,
|
242 |
avoidFriendly = false,
|
240 |
avoidGround = false,
|
243 |
avoidGround = false,
|
241 |
burnblow = true,
|
244 |
burnblow = true,
|
242 |
commandfire = true,
|
245 |
commandfire = true,
|
243 |
craterBoost = 0,
|
246 |
craterBoost = 0,
|
244 |
craterMult = 0,
|
247 |
craterMult = 0,
|
245 |
\n
|
248 |
\n
|
246 |
customParams = {
|
249 |
customParams = {
|
247 |
lups_noshockwave = [[1]],
|
250 |
lups_noshockwave = [[1]],
|
248 |
thower_weapon = 1,
|
251 |
thower_weapon = 1,
|
249 |
bogus = 1,
|
252 |
bogus = 1,
|
250 |
},
|
253 |
},
|
251 |
\n
|
254 |
\n
|
252 |
damage = {
|
255 |
damage = {
|
253 |
default = 0,
|
256 |
default = 0,
|
254 |
},
|
257 |
},
|
255 |
\n
|
258 |
\n
|
256 |
explosionSpeed = 50,
|
259 |
explosionSpeed = 50,
|
257 |
intensity = 0.9,
|
260 |
intensity = 0.9,
|
258 |
interceptedByShieldType = 1,
|
261 |
interceptedByShieldType = 1,
|
259 |
leadLimit = 0,
|
262 |
leadLimit = 0,
|
260 |
myGravity = 0.05,
|
263 |
myGravity = 0.05,
|
261 |
projectiles = 1,
|
264 |
projectiles = 1,
|
262 |
range = 620,
|
265 |
range = 620,
|
263 |
reloadtime = 14,
|
266 |
reloadtime = 14,
|
264 |
rgbColor = [[0.05 0.45 0.95]],
|
267 |
rgbColor = [[0.05 0.45 0.95]],
|
265 |
size = 0.005,
|
268 |
size = 0.005,
|
266 |
soundStart = [[Launcher]],
|
269 |
soundStart = [[Launcher]],
|
267 |
soundStartVolume = 6000,
|
270 |
soundStartVolume = 6000,
|
268 |
turret = true,
|
271 |
turret = true,
|
269 |
weaponType = [[Cannon]],
|
272 |
weaponType = [[Cannon]],
|
270 |
weaponVelocity = 350,
|
273 |
weaponVelocity = 350,
|
271 |
waterweapon = true,
|
274 |
waterweapon = true,
|
272 |
\n
|
275 |
\n
|
273 |
}
|
276 |
}
|
274 |
}
|
277 |
}
|
275 |
\n
|
278 |
\n
|
276 |
ud.canmanualfire = "true"
|
279 |
ud.canmanualfire = "true"
|
277 |
highTrajectory = 1
|
280 |
highTrajectory = 1
|
278 |
\n
|
281 |
\n
|
279 |
if not ud.customparams then
|
282 |
if not ud.customparams then
|
280 |
ud.customparams = {}
|
283 |
ud.customparams = {}
|
281 |
end
|
284 |
end
|
282 |
\n
|
285 |
\n
|
283 |
if ud.customparams.can_target_allies == nil then
|
286 |
if ud.customparams.can_target_allies == nil then
|
284 |
ud.customparams.can_target_allies = 1
|
287 |
ud.customparams.can_target_allies = 1
|
285 |
end
|
288 |
end
|
286 |
\n
|
289 |
\n
|
287 |
if ud.customparams.thrower_gather == nil then
|
290 |
if ud.customparams.thrower_gather == nil then
|
288 |
ud.customparams.thrower_gather = 160
|
291 |
ud.customparams.thrower_gather = 160
|
289 |
end
|
292 |
end
|
290 |
\n
|
293 |
\n
|
291 |
if ud.customparams.attack_toggle == nil then
|
294 |
if ud.customparams.attack_toggle == nil then
|
292 |
ud.customparams.attack_toggle = "1"
|
295 |
ud.customparams.attack_toggle = "1"
|
293 |
end
|
296 |
end
|
294 |
\n
|
297 |
\n
|
295 |
if not ud.sfxtypes then
|
298 |
if not ud.sfxtypes then
|
296 |
ud.sfxtypes = {}
|
299 |
ud.sfxtypes = {}
|
297 |
end
|
300 |
end
|
298 |
\n
|
301 |
\n
|
299 |
if not ud.sfxtypes.explosiongenerators then
|
302 |
if not ud.sfxtypes.explosiongenerators then
|
300 |
ud.sfxtypes.explosiongenerators = {}
|
303 |
ud.sfxtypes.explosiongenerators = {}
|
301 |
end
|
304 |
end
|
302 |
\n
|
305 |
\n
|
303 |
for _, SFXType in ipairs(newSFX) do
|
306 |
for _, SFXType in ipairs(newSFX) do
|
304 |
table.insert(ud.sfxtypes.explosiongenerators, SFXType)
|
307 |
table.insert(ud.sfxtypes.explosiongenerators, SFXType)
|
305 |
end
|
308 |
end
|
306 |
\n
|
309 |
\n
|
307 |
if not ud.weapondefs then
|
310 |
if not ud.weapondefs then
|
308 |
ud.weapondefs = {}
|
311 |
ud.weapondefs = {}
|
309 |
end
|
312 |
end
|
310 |
\n
|
313 |
\n
|
311 |
for defName, defData in pairs(newWeaponDef) do
|
314 |
for defName, defData in pairs(newWeaponDef) do
|
312 |
ud.weapondefs[defName] = defData
|
315 |
ud.weapondefs[defName] = defData
|
313 |
end
|
316 |
end
|
314 |
\n
|
317 |
\n
|
315 |
if not ud.weapons then
|
318 |
if not ud.weapons then
|
316 |
ud.weapons = {}
|
319 |
ud.weapons = {}
|
317 |
end
|
320 |
end
|
318 |
\n
|
321 |
\n
|
319 |
for _, weaponType in ipairs(newWeaponType) do
|
322 |
for _, weaponType in ipairs(newWeaponType) do
|
320 |
table.insert(ud.weapons, weaponType)
|
323 |
table.insert(ud.weapons, weaponType)
|
321 |
end
|
324 |
end
|
322 |
end
|
325 |
end
|
323 |
end
|
326 |
end
|
324 |
[/spoiler]
|
327 |
[/spoiler]
|