Skip to content

Commit 7c51c0d

Browse files
committed
Improve ammo_effects stuff
1 parent cfa43db commit 7c51c0d

File tree

13 files changed

+289
-199
lines changed

13 files changed

+289
-199
lines changed

data/json/ammo_effects.json

Lines changed: 46 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,18 @@
22
{
33
"id": "AE_NULL",
44
"type": "ammo_effect",
5-
"aoe": {
6-
"field_type": "fd_null",
7-
"intensity_min": 0,
8-
"intensity_max": 0,
9-
"radius": 0,
10-
"radius_z": 0,
11-
"chance": 100,
12-
"size": 0,
13-
"check_passable": false,
14-
"check_sees": false,
15-
"check_sees_radius": 0
16-
},
5+
"aoe": [
6+
{
7+
"field_type": "fd_null",
8+
"intensity_min": 0,
9+
"intensity_max": 0,
10+
"radius": 0,
11+
"radius_z": 0,
12+
"chance": 100,
13+
"size": 0,
14+
"check_passable": false
15+
}
16+
],
1717
"explosion": {
1818
"power": 0,
1919
"distance_factor": 0.8,
@@ -190,92 +190,102 @@
190190
"type": "ammo_effect",
191191
"//": "Prevent HARDTOSHOOT monster flag from having any effect; automatically applied to ammo with `SHOT` flag or which have liquid phase. Hardcoded"
192192
},
193+
{
194+
"id": "ACT_ON_RANGED_HIT",
195+
"type": "ammo_effect",
196+
"//": "Is applied on projectiles made out of items with ACT_ON_RANGED_HIT flag. Hardcoded"
197+
},
198+
{
199+
"id": "HURT_WHEN_WIELDED",
200+
"type": "ammo_effect",
201+
"//": "Is applied on projectiles made out of items with HURT_WHEN_WIELDED flag. Hardcoded"
202+
},
193203
{
194204
"id": "FLAME",
195205
"type": "ammo_effect",
196206
"//": "Very small explosion that lights fires",
197-
"aoe": { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 1, "size": 3 }
207+
"aoe": [ { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 1, "size": 3 } ]
198208
},
199209
{
200210
"id": "NAPALM",
201211
"type": "ammo_effect",
202212
"//": "Explosion that spreads fire",
203-
"aoe": { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 1, "size": 3 },
213+
"aoe": [ { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 1, "size": 3 } ],
204214
"explosion": { "power": 60, "distance_factor": 0.7, "fire": true }
205215
},
206216
{
207217
"id": "PYROPHORIC",
208218
"type": "ammo_effect",
209219
"//": "Large explosion that spreads fire of high intensity",
210-
"aoe": { "field_type": "fd_fire", "intensity_min": 2, "intensity_max": 2, "radius": 3 },
220+
"aoe": [ { "field_type": "fd_fire", "intensity_min": 2, "intensity_max": 2, "radius": 3 } ],
211221
"explosion": { "power": 360, "distance_factor": 0.8, "fire": true }
212222
},
213223
{
214224
"id": "ACIDBOMB",
215225
"type": "ammo_effect",
216226
"//": "Leaves a pool of acid on detonation",
217-
"aoe": { "field_type": "fd_acid", "intensity_min": 3, "intensity_max": 3 }
227+
"aoe": [ { "field_type": "fd_acid", "intensity_min": 3, "intensity_max": 3 } ]
218228
},
219229
{
220230
"id": "TOXICGAS",
221231
"type": "ammo_effect",
222232
"//": "Creates a cloud of toxic gas on hit",
223-
"aoe": { "field_type": "fd_toxic_gas", "intensity_min": 3, "intensity_max": 3 }
233+
"aoe": [ { "field_type": "fd_toxic_gas", "intensity_min": 3, "intensity_max": 3 } ]
224234
},
225235
{
226236
"id": "GAS_FUNGICIDAL",
227237
"type": "ammo_effect",
228238
"//": "Creates a cloud of fungicidal gas on hit",
229-
"aoe": { "field_type": "fd_fungicidal_gas", "intensity_min": 3, "intensity_max": 3 }
239+
"aoe": [ { "field_type": "fd_fungicidal_gas", "intensity_min": 3, "intensity_max": 3 } ]
230240
},
231241
{
232242
"id": "GAS_INSECTICIDAL",
233243
"type": "ammo_effect",
234244
"//": "Creates a cloud of insecticidal gas on hit",
235-
"aoe": { "field_type": "fd_insecticidal_gas", "intensity_min": 3, "intensity_max": 3 }
245+
"aoe": [ { "field_type": "fd_insecticidal_gas", "intensity_min": 3, "intensity_max": 3 } ]
236246
},
237247
{
238248
"id": "SMOKE",
239249
"type": "ammo_effect",
240250
"//": "Generates a cloud of smoke at the target",
241-
"aoe": { "field_type": "fd_smoke", "intensity_min": 3, "intensity_max": 3 }
251+
"aoe": [ { "field_type": "fd_smoke", "intensity_min": 3, "intensity_max": 3 } ]
242252
},
243253
{
244254
"id": "SMOKE_BIG",
245255
"type": "ammo_effect",
246256
"//": "Generates a large cloud of smoke at the target",
247-
"aoe": { "field_type": "fd_smoke", "intensity_min": 3, "intensity_max": 3, "radius": 6 }
257+
"aoe": [ { "field_type": "fd_smoke", "intensity_min": 3, "intensity_max": 3, "radius": 6 } ]
248258
},
249259
{
250260
"id": "FLARE",
251261
"type": "ammo_effect",
252262
"//": "Lights the target tile on fire",
253-
"aoe": { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 1 }
263+
"aoe": [ { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 1 } ]
254264
},
255265
{
256266
"id": "LIGHTNING",
257267
"type": "ammo_effect",
258268
"//": "Creates a trail of lightning",
259-
"aoe": { "field_type": "fd_electricity", "intensity_min": 6, "intensity_max": 10, "chance": 25 }
269+
"aoe": [ { "field_type": "fd_electricity", "intensity_min": 6, "intensity_max": 10, "chance": 25 } ]
260270
},
261271
{
262272
"id": "PLASMA",
263273
"type": "ammo_effect",
264274
"//": "Creates a trail of superheated plasma",
265-
"aoe": { "field_type": "fd_plasma", "intensity_min": 2, "intensity_max": 3, "chance": 50 },
266-
"trail": { "field_type": "fd_plasma", "intensity_min": 1, "intensity_max": 2, "chance": 50 }
275+
"aoe": [ { "field_type": "fd_plasma", "intensity_min": 2, "intensity_max": 3, "chance": 50 } ],
276+
"trail": [ { "field_type": "fd_plasma", "intensity_min": 1, "intensity_max": 2, "chance": 50 } ]
267277
},
268278
{
269279
"id": "PLASMA_BUBBLE",
270280
"type": "ammo_effect",
271281
"//": "Creates a cloud of superheated plasma",
272-
"aoe": { "field_type": "fd_plasma", "intensity_min": 1, "intensity_max": 3, "radius": 1, "chance": 10 }
282+
"aoe": [ { "field_type": "fd_plasma", "intensity_min": 1, "intensity_max": 3, "radius": 1, "chance": 10 } ]
273283
},
274284
{
275285
"id": "PLASMA_FAN",
276286
"type": "ammo_effect",
277287
"always_cast_spell": true,
278-
"spell_data": { "id": "spell_plasma_fan" }
288+
"spell_data": [ { "id": "spell_plasma_fan" } ]
279289
},
280290
{
281291
"id": "EXPLOSIVE",
@@ -344,13 +354,13 @@
344354
"id": "CORROSIVE",
345355
"type": "ammo_effect",
346356
"always_cast_spell": true,
347-
"spell_data": { "id": "spell_corrosive_spray" }
357+
"spell_data": [ { "id": "spell_corrosive_spray" } ]
348358
},
349359
{
350360
"id": "GLUE_FOAM",
351361
"type": "ammo_effect",
352362
"always_cast_spell": true,
353-
"spell_data": { "id": "spell_adhesive_spray" }
363+
"spell_data": [ { "id": "spell_adhesive_spray" } ]
354364
},
355365
{
356366
"id": "EXPLOSIVE_HESHOT",
@@ -418,43 +428,43 @@
418428
"id": "TRAIL",
419429
"type": "ammo_effect",
420430
"//": "Creates a trail of smoke",
421-
"trail": { "field_type": "fd_smoke", "intensity_min": 1, "intensity_max": 2, "chance": 75 }
431+
"trail": [ { "field_type": "fd_smoke", "intensity_min": 1, "intensity_max": 2, "chance": 75 } ]
422432
},
423433
{
424434
"id": "STREAM_TINY",
425435
"type": "ammo_effect",
426436
"//": "Sometimes leaves a trail of small fire fields. All of these STREAM_XXXXXX effects have hardcoded interactions in projectile_attack (ballistics.cpp)",
427-
"trail": { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 1, "chance": 10 }
437+
"trail": [ { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 1, "chance": 10 } ]
428438
},
429439
{
430440
"id": "STREAM",
431441
"type": "ammo_effect",
432442
"//": "Leaves a trail of fire fields",
433-
"trail": { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 2, "chance": 66 }
443+
"trail": [ { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 2, "chance": 66 } ]
434444
},
435445
{
436446
"id": "STREAM_BIG",
437447
"type": "ammo_effect",
438448
"//": "Leaves a trail of intense fire fields",
439-
"trail": { "field_type": "fd_fire", "intensity_min": 2, "intensity_max": 2, "chance": 75 }
449+
"trail": [ { "field_type": "fd_fire", "intensity_min": 2, "intensity_max": 2, "chance": 75 } ]
440450
},
441451
{
442452
"id": "PYROTECHNIC_DISPLAY",
443453
"type": "ammo_effect",
444454
"//": "Looks like huge fires, but doesn't actually burn stuff.",
445-
"trail": { "field_type": "fd_fire_FAKE", "intensity_min": 1, "intensity_max": 3, "chance": 85 }
455+
"trail": [ { "field_type": "fd_fire_FAKE", "intensity_min": 1, "intensity_max": 3, "chance": 85 } ]
446456
},
447457
{
448458
"id": "STREAM_GAS_FUNGICIDAL",
449459
"type": "ammo_effect",
450460
"//": "Leaves a trail of fungicidal gas",
451-
"trail": { "field_type": "fd_fungicidal_gas", "intensity_min": 1, "intensity_max": 2, "chance": 66 }
461+
"trail": [ { "field_type": "fd_fungicidal_gas", "intensity_min": 1, "intensity_max": 2, "chance": 66 } ]
452462
},
453463
{
454464
"id": "LASER",
455465
"type": "ammo_effect",
456466
"//": "Creates a trail of laser",
457-
"trail": { "field_type": "fd_laser", "intensity_min": 2, "intensity_max": 2 }
467+
"trail": [ { "field_type": "fd_laser", "intensity_min": 2, "intensity_max": 2 } ]
458468
},
459469
{
460470
"id": "GENE_STING_BARB",

data/json/monster_special_attacks/monster_ammo.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,25 +43,25 @@
4343
"id": "BILE_BOMB",
4444
"type": "ammo_effect",
4545
"//": "Leaves a pool of bile on detonation",
46-
"aoe": { "field_type": "fd_bile", "intensity_min": 3, "intensity_max": 3 }
46+
"aoe": [ { "field_type": "fd_bile", "intensity_min": 3, "intensity_max": 3 } ]
4747
},
4848
{
4949
"id": "BILE_JET",
5050
"type": "ammo_effect",
5151
"//": "Creates a trail of bile",
52-
"trail": { "field_type": "fd_bile", "intensity_min": 1, "intensity_max": 2, "chance": 75 }
52+
"trail": [ { "field_type": "fd_bile", "intensity_min": 1, "intensity_max": 2, "chance": 75 } ]
5353
},
5454
{
5555
"id": "BILE_JET_ADV",
5656
"type": "ammo_effect",
5757
"//": "Creates a trail of advanced bile",
58-
"trail": { "field_type": "fd_bile_adv", "intensity_min": 1, "intensity_max": 2, "chance": 75 }
58+
"trail": [ { "field_type": "fd_bile_adv", "intensity_min": 1, "intensity_max": 2, "chance": 75 } ]
5959
},
6060
{
6161
"id": "BILE_BOMB_ADV",
6262
"type": "ammo_effect",
6363
"//": "Leaves a pool of advanced bile on detonation",
64-
"aoe": { "field_type": "fd_bile_adv", "intensity_min": 3, "intensity_max": 3 }
64+
"aoe": [ { "field_type": "fd_bile_adv", "intensity_min": 3, "intensity_max": 3 } ]
6565
},
6666
{
6767
"id": "BILE_GLOW",

data/mods/CrazyCataclysm/crazy_ammo_effects.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,18 @@
88
"id": "CLEAN_DUST",
99
"type": "ammo_effect",
1010
"always_cast_spell": true,
11-
"spell_data": { "id": "spell_clean_dust" }
11+
"spell_data": [ { "id": "spell_clean_dust" } ]
1212
},
1313
{
1414
"id": "CLEAN_SPLINTERS",
1515
"type": "ammo_effect",
1616
"always_cast_spell": true,
17-
"spell_data": { "id": "spell_clean_splinters" }
17+
"spell_data": [ { "id": "spell_clean_splinters" } ]
1818
},
1919
{
2020
"id": "CLEAN_BLOOD",
2121
"type": "ammo_effect",
2222
"always_cast_spell": true,
23-
"spell_data": { "id": "spell_clean_blood" }
23+
"spell_data": [ { "id": "spell_clean_blood" } ]
2424
}
2525
]

