From 7758a0afeddfa299abd4f54c14996474849c8d50 Mon Sep 17 00:00:00 2001 From: Razharas Date: Fri, 5 Dec 2014 23:21:48 +0300 Subject: [PATCH] Ok now explosions shall work properly Changed severity to target, make items not destroy themselves on severity lower than 1, all that stuff --- code/controllers/supply_shuttle.dm | 2 +- code/game/atoms.dm | 8 ++++++-- code/game/gamemodes/blob/theblob.dm | 2 +- code/game/gamemodes/nuclear/nuclearbomb.dm | 2 +- code/game/machinery/Sleeper.dm | 2 +- code/game/machinery/atmoalter/canister.dm | 2 +- code/game/machinery/bots/bots.dm | 2 +- code/game/machinery/camera/camera.dm | 2 +- code/game/machinery/cloning.dm | 2 +- .../game/machinery/computer/HolodeckControl.dm | 2 +- code/game/machinery/computer/computer.dm | 2 +- code/game/machinery/deployable.dm | 4 ++-- code/game/machinery/doors/door.dm | 2 +- code/game/machinery/doors/windowdoor.dm | 2 +- code/game/machinery/hologram.dm | 2 +- code/game/machinery/newscaster.dm | 2 +- code/game/machinery/portable_turret.dm | 2 +- code/game/machinery/rechargestation.dm | 2 +- code/game/machinery/shieldgen.dm | 6 +++--- code/game/machinery/suit_storage_unit.dm | 2 +- code/game/machinery/syndicatebomb.dm | 2 +- code/game/machinery/turrets.dm | 4 ++-- code/game/machinery/vending.dm | 2 +- code/game/mecha/mecha.dm | 2 +- code/game/objects/effects/aliens.dm | 4 ++-- .../objects/effects/decals/Cleanable/humans.dm | 2 +- code/game/objects/effects/decals/decal.dm | 2 +- code/game/objects/effects/effect_system.dm | 2 +- code/game/objects/effects/glowshroom.dm | 2 +- code/game/objects/effects/spiders.dm | 2 +- code/game/objects/explosion.dm | 5 ----- code/game/objects/items.dm | 10 +++++----- code/game/objects/items/latexballoon.dm | 2 +- code/game/objects/items/weapons/explosives.dm | 2 +- code/game/objects/objs.dm | 15 +++++---------- .../structures/crates_lockers/closets.dm | 3 ++- .../crates_lockers/closets/fireaxe.dm | 2 +- code/game/objects/structures/displaycase.dm | 2 +- code/game/objects/structures/extinguisher.dm | 2 +- code/game/objects/structures/girders.dm | 6 +++--- code/game/objects/structures/grille.dm | 2 +- code/game/objects/structures/lamarr_cage.dm | 2 +- code/game/objects/structures/lattice.dm | 2 +- code/game/objects/structures/safe.dm | 2 +- code/game/objects/structures/signs.dm | 2 +- .../structures/stool_bed_chair_nest/stools.dm | 2 +- code/game/objects/structures/tables_racks.dm | 4 ++-- .../structures/transit_tubes/transit_tube.dm | 2 +- code/game/objects/structures/window.dm | 18 +++++++++--------- code/game/turfs/simulated/floor.dm | 8 ++++---- code/game/turfs/simulated/floor/misc_floor.dm | 8 ++++---- code/game/turfs/simulated/walls.dm | 5 ++--- code/modules/events/ninja.dm | 2 +- code/modules/events/spacevine.dm | 2 +- code/modules/library/lib_items.dm | 2 +- code/modules/mining/equipment_locker.dm | 4 ++-- code/modules/mining/mine_turfs.dm | 6 +++--- code/modules/mining/satchel_ore_boxdm.dm | 2 +- .../living/carbon/alien/humanoid/humanoid.dm | 2 +- .../mob/living/carbon/alien/larva/larva.dm | 2 +- code/modules/mob/living/carbon/human/human.dm | 5 ++--- .../modules/mob/living/carbon/monkey/monkey.dm | 2 +- code/modules/mob/living/carbon/slime/slime.dm | 2 +- code/modules/mob/living/living.dm | 2 +- code/modules/mob/living/silicon/ai/ai.dm | 2 +- code/modules/mob/living/silicon/pai/pai.dm | 2 +- code/modules/mob/living/silicon/robot/robot.dm | 3 +-- code/modules/mob/living/silicon/silicon.dm | 3 +++ .../simple_animal/hostile/mining_mobs.dm | 2 +- .../mob/living/simple_animal/simple_animal.dm | 2 +- code/modules/paperwork/photocopier.dm | 2 +- .../power/antimatter/containment_jar.dm | 2 +- code/modules/power/antimatter/control.dm | 2 +- code/modules/power/antimatter/shielding.dm | 2 +- code/modules/power/apc.dm | 2 +- code/modules/power/cable.dm | 2 +- code/modules/power/cell.dm | 2 +- code/modules/power/engine.dm | 4 ++-- code/modules/power/gravitygenerator.dm | 2 +- code/modules/power/lighting.dm | 2 +- code/modules/power/singularity/collector.dm | 2 +- .../power/singularity/containment_field.dm | 2 +- .../particle_accelerator/particle.dm | 2 +- code/modules/power/singularity/singularity.dm | 2 +- code/modules/power/solar.dm | 4 ++-- code/modules/reagents/Chemistry-Machinery.dm | 4 ++-- code/modules/reagents/reagent_dispenser.dm | 4 ++-- code/modules/recycling/disposal.dm | 4 ++-- code/modules/research/server.dm | 2 +- 89 files changed, 136 insertions(+), 141 deletions(-) diff --git a/code/controllers/supply_shuttle.dm b/code/controllers/supply_shuttle.dm index 4a3a7ebbd41..7e14801c5e3 100644 --- a/code/controllers/supply_shuttle.dm +++ b/code/controllers/supply_shuttle.dm @@ -45,7 +45,7 @@ var/global/datum/controller/supply_shuttle/supply_shuttle return 0 return ..() -/obj/structure/plasticflaps/ex_act(severity, specialty) +/obj/structure/plasticflaps/ex_act(severity, target) ..() switch(severity) if (1) diff --git a/code/game/atoms.dm b/code/game/atoms.dm index 2409ef32b57..e5ec1e07753 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -232,8 +232,12 @@ its easier to just keep the beam vertical. /atom/proc/relaymove() return -/atom/proc/ex_act(severity, specialty) - contents_explosion(src, severity, specialty) +/atom/proc/contents_explosion(severity, target) + for(var/atom/A in contents) + A.ex_act(severity, target) + +/atom/proc/ex_act(severity, target) + contents_explosion(severity, target) /atom/proc/blob_act() return diff --git a/code/game/gamemodes/blob/theblob.dm b/code/game/gamemodes/blob/theblob.dm index cc729bb32b1..357bdd7c195 100644 --- a/code/game/gamemodes/blob/theblob.dm +++ b/code/game/gamemodes/blob/theblob.dm @@ -126,7 +126,7 @@ A.blob_act() return 1 -/obj/effect/blob/ex_act(severity, specialty) +/obj/effect/blob/ex_act(severity, target) ..() var/damage = 150 health -= ((damage/brute_resist) - (severity * 5)) diff --git a/code/game/gamemodes/nuclear/nuclearbomb.dm b/code/game/gamemodes/nuclear/nuclearbomb.dm index 0d5dfc22397..0741a7c099c 100644 --- a/code/game/gamemodes/nuclear/nuclearbomb.dm +++ b/code/game/gamemodes/nuclear/nuclearbomb.dm @@ -149,7 +149,7 @@ var/bomb_set if ((M.client && M.machine == src)) src.attack_hand(M) -/obj/machinery/nuclearbomb/ex_act(severity, specialty) +/obj/machinery/nuclearbomb/ex_act(severity, target) return /obj/machinery/nuclearbomb/blob_act() diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index 4881f8a2658..ec015bcc70b 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -84,7 +84,7 @@ default_deconstruction_crowbar(I) -/obj/machinery/sleeper/ex_act(severity, specialty) +/obj/machinery/sleeper/ex_act(severity, target) go_out() ..() diff --git a/code/game/machinery/atmoalter/canister.dm b/code/game/machinery/atmoalter/canister.dm index b21f8e75145..7e787e9e0b4 100644 --- a/code/game/machinery/atmoalter/canister.dm +++ b/code/game/machinery/atmoalter/canister.dm @@ -204,7 +204,7 @@ update_flag healthcheck() ..() -/obj/machinery/portable_atmospherics/canister/ex_act(severity, specialty) +/obj/machinery/portable_atmospherics/canister/ex_act(severity, target) switch(severity) if(1.0) if(destroyed || prob(30)) diff --git a/code/game/machinery/bots/bots.dm b/code/game/machinery/bots/bots.dm index 6bd8d4f84a4..dd69b258e8b 100644 --- a/code/game/machinery/bots/bots.dm +++ b/code/game/machinery/bots/bots.dm @@ -293,7 +293,7 @@ healthcheck() return -/obj/machinery/bot/ex_act(severity, specialty) +/obj/machinery/bot/ex_act(severity, target) switch(severity) if(1.0) explode() diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index 500a12326dd..22d472812f9 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -93,7 +93,7 @@ ..() -/obj/machinery/camera/ex_act(severity, specialty) +/obj/machinery/camera/ex_act(severity, target) if(src.invuln) return else diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index 1cf5d5306be..7f7a0cb9384 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -348,7 +348,7 @@ if(prob(100/(severity*efficiency))) malfunction() ..() -/obj/machinery/clonepod/ex_act(severity, specialty) +/obj/machinery/clonepod/ex_act(severity, target) ..() if(!gc_destroyed) go_out() diff --git a/code/game/machinery/computer/HolodeckControl.dm b/code/game/machinery/computer/HolodeckControl.dm index f851aaa7981..85c2f651c45 100644 --- a/code/game/machinery/computer/HolodeckControl.dm +++ b/code/game/machinery/computer/HolodeckControl.dm @@ -146,7 +146,7 @@ ..() -/obj/machinery/computer/HolodeckControl/ex_act(severity, specialty) +/obj/machinery/computer/HolodeckControl/ex_act(severity, target) emergencyShutdown() ..() diff --git a/code/game/machinery/computer/computer.dm b/code/game/machinery/computer/computer.dm index 3529f9ce314..946f4290c1c 100644 --- a/code/game/machinery/computer/computer.dm +++ b/code/game/machinery/computer/computer.dm @@ -31,7 +31,7 @@ ..() -/obj/machinery/computer/ex_act(severity, specialty) +/obj/machinery/computer/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm index 3989ee35d2c..ea4de4872e4 100644 --- a/code/game/machinery/deployable.dm +++ b/code/game/machinery/deployable.dm @@ -91,7 +91,7 @@ for reference: qdel(src) ..() -/obj/structure/barricade/wooden/ex_act(severity, specialty) +/obj/structure/barricade/wooden/ex_act(severity, target) switch(severity) if(1.0) visible_message("The barricade is blown apart!") @@ -210,7 +210,7 @@ for reference: src.explode() ..() -/obj/machinery/deployable/barrier/ex_act(severity, specialty) +/obj/machinery/deployable/barrier/ex_act(severity, target) switch(severity) if(1.0) src.explode() diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index d994c0aba9e..9c785f30260 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -169,7 +169,7 @@ ..() -/obj/machinery/door/ex_act(severity, specialty) +/obj/machinery/door/ex_act(severity, target) if(severity == 3) if(prob(80)) var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm index b50ac0e9a1f..6e57407c657 100644 --- a/code/game/machinery/doors/windowdoor.dm +++ b/code/game/machinery/doors/windowdoor.dm @@ -162,7 +162,7 @@ qdel(src) return -/obj/machinery/door/window/ex_act(severity, specialty) +/obj/machinery/door/window/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/game/machinery/hologram.dm b/code/game/machinery/hologram.dm index bb2cab0a197..3599732cc6b 100644 --- a/code/game/machinery/hologram.dm +++ b/code/game/machinery/hologram.dm @@ -162,7 +162,7 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/ stat |= ~NOPOWER //Destruction procs. -/obj/machinery/hologram/ex_act(severity, specialty) +/obj/machinery/hologram/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/game/machinery/newscaster.dm b/code/game/machinery/newscaster.dm index f933cb9366e..f63ea425196 100644 --- a/code/game/machinery/newscaster.dm +++ b/code/game/machinery/newscaster.dm @@ -220,7 +220,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co src.update_icon() -/obj/machinery/newscaster/ex_act(severity, specialty) +/obj/machinery/newscaster/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm index 42c627dbd0d..53ac5016921 100644 --- a/code/game/machinery/portable_turret.dm +++ b/code/game/machinery/portable_turret.dm @@ -370,7 +370,7 @@ ..() -/obj/machinery/porta_turret/ex_act(severity, specialty) +/obj/machinery/porta_turret/ex_act(severity, target) if(severity >= 3) //turret dies if an explosion touches it! qdel(src) else diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index aabb4e0dc20..62c7846c807 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -66,7 +66,7 @@ open_machine() ..(severity) -/obj/machinery/recharge_station/ex_act(severity, specialty) +/obj/machinery/recharge_station/ex_act(severity, target) if(occupier) open_machine() ..() diff --git a/code/game/machinery/shieldgen.dm b/code/game/machinery/shieldgen.dm index 87c62079b33..eeaf3f54eef 100644 --- a/code/game/machinery/shieldgen.dm +++ b/code/game/machinery/shieldgen.dm @@ -64,7 +64,7 @@ opacity = 1 spawn(20) if(src) opacity = 0 -/obj/machinery/shield/ex_act(severity, specialty) +/obj/machinery/shield/ex_act(severity, target) switch(severity) if(1.0) if (prob(75)) @@ -181,7 +181,7 @@ update_icon() return -/obj/machinery/shieldgen/ex_act(severity, specialty) +/obj/machinery/shieldgen/ex_act(severity, target) switch(severity) if(1.0) src.health -= 75 @@ -567,7 +567,7 @@ return -/obj/machinery/shieldwall/ex_act(severity, specialty) +/obj/machinery/shieldwall/ex_act(severity, target) if(needs_power) var/obj/machinery/shieldwallgen/G switch(severity) diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm index 47782404352..230235b347b 100644 --- a/code/game/machinery/suit_storage_unit.dm +++ b/code/game/machinery/suit_storage_unit.dm @@ -124,7 +124,7 @@ dump_everything() update_icon() -/obj/machinery/suit_storage_unit/ex_act(severity, specialty) +/obj/machinery/suit_storage_unit/ex_act(severity, target) switch(severity) if(1.0) if(prob(50)) diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm index 7459017d183..9b04e98a683 100644 --- a/code/game/machinery/syndicatebomb.dm +++ b/code/game/machinery/syndicatebomb.dm @@ -180,7 +180,7 @@ origin_tech = "syndicate=6;combat=5" var/adminlog = null -/obj/item/weapon/bombcore/ex_act(severity, specialty) //Little boom can chain a big boom +/obj/item/weapon/bombcore/ex_act(severity, target) //Little boom can chain a big boom src.detonate() /obj/item/weapon/bombcore/proc/detonate() diff --git a/code/game/machinery/turrets.dm b/code/game/machinery/turrets.dm index 3cb48b9984e..4552cf988d9 100644 --- a/code/game/machinery/turrets.dm +++ b/code/game/machinery/turrets.dm @@ -291,7 +291,7 @@ power_change() ..() -/obj/machinery/turret/ex_act(severity, specialty) +/obj/machinery/turret/ex_act(severity, target) if(severity < 3) src.die() @@ -361,7 +361,7 @@ ..() take_damage(0) //check your health -/obj/machinery/gun_turret/ex_act(severity, specialty) +/obj/machinery/gun_turret/ex_act(severity, target) switch(severity) if(1) die() diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 71536af209e..2b484935c0c 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -77,7 +77,7 @@ for(var/obj/item/weapon/vending_refill/VR in component_parts) refill_inventory(VR, product_records) -/obj/machinery/vending/ex_act(severity, specialty) +/obj/machinery/vending/ex_act(severity, target) ..() if(!gc_destroyed) if(prob(25)) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index c62aa6c8016..6bd0982060b 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -607,7 +607,7 @@ obj/mecha/proc/can_use(mob/user) Proj.on_hit(src) return -/obj/mecha/ex_act(severity, specialty) +/obj/mecha/ex_act(severity, target) src.log_message("Affected by explosion of severity: [severity].",1) if(prob(src.deflect_chance)) severity++ diff --git a/code/game/objects/effects/aliens.dm b/code/game/objects/effects/aliens.dm index 4dbb5afcfda..55f7dd17261 100644 --- a/code/game/objects/effects/aliens.dm +++ b/code/game/objects/effects/aliens.dm @@ -79,7 +79,7 @@ healthcheck() -/obj/structure/alien/resin/ex_act(severity, specialty) +/obj/structure/alien/resin/ex_act(severity, target) switch(severity) if(1.0) health -= 150 @@ -211,7 +211,7 @@ new /obj/structure/alien/weeds(T, linked_node) -/obj/structure/alien/weeds/ex_act(severity, specialty) +/obj/structure/alien/weeds/ex_act(severity, target) qdel(src) diff --git a/code/game/objects/effects/decals/Cleanable/humans.dm b/code/game/objects/effects/decals/Cleanable/humans.dm index 521d5d0387b..f3817b101fc 100644 --- a/code/game/objects/effects/decals/Cleanable/humans.dm +++ b/code/game/objects/effects/decals/Cleanable/humans.dm @@ -58,7 +58,7 @@ icon_state = "gibbl5" random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6") -/obj/effect/decal/cleanable/blood/gibs/ex_act(severity, specialty) +/obj/effect/decal/cleanable/blood/gibs/ex_act(severity, target) return /obj/effect/decal/cleanable/blood/gibs/remove_ex_blood() diff --git a/code/game/objects/effects/decals/decal.dm b/code/game/objects/effects/decals/decal.dm index 73cfb8fa566..b9ffd568347 100644 --- a/code/game/objects/effects/decals/decal.dm +++ b/code/game/objects/effects/decals/decal.dm @@ -2,5 +2,5 @@ name = "decal" icon = 'icons/effects/effects.dmi' -/obj/effect/decal/ex_act(severity, specialty) +/obj/effect/decal/ex_act(severity, target) qdel(src) \ No newline at end of file diff --git a/code/game/objects/effects/effect_system.dm b/code/game/objects/effects/effect_system.dm index c31a54f6662..3dd5fdf823c 100644 --- a/code/game/objects/effects/effect_system.dm +++ b/code/game/objects/effects/effect_system.dm @@ -944,7 +944,7 @@ steam.start() -- spawns the effect icon_state = "ironfoam" -/obj/structure/foamedmetal/ex_act(severity, specialty) +/obj/structure/foamedmetal/ex_act(severity, target) qdel(src) /obj/structure/foamedmetal/blob_act() diff --git a/code/game/objects/effects/glowshroom.dm b/code/game/objects/effects/glowshroom.dm index 36fb5897365..f2ff3511e2c 100644 --- a/code/game/objects/effects/glowshroom.dm +++ b/code/game/objects/effects/glowshroom.dm @@ -117,7 +117,7 @@ endurance -= W.force CheckEndurance() -/obj/effect/glowshroom/ex_act(severity, specialty) +/obj/effect/glowshroom/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/game/objects/effects/spiders.dm b/code/game/objects/effects/spiders.dm index 520a1390086..d7102b10cf4 100644 --- a/code/game/objects/effects/spiders.dm +++ b/code/game/objects/effects/spiders.dm @@ -8,7 +8,7 @@ var/health = 15 //similar to weeds, but only barfed out by nurses manually -/obj/effect/spider/ex_act(severity, specialty) +/obj/effect/spider/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/game/objects/explosion.dm b/code/game/objects/explosion.dm index 136fbc93603..571002155a4 100644 --- a/code/game/objects/explosion.dm +++ b/code/game/objects/explosion.dm @@ -6,11 +6,6 @@ if(dx>=dy) return dx + (0.5*dy) //The longest side add half the shortest side approximates the hypotenuse else return dy + (0.5*dx) -/proc/contents_explosion(var/atom/A, severity, specialty) - for(var/atom/B in A.contents) - B.ex_act(severity, specialty) - - proc/trange(var/Dist=0,var/turf/Center=null)//alternative to range (ONLY processes turfs and thus less intensive) if(Center==null) return diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 1d8e5861656..4a8ef189ea9 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -54,11 +54,11 @@ /obj/item/blob_act() qdel(src) -/obj/item/ex_act(severity, specialty) - var/armour = 0 - armour += armor["bomb"] - if(!armour) - ..() +/obj/item/ex_act(severity, target) + if(severity == 1 || target == src) + qdel(src) + if(!gc_destroyed) + contents_explosion(severity, target) //user: The mob that is suiciding //damagetype: The type of damage the item will inflict on the user diff --git a/code/game/objects/items/latexballoon.dm b/code/game/objects/items/latexballoon.dm index 7623d007026..3b10f1fb0bb 100644 --- a/code/game/objects/items/latexballoon.dm +++ b/code/game/objects/items/latexballoon.dm @@ -33,7 +33,7 @@ user.update_inv_l_hand() loc.assume_air(air_contents) -/obj/item/latexballon/ex_act(severity, specialty) +/obj/item/latexballon/ex_act(severity, target) burst() switch(severity) if (1) diff --git a/code/game/objects/items/weapons/explosives.dm b/code/game/objects/items/weapons/explosives.dm index 58379753d20..2ff4fc4e0e4 100644 --- a/code/game/objects/items/weapons/explosives.dm +++ b/code/game/objects/items/weapons/explosives.dm @@ -87,7 +87,7 @@ /obj/item/weapon/c4/proc/explode(var/turf/location) - location.ex_act(2, isturf(target) ? 1 : 2) + location.ex_act(2, target) explosion(location,0,0,3) if(target) target.overlays -= image_overlay diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index 23c4a390bbd..d11c0081de1 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -123,17 +123,12 @@ /obj/proc/hide(h) return -/obj/ex_act(severity, specialty) - var/survivability = specialty * 15 - switch(severity) - if(1) +/obj/ex_act(severity, target) + if(severity == 1 || target == src) + qdel(src) + else if(severity == 2) + if(prob(50)) qdel(src) - if(2) - if(prob(50 + survivability)) - qdel(src) - if(3) - if(prob(25 + survivability)) - qdel(src) if(!gc_destroyed) ..() diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 03430503585..b84816abf0a 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -127,7 +127,8 @@ return src.open() // this should probably use dump_contents() -/obj/structure/closet/ex_act(severity, specialty) +/obj/structure/closet/ex_act(severity, target) + contents_explosion(severity, target) open() ..() diff --git a/code/game/objects/structures/crates_lockers/closets/fireaxe.dm b/code/game/objects/structures/crates_lockers/closets/fireaxe.dm index 787e5233572..4dc425417ea 100644 --- a/code/game/objects/structures/crates_lockers/closets/fireaxe.dm +++ b/code/game/objects/structures/crates_lockers/closets/fireaxe.dm @@ -101,7 +101,7 @@ spawn(10) update_icon() -/obj/structure/closet/fireaxecabinet/ex_act(severity, specialty) +/obj/structure/closet/fireaxecabinet/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm index 453260d5e1b..893750a15aa 100644 --- a/code/game/objects/structures/displaycase.dm +++ b/code/game/objects/structures/displaycase.dm @@ -10,7 +10,7 @@ var/occupied = 1 var/destroyed = 0 -/obj/structure/displaycase/ex_act(severity, specialty) +/obj/structure/displaycase/ex_act(severity, target) switch(severity) if (1) new /obj/item/weapon/shard( src.loc ) diff --git a/code/game/objects/structures/extinguisher.dm b/code/game/objects/structures/extinguisher.dm index 10cdc963a66..b2874a23bc9 100644 --- a/code/game/objects/structures/extinguisher.dm +++ b/code/game/objects/structures/extinguisher.dm @@ -9,7 +9,7 @@ var/opened = 0 -/obj/structure/extinguisher_cabinet/ex_act(severity, specialty) +/obj/structure/extinguisher_cabinet/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index 46e9cd35496..1db34a848e9 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -198,7 +198,7 @@ qdel(src) -/obj/structure/girder/ex_act(severity, specialty) +/obj/structure/girder/ex_act(severity, target) switch(severity) if(1.0) qdel(src) @@ -229,7 +229,7 @@ state = 2 girderpasschance = 0 -/obj/structure/girder/reinforced/ex_act(severity, specialty) +/obj/structure/girder/reinforced/ex_act(severity, target) switch(severity) if(1.0) qdel(src) @@ -285,7 +285,7 @@ qdel(src) -/obj/structure/cultgirder/ex_act(severity, specialty) +/obj/structure/cultgirder/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index d7b4bcba24d..52a5905a7dd 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -16,7 +16,7 @@ stored = new/obj/item/stack/rods(src) stored.amount = 2 -/obj/structure/grille/ex_act(severity, specialty) +/obj/structure/grille/ex_act(severity, target) qdel(src) /obj/structure/grille/blob_act() diff --git a/code/game/objects/structures/lamarr_cage.dm b/code/game/objects/structures/lamarr_cage.dm index acba01c197e..eed83352412 100644 --- a/code/game/objects/structures/lamarr_cage.dm +++ b/code/game/objects/structures/lamarr_cage.dm @@ -10,7 +10,7 @@ var/occupied = 1 var/destroyed = 0 -/obj/structure/lamarr/ex_act(severity, specialty) +/obj/structure/lamarr/ex_act(severity, target) switch(severity) if (1) new /obj/item/weapon/shard( src.loc ) diff --git a/code/game/objects/structures/lattice.dm b/code/game/objects/structures/lattice.dm index d2bc62a39ea..d953775363d 100644 --- a/code/game/objects/structures/lattice.dm +++ b/code/game/objects/structures/lattice.dm @@ -38,7 +38,7 @@ qdel(src) return -/obj/structure/lattice/ex_act(severity, specialty) +/obj/structure/lattice/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/game/objects/structures/safe.dm b/code/game/objects/structures/safe.dm index 37ae9ca2a84..8acbe878808 100644 --- a/code/game/objects/structures/safe.dm +++ b/code/game/objects/structures/safe.dm @@ -165,7 +165,7 @@ FLOOR SAFES obj/structure/safe/blob_act() return -obj/structure/safe/ex_act(severity, specialty) +obj/structure/safe/ex_act(severity, target) return diff --git a/code/game/objects/structures/signs.dm b/code/game/objects/structures/signs.dm index 87a97897862..8a1591531a0 100644 --- a/code/game/objects/structures/signs.dm +++ b/code/game/objects/structures/signs.dm @@ -5,7 +5,7 @@ density = 0 layer = 3.5 -/obj/structure/sign/ex_act(severity, specialty) +/obj/structure/sign/ex_act(severity, target) qdel(src) /obj/structure/sign/blob_act() diff --git a/code/game/objects/structures/stool_bed_chair_nest/stools.dm b/code/game/objects/structures/stool_bed_chair_nest/stools.dm index 1877e3b3b07..01c86ee14a5 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/stools.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/stools.dm @@ -6,7 +6,7 @@ anchored = 1.0 pressure_resistance = 15 -/obj/structure/stool/ex_act(severity, specialty) +/obj/structure/stool/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 1bfa49406f0..fdd87f2176a 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -180,7 +180,7 @@ else dir = 2 -/obj/structure/table/ex_act(severity, specialty) +/obj/structure/table/ex_act(severity, target) switch(severity) if(1.0) qdel(src) @@ -499,7 +499,7 @@ throwpass = 1 //You can throw objects over this, despite it's density. var/health = 5 -/obj/structure/rack/ex_act(severity, specialty) +/obj/structure/rack/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/game/objects/structures/transit_tubes/transit_tube.dm b/code/game/objects/structures/transit_tubes/transit_tube.dm index d269915b63c..12bfc62e84d 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube.dm @@ -25,7 +25,7 @@ return !density // When destroyed by explosions, properly handle contents. -obj/structure/transit_tube/ex_act(severity, specialty) +obj/structure/transit_tube/ex_act(severity, target) if(3 - severity >= 0) var/oldloc = loc ..(severity + 1) diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index 6dfc31397f9..d748bdd960d 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -53,7 +53,7 @@ return -/obj/structure/window/ex_act(severity, specialty) +/obj/structure/window/ex_act(severity, target) switch(severity) if(1.0) qdel(src) @@ -104,7 +104,7 @@ var/obj/item/I = AM tforce = I.throwforce - if(reinf) + if(reinf) tforce *= 0.25 playsound(loc, 'sound/effects/Glasshit.ogg', 100, 1) @@ -164,12 +164,12 @@ update_nearby_icons() /obj/structure/window/attack_animal(mob/living/user as mob) - if(!isanimal(user)) + if(!isanimal(user)) return var/mob/living/simple_animal/M = user M.do_attack_animation(src) - if(M.melee_damage_upper <= 0) + if(M.melee_damage_upper <= 0) return attack_generic(M, M.melee_damage_upper) @@ -177,7 +177,7 @@ /obj/structure/window/attack_slime(mob/living/carbon/slime/user as mob) user.do_attack_animation(src) - if(!user.is_adult) + if(!user.is_adult) return attack_generic(user, rand(10, 15)) @@ -196,11 +196,11 @@ user << (anchored ? "You begin to unscrew the frame from the floor." : "You begin to screw the frame to the floor.") else if(!reinf) user << (anchored ? "You begin to unscrew the window from the floor." : "You begin to screw the window to the floor.") - + if(do_after(user, 40)) if(reinf && (state == 1 || state == 2)) //If state was unfastened, fasten it, else do the reverse - state = (state == 1 ? 2 : 1) + state = (state == 1 ? 2 : 1) user << (state == 1 ? "You have unfastened the window from the frame." : "You have fastened the window to the frame.") else if(reinf && state == 0) anchored = !anchored @@ -216,7 +216,7 @@ playsound(loc, 'sound/items/Crowbar.ogg', 75, 1) if(do_after(user, 40)) //If state was out of frame, put into frame, else do the reverse - state = (state == 0 ? 1 : 0) + state = (state == 0 ? 1 : 0) user << (state == 1 ? "You have pried the window into the frame." : "You have pried the window out of the frame.") else if(istype(I, /obj/item/weapon/weldingtool)) @@ -472,4 +472,4 @@ dir = 5 maxhealth = 100 shuttlew = 1 - fulltile = 1 + fulltile = 1 diff --git a/code/game/turfs/simulated/floor.dm b/code/game/turfs/simulated/floor.dm index 33c7d68b6c8..9e641352434 100644 --- a/code/game/turfs/simulated/floor.dm +++ b/code/game/turfs/simulated/floor.dm @@ -42,12 +42,12 @@ var/list/icons_to_ignore_at_floor_init = list("damaged1","damaged2","damaged3"," if(floor_tile) builtin_tile = new floor_tile -/turf/simulated/floor/ex_act(severity, specialty) +/turf/simulated/floor/ex_act(severity, target) ..() - if(specialty == 2) - return - if(specialty == 1) + if(target == src) src.ChangeTurf(/turf/space) + if(target != null) + ex_act(3) return switch(severity) if(1.0) diff --git a/code/game/turfs/simulated/floor/misc_floor.dm b/code/game/turfs/simulated/floor/misc_floor.dm index 0f34cdffffe..4a808d7be61 100644 --- a/code/game/turfs/simulated/floor/misc_floor.dm +++ b/code/game/turfs/simulated/floor/misc_floor.dm @@ -64,8 +64,8 @@ name = "Beach" icon = 'icons/misc/beach.dmi' -/turf/simulated/floor/beach/ex_act(severity, specialty) - contents_explosion(src, severity) +/turf/simulated/floor/beach/ex_act(severity, target) + contents_explosion(severity, target) /turf/simulated/floor/beach/sand name = "Sand" @@ -90,8 +90,8 @@ icon = 'icons/turf/snow.dmi' icon_state = "snow" -/turf/simulated/floor/plating/snow/ex_act(severity, specialty) - contents_explosion(src, severity) +/turf/simulated/floor/plating/snow/ex_act(severity, target) + contents_explosion(severity, target) /turf/simulated/floor/noslip name = "high-traction floor" diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index 0656f9ce28f..3b40db1a39c 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -47,11 +47,10 @@ builtin_sheet.loc = src new /obj/item/stack/sheet/metal(src) -/turf/simulated/wall/ex_act(severity, specialty) - if(specialty) +/turf/simulated/wall/ex_act(severity, target) + if(target == src) dismantle_wall(1,1) return - switch(severity) if(1.0) //SN src = null diff --git a/code/modules/events/ninja.dm b/code/modules/events/ninja.dm index a64a8861cb1..961a2d771d9 100644 --- a/code/modules/events/ninja.dm +++ b/code/modules/events/ninja.dm @@ -2680,7 +2680,7 @@ It is possible to destroy the net by the occupant or someone else. healthcheck() ..() -/obj/effect/energy_net/ex_act(severity, specialty) +/obj/effect/energy_net/ex_act(severity, target) switch(severity) if(1.0) health-=50 diff --git a/code/modules/events/spacevine.dm b/code/modules/events/spacevine.dm index c2bc53dc00c..b3d6d06fba4 100644 --- a/code/modules/events/spacevine.dm +++ b/code/modules/events/spacevine.dm @@ -500,7 +500,7 @@ */ -/obj/effect/spacevine/ex_act(severity, specialty) +/obj/effect/spacevine/ex_act(severity, target) switch(severity) if(1.0) Destroy() diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm index e4f8c6be33e..4fff75a6bac 100644 --- a/code/modules/library/lib_items.dm +++ b/code/modules/library/lib_items.dm @@ -105,7 +105,7 @@ update_icon() -/obj/structure/bookcase/ex_act(severity, specialty) +/obj/structure/bookcase/ex_act(severity, target) ..() if(!gc_destroyed) for(var/obj/item/weapon/book/b in contents) diff --git a/code/modules/mining/equipment_locker.dm b/code/modules/mining/equipment_locker.dm index 52908779bc4..3748818c031 100644 --- a/code/modules/mining/equipment_locker.dm +++ b/code/modules/mining/equipment_locker.dm @@ -192,7 +192,7 @@ updateUsrDialog() return -/obj/machinery/mineral/ore_redemption/ex_act(severity, specialty) +/obj/machinery/mineral/ore_redemption/ex_act(severity, target) var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread s.set_up(5, 1, src) s.start() @@ -357,7 +357,7 @@ new /obj/item/device/t_scanner/adv_mining_scanner(src.loc) qdel(voucher) -/obj/machinery/mineral/equipment_vendor/ex_act(severity, specialty) +/obj/machinery/mineral/equipment_vendor/ex_act(severity, target) var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread s.set_up(5, 1, src) s.start() diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index 265172faf29..92e6a091471 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -18,7 +18,7 @@ var/scan_state = null //Holder for the image we display when we're pinged by a mining scanner var/hidden = 1 -/turf/simulated/mineral/ex_act(severity, specialty) +/turf/simulated/mineral/ex_act(severity, target) ..() switch(severity) if(3.0) @@ -494,8 +494,8 @@ /turf/simulated/floor/plating/asteroid/burn_tile() return -/turf/simulated/floor/plating/asteroid/ex_act(severity, specialty) - contents_explosion(src, severity, specialty) +/turf/simulated/floor/plating/asteroid/ex_act(severity, target) + contents_explosion(severity, target) switch(severity) if(3.0) return diff --git a/code/modules/mining/satchel_ore_boxdm.dm b/code/modules/mining/satchel_ore_boxdm.dm index 1b8394cbce1..c8311e58f8d 100644 --- a/code/modules/mining/satchel_ore_boxdm.dm +++ b/code/modules/mining/satchel_ore_boxdm.dm @@ -83,6 +83,6 @@ src.updateUsrDialog() return -obj/structure/ore_box/ex_act(severity, specialty) +obj/structure/ore_box/ex_act(severity, target) if(prob(100 / severity) && severity < 3) qdel(src) //nothing but ores can get inside unless its a bug and ores just return nothing on ex_act, not point in calling it on them \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm index c8c8be9e829..587114bd587 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm @@ -26,7 +26,7 @@ if(l_store) l_store.emp_act(severity) ..() -/mob/living/carbon/alien/humanoid/ex_act(severity, specialty) +/mob/living/carbon/alien/humanoid/ex_act(severity, target) ..() var/shielded = 0 diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index ebb39cc84cf..7288651a2cc 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -34,7 +34,7 @@ ..(amount) -/mob/living/carbon/alien/larva/ex_act(severity, specialty) +/mob/living/carbon/alien/larva/ex_act(severity, target) ..() var/b_loss = null diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 5ef5e645e31..038aedc7952 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -80,7 +80,7 @@ stat("Energy Charge", round(wear_suit:cell:charge/100)) -/mob/living/carbon/human/ex_act(severity, specialty) +/mob/living/carbon/human/ex_act(severity, ex_target) var/shielded = 0 var/b_loss = null var/f_loss = null @@ -139,9 +139,8 @@ if("r_leg") update |= temp.take_damage(b_loss * 0.05, f_loss * 0.05) if(update) update_damage_overlays(0) - if(!getarmor(null, "bomb")) - ..() + ..() /mob/living/carbon/human/blob_act() if(stat == 2) return diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm index efdb9d872a3..cdef1652274 100644 --- a/code/modules/mob/living/carbon/monkey/monkey.dm +++ b/code/modules/mob/living/carbon/monkey/monkey.dm @@ -194,7 +194,7 @@ /mob/living/carbon/monkey/var/co2overloadtime = null /mob/living/carbon/monkey/var/temperature_resistance = T0C+75 -/mob/living/carbon/monkey/ex_act(severity, specialty) +/mob/living/carbon/monkey/ex_act(severity, target) ..() switch(severity) if(1.0) diff --git a/code/modules/mob/living/carbon/slime/slime.dm b/code/modules/mob/living/carbon/slime/slime.dm index 86cc557e814..4a9d4291d3d 100644 --- a/code/modules/mob/living/carbon/slime/slime.dm +++ b/code/modules/mob/living/carbon/slime/slime.dm @@ -158,7 +158,7 @@ powerlevel = 0 // oh no, the power! ..() -/mob/living/carbon/slime/ex_act(severity, specialty) +/mob/living/carbon/slime/ex_act(severity, target) ..() var/b_loss = null diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index d15120ce55f..a675decaa08 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -134,7 +134,7 @@ /mob/living/proc/InCritical() return (src.health < 0 && src.health > -95.0 && stat == UNCONSCIOUS) -/mob/living/ex_act(severity, specialty) +/mob/living/ex_act(severity, target) ..() if(client && !blinded) flick("flash", src.flash) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 89361266a4a..e43bbd5476f 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -312,7 +312,7 @@ var/list/ai_list = list() ai_call_shuttle() ..() -/mob/living/silicon/ai/ex_act(severity, specialty) +/mob/living/silicon/ai/ex_act(severity, target) ..() switch(severity) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 53d4fec79f6..a73ecc80042 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -136,7 +136,7 @@ if(3) src << "You feel an electric surge run through your circuitry and become acutely aware at how lucky you are that you can still feel at all." -/mob/living/silicon/pai/ex_act(severity, specialty) +/mob/living/silicon/pai/ex_act(severity, target) ..() switch(severity) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index baa86755c24..526602766c5 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -323,8 +323,7 @@ return 0 -/mob/living/silicon/robot/ex_act(severity, specialty) - +/mob/living/silicon/robot/ex_act(severity, target) switch(severity) if(1.0) gib() diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index 597eda3fc5a..94754bbd387 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -18,6 +18,9 @@ var/med_hud = DATA_HUD_MEDICAL_ADVANCED //Determines the med hud to use var/sec_hud = DATA_HUD_SECURITY_ADVANCED //Determines the sec hud to use +/mob/living/silicon/contents_explosion(severity, target) + return + /mob/living/silicon/proc/cancelAlarm() return diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm index 9d39a19cc07..7de2c6ff8c8 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm @@ -99,7 +99,7 @@ visible_message("The [src.name]'s stare chills [L.name] to the bone!") return -/mob/living/simple_animal/hostile/asteroid/basilisk/ex_act(severity, specialty) +/mob/living/simple_animal/hostile/asteroid/basilisk/ex_act(severity, target) switch(severity) if(1.0) gib() diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index ad4c46943aa..47804ba4eae 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -398,7 +398,7 @@ Die() -/mob/living/simple_animal/ex_act(severity, specialty) +/mob/living/simple_animal/ex_act(severity, target) ..() switch (severity) if (1.0) diff --git a/code/modules/paperwork/photocopier.dm b/code/modules/paperwork/photocopier.dm index b4cda2bbbb0..eb63063a421 100644 --- a/code/modules/paperwork/photocopier.dm +++ b/code/modules/paperwork/photocopier.dm @@ -269,7 +269,7 @@ copy = null updateUsrDialog() -/obj/machinery/photocopier/ex_act(severity, specialty) +/obj/machinery/photocopier/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/modules/power/antimatter/containment_jar.dm b/code/modules/power/antimatter/containment_jar.dm index 82258e1dac5..4dbb76755b4 100644 --- a/code/modules/power/antimatter/containment_jar.dm +++ b/code/modules/power/antimatter/containment_jar.dm @@ -15,7 +15,7 @@ var/stability = 100//TODO: add all the stability things to this so its not very safe if you keep hitting in on things -/obj/item/weapon/am_containment/ex_act(severity, specialty) +/obj/item/weapon/am_containment/ex_act(severity, target) switch(severity) if(1.0) explosion(get_turf(src), 1, 2, 3, 5)//Should likely be larger but this works fine for now I guess diff --git a/code/modules/power/antimatter/control.dm b/code/modules/power/antimatter/control.dm index 0c4831fda0c..b0c74c5aca3 100644 --- a/code/modules/power/antimatter/control.dm +++ b/code/modules/power/antimatter/control.dm @@ -112,7 +112,7 @@ return -/obj/machinery/power/am_control_unit/ex_act(severity, specialty) +/obj/machinery/power/am_control_unit/ex_act(severity, target) stability -= (80 - (severity * 20)) check_stability() return diff --git a/code/modules/power/antimatter/shielding.dm b/code/modules/power/antimatter/shielding.dm index be52c6ea443..0cec896235e 100644 --- a/code/modules/power/antimatter/shielding.dm +++ b/code/modules/power/antimatter/shielding.dm @@ -100,7 +100,7 @@ proc/cardinalrange(var/center) return -/obj/machinery/am_shielding/ex_act(severity, specialty) +/obj/machinery/am_shielding/ex_act(severity, target) stability -= (80 - (severity * 20)) check_stability() return diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 9e160b5c2f4..d51b7dd813b 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -1183,7 +1183,7 @@ obj/machinery/power/apc/proc/autoset(var/val, var/on) environ = 3 ..() -/obj/machinery/power/apc/ex_act(severity, specialty) +/obj/machinery/power/apc/ex_act(severity, target) ..() if(!gc_destroyed) switch(severity) diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index d5445e52532..6b9753df305 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -174,7 +174,7 @@ By design, d1 is the smallest direction and d2 is the highest return 0 //explosion handling -/obj/structure/cable/ex_act(severity, specialty) +/obj/structure/cable/ex_act(severity, target) ..() if(!gc_destroyed) switch(severity) diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index 2d884754143..31b13bf9ed9 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -118,7 +118,7 @@ reliability -= 10 / severity ..() -/obj/item/weapon/stock_parts/cell/ex_act(severity, specialty) +/obj/item/weapon/stock_parts/cell/ex_act(severity, target) ..() if(!gc_destroyed) switch(severity) diff --git a/code/modules/power/engine.dm b/code/modules/power/engine.dm index 696d2bbd63a..d5874f7311a 100644 --- a/code/modules/power/engine.dm +++ b/code/modules/power/engine.dm @@ -4,8 +4,8 @@ /turf/simulated/floor/engine/attack_hand(var/mob/user as mob) user.Move_Pulled(src) -/turf/simulated/floor/engine/ex_act(severity, specialty) - contents_explosion(src, severity, specialty) +/turf/simulated/floor/engine/ex_act(severity, target) + contents_explosion(severity, target) switch(severity) if(1) ChangeTurf(/turf/space) diff --git a/code/modules/power/gravitygenerator.dm b/code/modules/power/gravitygenerator.dm index 026279d3c00..c4147f0307a 100644 --- a/code/modules/power/gravitygenerator.dm +++ b/code/modules/power/gravitygenerator.dm @@ -28,7 +28,7 @@ var/const/GRAV_NEEDS_WRENCH = 3 unacidable = 1 var/sprite_number = 0 -/obj/machinery/gravity_generator/ex_act(severity, specialty) +/obj/machinery/gravity_generator/ex_act(severity, target) if(severity == 1) // Very sturdy. set_broken() diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 1e4dd2f0e7d..dd9af7e4a73 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -572,7 +572,7 @@ // explosion effect // destroy the whole light fixture or just shatter it -/obj/machinery/light/ex_act(severity, specialty) +/obj/machinery/light/ex_act(severity, target) ..() if(!gc_destroyed) switch(severity) diff --git a/code/modules/power/singularity/collector.dm b/code/modules/power/singularity/collector.dm index d39b4adebb7..2d4ede128b5 100644 --- a/code/modules/power/singularity/collector.dm +++ b/code/modules/power/singularity/collector.dm @@ -106,7 +106,7 @@ var/global/list/rad_collectors = list() return 1 -/obj/machinery/power/rad_collector/ex_act(severity, specialty) +/obj/machinery/power/rad_collector/ex_act(severity, target) switch(severity) if(2, 3) eject() diff --git a/code/modules/power/singularity/containment_field.dm b/code/modules/power/singularity/containment_field.dm index 6f864bfdbec..377670faa43 100644 --- a/code/modules/power/singularity/containment_field.dm +++ b/code/modules/power/singularity/containment_field.dm @@ -33,7 +33,7 @@ return 0 -/obj/machinery/field/containment/ex_act(severity, specialty) +/obj/machinery/field/containment/ex_act(severity, target) return 0 diff --git a/code/modules/power/singularity/particle_accelerator/particle.dm b/code/modules/power/singularity/particle_accelerator/particle.dm index 756d5a83858..7d41c552c37 100644 --- a/code/modules/power/singularity/particle_accelerator/particle.dm +++ b/code/modules/power/singularity/particle_accelerator/particle.dm @@ -49,7 +49,7 @@ return -/obj/effect/accelerated_particle/ex_act(severity, specialty) +/obj/effect/accelerated_particle/ex_act(severity, target) loc = null return diff --git a/code/modules/power/singularity/singularity.dm b/code/modules/power/singularity/singularity.dm index 4f082bd3920..60a9f5f1cd9 100644 --- a/code/modules/power/singularity/singularity.dm +++ b/code/modules/power/singularity/singularity.dm @@ -59,7 +59,7 @@ /obj/machinery/singularity/blob_act(severity) return -/obj/machinery/singularity/ex_act(severity, specialty) +/obj/machinery/singularity/ex_act(severity, target) switch(severity) if(1.0) if(current_size <= STAGE_TWO) diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index 079447a3a9c..062f28cb028 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -147,7 +147,7 @@ var/list/solars_list = list() return -/obj/machinery/power/solar/ex_act(severity, specialty) +/obj/machinery/power/solar/ex_act(severity, target) ..() if(!gc_destroyed) switch(severity) @@ -513,7 +513,7 @@ var/list/solars_list = list() update_icon() -/obj/machinery/power/solar_control/ex_act(severity, specialty) +/obj/machinery/power/solar_control/ex_act(severity, target) ..() if(!gc_destroyed) switch(severity) diff --git a/code/modules/reagents/Chemistry-Machinery.dm b/code/modules/reagents/Chemistry-Machinery.dm index a145d9e6f2a..a66edfd891d 100644 --- a/code/modules/reagents/Chemistry-Machinery.dm +++ b/code/modules/reagents/Chemistry-Machinery.dm @@ -51,7 +51,7 @@ recharge() dispensable_reagents = sortList(dispensable_reagents) -/obj/machinery/chem_dispenser/ex_act(severity, specialty) +/obj/machinery/chem_dispenser/ex_act(severity, target) if(severity < 3) ..() @@ -254,7 +254,7 @@ create_reagents(100) overlays += "waitlight" -/obj/machinery/chem_master/ex_act(severity, specialty) +/obj/machinery/chem_master/ex_act(severity, target) if(severity < 3) ..() diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index b023db294d2..20caf94ffc0 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -10,7 +10,7 @@ var/amount_per_transfer_from_this = 10 var/possible_transfer_amounts = list(10,25,50,100) -/obj/structure/reagent_dispensers/ex_act(severity, specialty) +/obj/structure/reagent_dispensers/ex_act(severity, target) switch(severity) if(1.0) qdel(src) @@ -60,7 +60,7 @@ ..() reagents.add_reagent("water",1000) -/obj/structure/reagent_dispensers/watertank/ex_act(severity, specialty) +/obj/structure/reagent_dispensers/watertank/ex_act(severity, target) switch(severity) if(1.0) qdel(src) diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm index 307a806d6bd..36fdf7de1ec 100644 --- a/code/modules/recycling/disposal.dm +++ b/code/modules/recycling/disposal.dm @@ -794,12 +794,12 @@ // pipe affected by explosion -/obj/structure/disposalpipe/ex_act(severity, specialty) +/obj/structure/disposalpipe/ex_act(severity, target) //pass on ex_act to our contents before calling it on ourself var/obj/structure/disposalholder/H = locate() in src if(H) - contents_explosion(H, severity) + H.contents_explosion(severity, target) switch(severity) if(1.0) diff --git a/code/modules/research/server.dm b/code/modules/research/server.dm index b4f29e0529f..bd65c48c68d 100644 --- a/code/modules/research/server.dm +++ b/code/modules/research/server.dm @@ -80,7 +80,7 @@ ..() -/obj/machinery/r_n_d/server/ex_act(severity, specialty) +/obj/machinery/r_n_d/server/ex_act(severity, target) griefProtection() ..()