mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-26 06:29:23 +01:00
Ok now explosions shall work properly
Changed severity to target, make items not destroy themselves on severity lower than 1, all that stuff
This commit is contained in:
@@ -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)
|
||||
|
||||
+6
-2
@@ -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
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -84,7 +84,7 @@
|
||||
|
||||
default_deconstruction_crowbar(I)
|
||||
|
||||
/obj/machinery/sleeper/ex_act(severity, specialty)
|
||||
/obj/machinery/sleeper/ex_act(severity, target)
|
||||
go_out()
|
||||
..()
|
||||
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -93,7 +93,7 @@
|
||||
..()
|
||||
|
||||
|
||||
/obj/machinery/camera/ex_act(severity, specialty)
|
||||
/obj/machinery/camera/ex_act(severity, target)
|
||||
if(src.invuln)
|
||||
return
|
||||
else
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -146,7 +146,7 @@
|
||||
..()
|
||||
|
||||
|
||||
/obj/machinery/computer/HolodeckControl/ex_act(severity, specialty)
|
||||
/obj/machinery/computer/HolodeckControl/ex_act(severity, target)
|
||||
emergencyShutdown()
|
||||
..()
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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("<span class='danger'>The barricade is blown apart!</span>")
|
||||
@@ -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()
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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()
|
||||
..()
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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++
|
||||
|
||||
@@ -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)
|
||||
|
||||
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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)
|
||||
@@ -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()
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
..()
|
||||
|
||||
|
||||
@@ -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()
|
||||
..()
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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 )
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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 )
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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 ? "<span class='notice'>You begin to unscrew the frame from the floor.</span>" : "<span class='notice'>You begin to screw the frame to the floor.</span>")
|
||||
else if(!reinf)
|
||||
user << (anchored ? "<span class='notice'>You begin to unscrew the window from the floor.</span>" : "<span class='notice'>You begin to screw the window to the floor.</span>")
|
||||
|
||||
|
||||
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 ? "<span class='notice'>You have unfastened the window from the frame.</span>" : "<span class='notice'>You have fastened the window to the frame.</span>")
|
||||
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 ? "<span class='notice'>You have pried the window into the frame.</span>" : "<span class='notice'>You have pried the window out of the frame.</span>")
|
||||
|
||||
else if(istype(I, /obj/item/weapon/weldingtool))
|
||||
@@ -472,4 +472,4 @@
|
||||
dir = 5
|
||||
maxhealth = 100
|
||||
shuttlew = 1
|
||||
fulltile = 1
|
||||
fulltile = 1
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -500,7 +500,7 @@
|
||||
|
||||
*/
|
||||
|
||||
/obj/effect/spacevine/ex_act(severity, specialty)
|
||||
/obj/effect/spacevine/ex_act(severity, target)
|
||||
switch(severity)
|
||||
if(1.0)
|
||||
Destroy()
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -136,7 +136,7 @@
|
||||
if(3)
|
||||
src << "<span class='notice'>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.</span>"
|
||||
|
||||
/mob/living/silicon/pai/ex_act(severity, specialty)
|
||||
/mob/living/silicon/pai/ex_act(severity, target)
|
||||
..()
|
||||
|
||||
switch(severity)
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -99,7 +99,7 @@
|
||||
visible_message("<span class='danger'>The [src.name]'s stare chills [L.name] to the bone!</span>")
|
||||
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()
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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()
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
return 0
|
||||
|
||||
|
||||
/obj/machinery/field/containment/ex_act(severity, specialty)
|
||||
/obj/machinery/field/containment/ex_act(severity, target)
|
||||
return 0
|
||||
|
||||
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
return
|
||||
|
||||
|
||||
/obj/effect/accelerated_particle/ex_act(severity, specialty)
|
||||
/obj/effect/accelerated_particle/ex_act(severity, target)
|
||||
loc = null
|
||||
return
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
..()
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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()
|
||||
..()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user