Merge branch 'master' of https://github.com/tgstation/-tg-station into mineral_economy

This commit is contained in:
Ergovisavi
2014-03-26 18:14:48 -07:00
648 changed files with 33156 additions and 31359 deletions
+1 -1
View File
@@ -40,5 +40,5 @@
visible_message("<span class='notice'>[M] has been laid on [src] by [user].</span>")
patient = M
check_patient()
del(W)
qdel(W)
return
@@ -1,95 +1,95 @@
/obj/structure/closet/crate/bin
desc = "A trash bin, place your trash here for the janitor to collect."
name = "trash bin"
icon = 'icons/obj/storage.dmi'
icon_state = "largebins"
density = 1
anchored = 1
icon_opened = "largebinsopen"
icon_closed = "largebins"
sound_effect_open = 'sound/effects/bin_open.ogg'
sound_effect_close = 'sound/effects/bin_close.ogg'
var/animation = "animate_largebins"
var/redlight = "largebinr"
var/greenlight = "largebing"
var/orangelight = "largebino"
/obj/structure/closet/crate/bin/New()
..()
update_icon()
/obj/structure/closet/crate/bin/update_icon()
..()
overlays.Cut()
if(contents.len == 0)
overlays += greenlight
else if(contents.len >= storage_capacity)
overlays += redlight
else
overlays += orangelight
/obj/structure/closet/crate/bin/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(istype(W, /obj/item/weapon/storage/bag/trash))
var/obj/item/weapon/storage/bag/trash/T = W
user << "\blue You fill the bag."
for(var/obj/item/O in src)
if(T.can_be_inserted(O, 1))
O.loc = T
T.update_icon()
do_animate()
else if(istype(W, /obj/item/weapon/wrench))
anchored = !anchored
playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1)
else if(istype(W, /obj/item/weapon/grab))
var/obj/item/weapon/grab/G = W
src.MouseDrop_T(G.affecting, user) //act like they were dragged onto the closet
else
..()
/obj/structure/closet/crate/bin/MouseDrop_T(atom/movable/O as mob|obj, mob/user as mob)
. = ..(O, user, 0, 0, 0)
if(.)
if(O != user)
user.visible_message("<span class='danger'>[user] tries to stuff [O] into the [src].</span>", \
"<span class='danger'>You try to stuff [O] into the [src].</span>", \
"<span class='danger'>You hear clanging.</span>")
if (!do_after(user, 40))
return
if(!..(O, user, 0, 0))
return
user.visible_message("<span class='notice'>[user] stuffs [O] into the [src].</span>", \
"<span class='notice'>You stuff [O] into the [src].</span>", \
"<span class='notice'>You hear a loud metal bang.</span>")
insert(O, 1, !opened)
if(opened)
close()
/obj/structure/closet/crate/bin/open()
. = ..()
update_icon()
/obj/structure/closet/crate/bin/close()
. = ..()
update_icon()
/obj/structure/closet/crate/bin/proc/do_animate()
playsound(src.loc, sound_effect_open, 15, 1, -3)
flick(animation, src)
spawn(13)
playsound(src.loc, sound_effect_close, 15, 1, -3)
update_icon()
/obj/structure/closet/crate/bin/insert(var/obj/item/I, var/include_mobs = 0, var/animate = 0)
. = ..(I, include_mobs)
if(animate && .)
do_animate()
/obj/structure/closet/crate/bin/place(var/mob/user, var/obj/item/I)
if(contents.len >= storage_capacity)
return 1
if(!opened)
user.drop_item()
insert(I, 0, 1)
return 1
/obj/structure/closet/crate/bin
desc = "A trash bin, place your trash here for the janitor to collect."
name = "trash bin"
icon = 'icons/obj/storage.dmi'
icon_state = "largebins"
density = 1
anchored = 1
icon_opened = "largebinsopen"
icon_closed = "largebins"
sound_effect_open = 'sound/effects/bin_open.ogg'
sound_effect_close = 'sound/effects/bin_close.ogg'
var/animation = "animate_largebins"
var/redlight = "largebinr"
var/greenlight = "largebing"
var/orangelight = "largebino"
/obj/structure/closet/crate/bin/New()
..()
update_icon()
/obj/structure/closet/crate/bin/update_icon()
..()
overlays.Cut()
if(contents.len == 0)
overlays += greenlight
else if(contents.len >= storage_capacity)
overlays += redlight
else
overlays += orangelight
/obj/structure/closet/crate/bin/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(istype(W, /obj/item/weapon/storage/bag/trash))
var/obj/item/weapon/storage/bag/trash/T = W
user << "\blue You fill the bag."
for(var/obj/item/O in src)
if(T.can_be_inserted(O, 1))
O.loc = T
T.update_icon()
do_animate()
else if(istype(W, /obj/item/weapon/wrench))
anchored = !anchored
playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1)
else if(istype(W, /obj/item/weapon/grab))
var/obj/item/weapon/grab/G = W
src.MouseDrop_T(G.affecting, user) //act like they were dragged onto the closet
else
..()
/obj/structure/closet/crate/bin/MouseDrop_T(atom/movable/O as mob|obj, mob/user as mob)
. = ..(O, user, 0, 0, 0)
if(.)
if(O != user)
user.visible_message("<span class='danger'>[user] tries to stuff [O] into the [src].</span>", \
"<span class='danger'>You try to stuff [O] into the [src].</span>", \
"<span class='danger'>You hear clanging.</span>")
if (!do_after(user, 40))
return
if(!..(O, user, 0, 0))
return
user.visible_message("<span class='notice'>[user] stuffs [O] into the [src].</span>", \
"<span class='notice'>You stuff [O] into the [src].</span>", \
"<span class='notice'>You hear a loud metal bang.</span>")
insert(O, 1, !opened)
if(opened)
close()
/obj/structure/closet/crate/bin/open()
. = ..()
update_icon()
/obj/structure/closet/crate/bin/close()
. = ..()
update_icon()
/obj/structure/closet/crate/bin/proc/do_animate()
playsound(src.loc, sound_effect_open, 15, 1, -3)
flick(animation, src)
spawn(13)
playsound(src.loc, sound_effect_close, 15, 1, -3)
update_icon()
/obj/structure/closet/crate/bin/insert(var/obj/item/I, var/include_mobs = 0, var/animate = 0)
. = ..(I, include_mobs)
if(animate && .)
do_animate()
/obj/structure/closet/crate/bin/place(var/mob/user, var/obj/item/I)
if(contents.len >= storage_capacity)
return 1
if(!opened)
user.drop_item()
insert(I, 0, 1)
return 1
return 0
@@ -125,19 +125,19 @@
for(var/atom/movable/A as mob|obj in src)//pulls everything out of the locker and hits it with an explosion
A.loc = src.loc
A.ex_act(severity++)
del(src)
qdel(src)
if(2)
if(prob(50))
for (var/atom/movable/A as mob|obj in src)
A.loc = src.loc
A.ex_act(severity++)
del(src)
qdel(src)
if(3)
if(prob(5))
for(var/atom/movable/A as mob|obj in src)
A.loc = src.loc
A.ex_act(severity++)
del(src)
qdel(src)
/obj/structure/closet/bullet_act(var/obj/item/projectile/Proj)
..()
@@ -146,7 +146,7 @@
if(health <= 0)
for(var/atom/movable/A as mob|obj in src)
A.loc = src.loc
del(src)
qdel(src)
return
/obj/structure/closet/attack_animal(mob/living/simple_animal/user as mob)
@@ -154,21 +154,21 @@
visible_message("\red [user] destroys the [src]. ")
for(var/atom/movable/A as mob|obj in src)
A.loc = src.loc
del(src)
qdel(src)
// this should probably use dump_contents()
/obj/structure/closet/blob_act()
if(prob(75))
for(var/atom/movable/A as mob|obj in src)
A.loc = src.loc
del(src)
qdel(src)
/obj/structure/closet/meteorhit(obj/O as obj)
if(O.icon_state == "flaming")
for(var/mob/M in src)
M.meteorhit(O)
src.dump_contents()
del(src)
qdel(src)
/obj/structure/closet/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(src.opened)
@@ -191,7 +191,7 @@
new /obj/item/stack/sheet/metal(src.loc)
for(var/mob/M in viewers(src))
M.show_message("<span class='notice'>\The [src] has been cut apart by [user] with \the [WT].</span>", 3, "You hear welding.", 2)
del(src)
qdel(src)
return
if(isrobot(user))
@@ -16,6 +16,7 @@
else
new /obj/item/weapon/storage/backpack/satchel_cap(src)
new /obj/item/clothing/suit/captunic(src)
new /obj/item/clothing/under/captainformal(src)
new /obj/item/clothing/head/helmet/cap(src)
new /obj/item/clothing/under/rank/captain(src)
new /obj/item/clothing/suit/armor/vest/capcarapace(src)
@@ -25,8 +26,6 @@
new /obj/item/device/radio/headset/heads/captain(src)
new /obj/item/clothing/gloves/captain(src)
new /obj/item/weapon/gun/energy/gun(src)
new /obj/item/clothing/under/captainformal(src)
new /obj/item/clothing/head/helmet/HoS/dermal(src)
return
@@ -73,19 +72,12 @@
New()
..()
sleep(2)
if(prob(50))
new /obj/item/weapon/storage/backpack/security(src)
else
new /obj/item/weapon/storage/backpack/satchel_sec(src)
new /obj/item/clothing/suit/armor/vest(src)
new /obj/item/clothing/under/rank/head_of_security/jensen(src)
new /obj/item/clothing/suit/armor/hos/jensen(src)
new /obj/item/clothing/head/helmet/HoS/dermal(src)
new /obj/item/weapon/cartridge/hos(src)
new /obj/item/device/radio/headset/heads/hos(src)
new /obj/item/clothing/glasses/hud/security/sunglasses(src)
new /obj/item/weapon/shield/riot(src)
new /obj/item/clothing/mask/gas/sechailer(src)
new /obj/item/clothing/mask/gas/sechailer/hos(src)
new /obj/item/weapon/storage/lockbox/loyalty(src)
new /obj/item/weapon/storage/box/flashbangs(src)
@@ -93,12 +85,9 @@
new /obj/item/weapon/melee/baton/loaded(src)
new /obj/item/weapon/gun/energy/gun(src)
new /obj/item/weapon/storage/belt/security(src)
new /obj/item/clothing/under/hosformalfem(src)
new /obj/item/clothing/under/hosformalmale(src)
return
/obj/structure/closet/secure_closet/warden
name = "warden's locker"
req_access = list(access_armory)
@@ -113,10 +102,6 @@
New()
..()
sleep(2)
if(prob(50))
new /obj/item/weapon/storage/backpack/security(src)
else
new /obj/item/weapon/storage/backpack/satchel_sec(src)
new /obj/item/clothing/suit/armor/vest(src)
new /obj/item/clothing/under/rank/warden(src)
new /obj/item/clothing/suit/armor/vest/warden(src)
@@ -147,10 +132,6 @@
New()
..()
sleep(2)
if(prob(50))
new /obj/item/weapon/storage/backpack/security(src)
else
new /obj/item/weapon/storage/backpack/satchel_sec(src)
new /obj/item/clothing/suit/armor/vest(src)
new /obj/item/clothing/head/helmet(src)
new /obj/item/device/radio/headset/headset_sec(src)
@@ -198,7 +179,7 @@
/obj/structure/closet/secure_closet/security/med
New()
new /obj/item/clothing/tie/armband/medgreen(src)
new /obj/item/clothing/tie/armband/medblue(src)
new /obj/item/device/encryptionkey/headset_med(src)
..()
return
@@ -41,7 +41,7 @@
desc = "If it takes forever, I will wait for you..."
if(health == 0) //meaning if the statue didn't find a valid target
del(src)
qdel(src)
return
processing_objects.Add(src)
@@ -57,10 +57,21 @@
if (timer <= 0)
dump_contents()
processing_objects.Remove(src)
del(src)
qdel(src)
/obj/structure/closet/statue/dump_contents()
if(istype(src.loc, /mob/living/simple_animal/hostile/statue))
var/mob/living/simple_animal/hostile/statue/S = src.loc
src.loc = S.loc
if(S.mind)
for(var/mob/M in contents)
S.mind.transfer_to(M)
M << "As the animating magic wears off you feel yourself coming back to your senses. You are yourself again!"
break
qdel(S)
for(var/obj/O in src)
O.loc = src.loc
@@ -146,7 +157,7 @@
user.dust()
dump_contents()
visible_message("\red [src] shatters!. ")
del(src)
qdel(src)
/obj/structure/closet/statue/container_resist()
return
@@ -46,12 +46,12 @@
// teehee
if ("delete")
del(src)
qdel(src)
//If you want to re-add fire, just add "fire" = 15 to the pick list.
/*if ("fire")
new /obj/structure/closet/firecloset(src.loc)
del(src)*/
qdel(src)*/
/obj/structure/closet/emcloset/legacy/New()
new /obj/item/weapon/tank/oxygen(src)
@@ -20,6 +20,10 @@
icon_closed = "red"
/obj/structure/closet/wardrobe/red/New()
new /obj/item/weapon/storage/backpack/security(src)
new /obj/item/weapon/storage/backpack/security(src)
new /obj/item/weapon/storage/backpack/satchel_sec(src)
new /obj/item/weapon/storage/backpack/satchel_sec(src)
new /obj/item/clothing/under/rank/security(src)
new /obj/item/clothing/under/rank/security(src)
new /obj/item/clothing/under/rank/security(src)
@@ -34,6 +38,16 @@
new /obj/item/clothing/head/beret/sec(src)
return
/obj/structure/closet/wardrobe/hos
name = "head of security wardrobe"
icon_state = "red"
icon_closed = "red"
/obj/structure/closet/wardrobe/hos/New()
new /obj/item/clothing/under/hosformalfem(src)
new /obj/item/clothing/under/hosformalmale(src)
new /obj/item/clothing/under/rank/head_of_security/jensen(src)
return
/obj/structure/closet/wardrobe/pink
name = "pink wardrobe"
@@ -336,7 +336,7 @@
return
user << "<span class='notice'>You rig [src].</span>"
user.drop_item()
del(W)
qdel(W)
rigged = 1
return
else if(istype(W, /obj/item/device/radio/electropack))
@@ -18,7 +18,7 @@
user.visible_message("<span class='notice'>[user] pries \the [src] open.</span>", \
"<span class='notice'>You pry open \the [src].</span>", \
"<span class='notice'>You hear splitting wood.</span>")
del(src)
qdel(src)
else
return attack_hand(user)
+3 -3
View File
@@ -17,7 +17,7 @@
if (occupied)
new /obj/item/weapon/gun/energy/laser/captain( src.loc )
occupied = 0
del(src)
qdel(src)
if (2)
if (prob(50))
src.health -= 15
@@ -42,13 +42,13 @@
if (occupied)
new /obj/item/weapon/gun/energy/laser/captain( src.loc )
occupied = 0
del(src)
qdel(src)
/obj/structure/displaycase/meteorhit(obj/O as obj)
new /obj/item/weapon/shard( src.loc )
new /obj/item/weapon/gun/energy/laser/captain( src.loc )
del(src)
qdel(src)
/obj/structure/displaycase/proc/healthcheck()
@@ -414,7 +414,7 @@ obj/structure/door_assembly
var/M = text2path("/obj/item/stack/sheet/mineral/[mineral]")
new M(get_turf(src))
new M(get_turf(src))
del(src)
qdel(src)
else
user << "\blue You need more welding fuel to dissassemble the airlock assembly."
return
@@ -474,7 +474,7 @@ obj/structure/door_assembly
else
W.loc = src.loc
//del(W)
//qdel(W)
else if(istype(W, /obj/item/weapon/crowbar) && state == 2 )
playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1)
@@ -549,7 +549,7 @@ obj/structure/door_assembly
if(created_name)
door.name = created_name
src.electronics.loc = door
del(src)
qdel(src)
else
..()
if(mineral == "glass")
+21 -21
View File
@@ -1,22 +1,22 @@
/obj/structure/dresser
name = "dresser"
desc = "A nicely-crafted wooden dresser. It's filled with lots of undies."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "dresser"
density = 1
anchored = 1
/obj/structure/dresser/attack_hand(mob/user as mob)
if(!Adjacent(user))//no tele-grooming
return
if(ishuman(user))
var/mob/living/carbon/human/H = user
var/new_undies = input(user, "Select your underwear", "Changing") as null|anything in underwear_all
if(!Adjacent(user))//no tele-grooming
return
if(new_undies)
H.underwear = new_undies
add_fingerprint(H)
/obj/structure/dresser
name = "dresser"
desc = "A nicely-crafted wooden dresser. It's filled with lots of undies."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "dresser"
density = 1
anchored = 1
/obj/structure/dresser/attack_hand(mob/user as mob)
if(!Adjacent(user))//no tele-grooming
return
if(ishuman(user))
var/mob/living/carbon/human/H = user
var/new_undies = input(user, "Select your underwear", "Changing") as null|anything in underwear_all
if(!Adjacent(user))//no tele-grooming
return
if(new_undies)
H.underwear = new_undies
add_fingerprint(H)
H.update_body()
@@ -19,7 +19,7 @@
part.loc = src.loc
part.master = null
part = null
del(src)
qdel(src)
return
return
+9 -9
View File
@@ -13,7 +13,7 @@
relativewall_neighbours()
..()
/obj/structure/falsewall/Del()
/obj/structure/falsewall/Destroy()
var/temploc = src.loc
@@ -89,7 +89,7 @@
else
T.ChangeTurf(text2path("/turf/simulated/wall/mineral/[mineral]"))
if(delete)
del(src)
qdel(src)
return T
/obj/structure/falsewall/attackby(obj/item/weapon/W as obj, mob/user as mob)
@@ -113,7 +113,7 @@
if(mineral != "plasma")//Stupid shit keeps me from pushing the attackby() to plasma walls -Sieve
T = get_turf(src)
T.attackby(W,user)
del(src)
qdel(src)
else
user << "\blue You can't reach, close it first!"
@@ -122,7 +122,7 @@
if(mineral != "plasma")
var/turf/T = get_turf(src)
T.attackby(W,user)
del(src)
qdel(src)
/obj/structure/falsewall/update_icon()//Calling icon_update will refresh the smoothwalls if it's closed, otherwise it will make sure the icon is correct if it's open
@@ -210,7 +210,7 @@
var/turf/T = get_turf(src)
user.visible_message("[user] tightens some bolts on the r wall.", "You tighten the bolts on the wall.")
T.ChangeTurf(/turf/simulated/wall) //Intentionally makes a regular wall instead of an r-wall (no cheap r-walls for you).
del(src)
qdel(src)
if( istype(W, /obj/item/weapon/weldingtool) )
var/obj/item/weapon/weldingtool/WT = W
@@ -219,14 +219,14 @@
T.ChangeTurf(/turf/simulated/wall)
T = get_turf(src)
T.attackby(W,user)
del(src)
qdel(src)
else if( istype(W, /obj/item/weapon/pickaxe/plasmacutter) )
var/turf/T = get_turf(src)
T.ChangeTurf(/turf/simulated/wall)
T = get_turf(src)
T.attackby(W,user)
del(src)
qdel(src)
//DRILLING
else if (istype(W, /obj/item/weapon/pickaxe/diamonddrill))
@@ -234,14 +234,14 @@
T.ChangeTurf(/turf/simulated/wall)
T = get_turf(src)
T.attackby(W,user)
del(src)
qdel(src)
else if( istype(W, /obj/item/weapon/melee/energy/blade) )
var/turf/T = get_turf(src)
T.ChangeTurf(/turf/simulated/wall)
T = get_turf(src)
T.attackby(W,user)
del(src)
qdel(src)
/*
+24 -24
View File
@@ -15,7 +15,7 @@
if(!src) return
user << "<span class='notice'>You dissasembled the girder!</span>"
new /obj/item/stack/sheet/metal(get_turf(src))
del(src)
qdel(src)
else if(!anchored)
playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1)
user << "<span class='notice'>Now securing the girder...</span>"
@@ -23,7 +23,7 @@
user << "<span class='notice'>You secured the girder!</span>"
var/obj/structure/girder/G = new (loc)
transfer_fingerprints_to(G)
del(src)
qdel(src)
else if(istype(W, /obj/item/weapon/pickaxe/plasmacutter))
user << "<span class='notice'>Now slicing apart the girder...</span>"
@@ -31,12 +31,12 @@
if(!src) return
user << "<span class='notice'>You slice apart the girder!</span>"
new /obj/item/stack/sheet/metal(get_turf(src))
del(src)
qdel(src)
else if(istype(W, /obj/item/weapon/pickaxe/diamonddrill))
user << "<span class='notice'>You drill through the girder!</span>"
new /obj/item/stack/sheet/metal(get_turf(src))
del(src)
qdel(src)
else if(istype(W, /obj/item/weapon/screwdriver) && state == 2 && istype(src,/obj/structure/girder/reinforced))
playsound(src.loc, 'sound/items/Screwdriver.ogg', 100, 1)
@@ -54,7 +54,7 @@
user << "<span class='notice'>You removed the support struts!</span>"
var/obj/structure/girder/G = new (loc)
transfer_fingerprints_to(G)
del(src)
qdel(src)
else if(istype(W, /obj/item/weapon/crowbar) && state == 0 && anchored )
playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1)
@@ -64,7 +64,7 @@
user << "<span class='notice'>You dislodged the girder!</span>"
var/obj/structure/girder/displaced/D = new (loc)
transfer_fingerprints_to(D)
del(src)
qdel(src)
else if(istype(W, /obj/item/stack/sheet))
@@ -78,7 +78,7 @@
user << "<span class='notice'>You create a false wall! Push on it to open or close the passage.</span>"
var/obj/structure/falsewall/F = new (loc)
transfer_fingerprints_to(F)
del(src)
qdel(src)
else
if(S.amount < 2) return ..()
user << "<span class='notice'>Now adding plating...</span>"
@@ -90,7 +90,7 @@
Tsrc.ChangeTurf(/turf/simulated/wall)
for(var/turf/simulated/wall/X in Tsrc.loc)
if(X) transfer_fingerprints_to(X)
del(src)
qdel(src)
return
if(/obj/item/stack/sheet/plasteel)
@@ -100,7 +100,7 @@
user << "<span class='notice'>You create a false wall! Push on it to open or close the passage.</span>"
var/obj/structure/falserwall/FW = new (loc)
transfer_fingerprints_to(FW)
del(src)
qdel(src)
else
if (src.icon_state == "reinforced") //I cant believe someone would actually write this line of code...
if(S.amount < 1) return ..()
@@ -113,7 +113,7 @@
Tsrc.ChangeTurf(/turf/simulated/wall/r_wall)
for(var/turf/simulated/wall/r_wall/X in Tsrc.loc)
if(X) transfer_fingerprints_to(X)
del(src)
qdel(src)
return
else
if(S.amount < 1) return ..()
@@ -124,7 +124,7 @@
user << "<span class='notice'>Girders reinforced!</span>"
var/obj/structure/girder/reinforced/R = new (loc)
transfer_fingerprints_to(R)
del(src)
qdel(src)
return
if(S.sheettype)
@@ -136,7 +136,7 @@
var/F = text2path("/obj/structure/falsewall/[M]")
var/obj/structure/FW = new F (loc)
transfer_fingerprints_to(FW)
del(src)
qdel(src)
else
if(S.amount < 2) return ..()
user << "<span class='notice'>Now adding plating...</span>"
@@ -148,7 +148,7 @@
Tsrc.ChangeTurf(text2path("/turf/simulated/wall/mineral/[M]"))
for(var/turf/simulated/wall/mineral/X in Tsrc.loc)
if(X) transfer_fingerprints_to(X)
del(src)
qdel(src)
return
add_hiddenprint(usr)
@@ -165,25 +165,25 @@
blob_act()
if(prob(40))
del(src)
qdel(src)
ex_act(severity)
switch(severity)
if(1.0)
del(src)
qdel(src)
return
if(2.0)
if (prob(30))
var/remains = pick(/obj/item/stack/rods,/obj/item/stack/sheet/metal)
new remains(loc)
del(src)
qdel(src)
return
if(3.0)
if (prob(5))
var/remains = pick(/obj/item/stack/rods,/obj/item/stack/sheet/metal)
new remains(loc)
del(src)
qdel(src)
return
else
return
@@ -211,7 +211,7 @@
user << "<span class='notice'>You dissasembled the girder!</span>"
var/obj/effect/decal/remains/human/R = new (get_turf(src))
transfer_fingerprints_to(R)
del(src)
qdel(src)
else if(istype(W, /obj/item/weapon/pickaxe/plasmacutter))
user << "<span class='notice'>Now slicing apart the girder...</span>"
@@ -219,34 +219,34 @@
user << "<span class='notice'>You slice apart the girder!</span>"
var/obj/effect/decal/remains/human/R = new (get_turf(src))
transfer_fingerprints_to(R)
del(src)
qdel(src)
else if(istype(W, /obj/item/weapon/pickaxe/diamonddrill))
user << "<span class='notice'>You drill through the girder!</span>"
if(do_after(user, 5))
var/obj/effect/decal/remains/human/R = new (get_turf(src))
transfer_fingerprints_to(R)
del(src)
qdel(src)
blob_act()
if(prob(40))
del(src)
qdel(src)
ex_act(severity)
switch(severity)
if(1.0)
del(src)
qdel(src)
return
if(2.0)
if (prob(30))
new /obj/effect/decal/remains/human(loc)
del(src)
qdel(src)
return
if(3.0)
if (prob(5))
new /obj/effect/decal/remains/human(loc)
del(src)
qdel(src)
return
else
return
+5 -8
View File
@@ -12,17 +12,14 @@
var/health = 10
var/destroyed = 0
/obj/structure/grille/Del()
loc = null //garbage collect
/obj/structure/grille/ex_act(severity)
del(src)
qdel(src)
/obj/structure/grille/blob_act()
del(src)
qdel(src)
/obj/structure/grille/meteorhit(var/obj/M)
del(src)
qdel(src)
/obj/structure/grille/Bumped(atom/user)
@@ -112,7 +109,7 @@
else
new /obj/item/stack/rods(loc)
new /obj/item/stack/rods(loc)
del(src)
qdel(src)
else if((istype(W, /obj/item/weapon/screwdriver)) && (istype(loc, /turf/simulated) || anchored))
if(!shock(user, 90))
playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1)
@@ -193,7 +190,7 @@
else
if(health <= -6)
new /obj/item/stack/rods(loc)
del(src)
qdel(src)
return
return
@@ -26,8 +26,8 @@
src.meattype = 1
for(var/mob/O in viewers(src, null))
O.show_message(text("\red [user] has forced [G.affecting] onto the spike, killing them instantly!"))
del(G.affecting)
del(G)
qdel(G.affecting)
qdel(G)
else
user << "\red The spike already has something on it, finish collecting its meat first!"
@@ -39,8 +39,8 @@
src.meattype = 2
for(var/mob/O in viewers(src, null))
O.show_message(text("\red [user] has forced [G.affecting] onto the spike, killing them instantly!"))
del(G.affecting)
del(G)
qdel(G.affecting)
qdel(G)
else
user << "\red The spike already has something on it, finish collecting its meat first!"
else
+3 -3
View File
@@ -15,7 +15,7 @@
if (1)
new /obj/item/weapon/shard( src.loc )
Break()
del(src)
qdel(src)
if (2)
if (prob(50))
src.health -= 15
@@ -37,13 +37,13 @@
if (prob(75))
new /obj/item/weapon/shard( src.loc )
Break()
del(src)
qdel(src)
/obj/structure/lamarr/meteorhit(obj/O as obj)
new /obj/item/weapon/shard( src.loc )
Break()
del(src)
qdel(src)
/obj/structure/lamarr/proc/healthcheck()
+17 -18
View File
@@ -11,10 +11,10 @@
/obj/structure/lattice/New()
..()
if(!(istype(src.loc, /turf/space)))
del(src)
qdel(src)
for(var/obj/structure/lattice/LAT in src.loc)
if(LAT != src)
del(LAT)
qdel(LAT)
icon = 'icons/obj/smoothlattice.dmi'
icon_state = "latticeblank"
updateOverlays()
@@ -24,7 +24,7 @@
L = locate(/obj/structure/lattice, get_step(src, dir))
L.updateOverlays()
/obj/structure/lattice/Del()
/obj/structure/lattice/Destroy()
for (var/dir in cardinal)
var/obj/structure/lattice/L
if(locate(/obj/structure/lattice, get_step(src, dir)))
@@ -33,16 +33,16 @@
..()
/obj/structure/lattice/blob_act()
del(src)
qdel(src)
return
/obj/structure/lattice/ex_act(severity)
switch(severity)
if(1.0)
del(src)
qdel(src)
return
if(2.0)
del(src)
qdel(src)
return
if(3.0)
return
@@ -60,24 +60,23 @@
if(WT.remove_fuel(0, user))
user << "\blue Slicing lattice joints ..."
new /obj/item/stack/rods(src.loc)
del(src)
qdel(src)
return
/obj/structure/lattice/proc/updateOverlays()
//if(!(istype(src.loc, /turf/space)))
// del(src)
spawn(1)
overlays = list()
// qdel(src)
overlays.Cut()
var/dir_sum = 0
var/dir_sum = 0
for (var/direction in cardinal)
if(locate(/obj/structure/lattice, get_step(src, direction)))
for (var/direction in cardinal)
if(locate(/obj/structure/lattice, get_step(src, direction)))
dir_sum += direction
else
if(!(istype(get_step(src, direction), /turf/space)))
dir_sum += direction
else
if(!(istype(get_step(src, direction), /turf/space)))
dir_sum += direction
icon_state = "lattice[dir_sum]"
return
icon_state = "lattice[dir_sum]"
return
@@ -26,11 +26,10 @@
air_update_turf(1)
return
Del()
Destroy()
density = 0
air_update_turf(1)
..()
return
Move()
var/turf/T = loc
@@ -170,7 +169,7 @@
var/ore = text2path("/obj/item/stack/sheet/mineral/[mineralType]")
for(var/i = 3, i <= oreAmount, i++)
new ore(get_turf(src))
del(src)
qdel(src)
ex_act(severity = 1)
switch(severity)
@@ -249,7 +248,7 @@
if(!devastated)
for(var/i = 1, i <= oreAmount, i++)
new/obj/item/stack/sheet/wood(get_turf(src))
del(src)
qdel(src)
/obj/structure/mineral_door/resin
mineralType = "resin"
@@ -263,7 +262,7 @@
return ..()
Dismantle(devastated = 0)
del(src)
qdel(src)
CheckHardness()
playsound(loc, 'sound/effects/attackblob.ogg', 100, 1)
+109 -179
View File
@@ -12,21 +12,33 @@
/obj/structure/morgue
name = "morgue"
desc = "Used to keep bodies in untill someone fetches them."
desc = "Used to keep bodies in until someone fetches them."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "morgue1"
density = 1
var/obj/structure/m_tray/connected = null
anchored = 1.0
/obj/structure/morgue/on_log()
update()
/obj/structure/morgue/New()
connected = new(src)
connected.connected = src
..()
/obj/structure/morgue/proc/update()
if (src.connected)
/obj/structure/morgue/Destroy()
open()
if(connected)
qdel(connected)
connected = null
..()
/obj/structure/morgue/on_log()
update_icon()
/obj/structure/morgue/update_icon()
if (!connected || connected.loc != src) //open or the tray broke off somehow
src.icon_state = "morgue0"
else
if(!src.contents.len)
if(src.contents.len == 1) //empty except for the tray
src.icon_state = "morgue1"
else
@@ -43,31 +55,6 @@
src.icon_state = "morgue4"//clone that mofo
break
/obj/structure/morgue/ex_act(severity)
switch(severity)
if(1.0)
for(var/atom/movable/A as mob|obj in src)
A.loc = src.loc
ex_act(severity)
del(src)
return
if(2.0)
if (prob(50))
for(var/atom/movable/A as mob|obj in src)
A.loc = src.loc
ex_act(severity)
del(src)
return
if(3.0)
if (prob(5))
for(var/atom/movable/A as mob|obj in src)
A.loc = src.loc
ex_act(severity)
del(src)
return
return
/obj/structure/morgue/alter_health()
return src.loc
@@ -75,31 +62,14 @@
return src.attack_hand(user)
/obj/structure/morgue/attack_hand(mob/user as mob)
if (src.connected)
for(var/atom/movable/A as mob|obj in src.connected.loc)
if (!( A.anchored ))
A.loc = src
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
//src.connected = null
del(src.connected)
if(!connected)
user << "That doesn't appear to have a tray."
return
if(connected.loc == src)
open()
else
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
src.connected = new /obj/structure/m_tray( src.loc )
step(src.connected, EAST)
src.connected.layer = OBJ_LAYER
var/turf/T = get_step(src, EAST)
if (T.contents.Find(src.connected))
src.connected.connected = src
src.icon_state = "morgue0"
for(var/atom/movable/A as mob|obj in src)
A.loc = src.connected.loc
src.connected.icon_state = "morguet"
else
//src.connected = null
del(src.connected)
src.add_fingerprint(user)
update()
return
close()
add_fingerprint(user)
/obj/structure/morgue/attackby(P as obj, mob/user as mob)
if (istype(P, /obj/item/weapon/pen))
@@ -113,25 +83,24 @@
src.name = text("Morgue- '[]'", t)
else
src.name = "Morgue"
src.add_fingerprint(user)
return
add_fingerprint(user)
/obj/structure/morgue/container_resist()
src.connected = new /obj/structure/m_tray( src.loc )
step(src.connected, EAST)
src.connected.layer = OBJ_LAYER
open()
/obj/structure/morgue/proc/open()
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
var/turf/T = get_step(src, EAST)
if (T.contents.Find(src.connected))
src.connected.connected = src
src.icon_state = "morgue0"
for(var/atom/movable/A as mob|obj in src)
A.loc = src.connected.loc
//Foreach goto(106)
src.connected.icon_state = "morguet"
else
//src.connected = null
del(src.connected)
return
for(var/atom/movable/A in src)
A.loc = T
update_icon()
/obj/structure/morgue/proc/close()
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
for(var/atom/movable/A in connected.loc)
if(!A.anchored || A == connected)
A.loc = src
update_icon()
/*
@@ -148,22 +117,22 @@
anchored = 1.0
throwpass = 1
/obj/structure/m_tray/Destroy()
if(connected)
connected.connected = null
connected.update_icon()
connected = null
..()
/obj/structure/m_tray/attack_paw(mob/user as mob)
return src.attack_hand(user)
/obj/structure/m_tray/attack_hand(mob/user as mob)
if (src.connected)
for(var/atom/movable/A as mob|obj in src.loc)
if (!( A.anchored ))
A.loc = src.connected
//Foreach goto(26)
src.connected.connected = null
src.connected.update()
connected.close()
add_fingerprint(user)
//SN src = null
del(src)
return
return
else
user << "That's not connected to anything."
/obj/structure/m_tray/MouseDrop_T(atom/movable/O as mob|obj, mob/user as mob)
if ((!( istype(O, /atom/movable) ) || O.anchored || get_dist(user, src) > 1 || get_dist(user, O) > 1 || user.contents.Find(src) || user.contents.Find(O)))
@@ -196,12 +165,24 @@
var/id = 1
var/locked = 0
/obj/structure/crematorium/proc/update()
if (src.connected)
src.icon_state = "crema0"
/obj/structure/crematorium/New()
connected = new(src)
connected.connected = src
..()
/obj/structure/crematorium/Destroy()
open()
if(connected)
qdel(connected)
connected = null
..()
/obj/structure/crematorium/update_icon()
if(!connected || connected.loc != src)
icon_state = "crema0"
else
if(src.contents.len)
if(src.contents.len > 1)
src.icon_state = "crema2"
else
src.icon_state = "crema1"
@@ -212,31 +193,6 @@
return
/obj/structure/crematorium/ex_act(severity)
switch(severity)
if(1.0)
for(var/atom/movable/A as mob|obj in src)
A.loc = src.loc
ex_act(severity)
del(src)
return
if(2.0)
if (prob(50))
for(var/atom/movable/A as mob|obj in src)
A.loc = src.loc
ex_act(severity)
del(src)
return
if(3.0)
if (prob(5))
for(var/atom/movable/A as mob|obj in src)
A.loc = src.loc
ex_act(severity)
del(src)
return
return
/obj/structure/crematorium/alter_health()
return src.loc
@@ -244,39 +200,17 @@
return src.attack_hand(user)
/obj/structure/crematorium/attack_hand(mob/user as mob)
// if (cremating) AWW MAN! THIS WOULD BE SO MUCH MORE FUN ... TO WATCH
// user.show_message("\red Uh-oh, that was a bad idea.", 1)
// //usr << "Uh-oh, that was a bad idea."
// src:loc:poison += 20000000
// src:loc:firelevel = src:loc:poison
// return
if (cremating)
usr << "\red It's locked."
if (cremating || locked)
user << "\red It's locked."
return
if ((src.connected) && (src.locked == 0))
for(var/atom/movable/A as mob|obj in src.connected.loc)
if (!( A.anchored ))
A.loc = src
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
//src.connected = null
del(src.connected)
else if (src.locked == 0)
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
src.connected = new /obj/structure/c_tray( src.loc )
step(src.connected, SOUTH)
src.connected.layer = OBJ_LAYER
var/turf/T = get_step(src, SOUTH)
if (T.contents.Find(src.connected))
src.connected.connected = src
src.icon_state = "crema0"
for(var/atom/movable/A as mob|obj in src)
A.loc = src.connected.loc
src.connected.icon_state = "cremat"
else
//src.connected = null
del(src.connected)
src.add_fingerprint(user)
update()
if (!connected)
user << "That doesn't appear to have a tray."
return
if(connected.loc == src)
open()
else
close()
add_fingerprint(user)
/obj/structure/crematorium/attackby(P as obj, mob/user as mob)
if (istype(P, /obj/item/weapon/pen))
@@ -294,30 +228,13 @@
return
/obj/structure/crematorium/container_resist()
src.connected = new /obj/structure/c_tray( src.loc )
step(src.connected, SOUTH)
src.connected.layer = OBJ_LAYER
var/turf/T = get_step(src, SOUTH)
if (T.contents.Find(src.connected))
src.connected.connected = src
src.icon_state = "crema0"
for(var/atom/movable/A as mob|obj in src)
A.loc = src.connected.loc
//Foreach goto(106)
src.connected.icon_state = "cremat"
else
//src.connected = null
del(src.connected)
return
open()
/obj/structure/crematorium/proc/cremate(atom/A, mob/user as mob)
// for(var/obj/machinery/crema_switch/O in src) //trying to figure a way to call the switch, too drunk to sort it out atm
// if(var/on == 1)
// return
/obj/structure/crematorium/proc/cremate(mob/user as mob)
if(cremating)
return //don't let you cremate something twice or w/e
if(contents.len <= 0)
if(contents.len <= 1)
for (var/mob/M in viewers(src))
M.show_message("\red You hear a hollow crackle.", 1)
return
@@ -332,30 +249,43 @@
cremating = 1
locked = 1
update()
update_icon()
for(var/mob/living/M in contents)
if (M.stat!=2)
M.emote("scream")
//Logging for this causes runtimes resulting in the cremator locking up. Commenting it out until that's figured out.
//M.attack_log += "\[[time_stamp()]\] Has been cremated by <b>[user]/[user.ckey]</b>" //No point in this when the mob's about to be deleted
//user.attack_log +="\[[time_stamp()]\] Cremated <b>[M]/[M.ckey]</b>"
//log_attack("\[[time_stamp()]\] <b>[user]/[user.ckey]</b> cremated <b>[M]/[M.ckey]</b>")
user.attack_log +="\[[time_stamp()]\] Cremated <b>[M]/[M.ckey]</b>"
log_attack("\[[time_stamp()]\] <b>[user]/[user.ckey]</b> cremated <b>[M]/[M.ckey]</b>")
M.death(1)
M.ghostize()
del(M)
qdel(M)
for(var/obj/O in contents) //obj instead of obj/item so that bodybags and ashes get destroyed. We dont want tons and tons of ash piling up
del(O)
if(O != connected) //Creamtorium does not burn hot enough to destroy the tray
qdel(O)
new /obj/effect/decal/cleanable/ash(src)
sleep(30)
cremating = 0
locked = 0
update()
update_icon()
playsound(src.loc, 'sound/machines/ding.ogg', 50, 1)
return
/obj/structure/crematorium/proc/open()
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
var/turf/T = get_step(src, SOUTH)
for(var/atom/movable/A in src)
A.loc = T
update_icon()
/obj/structure/crematorium/proc/close()
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
for(var/atom/movable/A in connected.loc)
if(!A.anchored || A == connected)
A.loc = src
update_icon()
/*
* Crematorium tray
@@ -371,22 +301,22 @@
anchored = 1.0
throwpass = 1
/obj/structure/c_tray/Destroy()
if(connected)
connected.connected = null
connected.update_icon()
connected = null
..()
/obj/structure/c_tray/attack_paw(mob/user as mob)
return src.attack_hand(user)
/obj/structure/c_tray/attack_hand(mob/user as mob)
if (src.connected)
for(var/atom/movable/A as mob|obj in src.loc)
if (!( A.anchored ))
A.loc = src.connected
//Foreach goto(26)
src.connected.connected = null
src.connected.update()
connected.close()
add_fingerprint(user)
//SN src = null
del(src)
return
return
else
user << "That's not connected to anything."
/obj/structure/c_tray/MouseDrop_T(atom/movable/O as mob|obj, mob/user as mob)
if ((!( istype(O, /atom/movable) ) || O.anchored || get_dist(user, src) > 1 || get_dist(user, O) > 1 || user.contents.Find(src) || user.contents.Find(O)))
+8 -8
View File
@@ -8,20 +8,20 @@
/obj/structure/sign/ex_act(severity)
switch(severity)
if(1.0)
del(src)
qdel(src)
return
if(2.0)
del(src)
qdel(src)
return
if(3.0)
del(src)
qdel(src)
return
else
return
/obj/structure/sign/blob_act()
del(src)
qdel(src)
return
@@ -87,15 +87,15 @@
desc = "A warning sign which reads 'NO SMOKING'"
icon_state = "nosmoking2"
/obj/structure/sign/redcross
/obj/structure/sign/bluecross
name = "medbay"
desc = "The Intergalactic symbol of Medical institutions. You'll probably get help here.'"
icon_state = "redcross"
icon_state = "bluecross"
/obj/structure/sign/greencross
/obj/structure/sign/bluecross_2
name = "medbay"
desc = "The Intergalactic symbol of Medical institutions. You'll probably get help here.'"
icon_state = "greencross"
icon_state = "bluecross2"
/obj/structure/sign/goldenplaque
name = "The Most Robust Men Award for Robustness"
@@ -63,5 +63,5 @@
/obj/structure/stool/bed/nest/proc/healthcheck()
if(health <=0)
density = 0
del(src)
qdel(src)
return
@@ -18,10 +18,9 @@
desc = "This looks similar to contraptions from earth. Could aliens be stealing our technology?"
icon_state = "abed"
/obj/structure/stool/bed/Del()
/obj/structure/stool/bed/Destroy()
unbuckle()
..()
return
/obj/structure/stool/bed/attack_paw(mob/user as mob)
return src.attack_hand(user)
@@ -33,7 +32,7 @@
/obj/structure/stool/bed/attack_animal(var/mob/living/simple_animal/M)//No more buckling hostile mobs to chairs to render them immobile forever
if(M.environment_smash)
new /obj/item/stack/sheet/metal(src.loc)
del(src)
qdel(src)
/obj/structure/stool/bed/MouseDrop_T(mob/M as mob, mob/user as mob)
if(!istype(M)) return
@@ -25,7 +25,7 @@
E.part = SK
SK.loc = E
SK.master = E
del(src)
qdel(src)
/obj/structure/stool/bed/chair/attack_tk(mob/user as mob)
if(buckled_mob)
..()
@@ -89,7 +89,7 @@
if(istype(W, /obj/item/weapon/wrench))
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
new /obj/item/stack/sheet/wood(src.loc)
del(src)
qdel(src)
else
..()
@@ -9,26 +9,26 @@
/obj/structure/stool/ex_act(severity)
switch(severity)
if(1.0)
del(src)
qdel(src)
return
if(2.0)
if (prob(50))
del(src)
qdel(src)
return
if(3.0)
if (prob(5))
del(src)
qdel(src)
return
return
/obj/structure/stool/blob_act()
if(prob(75))
new /obj/item/stack/sheet/metal(src.loc)
del(src)
qdel(src)
/obj/structure/stool/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(istype(W, /obj/item/weapon/wrench))
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
new /obj/item/stack/sheet/metal(src.loc)
del(src)
qdel(src)
return
+27 -27
View File
@@ -121,14 +121,14 @@
..()
for(var/obj/structure/table/T in src.loc)
if(T != src)
del(T)
qdel(T)
update_icon()
for(var/direction in list(1,2,4,8,5,6,9,10))
if(locate(/obj/structure/table,get_step(src,direction)))
var/obj/structure/table/T = locate(/obj/structure/table,get_step(src,direction))
T.update_icon()
/obj/structure/table/Del()
/obj/structure/table/Destroy()
for(var/direction in list(1,2,4,8,5,6,9,10))
if(locate(/obj/structure/table,get_step(src,direction)))
var/obj/structure/table/T = locate(/obj/structure/table,get_step(src,direction))
@@ -227,7 +227,7 @@
break stack_loop
else
amt -= S.amount
del(S)
qdel(S)
else if(ispath(A, /obj/item))
var/obj/item/I
item_loop:
@@ -259,7 +259,7 @@
for(var/B in Deletion)
if(!istype(B, A))
Deletion.Remove(B)
del(B)
qdel(B)
return Deletion
/obj/structure/table/interact(mob/user)
@@ -434,11 +434,11 @@
/obj/structure/table/ex_act(severity)
switch(severity)
if(1.0)
del(src)
qdel(src)
return
if(2.0)
if (prob(50))
del(src)
qdel(src)
return
if(3.0)
if (prob(25))
@@ -451,10 +451,10 @@
if(prob(75))
if(istype(src, /obj/structure/table/woodentable))
new /obj/item/weapon/table_parts/wood( src.loc )
del(src)
qdel(src)
return
new /obj/item/weapon/table_parts( src.loc )
del(src)
qdel(src)
return
/obj/structure/table/attack_paw(mob/user)
@@ -468,7 +468,7 @@
else
new /obj/item/weapon/table_parts(loc)
density = 0
del(src)
qdel(src)
/obj/structure/table/attack_alien(mob/user)
@@ -480,7 +480,7 @@
else
new /obj/item/weapon/table_parts(loc)
density = 0
del(src)
qdel(src)
/obj/structure/table/attack_animal(mob/living/simple_animal/user)
@@ -493,7 +493,7 @@
else
new /obj/item/weapon/table_parts(loc)
density = 0
del(src)
qdel(src)
@@ -509,7 +509,7 @@
else
new /obj/item/weapon/table_parts(loc)
density = 0
del(src)
qdel(src)
else
..()
@@ -553,7 +553,7 @@
G.affecting.Weaken(5)
G.affecting.visible_message("<span class='danger'>[G.assailant] pushes [G.affecting] onto [src].</span>", \
"<span class='userdanger'>[G.assailant] pushes [G.affecting] onto [src].</span>")
del(I)
qdel(I)
return
if (istype(I, /obj/item/weapon/wrench))
@@ -585,7 +585,7 @@ Destroy type values:
if(destroy_type == 1)
user.visible_message("<span class='notice'>The table was sliced apart by [user]!</span>")
new parts( src.loc )
del(src)
qdel(src)
return
if(destroy_type == 2)
@@ -597,7 +597,7 @@ Destroy type values:
if (do_after(user, 50))
new parts( src.loc )
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
del(src)
qdel(src)
return
else
user << "<span class='notice'>Now disassembling table</span>"
@@ -605,7 +605,7 @@ Destroy type values:
if (do_after(user, 50))
new parts( src.loc )
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
del(src)
qdel(src)
return
@@ -673,23 +673,23 @@ Destroy type values:
/obj/structure/rack/ex_act(severity)
switch(severity)
if(1.0)
del(src)
qdel(src)
if(2.0)
del(src)
qdel(src)
if(prob(50))
new /obj/item/weapon/rack_parts(src.loc)
if(3.0)
if(prob(25))
del(src)
qdel(src)
new /obj/item/weapon/rack_parts(src.loc)
/obj/structure/rack/blob_act()
if(prob(75))
del(src)
qdel(src)
return
else if(prob(50))
new /obj/item/weapon/rack_parts(src.loc)
del(src)
qdel(src)
return
/obj/structure/rack/CanPass(atom/movable/mover, turf/target, height=0, air_group=0)
@@ -715,7 +715,7 @@ Destroy type values:
if (istype(W, /obj/item/weapon/wrench))
new /obj/item/weapon/rack_parts( src.loc )
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
del(src)
qdel(src)
return
if(isrobot(user))
@@ -725,7 +725,7 @@ Destroy type values:
return 1
/obj/structure/rack/meteorhit(obj/O as obj)
del(src)
qdel(src)
/obj/structure/rack/attack_hand(mob/user)
@@ -734,7 +734,7 @@ Destroy type values:
user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
new /obj/item/weapon/rack_parts(loc)
density = 0
del(src)
qdel(src)
/obj/structure/rack/attack_paw(mob/user)
@@ -743,14 +743,14 @@ Destroy type values:
visible_message("<span class='danger'>[user] smashes [src] apart!</span>")
new /obj/item/weapon/rack_parts(loc)
density = 0
del(src)
qdel(src)
/obj/structure/rack/attack_alien(mob/user)
visible_message("<span class='danger'>[user] slices [src] apart!</span>")
new /obj/item/weapon/rack_parts(loc)
density = 0
del(src)
qdel(src)
/obj/structure/rack/attack_animal(mob/living/simple_animal/user)
@@ -758,7 +758,7 @@ Destroy type values:
visible_message("<span class='danger'>[user] smashes [src] apart!</span>")
new /obj/item/weapon/rack_parts(loc)
density = 0
del(src)
qdel(src)
/obj/structure/rack/attack_tk() // no telehulk sorry
return
File diff suppressed because it is too large Load Diff
+5 -5
View File
@@ -178,7 +178,7 @@
/obj/machinery/shower/update_icon() //this is terribly unreadable, but basically it makes the shower mist up
overlays.Cut() //once it's been on for a while, in addition to handling the water overlay.
if(mymist)
del(mymist)
qdel(mymist)
if(on)
overlays += image('icons/obj/watercloset.dmi', src, "water", MOB_LAYER + 1, dir)
@@ -196,8 +196,8 @@
ismist = 1
mymist = new /obj/effect/mist(loc)
spawn(250)
if(src && !on)
del(mymist)
if(src && !on && mymist)
qdel(mymist)
ismist = 0
@@ -295,7 +295,7 @@
loc.clean_blood()
for(var/obj/effect/E in tile)
if(istype(E,/obj/effect/rune) || istype(E,/obj/effect/decal/cleanable) || istype(E,/obj/effect/overlay))
del(E)
qdel(E)
/obj/machinery/shower/process()
@@ -369,7 +369,7 @@
if(istype(O, /obj/item/trash))
user.drop_item()
user << "<span class='notice'>You wash up [O].</span>" //sims!!!
del(O)
qdel(O)
if(istype(O, /obj/item/weapon/reagent_containers))
var/obj/item/weapon/reagent_containers/RG = O
@@ -31,7 +31,7 @@ obj/structure/windoor_assembly/New(dir=NORTH)
src.ini_dir = src.dir
air_update_turf(1)
obj/structure/windoor_assembly/Del()
obj/structure/windoor_assembly/Destroy()
density = 0
air_update_turf(1)
..()
@@ -87,7 +87,7 @@ obj/structure/windoor_assembly/Del()
if(secure)
var/obj/item/stack/rods/R = new (get_turf(src), 4)
R.add_fingerprint(user)
del(src)
qdel(src)
else
user << "<span class='notice'>You need more welding fuel to dissassemble the windoor assembly.</span>"
return
@@ -258,7 +258,7 @@ obj/structure/windoor_assembly/Del()
src.electronics.loc = windoor
windoor.close()
del(src)
qdel(src)
else
+14 -14
View File
@@ -22,39 +22,39 @@
if(health <= 0)
new /obj/item/weapon/shard(loc)
new /obj/item/stack/rods(loc)
del(src)
qdel(src)
return
/obj/structure/window/ex_act(severity)
switch(severity)
if(1.0)
del(src)
qdel(src)
return
if(2.0)
new /obj/item/weapon/shard(loc)
if(reinf) new /obj/item/stack/rods(loc)
del(src)
qdel(src)
return
if(3.0)
if(prob(50))
new /obj/item/weapon/shard(loc)
if(reinf) new /obj/item/stack/rods(loc)
del(src)
qdel(src)
return
/obj/structure/window/blob_act()
new /obj/item/weapon/shard(loc)
if(reinf) new /obj/item/stack/rods(loc)
del(src)
qdel(src)
/obj/structure/window/meteorhit()
//world << "glass at [x],[y],[z] Mhit"
new /obj/item/weapon/shard( loc )
if(reinf) new /obj/item/stack/rods( loc)
del(src)
qdel(src)
/obj/structure/window/CanPass(atom/movable/mover, turf/target, height=0, air_group=0)
if(istype(mover) && mover.checkpass(PASSGLASS))
@@ -94,7 +94,7 @@
if(health <= 0)
new /obj/item/weapon/shard(loc)
if(reinf) new /obj/item/stack/rods(loc)
del(src)
qdel(src)
/obj/structure/window/attack_tk(mob/user as mob)
user.visible_message("<span class='notice'>Something knocks on [src].</span>")
@@ -112,7 +112,7 @@
if(reinf)
var/obj/item/stack/rods/R = new (loc)
R.add_fingerprint(user)
del(src)
qdel(src)
else
user.visible_message("<span class='notice'>[user] knocks on [src].</span>")
add_fingerprint(user)
@@ -131,7 +131,7 @@
user.visible_message("<span class='danger'>[user] smashes through [src]!</span>")
new /obj/item/weapon/shard(loc)
if(reinf) new /obj/item/stack/rods(loc)
del(src)
qdel(src)
else //for nicer text~
user.visible_message("<span class='danger'>[user] smashes into [src]!</span>")
playsound(loc, 'sound/effects/Glasshit.ogg', 100, 1)
@@ -190,7 +190,7 @@
G = new (user.loc)
G.add_fingerprint(user)
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
src.Del(1)
qdel(src)
else
if(I.damtype == BRUTE || I.damtype == BURN)
hit(I.force)
@@ -227,7 +227,7 @@
else
new /obj/item/weapon/shard(loc)
if(reinf) new /obj/item/stack/rods(loc)
del(src)
qdel(src)
return
@@ -304,12 +304,12 @@
return
/obj/structure/window/Del(quiet)
/obj/structure/window/Destroy()
density = 0
air_update_turf(1)
if(!quiet)playsound(src, "shatter", 70, 1)
if(anchored)playsound(src, "shatter", 70, 1)
update_nearby_icons()
loc = null //garbage collect
..()
/obj/structure/window/Move()