diff --git a/code/__DEFINES/combat.dm b/code/__DEFINES/combat.dm
index ed9be51512..6ca2d80974 100644
--- a/code/__DEFINES/combat.dm
+++ b/code/__DEFINES/combat.dm
@@ -142,3 +142,11 @@
#define HIS_GRACE_FALL_ASLEEP 160 //If it reaches this point, He falls asleep and resets.
#define HIS_GRACE_FORCE_BONUS 4 //How much force is gained per kill.
+
+#define EXPLODE_NONE 0 //Don't even ask me why we need this.
+#define EXPLODE_DEVASTATE 1
+#define EXPLODE_HEAVY 2
+#define EXPLODE_LIGHT 3
+
+#define EMP_HEAVY 1
+#define EMP_LIGHT 2
diff --git a/code/datums/explosion.dm b/code/datums/explosion.dm
index 1145376967..ae0398e59b 100644
--- a/code/datums/explosion.dm
+++ b/code/datums/explosion.dm
@@ -125,7 +125,7 @@ GLOBAL_LIST_EMPTY(explosions)
E = new
E.set_up(epicenter)
E.start()
-
+
EX_PREPROCESS_CHECK_TICK
//flash mobs
@@ -165,20 +165,20 @@ GLOBAL_LIST_EMPTY(explosions)
var/throw_dist = dist
if(dist < devastation_range)
- dist = 1
+ dist = EXPLODE_DEVASTATE
else if(dist < heavy_impact_range)
- dist = 2
+ dist = EXPLODE_HEAVY
else if(dist < light_impact_range)
- dist = 3
+ dist = EXPLODE_LIGHT
else
- dist = 0
+ dist = EXPLODE_NONE
//------- EX_ACT AND TURF FIRES -------
if(flame_dist && prob(40) && !isspaceturf(T) && !T.density)
new /obj/effect/hotspot(T) //Mostly for ambience!
- if(dist > 0)
+ if(dist > EXPLODE_NONE)
T.explosion_level = max(T.explosion_level, dist) //let the bigger one have it
T.explosion_id = id
T.ex_act(dist)
@@ -192,7 +192,7 @@ GLOBAL_LIST_EMPTY(explosions)
var/throw_range = rand(throw_dist, max_range)
var/turf/throw_at = get_ranged_target_turf(I, throw_dir, throw_range)
I.throw_speed = EXPLOSION_THROW_SPEED //Temporarily change their throw_speed for embedding purposes (Reset when it finishes throwing, regardless of hitting anything)
- I.throw_at(throw_at, throw_range, EXPLOSION_THROW_SPEED)
+ I.throw_at(throw_at, throw_range, EXPLOSION_THROW_SPEED)
//wait for the lists to repop
var/break_condition
@@ -208,7 +208,7 @@ GLOBAL_LIST_EMPTY(explosions)
if(!running)
break
-
+
//update the trackers
affTurfLen = affected_turfs.len
expBlockLen = cached_exp_block.len
@@ -274,7 +274,7 @@ GLOBAL_LIST_EMPTY(explosions)
. = list()
var/processed = 0
while(!stopped && running)
- var/I
+ var/I
for(I in (processed + 1) to affected_turfs.len) // we cache the explosion block rating of every turf in the explosion area
var/turf/T = affected_turfs[I]
var/current_exp_block = T.density ? T.explosion_block : 0
@@ -282,12 +282,12 @@ GLOBAL_LIST_EMPTY(explosions)
for(var/obj/O in T)
var/the_block = O.explosion_block
current_exp_block += the_block == EXPLOSION_BLOCK_PROC ? O.GetExplosionBlock() : the_block
-
+
.[T] = current_exp_block
if(TICK_CHECK)
break
-
+
processed = I
stoplag()
@@ -346,7 +346,7 @@ GLOBAL_LIST_EMPTY(explosions)
TT = get_step_towards(TT,epicenter)
if(TT.density)
dist += TT.explosion_block
-
+
for(var/obj/O in T)
var/the_block = O.explosion_block
dist += the_block == EXPLOSION_BLOCK_PROC ? O.GetExplosionBlock() : the_block
diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm
index 8ebf17469c..6216fe4d8c 100644
--- a/code/datums/martial/wrestling.dm
+++ b/code/datums/martial/wrestling.dm
@@ -293,11 +293,11 @@
if (2)
D.adjustBruteLoss(rand(20,30))
if (3)
- D.ex_act(3)
+ D.ex_act(EXPLODE_LIGHT)
else
D.adjustBruteLoss(rand(10,20))
else
- D.ex_act(3)
+ D.ex_act(EXPLODE_LIGHT)
else
if (A)
@@ -404,7 +404,7 @@
if (falling == 1)
if (prob(33) || D.stat)
- D.ex_act(3)
+ D.ex_act(EXPLODE_LIGHT)
else
D.adjustBruteLoss(rand(20,30))
else
diff --git a/code/game/gamemodes/clock_cult/clock_structures/clockwork_obelisk.dm b/code/game/gamemodes/clock_cult/clock_structures/clockwork_obelisk.dm
index a8fe0d774d..4df615450f 100644
--- a/code/game/gamemodes/clock_cult/clock_structures/clockwork_obelisk.dm
+++ b/code/game/gamemodes/clock_cult/clock_structures/clockwork_obelisk.dm
@@ -35,7 +35,7 @@
/obj/structure/destructible/clockwork/powered/clockwork_obelisk/forced_disable(bad_effects)
var/affected = 0
for(var/obj/effect/clockwork/spatial_gateway/SG in loc)
- SG.ex_act(1)
+ SG.ex_act(EXPLODE_DEVASTATE)
affected++
if(bad_effects)
affected += try_use_power(MIN_CLOCKCULT_POWER*4)
diff --git a/code/game/gamemodes/clock_cult/clock_structures/interdiction_lens.dm b/code/game/gamemodes/clock_cult/clock_structures/interdiction_lens.dm
index 71c82c1a19..154f9c3cec 100644
--- a/code/game/gamemodes/clock_cult/clock_structures/interdiction_lens.dm
+++ b/code/game/gamemodes/clock_cult/clock_structures/interdiction_lens.dm
@@ -119,19 +119,19 @@
successfulprocess = TRUE
if(C.emped)
continue
- C.emp_act(1)
+ C.emp_act(EMP_HEAVY)
else if(istype(A, /obj/item/device/radio))
var/obj/item/device/radio/O = A
successfulprocess = TRUE
if(O.emped || !O.on)
continue
- O.emp_act(1)
+ O.emp_act(EMP_HEAVY)
else if((isliving(A) && !is_servant_of_ratvar(A)) || istype(A, /obj/structure/closet) || istype(A, /obj/item/weapon/storage)) //other things may have radios in them but we don't care
for(var/obj/item/device/radio/O in A.GetAllContents())
successfulprocess = TRUE
if(O.emped || !O.on)
continue
- O.emp_act(1)
+ O.emp_act(EMP_HEAVY)
CHECK_TICK
diff --git a/code/game/gamemodes/cult/talisman.dm b/code/game/gamemodes/cult/talisman.dm
index 61bf672250..e8b77c1172 100644
--- a/code/game/gamemodes/cult/talisman.dm
+++ b/code/game/gamemodes/cult/talisman.dm
@@ -173,7 +173,7 @@
target.flash_act(1,1)
if(issilicon(target))
var/mob/living/silicon/S = target
- S.emp_act(1)
+ S.emp_act(EMP_HEAVY)
else if(iscarbon(target))
var/mob/living/carbon/C = target
C.silent += 5
diff --git a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm
index 2bcc74ff07..369e57697d 100644
--- a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm
+++ b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm
@@ -434,7 +434,7 @@
new /obj/effect/temp_visual/swarmer/disintegration(get_turf(target))
do_attack_animation(target)
changeNext_move(CLICK_CD_MELEE)
- target.ex_act(3)
+ target.ex_act(EXPLODE_LIGHT)
/mob/living/simple_animal/hostile/swarmer/proc/DisperseTarget(mob/living/target)
diff --git a/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm b/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm
index 25203022a3..2bbe2cae5f 100644
--- a/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm
+++ b/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm
@@ -293,7 +293,7 @@
continue
to_chat(human, "You feel [pick("your sense of direction flicker out", "a stabbing pain in your head", "your mind fill with static")].")
new /obj/effect/temp_visual/revenant(human.loc)
- human.emp_act(1)
+ human.emp_act(EMP_HEAVY)
for(var/obj/thing in T)
if(istype(thing, /obj/machinery/dominator) || istype(thing, /obj/machinery/power/apc) || istype(thing, /obj/machinery/power/smes)) //Doesn't work on dominators, SMES and APCs, to prevent kekkery
continue
@@ -303,12 +303,12 @@
thing.emag_act(null)
else
if(!istype(thing, /obj/machinery/clonepod)) //I hate everything but mostly the fact there's no better way to do this without just not affecting it at all
- thing.emp_act(1)
+ thing.emp_act(EMP_HEAVY)
for(var/mob/living/silicon/robot/S in T) //Only works on cyborgs, not AI
playsound(S, 'sound/machines/warning-buzzer.ogg', 50, 1)
new /obj/effect/temp_visual/revenant(S.loc)
S.spark_system.start()
- S.emp_act(1)
+ S.emp_act(EMP_HEAVY)
//Blight: Infects nearby humans and in general messes living stuff up.
/obj/effect/proc_holder/spell/aoe_turf/revenant/blight
diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm
index 6df7e19458..624d853808 100644
--- a/code/game/machinery/doors/airlock.dm
+++ b/code/game/machinery/doors/airlock.dm
@@ -1210,7 +1210,7 @@
playsound(get_turf(src), I.usesound, 50, 1)
if(!do_after(user, 150*I.toolspeed, target = src))
to_chat(user, "You slip and [charge] detonates!")
- charge.ex_act(1)
+ charge.ex_act(EXPLODE_DEVASTATE)
user.Knockdown(60)
return
user.visible_message("[user] removes [charge] from [src].", \
@@ -1295,7 +1295,7 @@
update_icon(AIRLOCK_OPENING)
visible_message("[src]'s panel is blown off in a spray of deadly shrapnel!")
charge.loc = get_turf(src)
- charge.ex_act(1)
+ charge.ex_act(EXPLODE_DEVASTATE)
detonated = 1
charge = null
for(var/mob/living/carbon/human/H in orange(2,src))
@@ -1361,7 +1361,7 @@
var/obj/structure/window/killthis = (locate(/obj/structure/window) in get_turf(src))
if(killthis)
- killthis.ex_act(2)//Smashin windows
+ killthis.ex_act(EXPLODE_HEAVY)//Smashin windows
if(density)
return TRUE
diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm
index 57cff71730..f5958843fc 100644
--- a/code/game/machinery/machinery.dm
+++ b/code/game/machinery/machinery.dm
@@ -491,9 +491,9 @@ Class Procs:
if(prob(85) && explosive)
explosion(src.loc,1,2,4,flame_range = 2, adminlog = 0, smoke = 0)
else if(prob(50))
- emp_act(2)
+ emp_act(EMP_LIGHT)
else
- ex_act(2)
+ ex_act(EXPLODE_HEAVY)
/obj/machinery/Exited(atom/movable/AM, atom/newloc)
. = ..()
diff --git a/code/game/mecha/equipment/tools/mining_tools.dm b/code/game/mecha/equipment/tools/mining_tools.dm
index b06ec36d09..bbc7ea2e22 100644
--- a/code/game/mecha/equipment/tools/mining_tools.dm
+++ b/code/game/mecha/equipment/tools/mining_tools.dm
@@ -35,7 +35,7 @@
else
drill_mob(target, chassis.occupant)
else
- target.ex_act(2)
+ target.ex_act(EXPLODE_HEAVY)
/turf/proc/drill_act(obj/item/mecha_parts/mecha_equipment/drill/drill)
return
@@ -44,7 +44,7 @@
if(istype(drill, /obj/item/mecha_parts/mecha_equipment/drill/diamonddrill))
if(drill.do_after_cooldown(src))//To slow down how fast mechs can drill through the station
drill.log_message("Drilled through [src]")
- ex_act(3)
+ ex_act(EXPLODE_LIGHT)
else
drill.occupant_message("[src] is too durable to drill through.")
diff --git a/code/game/mecha/mecha_control_console.dm b/code/game/mecha/mecha_control_console.dm
index 2d6c7b34d5..7c08e3fad7 100644
--- a/code/game/mecha/mecha_control_console.dm
+++ b/code/game/mecha/mecha_control_console.dm
@@ -106,7 +106,7 @@
/obj/item/mecha_parts/mecha_tracking/proc/shock()
var/obj/mecha/M = in_mecha()
if(M)
- M.emp_act(2)
+ M.emp_act(EMP_LIGHT)
qdel(src)
/obj/item/mecha_parts/mecha_tracking/proc/get_mecha_log()
diff --git a/code/game/objects/effects/anomalies.dm b/code/game/objects/effects/anomalies.dm
index 18fe979342..4a3ee9b053 100644
--- a/code/game/objects/effects/anomalies.dm
+++ b/code/game/objects/effects/anomalies.dm
@@ -308,7 +308,7 @@
if(target && !target.stat)
O.throw_at(target, 7, 5)
else
- O.ex_act(2)
+ O.ex_act(EXPLODE_HEAVY)
/obj/effect/anomaly/bhole/proc/grav(r, ex_act_force, pull_chance, turf_removal_chance)
for(var/t = -r, t < r, t++)
diff --git a/code/game/objects/empulse.dm b/code/game/objects/empulse.dm
index eb8602da5d..626925c865 100644
--- a/code/game/objects/empulse.dm
+++ b/code/game/objects/empulse.dm
@@ -20,12 +20,12 @@
if(distance < 0)
distance = 0
if(distance < heavy_range)
- T.emp_act(1)
+ T.emp_act(EMP_HEAVY)
else if(distance == heavy_range)
if(prob(50))
- T.emp_act(1)
+ T.emp_act(EMP_HEAVY)
else
- T.emp_act(2)
+ T.emp_act(EMP_LIGHT)
else if(distance <= light_range)
- T.emp_act(2)
+ T.emp_act(EMP_LIGHT)
return 1
\ No newline at end of file
diff --git a/code/game/objects/items/devices/camera_bug.dm b/code/game/objects/items/devices/camera_bug.dm
index 520646f478..c56317e0e6 100644
--- a/code/game/objects/items/devices/camera_bug.dm
+++ b/code/game/objects/items/devices/camera_bug.dm
@@ -218,7 +218,7 @@
var/list/cameras = flatten_list(bugged_cameras)
var/obj/machinery/camera/C = locate(href_list["emp"]) in cameras
if(C && istype(C) && C.bug == src)
- C.emp_act(1)
+ C.emp_act(EMP_HEAVY)
C.bug = null
bugged_cameras -= C.c_tag
interact()
diff --git a/code/game/objects/items/devices/doorCharge.dm b/code/game/objects/items/devices/doorCharge.dm
index c9539da58f..65ce427ba5 100644
--- a/code/game/objects/items/devices/doorCharge.dm
+++ b/code/game/objects/items/devices/doorCharge.dm
@@ -20,10 +20,10 @@
qdel(src)
if(2)
if(prob(50))
- ex_act(1)
+ ex_act(EXPLODE_DEVASTATE)
if(3)
if(prob(25))
- ex_act(1)
+ ex_act(EXPLODE_DEVASTATE)
/obj/item/device/doorCharge/Destroy()
if(istype(loc, /obj/machinery/door/airlock))
diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm
index dc075effae..1a623e2a3d 100644
--- a/code/game/objects/items/devices/flashlight.dm
+++ b/code/game/objects/items/devices/flashlight.dm
@@ -381,7 +381,7 @@
else
A.visible_message("[user] blinks \the [src] at \the [A].")
to_chat(user, "\The [src] now has [emp_cur_charges] charge\s.")
- A.emp_act(1)
+ A.emp_act(EMP_HEAVY)
else
to_chat(user, "\The [src] needs time to recharge!")
return
diff --git a/code/game/objects/items/devices/laserpointer.dm b/code/game/objects/items/devices/laserpointer.dm
index 1ce87d91f6..234c917df1 100644
--- a/code/game/objects/items/devices/laserpointer.dm
+++ b/code/game/objects/items/devices/laserpointer.dm
@@ -119,7 +119,7 @@
else if(istype(target, /obj/machinery/camera))
var/obj/machinery/camera/C = target
if(prob(effectchance * diode.rating))
- C.emp_act(1)
+ C.emp_act(EMP_HEAVY)
outmsg = "You hit the lens of [C] with [src], temporarily disabling the camera!"
add_logs(user, C, "EMPed", src)
else
diff --git a/code/game/objects/items/weapons/weaponry.dm b/code/game/objects/items/weapons/weaponry.dm
index aff5e7d9d3..51c49e0367 100644
--- a/code/game/objects/items/weapons/weaponry.dm
+++ b/code/game/objects/items/weapons/weaponry.dm
@@ -495,7 +495,7 @@
if(homerun_ready)
user.visible_message("It's a home run!")
target.throw_at(throw_target, rand(8,10), 14, user)
- target.ex_act(2)
+ target.ex_act(EXPLODE_HEAVY)
playsound(get_turf(src), 'sound/weapons/homerun.ogg', 100, 1)
homerun_ready = 0
return
diff --git a/code/game/objects/obj_defense.dm b/code/game/objects/obj_defense.dm
index d6748235bd..3b5af86147 100644
--- a/code/game/objects/obj_defense.dm
+++ b/code/game/objects/obj_defense.dm
@@ -142,7 +142,7 @@
return take_damage(M.force*3, mech_damtype, "melee", play_soundeffect, get_dir(src, M)) // multiplied by 3 so we can hit objs hard but not be overpowered against mobs.
/obj/singularity_act()
- ex_act(1)
+ ex_act(EXPLODE_DEVASTATE)
if(src && !QDELETED(src))
qdel(src)
return 2
diff --git a/code/modules/admin/verbs/SDQL2/SDQL_2.dm b/code/modules/admin/verbs/SDQL2/SDQL_2.dm
index 70ef44576c..8b64328c68 100644
--- a/code/modules/admin/verbs/SDQL2/SDQL_2.dm
+++ b/code/modules/admin/verbs/SDQL2/SDQL_2.dm
@@ -4,7 +4,7 @@
// Examples
/*
-- Will call the proc for all computers in the world, thats dir is 2.
- CALL ex_act(1) ON /obj/machinery/computer IN world WHERE dir == 2
+ CALL ex_act(EXPLODE_DEVASTATE) ON /obj/machinery/computer IN world WHERE dir == 2
-- Will open a window with a list of all the closets in the world, with a link to VV them.
SELECT /obj/structure/closet/secure_closet/security/cargo IN world WHERE icon_off == "secoff"
-- Will change all the tube lights to green
diff --git a/code/modules/awaymissions/mission_code/stationCollision.dm b/code/modules/awaymissions/mission_code/stationCollision.dm
index 441d40db8f..5fb373fbe7 100644
--- a/code/modules/awaymissions/mission_code/stationCollision.dm
+++ b/code/modules/awaymissions/mission_code/stationCollision.dm
@@ -156,7 +156,7 @@ GLOBAL_VAR_INIT(sc_safecode5, "[rand(0,9)]")
L.gib()
else if(istype(A,/obj/))
var/obj/O = A
- O.ex_act(1)
+ O.ex_act(EXPLODE_DEVASTATE)
if(O) qdel(O)
else if(isturf(A))
var/turf/T = A
diff --git a/code/modules/events/communications_blackout.dm b/code/modules/events/communications_blackout.dm
index fdf894092d..8eacd3b25a 100644
--- a/code/modules/events/communications_blackout.dm
+++ b/code/modules/events/communications_blackout.dm
@@ -23,4 +23,4 @@
/datum/round_event/communications_blackout/start()
for(var/obj/machinery/telecomms/T in GLOB.telecomms_list)
- T.emp_act(1)
+ T.emp_act(EMP_HEAVY)
diff --git a/code/modules/events/immovable_rod.dm b/code/modules/events/immovable_rod.dm
index 204edb0e9a..ffaa363d2c 100644
--- a/code/modules/events/immovable_rod.dm
+++ b/code/modules/events/immovable_rod.dm
@@ -80,7 +80,7 @@ In my current plan for it, 'solid' will be defined as anything with density == 1
if(isturf(clong) || isobj(clong))
if(clong.density)
- clong.ex_act(2)
+ clong.ex_act(EXPLODE_HEAVY)
else if(isliving(clong))
penetrate(clong)
@@ -100,4 +100,4 @@ In my current plan for it, 'solid' will be defined as anything with density == 1
var/mob/living/carbon/human/H = L
H.adjustBruteLoss(160)
if(L && (L.density || prob(10)))
- L.ex_act(2)
+ L.ex_act(EXPLODE_HEAVY)
diff --git a/code/modules/events/processor_overload.dm b/code/modules/events/processor_overload.dm
index 19d7973d3d..11303e53ba 100644
--- a/code/modules/events/processor_overload.dm
+++ b/code/modules/events/processor_overload.dm
@@ -35,6 +35,6 @@
explosion(get_turf(P), 0, 0, 2)
// Only a level 1 explosion actually damages the machine
// at all
- P.ex_act(1)
+ P.ex_act(EXPLODE_DEVASTATE)
else
- P.emp_act(1)
+ P.emp_act(EMP_HEAVY)
diff --git a/code/modules/holodeck/computer.dm b/code/modules/holodeck/computer.dm
index a543bebf55..960ba6497d 100644
--- a/code/modules/holodeck/computer.dm
+++ b/code/modules/holodeck/computer.dm
@@ -135,7 +135,7 @@
for(var/turf/T in linked)
if(prob(30))
do_sparks(2, 1, T)
- T.ex_act(3)
+ T.ex_act(EXPLODE_LIGHT)
T.hotspot_expose(1000,500,1)
if(!emagged)
diff --git a/code/modules/mob/living/simple_animal/guardian/types/explosive.dm b/code/modules/mob/living/simple_animal/guardian/types/explosive.dm
index df08de7220..7738910cb5 100644
--- a/code/modules/mob/living/simple_animal/guardian/types/explosive.dm
+++ b/code/modules/mob/living/simple_animal/guardian/types/explosive.dm
@@ -76,7 +76,7 @@
stored_obj.forceMove(T)
playsound(T,'sound/effects/explosion2.ogg', 200, 1)
new /obj/effect/temp_visual/explosion(T)
- user.ex_act(2)
+ user.ex_act(EXPLODE_HEAVY)
qdel(src)
else
to_chat(user, "[src] glows with a strange light, and you don't touch it.")
diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm
index 715da142be..fb8b399e76 100644
--- a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm
+++ b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm
@@ -176,7 +176,7 @@ Difficulty: Hard
/mob/living/simple_animal/hostile/megafauna/bubblegum/Bump(atom/A)
if(charging)
if(isturf(A) || isobj(A) && A.density)
- A.ex_act(2)
+ A.ex_act(EXPLODE_HEAVY)
DestroySurroundings()
..()
diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm
index 179949ed98..32a579520f 100644
--- a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm
+++ b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm
@@ -254,7 +254,7 @@ Difficulty: Very Hard
/obj/item/projectile/colossus/on_hit(atom/target, blocked = FALSE)
. = ..()
if(isturf(target) || isobj(target))
- target.ex_act(2)
+ target.ex_act(EXPLODE_HEAVY)
/obj/item/device/gps/internal/colossus
diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm
index 1d3dfefefa..83483c89d2 100644
--- a/code/modules/power/cell.dm
+++ b/code/modules/power/cell.dm
@@ -154,7 +154,7 @@
/obj/item/weapon/stock_parts/cell/blob_act(obj/structure/blob/B)
- ex_act(1)
+ ex_act(EXPLODE_DEVASTATE)
/obj/item/weapon/stock_parts/cell/proc/get_electrocute_damage()
if(charge >= 1000)
diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm
index 900ad51de9..40d5222a28 100644
--- a/code/modules/power/port_gen.dm
+++ b/code/modules/power/port_gen.dm
@@ -218,7 +218,7 @@
/obj/machinery/power/port_gen/pacman/emag_act(mob/user)
if(!emagged)
emagged = TRUE
- emp_act(1)
+ emp_act(EMP_HEAVY)
/obj/machinery/power/port_gen/pacman/attack_hand(mob/user)
..()
diff --git a/code/modules/power/tesla/energy_ball.dm b/code/modules/power/tesla/energy_ball.dm
index 21aea66e1c..4b7e3a9b52 100644
--- a/code/modules/power/tesla/energy_ball.dm
+++ b/code/modules/power/tesla/energy_ball.dm
@@ -272,7 +272,7 @@ GLOBAL_LIST_INIT(blacklisted_tesla_types, typecacheof(list(/obj/machinery/atmosp
if(issilicon(closest_mob))
var/mob/living/silicon/S = closest_mob
if(stun_mobs)
- S.emp_act(2)
+ S.emp_act(EMP_LIGHT)
tesla_zap(S, 7, power / 1.5, explosive, stun_mobs) // metallic folks bounce it further
else
tesla_zap(closest_mob, 5, power / 1.5, explosive, stun_mobs)
diff --git a/code/modules/projectiles/guns/beam_rifle.dm b/code/modules/projectiles/guns/beam_rifle.dm
index 40493244d0..e569c16975 100644
--- a/code/modules/projectiles/guns/beam_rifle.dm
+++ b/code/modules/projectiles/guns/beam_rifle.dm
@@ -355,7 +355,7 @@
if(wall_pierce++ < wall_pierce_amount)
loc = target
if(prob(wall_devastate))
- target.ex_act(2)
+ target.ex_act(EXPLODE_HEAVY)
return TRUE
if(ismovableatom(target))
var/atom/movable/AM = target
diff --git a/code/modules/projectiles/guns/misc/blastcannon.dm b/code/modules/projectiles/guns/misc/blastcannon.dm
index 24b6d1765d..d2e1a295c0 100644
--- a/code/modules/projectiles/guns/misc/blastcannon.dm
+++ b/code/modules/projectiles/guns/misc/blastcannon.dm
@@ -112,11 +112,11 @@
/obj/item/projectile/blastwave/Range()
..()
if(heavyr)
- loc.ex_act(1)
+ loc.ex_act(EXPLODE_DEVASTATE)
else if(mediumr)
- loc.ex_act(2)
+ loc.ex_act(EXPLODE_HEAVY)
else if(lightr)
- loc.ex_act(3)
+ loc.ex_act(EXPLODE_LIGHT)
else
qdel(src)
heavyr--
diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm
index 39bcbb3bac..6a2ea8bb40 100644
--- a/code/modules/projectiles/projectile/beams.dm
+++ b/code/modules/projectiles/projectile/beams.dm
@@ -75,7 +75,7 @@
/obj/item/projectile/beam/pulse/on_hit(atom/target, blocked = FALSE)
. = ..()
if(isturf(target) || istype(target,/obj/structure/))
- target.ex_act(2)
+ target.ex_act(EXPLODE_HEAVY)
/obj/item/projectile/beam/pulse/shot
damage = 40
diff --git a/code/modules/projectiles/projectile/special.dm b/code/modules/projectiles/projectile/special.dm
index 04a6fb466f..fc16f1f744 100644
--- a/code/modules/projectiles/projectile/special.dm
+++ b/code/modules/projectiles/projectile/special.dm
@@ -114,7 +114,7 @@
if(A == firer)
loc = A.loc
return
- A.ex_act(2)
+ A.ex_act(EXPLODE_HEAVY)
playsound(src.loc, 'sound/effects/meteorimpact.ogg', 40, 1)
for(var/mob/M in urange(10, src))
if(!M.stat)
diff --git a/code/modules/reagents/chemistry/reagents/blob_reagents.dm b/code/modules/reagents/chemistry/reagents/blob_reagents.dm
index 9b1117bcc5..f1e46a6322 100644
--- a/code/modules/reagents/chemistry/reagents/blob_reagents.dm
+++ b/code/modules/reagents/chemistry/reagents/blob_reagents.dm
@@ -361,7 +361,7 @@
/datum/reagent/blob/electromagnetic_web/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O)
reac_volume = ..()
if(prob(reac_volume*2))
- M.emp_act(2)
+ M.emp_act(EMP_LIGHT)
if(M)
M.apply_damage(reac_volume, BURN)
diff --git a/code/modules/station_goals/bsa.dm b/code/modules/station_goals/bsa.dm
index b593b507a8..9ce3d28070 100644
--- a/code/modules/station_goals/bsa.dm
+++ b/code/modules/station_goals/bsa.dm
@@ -180,7 +180,7 @@
/obj/machinery/bsa/full/proc/fire(mob/user, turf/bullseye)
var/turf/point = get_front_turf()
for(var/turf/T in getline(get_step(point,dir),get_target_turf()))
- T.ex_act(1)
+ T.ex_act(EXPLODE_DEVASTATE)
point.Beam(get_target_turf(),icon_state="bsa_beam",time=50,maxdistance = world.maxx) //ZZZAP
message_admins("[key_name_admin(user)] has launched an artillery strike.")