data/mods/MindOverMatter/ammo_effects.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
"id": "LIGHTNING_TRAIL",
44
"type": "ammo_effect",
55
"//": "Creates a trail of lightning plasma",
6-
"aoe": { "field_type": "fd_electricity", "intensity_min": 6, "intensity_max": 10, "chance": 25 },
7-
"trail": { "field_type": "fd_electricity", "intensity_min": 1, "intensity_max": 2, "chance": 65 }
6+
"aoe": [ { "field_type": "fd_electricity", "intensity_min": 6, "intensity_max": 10, "chance": 25 } ],
7+
"trail": [ { "field_type": "fd_electricity", "intensity_min": 1, "intensity_max": 2, "chance": 65 } ]
88
},
99
{
1010
"id": "NEURAL_STUNGUN",

data/mods/Xedra_Evolved/ammo_effects.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@
77
{
88
"id": "GRENADE_FIRE_EXPL",
99
"type": "ammo_effect",
10-
"aoe": { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 1, "size": 5 },
10+
"aoe": [ { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 1, "size": 5 } ],
1111
"explosion": { "power": 250, "distance_factor": 0.7, "fire": true }
1212
},
1313
{
1414
"id": "GRENADE_ELEC_EXPL",
1515
"type": "ammo_effect",
1616
"do_emp_blast": true,
17-
"aoe": { "field_type": "fd_electricity", "intensity_min": 10, "intensity_max": 10, "chance": 100, "size": 50 }
17+
"aoe": [ { "field_type": "fd_electricity", "intensity_min": 10, "intensity_max": 10, "chance": 100, "size": 50 } ]
1818
}
1919
]

