DayZ 1.24
Loading...
Searching...
No Matches
ParticleList.c
Go to the documentation of this file.
1// Register all particles below!
2
3// Example how to register particles from a mod
4/*
5 modded class ParticleList
6 {
7 static const int MODDED_PARTICLE = RegisterParticle( "mod_folder/" , "my_modded_particle");
8 }
9*/
10
12{
13 ref static map<int, string> m_ParticlePaths; // Contains full paths to all particles. WARNING: Paths are without the '.ptc' suffix!
14 ref static map<string, int> m_ParticleNames; // Contains file NAME (without suffix) to id.
15
16 static int m_lastID = 0;
17
18 // REGISTER ALL PARTICLES BELOW:
19
20 static const int INVALID = -1;
21 static const int NONE = 0; // 0 does not exist either, valid particle starts from 1
22 static const int PARTICLE_TEST = RegisterParticle("_test_orientation");
23 static const int DEBUG_DOT = RegisterParticle("debug_dot");
24
25 // FIREPLACE
26 // Normal fireplace
27 static const int CAMP_FIRE_START = RegisterParticle("fire_small_camp_01_start");
28 static const int CAMP_SMALL_FIRE = RegisterParticle("fire_small_camp_01");
29 static const int CAMP_NORMAL_FIRE = RegisterParticle("fire_medium_camp_01");
30 static const int CAMP_SMALL_SMOKE = RegisterParticle("smoke_small_camp_01");
31 static const int CAMP_NORMAL_SMOKE = RegisterParticle("smoke_medium_camp_01");
32 static const int CAMP_FIRE_END = RegisterParticle("fire_small_camp_01_end");
33 static const int CAMP_STEAM_2END = RegisterParticle("steam_medium_camp_2end");
34 static const int CAMP_STEAM_EXTINGUISH_START = RegisterParticle("default_01");
35 static const int CAMP_STOVE_FIRE = RegisterParticle("fire_small_stove_01");
36 static const int CAMP_STOVE_FIRE_START = RegisterParticle("fire_small_stove_01_start");
37 static const int CAMP_STOVE_FIRE_END = RegisterParticle("fire_small_stove_01_end");
38 static const int CAMP_NO_IGNITE_WIND = RegisterParticle("fire_extinguish_wind");
39 // Fireplace indoor
40 static const int HOUSE_FIRE_START = RegisterParticle("fire_small_house_01_start");
41 static const int HOUSE_SMALL_FIRE = RegisterParticle("fire_small_house_01");
42 static const int HOUSE_SMALL_SMOKE = RegisterParticle("smoke_small_house_01");
43 static const int HOUSE_NORMAL_FIRE = RegisterParticle("fire_medium_house_01");
44 static const int HOUSE_NORMAL_SMOKE = RegisterParticle("smoke_medium_house_01");
45 static const int HOUSE_FIRE_END = RegisterParticle("fire_small_house_01_end");
46 static const int HOUSE_FIRE_STEAM_2END = RegisterParticle("steam_medium_house_2end");
47 // Fireplace in barrel with holes
48 static const int BARREL_FIRE_START = RegisterParticle("fire_small_barrel_01_start");
49 static const int BARREL_SMALL_FIRE = RegisterParticle("fire_small_barrel_01");
50 static const int BARREL_SMALL_SMOKE = RegisterParticle("smoke_small_barrel_01");
51 static const int BARREL_NORMAL_FIRE = RegisterParticle("fire_medium_barrel_01");
52 static const int BARREL_NORMAL_SMOKE = RegisterParticle("smoke_medium_barrel_01");
53 static const int BARREL_FIRE_END = RegisterParticle("fire_small_barrel_01_end");
54 static const int BARREL_FIRE_STEAM_2END = RegisterParticle("steam_medium_camp_2end");
55 // Fireplace in indoor oven
56 static const int OVEN_FIRE_START = RegisterParticle("fire_small_oven_01_start");
57 static const int OVEN_SMALL_FIRE = RegisterParticle("fire_small_oven_01");
58 static const int OVEN_NORMAL_FIRE = RegisterParticle("fire_medium_oven_01");
59 static const int OVEN_FIRE_END = RegisterParticle("fire_small_ovenl_01_end");
60
61 // COOKING
62 static const int COOKING_BOILING_EMPTY = RegisterParticle("cooking_boiling_empty");
63 static const int COOKING_BOILING_START = RegisterParticle("cooking_boiling_start");
64 static const int COOKING_BOILING_DONE = RegisterParticle("cooking_boiling_done");
65 static const int COOKING_BAKING_START = RegisterParticle("cooking_baking_start");
66 static const int COOKING_BAKING_DONE = RegisterParticle("cooking_baking_done");
67 static const int COOKING_DRYING_START = RegisterParticle("cooking_drying_start");
68 static const int COOKING_DRYING_DONE = RegisterParticle("cooking_drying_done");
69 static const int COOKING_BURNING_DONE = RegisterParticle("cooking_burning_done");
70
71 // TORCH
72 static const int TORCH_T3 = RegisterParticle("fire_small_torch_01");
73 static const int TORCH_T1 = RegisterParticle("fire_small_torch_02");
74 static const int TORCH_T2 = RegisterParticle("fire_small_torch_03");
75
76 //BROOM TORCH
77 static const int BROOM_TORCH_T1 = RegisterParticle("fire_small_broom_torch_01");
78 static const int BROOM_TORCH_T2 = RegisterParticle("fire_small_broom_torch_02");
79 static const int BROOM_TORCH_T3 = RegisterParticle("fire_small_broom_torch_03");
80
81 // ROADFLARE
82 static const int ROADFLARE_BURNING_INIT = RegisterParticle("fire_small_roadflare_red_04");
83 static const int ROADFLARE_BURNING_MAIN = RegisterParticle("fire_small_roadflare_red_01");
84 static const int ROADFLARE_BURNING_ENDING = RegisterParticle("fire_small_roadflare_red_02");
85 static const int ROADFLARE_BURNING_SMOKE = RegisterParticle("fire_small_roadflare_red_03");
86
87 // FLARE PROJECTILE
88 static const int FLAREPROJ_FIRE = RegisterParticle("fire_small_roadflare_red_04");
89 static const int FLAREPROJ_ACTIVATE = RegisterParticle("fire_small_flare_yellow_01");
90 static const int FLAREPROJ_ACTIVATE_RED = RegisterParticle("fire_small_flare_red_01");
91 static const int FLAREPROJ_ACTIVATE_GREEN = RegisterParticle("fire_small_flare_green_01");
92 static const int FLAREPROJ_ACTIVATE_BLUE = RegisterParticle("fire_small_flare_blue_01");
93
94 // DIGGING
95 static const int DIGGING_STASH = RegisterParticle("digging_ground");
96
97 // SMOKE GRENADES
99 static const int GRENADE_RDG2_BLACK_START = RegisterParticle("smoke_RDG2_black_01");
100 static const int GRENADE_RDG2_BLACK_LOOP = RegisterParticle("smoke_RDG2_black_02");
101 static const int GRENADE_RDG2_BLACK_END = RegisterParticle("smoke_RDG2_black_03");
102 static const int GRENADE_RDG2_WHITE_START = RegisterParticle("smoke_RDG2_white_01");
103 static const int GRENADE_RDG2_WHITE_LOOP = RegisterParticle("smoke_RDG2_white_02");
104 static const int GRENADE_RDG2_WHITE_END = RegisterParticle("smoke_RDG2_white_03");
106 static const int GRENADE_M18_GREEN_START = RegisterParticle("smoke_M18_green_01");
107 static const int GRENADE_M18_GREEN_LOOP = RegisterParticle("smoke_M18_green_02");
108 static const int GRENADE_M18_GREEN_END = RegisterParticle("smoke_M18_green_03");
109 static const int GRENADE_M18_PURPLE_START = RegisterParticle("smoke_M18_purple_01");
110 static const int GRENADE_M18_PURPLE_LOOP = RegisterParticle("smoke_M18_purple_02");
111 static const int GRENADE_M18_PURPLE_END = RegisterParticle("smoke_M18_purple_03");
112 static const int GRENADE_M18_RED_START = RegisterParticle("smoke_M18_red_01");
113 static const int GRENADE_M18_RED_LOOP = RegisterParticle("smoke_M18_red_02");
114 static const int GRENADE_M18_RED_END = RegisterParticle("smoke_M18_red_03");
115 static const int GRENADE_M18_WHITE_START = RegisterParticle("smoke_M18_white_01");
116 static const int GRENADE_M18_WHITE_LOOP = RegisterParticle("smoke_M18_white_02");
117 static const int GRENADE_M18_WHITE_END = RegisterParticle("smoke_M18_white_03");
118 static const int GRENADE_M18_YELLOW_START = RegisterParticle("smoke_M18_yellow_01");
119 static const int GRENADE_M18_YELLOW_LOOP = RegisterParticle("smoke_M18_yellow_02");
120 static const int GRENADE_M18_YELLOW_END = RegisterParticle("smoke_M18_yellow_03");
121 static const int GRENADE_M18_BLACK_START = RegisterParticle("smoke_M18_black_01");
122 static const int GRENADE_M18_BLACK_LOOP = RegisterParticle("smoke_M18_black_02");
123 static const int GRENADE_M18_BLACK_END = RegisterParticle("smoke_M18_black_03");
124
127 static const int GRENADE_M84 = RegisterParticle("explosion_M84_01");
128
129 // FRAGMENTATION GRENADES
130 static const int RGD5 = RegisterParticle("explosion_RGD5_01");
131 static const int M67 = RegisterParticle("explosion_M67_01");
132
133 // ELECTRICITY
134 static const int POWER_GENERATOR_SMOKE = RegisterParticle("smoke_small_generator_01");
135 static const int BARBED_WIRE_SPARKS = RegisterParticle("electro_shortc2");
136 static const int EASTER_EGG_ACTIVATE = RegisterParticle("easter_egg_activate");
137
138 // PLAYER
139 static const int BLEEDING_SOURCE = RegisterParticle("blood_bleeding_01");
140 static const int BLEEDING_SOURCE_LIGHT = RegisterParticle("blood_bleeding_02");
141 static const int BLOOD_SURFACE_DROPS = RegisterParticle("blood_surface_drops");
142 static const int BLOOD_SURFACE_CHUNKS = RegisterParticle("blood_surface_chunks");
143 static const int VOMIT = RegisterParticle("character_vomit_01");
144 static const int BREATH_VAPOUR_LIGHT = RegisterParticle("breath_vapour_light");
145 static const int BREATH_VAPOUR_MEDIUM = RegisterParticle("breath_vapour_medium");
146 static const int BREATH_VAPOUR_HEAVY = RegisterParticle("breath_vapour_heavy");
147 static const int VOMIT_CHUNKS = RegisterParticle("character_vomit_puddle");
148
149 // GUNS
150 static const int GUN_MUZZLE_FLASH_SVD_STAR = RegisterParticle("weapon_shot_Flame_3D_4star");
151 static const int GUN_SOLO_MUZZLE_FLASH = RegisterParticle("weapon_shot_Flame_3D");
152 static const int GUN_FNX = RegisterParticle("weapon_shot_fnx_01");
153 static const int GUN_FNX_SUPPRESSED = RegisterParticle("weapon_shot_fnx_02");
154 static const int GUN_PARTICLE_TEST = RegisterParticle("weapon_shot_fnx_01");
155 static const int GUN_PARTICLE_CASING = RegisterParticle("weapon_shot_chamber_smoke");
156 static const int GUN_PARTICLE_CASING_RAISE = RegisterParticle("weapon_shot_chamber_smoke_raise");
157 static const int GUN_CZ75 = RegisterParticle("weapon_shot_cz75_01");
158 static const int GUN_AKM = RegisterParticle("weapon_shot_akm_01");
159 static const int GUN_AKM_SUPPRESSED = RegisterParticle("weapon_shot_akm_02");
160 static const int GUN_IZH18 = RegisterParticle("weapon_shot_izh18_01");
161 static const int GUN_IZH18_SUPPRESSED = RegisterParticle("weapon_shot_izh18_02");
162 static const int GUN_MP5K = RegisterParticle("weapon_shot_mp5k_01");
163 static const int GUN_MP5K_2 = RegisterParticle("weapon_shot_mp5k_02_boris");
164 static const int GUN_MP5K_SUPPRESSED = RegisterParticle("weapon_shot_mp5k_02");
165 static const int GUN_MP5K_COMPENSATOR = RegisterParticle("weapon_shot_mp5k_02");
166 static const int GUN_UMP45 = RegisterParticle("weapon_shot_ump45_01");
167 static const int GUN_M4A1 = RegisterParticle("weapon_shot_m4a1_01");
168 static const int GUN_MP133 = RegisterParticle("weapon_shot_mp133_01");
169 static const int GUN_PELLETS = RegisterParticle("weapon_shot_pellets");
170 static const int GUN_MOSIN9130 = RegisterParticle("weapon_shot_mosin9130_01");
171 static const int GUN_MOSIN_COMPENSATOR = RegisterParticle("weapon_shot_mosin_compensator_01");
172 static const int GUN_CZ527 = RegisterParticle("weapon_shot_cz527_01");
173 static const int GUN_SKS = RegisterParticle("weapon_shot_sks_01");
174 static const int GUN_WINCHESTER70 = RegisterParticle("weapon_shot_winch70_01");
175 static const int GUN_VSS = RegisterParticle("weapon_shot_vss_01");
176 static const int GUN_AK74 = RegisterParticle("weapon_shot_ak74_01");
177 static const int GUN_AK101 = RegisterParticle("weapon_shot_ak101_01");
178
179 static const int GUN_MAGNUM = RegisterParticle("weapon_shot_magnum_01");
180
181 static const int GUN_CZ61 = RegisterParticle("weapon_shot_cz61_01");
182 static const int GUN_LONG_WINDED_SMOKE = RegisterParticle("weapon_shot_winded_smoke");
183 static const int GUN_LONG_WINDED_SMOKE_SMALL = RegisterParticle("weapon_shot_winded_smoke_small");
184 static const int SMOKING_BARREL = RegisterParticle("smoking_barrel");
185 static const int SMOKING_BARREL_SMALL = RegisterParticle("smoking_barrel_small");
186 static const int SMOKING_BARREL_HEAVY = RegisterParticle("smoking_barrel_heavy");
187 static const int SMOKING_BARREL_STEAM = RegisterParticle("smoking_barrel_steam");
188 static const int SMOKING_BARREL_STEAM_SMALL = RegisterParticle("smoking_barrel_steam_small");
189 static const int SMARKS_CHAMBER = RegisterParticle("weapon_shot_chamber_spark");
190
191 // BULLET & MELEE IMPACTS
192 static const int IMPACT_TEST = RegisterParticle("impacts/bullet_impact_placeholder");
193 static const int IMPACT_DISTANT_DUST = RegisterParticle("impacts/distant_dust");
194 static const int IMPACT_TEST_RICOCHET = RegisterParticle("impacts/bullet_riochet_placeholder");
195 static const int IMPACT_TEST2 = RegisterParticle("_test_orientation_02");
196 static const int IMPACT_TEST_ENTER_DEBUG = RegisterParticle("impacts/_test_impact_enter_debug");
197 static const int IMPACT_TEST_RICOCHET_DEBUG = RegisterParticle("impacts/_test_impact_ricochet_debug");
198 static const int IMPACT_TEST_EXIT_DEBUG = RegisterParticle("impacts/_test_impact_exit_debug");
199 static const int IMPACT_TEST_NO_MATERIAL_ERROR = RegisterParticle("_test_no_material");
200 static const int IMPACT_WOOD_ENTER = RegisterParticle("impacts/hit_wood_ent_01");
201 static const int IMPACT_WOOD_RICOCHET = RegisterParticle("impacts/hit_wood_ric_01");
202 static const int IMPACT_WOOD_EXIT = RegisterParticle("impacts/hit_wood_ext_01");
203 static const int IMPACT_CONCRETE_ENTER = RegisterParticle("impacts/hit_concrete_ent_01");
204 static const int IMPACT_CONCRETE_RICOCHET = RegisterParticle("impacts/hit_concrete_ric_01");
205 static const int IMPACT_CONCRETE_EXIT = RegisterParticle("impacts/hit_concrete_ext_01");
206 static const int IMPACT_FOLIAGE_ENTER = RegisterParticle("impacts/hit_foliage_ent_01");
207 static const int IMPACT_FOLIAGE_RICOCHET = RegisterParticle("impacts/hit_foliage_ric_01");
208 static const int IMPACT_FOLIAGE_EXIT = RegisterParticle("impacts/hit_foliage_ext_01");
209 static const int IMPACT_GRASS_ENTER = RegisterParticle("impacts/hit_grass_ent_01");
210 static const int IMPACT_GRASS_RICOCHET = RegisterParticle("impacts/hit_grass_ric_01");
211 static const int IMPACT_DIRT_ENTER = RegisterParticle("impacts/hit_dirt_ent_01");
212 static const int IMPACT_DIRT_RICOCHET = RegisterParticle("impacts/hit_dirt_ric_01");
213 static const int IMPACT_DIRT_EXIT = RegisterParticle("impacts/hit_dirt_ext_01");
214 static const int IMPACT_RUBBER_ENTER = RegisterParticle("impacts/hit_rubber_ent_01");
215 static const int IMPACT_RUBBER_RICOCHET = RegisterParticle("impacts/hit_rubber_ric_01");
216 static const int IMPACT_RUBBER_EXIT = RegisterParticle("impacts/hit_rubber_ext_01");
217 static const int IMPACT_GRAVEL_ENTER = RegisterParticle("impacts/hit_gravel_ent_01");
218 static const int IMPACT_GRAVEL_RICOCHET = RegisterParticle("impacts/hit_gravel_ric_01");
219 static const int IMPACT_GRAVEL_EXIT = RegisterParticle("impacts/hit_gravel_ext_01");
220 static const int IMPACT_PLASTER_ENTER = RegisterParticle("impacts/hit_plaster_ent_01");
221 static const int IMPACT_PLASTER_RICOCHET = RegisterParticle("impacts/hit_plaster_ric_01");
222 static const int IMPACT_PLASTER_EXIT = RegisterParticle("impacts/hit_plaster_ext_01");
223 static const int IMPACT_METAL_ENTER = RegisterParticle("impacts/hit_metal_ent_01");
224 static const int IMPACT_METAL_RICOCHET = RegisterParticle("impacts/hit_metal_ric_01");
225 static const int IMPACT_METAL_EXIT = RegisterParticle("impacts/hit_metal_ext_01");
226 static const int IMPACT_MEAT_ENTER = RegisterParticle("impacts/hit_meat_ent_01");
227 static const int IMPACT_MEAT_RICOCHET = RegisterParticle("impacts/hit_meat_ric_01");
228 static const int IMPACT_MEAT_EXIT = RegisterParticle("impacts/hit_meat_ext_01");
229 static const int IMPACT_MEATBONES_ENTER = RegisterParticle("impacts/hit_meatbones_ent_01");
230 static const int IMPACT_MEATBONES_RICOCHET = RegisterParticle("impacts/hit_meatbones_ent_01");
231 static const int IMPACT_MEATBONES_EXIT = RegisterParticle("impacts/hit_meatbones_ext_01");
232 static const int IMPACT_GLASS_ENTER = RegisterParticle("impacts/hit_glass_ent_01");
233 static const int IMPACT_GLASS_RICOCHET = RegisterParticle("impacts/hit_glass_ric_01");
234 static const int IMPACT_GLASS_EXIT = RegisterParticle("impacts/hit_glass_ext_01");
235 static const int IMPACT_WATER_SMALL_ENTER = RegisterParticle("impacts/hit_water_ent_01");
236 static const int IMPACT_WATER_MEDIUM_ENTER = RegisterParticle("impacts/hit_water_ent_02");
237 static const int IMPACT_WATER_LARGE_ENTER = RegisterParticle("impacts/hit_water_ent_03");
238 static const int IMPACT_TEXTILE_ENTER = RegisterParticle("impacts/hit_textile_ent_01");
239 static const int IMPACT_TEXTILE_RICOCHET = RegisterParticle("impacts/hit_textile_ric_01");
240 static const int IMPACT_TEXTILE_EXIT = RegisterParticle("impacts/hit_textile_ext_01");
241 static const int IMPACT_SAND_ENTER = RegisterParticle("impacts/hit_sand_ent_01");
242 static const int IMPACT_SAND_RICOCHET = RegisterParticle("impacts/hit_sand_ric_01");
243 static const int IMPACT_SAND_EXIT = RegisterParticle("impacts/hit_sand_ext_01");
244 static const int IMPACT_PLASTIC_ENTER = RegisterParticle("impacts/hit_plastic_ent_01");
245 static const int IMPACT_PLASTIC_RICOCHET = RegisterParticle("impacts/hit_plastic_ric_01");
246 static const int IMPACT_PLASTIC_EXIT = RegisterParticle("impacts/hit_plastic_ext_01");
247
248 // EXPLOSIONS
249 static const int EXPLOSION_LANDMINE = RegisterParticle("explosion_landmine_01");
250 static const int EXPLOSION_TEST = RegisterParticle("explosion_placeholder");
251 static const int EXPLOSION_GOAT = RegisterParticle("explosion_goat");
252
253 // ENVIRO EFX
254 static const int SMOKING_HELI_WRECK = RegisterParticle("smoke_heli_wreck_01");
255 static const int AURORA_SANTA_WRECK = RegisterParticle("smoke_santa_wreck");
256 static const int SMOKE_GENERIC_WRECK = RegisterParticle("smoke_generic_wreck");
257 static const int SMOKING_CAR_ENGINE = RegisterParticle("menu_engine_fire");
258 static const int EVAPORATION = RegisterParticle("menu_evaporation");
259
260 // VEHICLES
261 static const int HATCHBACK_COOLANT_OVERHEATING = RegisterParticle("Hatchback_coolant_overheating");
262 static const int HATCHBACK_COOLANT_OVERHEATED = RegisterParticle("Hatchback_coolant_overheated");
263 static const int HATCHBACK_ENGINE_OVERHEATING = RegisterParticle("Hatchback_engine_failing");
264 static const int HATCHBACK_ENGINE_OVERHEATED = RegisterParticle("Hatchback_engine_failure");
265 static const int HATCHBACK_EXHAUST_SMOKE = RegisterParticle("Hatchback_exhaust");
266
267 // CORPSE DECAY
268 static const int ENV_SWARMING_FLIES = RegisterParticle("env_fly_swarm_01");
269
270 // BONFIRE
271 static const int BONFIRE_FIRE = RegisterParticle("fire_bonfire");
272 static const int BONFIRE_SMOKE = RegisterParticle("smoke_bonfire");
273 static const int SPOOKY_MIST = RegisterParticle("spooky_mist");
274
275 static const int VOMIT_BLOOD = RegisterParticle("character_vomitBlood_01");
276
277 // CONTAMINATED AREAS
278 static const int CONTAMINATED_AREA_GAS_TINY = RegisterParticle("contaminated_area_gas_around_tiny");
279 static const int CONTAMINATED_AREA_GAS_AROUND = RegisterParticle("contaminated_area_gas_around");
280 static const int CONTAMINATED_AREA_GAS_BIGASS = RegisterParticle("contaminated_area_gas_bigass");
281 static const int CONTAMINATED_AREA_GAS_GROUND = RegisterParticle("contaminated_area_gas_ground");
282 static const int CONTAMINATED_AREA_GAS_SHELL = RegisterParticle("contaminated_area_gas_shell");
283
284 //Fireworks
285 static const int FIREWORKS_SHOT = RegisterParticle("fireworks_small_01");
286 static const int FIREWORKS_EXPLOSION_RED = RegisterParticle("fireworks_large_01_Red");
287 static const int FIREWORKS_EXPLOSION_GREEN = RegisterParticle("fireworks_large_01_Green");
288 static const int FIREWORKS_EXPLOSION_BLUE = RegisterParticle("fireworks_large_01_Blue");
289 static const int FIREWORKS_EXPLOSION_YELLOW = RegisterParticle("fireworks_large_01_Yellow");
290 static const int FIREWORKS_EXPLOSION_PINK = RegisterParticle("fireworks_large_01_Pink");
291
292 static const int FIREWORKS_FUSE = RegisterParticle("fireworks_small_04");
293 static const int FIREWORKS_AFTERBURN_START = RegisterParticle("fireworks_small_02");
294 static const int FIREWORKS_AFTERBURN_END = RegisterParticle("fireworks_small_03");
295
296 //Fireworks anniversary
297 static const int FIREWORKS_EXPLOSION_THANKS1 = RegisterParticle("fireworks_ThankYou_anim");
298 static const int FIREWORKS_EXPLOSION_THANKS2 = RegisterParticle("fireworks_For10_anim");
299 static const int FIREWORKS_EXPLOSION_THANKS3 = RegisterParticle("fireworks_Amazing_anim");
300 static const int FIREWORKS_EXPLOSION_THANKS4 = RegisterParticle("fireworks_Years_anim");
301 static const int FIREWORKS_EXPLOSION_THANKS5 = RegisterParticle("fireworks_Dayz_anim");
302
303
304 //pox grenade
305 static const int GRENADE_CHEM_BREAK = RegisterParticle("contaminated_area_gas_grenade");
306 //Claymore
307 static const int CLAYMORE_EXPLOSION = RegisterParticle("explosion_claymore_01");
308 static const int PLASTIC_EXPLOSION = RegisterParticle("explosion_plastic_01");
309
310 // Water jet/spilling
311 static const int WATER_JET = RegisterParticle("water_jet");
312 static const int WATER_JET_WEAK = RegisterParticle("water_jet_weak");
313 static const int WATER_SPILLING = RegisterParticle("water_spilling");
314
315 // Drowning bubbles
316 static const int DROWNING_BUBBLES = RegisterParticle("breath_bubbles");
317
319 static const int BOLT_CUPID_TAIL = RegisterParticle("cupid_bolt");
320 static const int BOLT_CUPID_HIT = RegisterParticle("cupid_hit");
321
322 static int RegisterParticle(string file_name)
323 {
325 }
326
328 static int RegisterParticle(string root_path, string file_name)
329 {
330 if (!m_ParticlePaths)
332
333 if (!m_ParticleNames)
335
336 string path = string.Format("%1%2", root_path, file_name);
337 string fullPath = string.Format("%1.ptc", path);
338
339 if (!FileExist(fullPath))
340 {
341 string devMsgSuffix;
342#ifdef DEVELOPER
343 devMsgSuffix = " Then rebuild 'scripts' and 'graphics' PBOs.";
344#endif
345 ErrorEx(string.Format("Particle file not found! <%1> Correct path to this particle in script file ParticleList.c!%2",
347 }
348
349 int existingNameId;
351 {
352 int existingPathId;
353 if (m_ParticlePaths.GetKeyByValueChecked(path, existingPathId))
354 {
356 {
357 return existingNameId; // We have already registered this exact file
358 }
359 else
360 ErrorEx(string.Format("ParticleNames and ParticlePaths array are containing conflicting data. ID %1 vs ID %2", existingNameId, existingPathId));
361 }
362 else
363 ErrorEx(string.Format("Duplicate particle filename: %1; GetParticleIDByName will only work with the first path if there are two different paths.", file_name), ErrorExSeverity.WARNING);
364 }
365 else
367
368 ++m_lastID;
370 return m_lastID;
371 }
372
374 {
375 return m_lastID;
376 }
377
379 static bool IsValidId(int id)
380 {
381 return id != NONE && id != INVALID;
382 }
383
385 static string GetParticlePath(int particle_id)
386 {
387 string path;
388 if (!m_ParticlePaths.Find(particle_id, path))
389 ErrorEx(string.Format("No particle registered with id: %1", particle_id), ErrorExSeverity.WARNING);
390 return path;
391 }
392
395 {
396 return string.Format("%1.ptc", GetParticlePath(particle_id));
397 }
398
400 static int GetParticleID(string particle_file)
401 {
402 int id = m_ParticlePaths.GetKeyByValue(particle_file);
403 if (!IsValidId(id)) // valid id starts from 1, 0 is invalid
404 ErrorEx(string.Format("No particle registered with path: %1", particle_file), ErrorExSeverity.WARNING);
405 return id;
406 }
407
409 static int GetParticleIDByName(string name)
410 {
411 int id = 0;
412 if (!m_ParticleNames.Find(name, id))
413 ErrorEx(string.Format("No particle registered with name: %1", name), ErrorExSeverity.WARNING);
414 return id;
415 }
416
418 static string GetPathToParticles()
419 {
420 return "graphics/particles/";
421 }
422
424 static void PreloadParticles()
425 {
426 if (!GetGame().IsServer() || !GetGame().IsMultiplayer()) // client side
427 {
428 int count = m_ParticlePaths.Count();
429
430 for (int i = 0; i < count; ++i)
431 {
432 vobject vobj = GetObject(string.Format("%1.ptc", m_ParticlePaths[i]));
434 }
435 }
436 }
437}
Object GetObject()
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
int particle_id
static const int GUN_MOSIN_COMPENSATOR
static const int GRENADE_M18_YELLOW_LOOP
static const int SMOKING_BARREL_HEAVY
static const int TORCH_T2
static const int IMPACT_SAND_EXIT
static const int IMPACT_MEATBONES_ENTER
static const int BARREL_FIRE_STEAM_2END
static const int FIREWORKS_EXPLOSION_THANKS2
static const int GRENADE_M18_RED_END
static const int GRENADE_RDG2_WHITE_LOOP
static const int BARREL_SMALL_FIRE
static const int OVEN_NORMAL_FIRE
static const int IMPACT_CONCRETE_RICOCHET
static const int GUN_MUZZLE_FLASH_SVD_STAR
static const int GUN_UMP45
static const int GUN_PARTICLE_CASING_RAISE
static const int GUN_MP5K_2
static const int EXPLOSION_GOAT
static const int GRENADE_RDG2_BLACK_START
RDG2.
static const int FIREWORKS_EXPLOSION_THANKS4
static const int CAMP_NO_IGNITE_WIND
static const int GUN_PARTICLE_CASING
static const int GUN_MP5K
static const int GRENADE_RDG2_BLACK_END
static const int FIREWORKS_AFTERBURN_END
static const int IMPACT_GRAVEL_EXIT
static const int IMPACT_MEAT_ENTER
static const int RGD5
static const int GUN_MP5K_COMPENSATOR
static const int GUN_SKS
static const int IMPACT_GRASS_RICOCHET
static const int BLOOD_SURFACE_CHUNKS
static int m_lastID
static const int IMPACT_PLASTER_ENTER
static const int IMPACT_GRASS_ENTER
static const int GUN_SOLO_MUZZLE_FLASH
static const int BOLT_CUPID_HIT
static const int GRENADE_M18_PURPLE_START
static const int TORCH_T3
static const int GUN_FNX_SUPPRESSED
static const int IMPACT_DISTANT_DUST
static const int ROADFLARE_BURNING_INIT
static const int IMPACT_GLASS_EXIT
static string GetPathToParticles()
Returns base path to all particles.
static const int BREATH_VAPOUR_MEDIUM
static const int FIREWORKS_EXPLOSION_THANKS1
static const int BLEEDING_SOURCE
static const int ROADFLARE_BURNING_SMOKE
static const int CAMP_STOVE_FIRE_START
static int GetParticleIDByName(string name)
Returns particle's ID based on the filename (without .ptc suffix)
static const int CONTAMINATED_AREA_GAS_GROUND
static const int COOKING_DRYING_DONE
static const int BREATH_VAPOUR_LIGHT
static const int GUN_M4A1
static const int FIREWORKS_EXPLOSION_YELLOW
static const int GRENADE_M18_BLACK_LOOP
static const int IMPACT_METAL_ENTER
static const int GUN_MP5K_SUPPRESSED
static const int IMPACT_WATER_SMALL_ENTER
static const int HATCHBACK_ENGINE_OVERHEATING
static const int IMPACT_GLASS_ENTER
static const int IMPACT_TEST
static const int EASTER_EGG_ACTIVATE
static const int GUN_LONG_WINDED_SMOKE
static const int IMPACT_RUBBER_EXIT
static const int BROOM_TORCH_T1
static const int GRENADE_M84
static const int CAMP_SMALL_SMOKE
static const int IMPACT_CONCRETE_ENTER
static const int ROADFLARE_BURNING_ENDING
static const int HOUSE_NORMAL_FIRE
static const int CLAYMORE_EXPLOSION
static const int GUN_WINCHESTER70
static const int ENV_SWARMING_FLIES
static const int IMPACT_TEST_EXIT_DEBUG
static const int BLOOD_SURFACE_DROPS
static const int GUN_IZH18_SUPPRESSED
static const int IMPACT_MEATBONES_RICOCHET
static const int HOUSE_FIRE_STEAM_2END
static const int IMPACT_WOOD_ENTER
static const int GRENADE_RDG2_BLACK_LOOP
static const int PARTICLE_TEST
static const int IMPACT_METAL_EXIT
static const int SMOKING_BARREL_STEAM
static const int GRENADE_RDG2_WHITE_START
static const int IMPACT_METAL_RICOCHET
static string GetParticleFullPath(int particle_id)
Returns particle's full path (with .ptc suffix) based on its ID.
static const int FIREWORKS_EXPLOSION_BLUE
static const int GUN_CZ61
static const int IMPACT_PLASTIC_EXIT
static const int IMPACT_RUBBER_ENTER
static const int GUN_CZ527
static const int EXPLOSION_LANDMINE
static const int GUN_AKM_SUPPRESSED
static const int M67
static const int IMPACT_WOOD_RICOCHET
static const int CAMP_STEAM_EXTINGUISH_START
static const int BROOM_TORCH_T3
static const int IMPACT_FOLIAGE_ENTER
static const int IMPACT_DIRT_RICOCHET
static const int CAMP_FIRE_START
static const int DROWNING_BUBBLES
static const int GRENADE_M18_YELLOW_START
static const int EVAPORATION
static const int CONTAMINATED_AREA_GAS_SHELL
static const int GRENADE_CHEM_BREAK
static const int GUN_CZ75
static const int IMPACT_TEST_NO_MATERIAL_ERROR
static const int FIREWORKS_EXPLOSION_RED
static const int CONTAMINATED_AREA_GAS_BIGASS
static void PreloadParticles()
Preloads all particles.
static const int HATCHBACK_COOLANT_OVERHEATED
static const int SMOKING_CAR_ENGINE
static const int FIREWORKS_EXPLOSION_THANKS5
static const int VOMIT_CHUNKS
static const int IMPACT_PLASTER_RICOCHET
static const int PLASTIC_EXPLOSION
static const int POWER_GENERATOR_SMOKE
static const int FLAREPROJ_ACTIVATE_GREEN
static const int HATCHBACK_COOLANT_OVERHEATING
static const int IMPACT_TEST_RICOCHET
static const int IMPACT_TEXTILE_EXIT
static const int GUN_MAGNUM
static const int IMPACT_PLASTIC_RICOCHET
static const int DIGGING_STASH
static ref map< int, string > m_ParticlePaths
static const int GUN_AK74
static const int IMPACT_FOLIAGE_EXIT
static const int CAMP_NORMAL_SMOKE
static const int GRENADE_M18_RED_LOOP
static const int GRENADE_M18_YELLOW_END
static const int FLAREPROJ_ACTIVATE
static int GetParticleID(string particle_file)
Returns particle's ID based on the path (without .ptc suffix)
static int RegisterParticle(string file_name)
static const int FIREWORKS_EXPLOSION_THANKS3
static const int GRENADE_M18_WHITE_END
static const int IMPACT_TEST_ENTER_DEBUG
static const int BARREL_FIRE_END
static const int CONTAMINATED_AREA_GAS_AROUND
static bool IsValidId(int id)
Purely checks for an invalid number, does NOT mean it is actually registered.
static const int FIREWORKS_FUSE
static const int IMPACT_GRAVEL_RICOCHET
static const int BARREL_NORMAL_FIRE
static const int HATCHBACK_EXHAUST_SMOKE
static const int GRENADE_M18_GREEN_LOOP
static const int COOKING_BOILING_DONE
static string GetParticlePath(int particle_id)
Returns particle's full path (without .ptc suffix) based on its ID.
static const int SPOOKY_MIST
static const int GRENADE_RDG2_WHITE_END
static ref map< string, int > m_ParticleNames
static const int CAMP_STOVE_FIRE
static const int GRENADE_M18_GREEN_END
static const int CAMP_STEAM_2END
static const int NONE
static const int SMOKING_BARREL_SMALL
static const int COOKING_BOILING_EMPTY
static const int CAMP_SMALL_FIRE
static const int OVEN_SMALL_FIRE
static const int WATER_JET
static const int SMOKING_HELI_WRECK
static const int FLAREPROJ_FIRE
static const int GRENADE_M18_WHITE_LOOP
static int GetRegisteredParticlesCount()
static const int INVALID
static const int BARREL_SMALL_SMOKE
static const int IMPACT_CONCRETE_EXIT
static const int HOUSE_NORMAL_SMOKE
static const int GUN_FNX
static const int IMPACT_PLASTER_EXIT
static const int GRENADE_M18_BLACK_START
static const int SMOKE_GENERIC_WRECK
static const int GUN_VSS
static const int IMPACT_TEST2
static const int IMPACT_FOLIAGE_RICOCHET
static const int COOKING_DRYING_START
static const int SMARKS_CHAMBER
static const int BARREL_NORMAL_SMOKE
static const int COOKING_BOILING_START
static const int IMPACT_WATER_MEDIUM_ENTER
static const int GRENADE_M18_RED_START
static const int CAMP_FIRE_END
static const int IMPACT_MEATBONES_EXIT
static const int HOUSE_SMALL_FIRE
static const int CONTAMINATED_AREA_GAS_TINY
static const int HOUSE_FIRE_END
static const int IMPACT_WATER_LARGE_ENTER
static const int BLEEDING_SOURCE_LIGHT
static int RegisterParticle(string root_path, string file_name)
Registers a particle and returns its ID.
static const int WATER_JET_WEAK
static const int BARBED_WIRE_SPARKS
static const int FLAREPROJ_ACTIVATE_BLUE
static const int COOKING_BAKING_START
static const int ROADFLARE_BURNING_MAIN
static const int GUN_AK101
static const int IMPACT_SAND_ENTER
static const int BONFIRE_SMOKE
static const int FIREWORKS_EXPLOSION_GREEN
static const int GRENADE_M18_WHITE_START
static const int GUN_MOSIN9130
static const int SMOKING_BARREL
static const int IMPACT_DIRT_ENTER
static const int FIREWORKS_SHOT
static const int VOMIT
static const int IMPACT_RUBBER_RICOCHET
static const int GRENADE_M18_GREEN_START
M18.
static const int CAMP_NORMAL_FIRE
static const int EXPLOSION_TEST
static const int IMPACT_SAND_RICOCHET
static const int DEBUG_DOT
static const int IMPACT_DIRT_EXIT
static const int IMPACT_TEST_RICOCHET_DEBUG
static const int FIREWORKS_AFTERBURN_START
static const int GUN_LONG_WINDED_SMOKE_SMALL
static const int VOMIT_BLOOD
static const int GUN_IZH18
static const int IMPACT_TEXTILE_RICOCHET
static const int HATCHBACK_ENGINE_OVERHEATED
static const int IMPACT_PLASTIC_ENTER
static const int GUN_PELLETS
static const int HOUSE_FIRE_START
static const int SMOKING_BARREL_STEAM_SMALL
static const int GUN_MP133
static const int CAMP_STOVE_FIRE_END
static const int IMPACT_MEAT_EXIT
static const int BREATH_VAPOUR_HEAVY
static const int GRENADE_M18_PURPLE_LOOP
static const int IMPACT_GLASS_RICOCHET
static const int BOLT_CUPID_TAIL
Cupid's bolt.
static const int FLAREPROJ_ACTIVATE_RED
static const int IMPACT_MEAT_RICOCHET
static const int HOUSE_SMALL_SMOKE
static const int GRENADE_M18_PURPLE_END
static const int COOKING_BURNING_DONE
static const int GRENADE_M18_BLACK_END
static const int GUN_PARTICLE_TEST
static const int BONFIRE_FIRE
static const int BARREL_FIRE_START
static const int GUN_AKM
static const int TORCH_T1
static const int OVEN_FIRE_START
static const int IMPACT_GRAVEL_ENTER
static const int AURORA_SANTA_WRECK
static const int OVEN_FIRE_END
static const int IMPACT_WOOD_EXIT
static const int IMPACT_TEXTILE_ENTER
static const int BROOM_TORCH_T2
static const int FIREWORKS_EXPLOSION_PINK
static const int COOKING_BAKING_DONE
static const int WATER_SPILLING
proto native CGame GetGame()
ErrorExSeverity
Definition EnDebug.c:62
enum ShapeType ErrorEx
proto bool FileExist(string name)
Check existence of file.
static proto string Format(string fmt, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
Gets n-th character from string.
proto native void ReleaseObject(vobject object, int flag=0)