data/mods/aftershock_exoplanet/items/ammo_effects.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
{
1414
"id": "PUMP_LASER",
1515
"type": "ammo_effect",
16-
"aoe": { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 1, "radius": 3, "size": 4, "chance": 50 },
16+
"aoe": [ { "field_type": "fd_fire", "intensity_min": 1, "intensity_max": 1, "radius": 3, "size": 4, "chance": 50 } ],
1717
"explosion": { "power": 5000, "max_noise": 35, "distance_factor": 0.5 }
1818
},
1919
{
@@ -24,50 +24,50 @@
2424
{
2525
"id": "ELECTRO_ANOMALY",
2626
"type": "ammo_effect",
27-
"aoe": { "field_type": "fd_elect_anomaly", "intensity_min": 2, "intensity_max": 3, "radius": 0 }
27+
"aoe": [ { "field_type": "fd_elect_anomaly", "intensity_min": 2, "intensity_max": 3, "radius": 0 } ]
2828
},
2929
{
3030
"id": "SMALL_ELECTRIC_BURST",
3131
"type": "ammo_effect",
32-
"aoe": { "field_type": "fd_electricity", "intensity_min": 1, "intensity_max": 2, "chance": 10, "radius": 1 }
32+
"aoe": [ { "field_type": "fd_electricity", "intensity_min": 1, "intensity_max": 2, "chance": 10, "radius": 1 } ]
3333
},
3434
{
3535
"id": "TACTICAL_LASER_EXPLOSION",
3636
"type": "ammo_effect",
37-
"trigger_chance": 5,
37+
"trigger_chance": 20,
3838
"explosion": { "power": 500, "max_noise": 35, "distance_factor": 0.2 }
3939
},
4040
{
4141
"id": "DAZZLE_BEAM",
4242
"type": "ammo_effect",
43-
"trail": { "field_type": "fd_dazzling", "intensity_min": 1, "intensity_max": 1 }
43+
"trail": [ { "field_type": "fd_dazzling", "intensity_min": 1, "intensity_max": 1 } ]
4444
},
4545
{
4646
"id": "SEISMIC_MAPPING",
4747
"type": "ammo_effect",
48-
"aoe": { "field_type": "fd_clairvoyant", "intensity_min": 10, "intensity_max": 10 }
48+
"aoe": [ { "field_type": "fd_clairvoyant", "intensity_min": 10, "intensity_max": 10 } ]
4949
},
5050
{
5151
"id": "TOXIC_FOAM",
5252
"type": "ammo_effect",
53-
"aoe": { "field_type": "fd_toxic_foam", "intensity_min": 1, "intensity_max": 4, "chance": 70, "radius": 1 }
53+
"aoe": [ { "field_type": "fd_toxic_foam", "intensity_min": 1, "intensity_max": 4, "chance": 70, "radius": 1 } ]
5454
},
5555
{
5656
"id": "ELECTRIC_CHAIN",
5757
"type": "ammo_effect",
5858
"always_cast_spell": true,
59-
"spell_data": { "id": "spell_electric_chain" }
59+
"spell_data": [ { "id": "spell_electric_chain" } ]
6060
},
6161
{
6262
"id": "FUSION_FAN",
6363
"type": "ammo_effect",
6464
"always_cast_spell": true,
65-
"spell_data": { "id": "spell_fusion_fan" }
65+
"spell_data": [ { "id": "spell_fusion_fan" } ]
6666
},
6767
{
6868
"id": "VAHAGN",
6969
"type": "ammo_effect",
7070
"always_cast_spell": true,
71-
"spell_data": { "id": "spell_vahagn" }
71+
"spell_data": [ { "id": "spell_vahagn" } ]
7272
}
7373
]

0 commit comments

Comments
 (0)