mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-18 02:24:11 +01:00
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise into Kungfu
This commit is contained in:
@@ -12,7 +12,7 @@
|
||||
. = ..()
|
||||
if(can_buckle && buckled_mob)
|
||||
return user_unbuckle_mob(user)
|
||||
|
||||
|
||||
/atom/movable/attack_robot(mob/living/user)
|
||||
. = ..()
|
||||
if(can_buckle && buckled_mob && Adjacent(user)) // attack_robot is called on all ranges, so the Adjacent check is needed
|
||||
@@ -46,6 +46,7 @@
|
||||
buckled_mob = M
|
||||
M.update_canmove()
|
||||
post_buckle_mob(M)
|
||||
M.throw_alert("buckled", /obj/screen/alert/restrained/buckled, new_master = src)
|
||||
return 1
|
||||
|
||||
/atom/movable/proc/unbuckle_mob()
|
||||
@@ -54,6 +55,7 @@
|
||||
buckled_mob.buckled = null
|
||||
buckled_mob.anchored = initial(buckled_mob.anchored)
|
||||
buckled_mob.update_canmove()
|
||||
buckled_mob.clear_alert("buckled")
|
||||
buckled_mob = null
|
||||
|
||||
post_buckle_mob(.)
|
||||
|
||||
@@ -16,7 +16,8 @@
|
||||
aSignal = new(src)
|
||||
aSignal.code = rand(1,100)
|
||||
|
||||
aSignal.frequency = sanitize_frequency(rand(PUBLIC_LOW_FREQ, PUBLIC_HIGH_FREQ))
|
||||
var/new_frequency = sanitize_frequency(rand(PUBLIC_LOW_FREQ, PUBLIC_HIGH_FREQ))
|
||||
aSignal.set_frequency(new_frequency)
|
||||
|
||||
/obj/effect/anomaly/proc/anomalyEffect()
|
||||
if(prob(50))
|
||||
|
||||
@@ -53,6 +53,7 @@
|
||||
|
||||
var/strip_delay = DEFAULT_ITEM_STRIP_DELAY
|
||||
var/put_on_delay = DEFAULT_ITEM_PUTON_DELAY
|
||||
var/breakouttime = 0
|
||||
|
||||
/* Species-specific sprites, concept stolen from Paradise//vg/.
|
||||
ex:
|
||||
|
||||
@@ -20,10 +20,15 @@
|
||||
/obj/item/device/radio/headset/New()
|
||||
..()
|
||||
internal_channels.Cut()
|
||||
|
||||
/obj/item/device/radio/headset/initialize()
|
||||
..()
|
||||
|
||||
if(ks1type)
|
||||
keyslot1 = new ks1type(src)
|
||||
if(ks2type)
|
||||
keyslot2 = new ks2type(src)
|
||||
|
||||
recalculateChannels(1)
|
||||
|
||||
/obj/item/device/radio/headset/Destroy()
|
||||
@@ -383,8 +388,6 @@
|
||||
|
||||
|
||||
for (var/ch_name in channels)
|
||||
if(!radio_controller)
|
||||
sleep(30) // Waiting for the radio_controller to be created.
|
||||
if(!radio_controller)
|
||||
src.name = "broken radio headset"
|
||||
return
|
||||
|
||||
@@ -152,7 +152,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new/obj/item/weapon/reagent_containers/glass/bottle/random_base_chem(src)
|
||||
new/obj/item/weapon/reagent_containers/glass/bottle/random_base_chem(src)
|
||||
new/obj/item/weapon/reagent_containers/glass/bottle/random_base_chem(src)
|
||||
@@ -169,7 +168,6 @@
|
||||
new/obj/item/weapon/storage/pill_bottle/random_meds(src)
|
||||
while(prob(25))
|
||||
new/obj/item/weapon/storage/pill_bottle/random_meds(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/crate/secure/chemicals
|
||||
name = "chemical supply kit"
|
||||
@@ -178,7 +176,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
for(var/chem in standard_chemicals)
|
||||
var/obj/item/weapon/reagent_containers/glass/bottle/B = new(src)
|
||||
B.reagents.add_reagent(chem,B.volume)
|
||||
@@ -240,7 +237,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new/obj/item/weapon/reagent_containers/food/drinks/bottle/random_drink(src)
|
||||
new/obj/item/weapon/reagent_containers/food/drinks/bottle/random_drink(src)
|
||||
new/obj/item/weapon/reagent_containers/food/drinks/bottle/random_drink(src)
|
||||
@@ -248,7 +244,6 @@
|
||||
new/obj/item/weapon/reagent_containers/food/drinks/bottle/random_drink(src)
|
||||
while(prob(25))
|
||||
new/obj/item/weapon/reagent_containers/food/drinks/bottle/random_reagent(src)
|
||||
return
|
||||
|
||||
|
||||
// -------------------------------------
|
||||
@@ -276,8 +271,9 @@
|
||||
while(prob(15))
|
||||
new menace(get_step_rand(src.loc))
|
||||
..()
|
||||
return 1
|
||||
else
|
||||
..()
|
||||
return ..()
|
||||
|
||||
|
||||
//
|
||||
@@ -307,7 +303,7 @@
|
||||
qdel(Cat1)
|
||||
else
|
||||
qdel(Cat2)
|
||||
..()
|
||||
return ..()
|
||||
|
||||
// --------------------------------------
|
||||
// Collen's box of wonder and mystery
|
||||
|
||||
@@ -193,3 +193,31 @@ var/global/list/datum/stack_recipe/mime_recipes = list ( \
|
||||
icon_state = "sheet-enruranium"
|
||||
origin_tech = "materials=6"
|
||||
materials = list(MAT_URANIUM=3000)
|
||||
|
||||
/*
|
||||
* Alien Alloy
|
||||
*/
|
||||
/obj/item/stack/sheet/mineral/abductor
|
||||
name = "alien alloy"
|
||||
icon = 'icons/obj/abductor.dmi'
|
||||
icon_state = "sheet-abductor"
|
||||
singular_name = "alien alloy sheet"
|
||||
force = 5
|
||||
throwforce = 5
|
||||
w_class = 3
|
||||
throw_speed = 1
|
||||
throw_range = 3
|
||||
origin_tech = "materials=6;abductor=1"
|
||||
sheettype = "abductor"
|
||||
|
||||
var/global/list/datum/stack_recipe/abductor_recipes = list ( \
|
||||
new/datum/stack_recipe("alien bed", /obj/structure/stool/bed/abductor, 2, one_per_turf = 1, on_floor = 1), \
|
||||
new/datum/stack_recipe("alien locker", /obj/structure/closet/abductor, 1, time = 15, one_per_turf = 1, on_floor = 1), \
|
||||
new/datum/stack_recipe("alien table frame", /obj/structure/abductor_tableframe, 1, time = 15, one_per_turf = 1, on_floor = 1), \
|
||||
null, \
|
||||
new/datum/stack_recipe("alien floor tile", /obj/item/stack/tile/mineral/abductor, 1, 4, 20), \
|
||||
)
|
||||
|
||||
/obj/item/stack/sheet/mineral/abductor/New(var/loc, var/amount=null)
|
||||
recipes = abductor_recipes
|
||||
..()
|
||||
@@ -0,0 +1,9 @@
|
||||
/obj/item/stack/tile/mineral/abductor
|
||||
name = "alien floor tile"
|
||||
singular_name = "alien floor tile"
|
||||
desc = "A tile made out of alien alloy."
|
||||
icon = 'icons/obj/abductor.dmi'
|
||||
icon_state = "tile_abductor"
|
||||
origin_tech = "materials=6;abductor=1"
|
||||
turf_type = /turf/simulated/floor/mineral/abductor
|
||||
mineralType = "abductor"
|
||||
@@ -3,20 +3,20 @@
|
||||
desc = "This injects the person with DNA."
|
||||
icon = 'icons/obj/items.dmi'
|
||||
icon_state = "dnainjector"
|
||||
var/block=0
|
||||
item_state = "dnainjector"
|
||||
var/block = 0
|
||||
var/datum/dna2/record/buf=null
|
||||
var/s_time = 10.0
|
||||
throw_speed = 1
|
||||
throw_speed = 3
|
||||
throw_range = 5
|
||||
w_class = 1.0
|
||||
var/uses = 1
|
||||
var/nofail
|
||||
var/is_bullet = 0
|
||||
var/inuse = 0
|
||||
w_class = 1
|
||||
origin_tech = "biotech=1"
|
||||
|
||||
var/damage_coeff = 1
|
||||
var/used = 0
|
||||
|
||||
// USE ONLY IN PREMADE SYRINGES. WILL NOT WORK OTHERWISE.
|
||||
var/datatype=0
|
||||
var/value=0
|
||||
var/datatype = 0
|
||||
var/value = 0
|
||||
|
||||
/obj/item/weapon/dnainjector/New()
|
||||
if(datatype && block)
|
||||
@@ -61,50 +61,47 @@
|
||||
return buf.dna.SetUIValue(real_block,val)
|
||||
|
||||
/obj/item/weapon/dnainjector/proc/inject(mob/living/M as mob, mob/user as mob)
|
||||
if(used)
|
||||
return
|
||||
if(istype(M,/mob/living))
|
||||
M.apply_effect(rand(10,25),IRRADIATE,0,1)
|
||||
M.apply_effect(rand(20/(damage_coeff ** 2),50/(damage_coeff ** 2)),IRRADIATE,0,1)
|
||||
var/mob/living/carbon/human/H
|
||||
if(istype(M, /mob/living/carbon/human))
|
||||
H = M
|
||||
|
||||
if (!(NOCLONE in M.mutations) && !(H && (H.species.flags & NO_DNA))) // prevents drained people from having their DNA changed
|
||||
var/prev_ue = M.dna.unique_enzymes
|
||||
// UI in syringe.
|
||||
if (buf.types & DNA2_BUF_UI)
|
||||
if (!block) //isolated block?
|
||||
M.dna.UI = buf.dna.UI.Copy()
|
||||
M.dna.UpdateUI()
|
||||
M.UpdateAppearance()
|
||||
if (buf.types & DNA2_BUF_UE) //unique enzymes? yes
|
||||
spawn(0) //Some mutations have sleeps in them, like monkey
|
||||
if(!(NOCLONE in M.mutations) && !(H && (H.species.flags & NO_DNA))) // prevents drained people from having their DNA changed
|
||||
var/prev_ue = M.dna.unique_enzymes
|
||||
// UI in syringe.
|
||||
if (buf.types & DNA2_BUF_UI)
|
||||
if (!block) //isolated block?
|
||||
M.dna.UI = buf.dna.UI.Copy()
|
||||
M.dna.UpdateUI()
|
||||
M.UpdateAppearance()
|
||||
if (buf.types & DNA2_BUF_UE) //unique enzymes? yes
|
||||
|
||||
M.real_name = buf.dna.real_name
|
||||
M.name = buf.dna.real_name
|
||||
M.dna.real_name = buf.dna.real_name
|
||||
M.dna.unique_enzymes = buf.dna.unique_enzymes
|
||||
uses--
|
||||
else
|
||||
M.dna.SetUIValue(block,src.GetValue())
|
||||
M.UpdateAppearance()
|
||||
uses--
|
||||
if (buf.types & DNA2_BUF_SE)
|
||||
if (!block) //isolated block?
|
||||
M.dna.SE = buf.dna.SE.Copy()
|
||||
M.dna.UpdateSE()
|
||||
else
|
||||
M.dna.SetSEValue(block,src.GetValue())
|
||||
domutcheck(M, null, block!=null)
|
||||
uses--
|
||||
M.update_mutations()
|
||||
if(H)
|
||||
H.sync_organ_dna(assimilate = 0, old_ue = prev_ue)
|
||||
|
||||
spawn(0)//this prevents the collapse of space-time continuum
|
||||
if (user)
|
||||
user.unEquip(src)
|
||||
qdel(src)
|
||||
return uses
|
||||
M.real_name = buf.dna.real_name
|
||||
M.name = buf.dna.real_name
|
||||
M.dna.real_name = buf.dna.real_name
|
||||
M.dna.unique_enzymes = buf.dna.unique_enzymes
|
||||
else
|
||||
M.dna.SetUIValue(block,src.GetValue())
|
||||
M.UpdateAppearance()
|
||||
if (buf.types & DNA2_BUF_SE)
|
||||
if (!block) //isolated block?
|
||||
M.dna.SE = buf.dna.SE.Copy()
|
||||
M.dna.UpdateSE()
|
||||
else
|
||||
M.dna.SetSEValue(block,src.GetValue())
|
||||
domutcheck(M, null, block!=null)
|
||||
M.update_mutations()
|
||||
if(H)
|
||||
H.sync_organ_dna(assimilate = 0, old_ue = prev_ue)
|
||||
|
||||
/obj/item/weapon/dnainjector/attack(mob/M as mob, mob/user as mob)
|
||||
if(used)
|
||||
user << "<span class='warning'>This injector is used up!</span>"
|
||||
return
|
||||
if(!M.dna) //You know what would be nice? If the mob you're injecting has DNA, and so doesn't cause runtimes.
|
||||
return 0
|
||||
|
||||
@@ -116,9 +113,6 @@
|
||||
if (!user.IsAdvancedToolUser())
|
||||
return 0
|
||||
|
||||
if(inuse)
|
||||
return 0
|
||||
|
||||
M.attack_log += text("\[[time_stamp()]\] <font color='orange'>Has been injected with [name] by [user.name] ([user.ckey])</font>")
|
||||
user.attack_log += text("\[[time_stamp()]\] <font color='red'>Used the [name] to inject [M.name] ([M.ckey])</font>")
|
||||
log_attack("[user.name] ([user.ckey]) used the [name] to inject [M.name] ([M.ckey])")
|
||||
@@ -149,17 +143,20 @@
|
||||
else
|
||||
log_attack("[key_name(user)] injected [key_name(M)] with the [name]")
|
||||
|
||||
user.visible_message("<span class='danger'>\The [user] starts injecting \the [M] with \the [src]!</span>", "<span class='notice'>You start injecting \the [M] with \the [src].</span>")
|
||||
if(do_after(user, 50, target = M))
|
||||
inject(M, user)//Now we actually do the heavy lifting
|
||||
user.visible_message("<span class='danger'>\The [user] injects \the [M] with \the [src]!</span>", "<span class='danger'>You inject \the [M] with \the [src].</span>")
|
||||
if(M != user)
|
||||
M.visible_message("<span class='danger'>[user] is trying to inject [M] with [src]!</span>", "<span class='userdanger'>[user] is trying to inject [M] with [src]!</span>")
|
||||
if(!do_mob(user, M))
|
||||
return
|
||||
M.visible_message("<span class='danger'>[user] injects [M] with the syringe with [src]!", \
|
||||
"<span class='userdanger'>[user] injects [M] with the syringe with [src]!")
|
||||
|
||||
if(user)//If the user still exists. Their mob may not.
|
||||
if(M)//Runtime fix: If the mob doesn't exist, mob.name doesnt work. - Nodrak
|
||||
user.show_message("<span class='alert'>You inject [M.name]</span>")
|
||||
else
|
||||
user.show_message("<span class='alert'>You finish the injection.</span>")
|
||||
else
|
||||
user << "<span class='notice'>You inject yourself with [src].</span>"
|
||||
|
||||
inject(M, user)
|
||||
used = 1
|
||||
icon_state = "dnainjector0"
|
||||
desc += " This one is used up."
|
||||
|
||||
/obj/item/weapon/dnainjector/hulkmut
|
||||
name = "DNA-Injector (Hulk)"
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
throw_range = 5
|
||||
materials = list(MAT_METAL=500)
|
||||
origin_tech = "materials=1"
|
||||
var/breakouttime = 600 //Deciseconds = 60s = 1 minutes
|
||||
breakouttime = 600 //Deciseconds = 60s = 1 minutes
|
||||
var/cuffsound = 'sound/weapons/handcuffs.ogg'
|
||||
var/trashtype = null //For disposable cuffs
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
else
|
||||
loc = target
|
||||
target.handcuffed = src
|
||||
target.update_inv_handcuffed(1)
|
||||
target.update_handcuffed()
|
||||
return
|
||||
|
||||
/obj/item/weapon/restraints/handcuffs/cable
|
||||
@@ -85,6 +85,9 @@
|
||||
/obj/item/weapon/restraints/handcuffs/cable/white
|
||||
color = COLOR_WHITE
|
||||
|
||||
/obj/item/weapon/restraints/handcuffs/alien
|
||||
icon_state = "handcuffAlien"
|
||||
|
||||
/obj/item/weapon/restraints/handcuffs/pinkcuffs
|
||||
name = "fluffy pink handcuffs"
|
||||
desc = "Use this to keep prisoners in line. Or you know, your significant other."
|
||||
@@ -121,7 +124,7 @@
|
||||
if(do_mob(user, C, 30))
|
||||
if(!C.handcuffed)
|
||||
C.handcuffed = new /obj/item/weapon/restraints/handcuffs/cable/zipties/used(C)
|
||||
C.update_inv_handcuffed(1)
|
||||
C.update_handcuffed()
|
||||
to_chat(user, "<span class='notice'>You handcuff [C].</span>")
|
||||
add_logs(C, user, "ziptie-cuffed")
|
||||
else
|
||||
@@ -133,110 +136,3 @@
|
||||
|
||||
/obj/item/weapon/restraints/handcuffs/cable/zipties/used/attack()
|
||||
return
|
||||
|
||||
//Legcuffs
|
||||
/obj/item/weapon/restraints/legcuffs
|
||||
name = "leg cuffs"
|
||||
desc = "Use this to keep prisoners in line."
|
||||
gender = PLURAL
|
||||
icon = 'icons/obj/items.dmi'
|
||||
icon_state = "handcuff"
|
||||
flags = CONDUCT
|
||||
throwforce = 0
|
||||
w_class = 3.0
|
||||
origin_tech = "materials=1"
|
||||
slowdown = 7
|
||||
var/breakouttime = 300 //Deciseconds = 30s = 0.5 minute
|
||||
|
||||
/obj/item/weapon/restraints/legcuffs/beartrap
|
||||
name = "bear trap"
|
||||
throw_speed = 1
|
||||
throw_range = 1
|
||||
icon_state = "beartrap0"
|
||||
desc = "A trap used to catch bears and other legged creatures."
|
||||
var/armed = 0
|
||||
var/obj/item/weapon/grenade/iedcasing/IED = null
|
||||
|
||||
/obj/item/weapon/restraints/legcuffs/beartrap/Destroy()
|
||||
if(IED)
|
||||
qdel(IED)
|
||||
IED = null
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/restraints/legcuffs/beartrap/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] is sticking \his head in the [src.name]! It looks like \he's trying to commit suicide.</span>")
|
||||
playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1)
|
||||
return (BRUTELOSS)
|
||||
|
||||
/obj/item/weapon/restraints/legcuffs/beartrap/attack_self(mob/user as mob)
|
||||
..()
|
||||
if(ishuman(user) && !user.stat && !user.restrained())
|
||||
armed = !armed
|
||||
icon_state = "beartrap[armed]"
|
||||
to_chat(user, "<span class='notice'>[src] is now [armed ? "armed" : "disarmed"]</span>")
|
||||
|
||||
/obj/item/weapon/restraints/legcuffs/beartrap/attackby(var/obj/item/I, mob/user as mob) //Let's get explosive.
|
||||
if(istype(I, /obj/item/weapon/grenade/iedcasing))
|
||||
if(IED)
|
||||
to_chat(user, "<span class='warning'>This beartrap already has an IED hooked up to it!</span>")
|
||||
return
|
||||
IED = I
|
||||
switch(IED.assembled)
|
||||
if(0,1) //if it's not fueled/hooked up
|
||||
to_chat(user, "<span class='warning'>You haven't prepared this IED yet!</span>")
|
||||
IED = null
|
||||
return
|
||||
if(2,3)
|
||||
user.drop_item(src)
|
||||
I.forceMove(src)
|
||||
message_admins("[key_name_admin(user)] has rigged a beartrap with an IED.")
|
||||
log_game("[key_name(user)] has rigged a beartrap with an IED.")
|
||||
to_chat(user, "<span class='notice'>You sneak the [IED] underneath the pressure plate and connect the trigger wire.</span>")
|
||||
desc = "A trap used to catch bears and other legged creatures. <span class='warning'>There is an IED hooked up to it.</span>"
|
||||
else
|
||||
to_chat(user, "<span class='danger'>You shouldn't be reading this message! Contact a coder or someone, something broke!</span>")
|
||||
IED = null
|
||||
return
|
||||
if(istype(I, /obj/item/weapon/screwdriver))
|
||||
if(IED)
|
||||
IED.forceMove(get_turf(src))
|
||||
IED = null
|
||||
to_chat(user, "<span class='notice'>You remove the IED from the [src].</span>")
|
||||
return
|
||||
..()
|
||||
|
||||
/obj/item/weapon/restraints/legcuffs/beartrap/Crossed(AM as mob|obj)
|
||||
if(armed && isturf(src.loc))
|
||||
if( (iscarbon(AM) || isanimal(AM)) && !istype(AM, /mob/living/simple_animal/parrot) && !istype(AM, /mob/living/simple_animal/construct) && !istype(AM, /mob/living/simple_animal/shade) && !istype(AM, /mob/living/simple_animal/hostile/viscerator))
|
||||
var/mob/living/L = AM
|
||||
armed = 0
|
||||
icon_state = "beartrap0"
|
||||
playsound(src.loc, 'sound/effects/snap.ogg', 50, 1)
|
||||
L.visible_message("<span class='danger'>[L] triggers \the [src].</span>", \
|
||||
"<span class='userdanger'>You trigger \the [src]!</span>")
|
||||
|
||||
if(IED && isturf(src.loc))
|
||||
IED.active = 1
|
||||
IED.overlays -= image('icons/obj/grenade.dmi', icon_state = "improvised_grenade_filled")
|
||||
IED.icon_state = initial(icon_state) + "_active"
|
||||
IED.assembled = 3
|
||||
message_admins("[key_name_admin(usr)] has triggered an IED-rigged [name].")
|
||||
log_game("[key_name(usr)] has triggered an IED-rigged [name].")
|
||||
spawn(IED.det_time)
|
||||
IED.prime()
|
||||
|
||||
if(ishuman(AM))
|
||||
var/mob/living/carbon/H = AM
|
||||
if(H.lying)
|
||||
H.apply_damage(20,BRUTE,"chest")
|
||||
else
|
||||
H.apply_damage(20,BRUTE,(pick("l_leg", "r_leg")))
|
||||
if(!H.legcuffed) //beartrap can't cuff you leg if there's already a beartrap or legcuffs.
|
||||
H.legcuffed = src
|
||||
src.loc = H
|
||||
H.update_inv_legcuffed(0)
|
||||
feedback_add_details("handcuffs","B") //Yes, I know they're legcuffs. Don't change this, no need for an extra variable. The "B" is used to tell them apart.
|
||||
|
||||
else
|
||||
L.apply_damage(20,BRUTE)
|
||||
..()
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/obj/item/weapon/legcuffs
|
||||
name = "legcuffs"
|
||||
/obj/item/weapon/restraints/legcuffs
|
||||
name = "leg cuffs"
|
||||
desc = "Use this to keep prisoners in line."
|
||||
gender = PLURAL
|
||||
icon = 'icons/obj/items.dmi'
|
||||
@@ -8,7 +8,102 @@
|
||||
throwforce = 0
|
||||
w_class = 3.0
|
||||
origin_tech = "materials=1"
|
||||
var/breakouttime = 300 //Deciseconds = 30s = 0.5 minute
|
||||
slowdown = 7
|
||||
breakouttime = 300 //Deciseconds = 30s = 0.5 minute
|
||||
|
||||
/obj/item/weapon/restraints/legcuffs/beartrap
|
||||
name = "bear trap"
|
||||
throw_speed = 1
|
||||
throw_range = 1
|
||||
icon_state = "beartrap0"
|
||||
desc = "A trap used to catch bears and other legged creatures."
|
||||
var/armed = 0
|
||||
var/obj/item/weapon/grenade/iedcasing/IED = null
|
||||
|
||||
/obj/item/weapon/restraints/legcuffs/beartrap/Destroy()
|
||||
if(IED)
|
||||
qdel(IED)
|
||||
IED = null
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/restraints/legcuffs/beartrap/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] is sticking \his head in the [src.name]! It looks like \he's trying to commit suicide.</span>")
|
||||
playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1)
|
||||
return (BRUTELOSS)
|
||||
|
||||
/obj/item/weapon/restraints/legcuffs/beartrap/attack_self(mob/user as mob)
|
||||
..()
|
||||
if(ishuman(user) && !user.stat && !user.restrained())
|
||||
armed = !armed
|
||||
icon_state = "beartrap[armed]"
|
||||
to_chat(user, "<span class='notice'>[src] is now [armed ? "armed" : "disarmed"]</span>")
|
||||
|
||||
/obj/item/weapon/restraints/legcuffs/beartrap/attackby(var/obj/item/I, mob/user as mob) //Let's get explosive.
|
||||
if(istype(I, /obj/item/weapon/grenade/iedcasing))
|
||||
if(IED)
|
||||
to_chat(user, "<span class='warning'>This beartrap already has an IED hooked up to it!</span>")
|
||||
return
|
||||
IED = I
|
||||
switch(IED.assembled)
|
||||
if(0,1) //if it's not fueled/hooked up
|
||||
to_chat(user, "<span class='warning'>You haven't prepared this IED yet!</span>")
|
||||
IED = null
|
||||
return
|
||||
if(2,3)
|
||||
user.drop_item(src)
|
||||
I.forceMove(src)
|
||||
message_admins("[key_name_admin(user)] has rigged a beartrap with an IED.")
|
||||
log_game("[key_name(user)] has rigged a beartrap with an IED.")
|
||||
to_chat(user, "<span class='notice'>You sneak the [IED] underneath the pressure plate and connect the trigger wire.</span>")
|
||||
desc = "A trap used to catch bears and other legged creatures. <span class='warning'>There is an IED hooked up to it.</span>"
|
||||
else
|
||||
to_chat(user, "<span class='danger'>You shouldn't be reading this message! Contact a coder or someone, something broke!</span>")
|
||||
IED = null
|
||||
return
|
||||
if(istype(I, /obj/item/weapon/screwdriver))
|
||||
if(IED)
|
||||
IED.forceMove(get_turf(src))
|
||||
IED = null
|
||||
to_chat(user, "<span class='notice'>You remove the IED from the [src].</span>")
|
||||
return
|
||||
..()
|
||||
|
||||
/obj/item/weapon/restraints/legcuffs/beartrap/Crossed(AM as mob|obj)
|
||||
if(armed && isturf(src.loc))
|
||||
if( (iscarbon(AM) || isanimal(AM)) && !istype(AM, /mob/living/simple_animal/parrot) && !istype(AM, /mob/living/simple_animal/construct) && !istype(AM, /mob/living/simple_animal/shade) && !istype(AM, /mob/living/simple_animal/hostile/viscerator))
|
||||
var/mob/living/L = AM
|
||||
armed = 0
|
||||
icon_state = "beartrap0"
|
||||
playsound(src.loc, 'sound/effects/snap.ogg', 50, 1)
|
||||
L.visible_message("<span class='danger'>[L] triggers \the [src].</span>", \
|
||||
"<span class='userdanger'>You trigger \the [src]!</span>")
|
||||
|
||||
if(IED && isturf(src.loc))
|
||||
IED.active = 1
|
||||
IED.overlays -= image('icons/obj/grenade.dmi', icon_state = "improvised_grenade_filled")
|
||||
IED.icon_state = initial(icon_state) + "_active"
|
||||
IED.assembled = 3
|
||||
message_admins("[key_name_admin(usr)] has triggered an IED-rigged [name].")
|
||||
log_game("[key_name(usr)] has triggered an IED-rigged [name].")
|
||||
spawn(IED.det_time)
|
||||
IED.prime()
|
||||
|
||||
if(ishuman(AM))
|
||||
var/mob/living/carbon/H = AM
|
||||
if(H.lying)
|
||||
H.apply_damage(20,BRUTE,"chest")
|
||||
else
|
||||
H.apply_damage(20,BRUTE,(pick("l_leg", "r_leg")))
|
||||
if(!H.legcuffed) //beartrap can't cuff you leg if there's already a beartrap or legcuffs.
|
||||
H.legcuffed = src
|
||||
src.loc = H
|
||||
H.update_inv_legcuffed(0)
|
||||
feedback_add_details("handcuffs","B") //Yes, I know they're legcuffs. Don't change this, no need for an extra variable. The "B" is used to tell them apart.
|
||||
|
||||
else
|
||||
L.apply_damage(20,BRUTE)
|
||||
..()
|
||||
|
||||
|
||||
/obj/item/weapon/legcuffs/bolas
|
||||
name = "bolas"
|
||||
|
||||
@@ -137,37 +137,3 @@
|
||||
H.update_inv_r_hand()
|
||||
add_fingerprint(user)
|
||||
return
|
||||
|
||||
|
||||
/obj/item/weapon/cloaking_device
|
||||
name = "cloaking device"
|
||||
desc = "Use this to become invisible to the human eyesocket."
|
||||
icon = 'icons/obj/device.dmi'
|
||||
icon_state = "shield0"
|
||||
var/active = 0.0
|
||||
flags = CONDUCT
|
||||
item_state = "electronic"
|
||||
throwforce = 10.0
|
||||
throw_speed = 2
|
||||
throw_range = 10
|
||||
w_class = 2.0
|
||||
origin_tech = "magnets=3;syndicate=4"
|
||||
|
||||
|
||||
/obj/item/weapon/cloaking_device/attack_self(mob/user as mob)
|
||||
src.active = !( src.active )
|
||||
if (src.active)
|
||||
to_chat(user, "\blue The cloaking device is now active.")
|
||||
src.icon_state = "shield1"
|
||||
else
|
||||
to_chat(user, "\blue The cloaking device is now inactive.")
|
||||
src.icon_state = "shield0"
|
||||
src.add_fingerprint(user)
|
||||
return
|
||||
|
||||
/obj/item/weapon/cloaking_device/emp_act(severity)
|
||||
active = 0
|
||||
icon_state = "shield0"
|
||||
if(ismob(loc))
|
||||
loc:update_icons()
|
||||
..()
|
||||
|
||||
@@ -512,6 +512,16 @@
|
||||
new /obj/item/weapon/restraints/handcuffs/cable/zipties(src)
|
||||
new /obj/item/weapon/restraints/handcuffs/cable/zipties(src)
|
||||
|
||||
/obj/item/weapon/storage/box/alienhandcuffs
|
||||
name = "box of spare handcuffs"
|
||||
desc = "A box full of handcuffs."
|
||||
icon_state = "alienboxCuffs"
|
||||
|
||||
New()
|
||||
..()
|
||||
for(var/i in 1 to 7)
|
||||
new /obj/item/weapon/restraints/handcuffs/alien(src)
|
||||
|
||||
/obj/item/weapon/storage/box/fakesyndiesuit
|
||||
name = "boxed space suit and helmet"
|
||||
desc = "A sleek, sturdy box used to hold replica spacesuits."
|
||||
|
||||
@@ -127,7 +127,7 @@
|
||||
C.handcuffed = null
|
||||
if(C.buckled && C.buckled.buckle_requires_restraints)
|
||||
C.buckled.unbuckle_mob()
|
||||
C.update_inv_handcuffed()
|
||||
C.update_handcuffed()
|
||||
return
|
||||
else
|
||||
..()
|
||||
|
||||
@@ -129,7 +129,13 @@
|
||||
return
|
||||
|
||||
/mob/proc/unset_machine()
|
||||
src.machine = null
|
||||
if(machine)
|
||||
machine.on_unset_machine(src)
|
||||
machine = null
|
||||
|
||||
//called when the user unsets the machine.
|
||||
/atom/movable/proc/on_unset_machine(mob/user)
|
||||
return
|
||||
|
||||
/mob/proc/set_machine(var/obj/O)
|
||||
if(src.machine)
|
||||
|
||||
@@ -108,7 +108,11 @@
|
||||
to_chat(user, "<span class='warning'>Nothing interesting happens!</span>")
|
||||
return
|
||||
to_chat(user, "<span class='notice'>You emag the barsign. Takeover in progress...</span>")
|
||||
sleep(100) //10 seconds
|
||||
addtimer(src, "post_emag", 100)
|
||||
|
||||
/obj/structure/sign/barsign/proc/post_emag()
|
||||
if(broken || emagged)
|
||||
return
|
||||
set_sign(new /datum/barsign/hiddensigns/syndibarsign)
|
||||
emagged = 1
|
||||
req_access = list(access_syndicate)
|
||||
|
||||
@@ -11,9 +11,11 @@
|
||||
var/wall_mounted = 0 //never solid (You can always pass over it)
|
||||
var/health = 100
|
||||
var/lastbang
|
||||
var/cutting_tool = /obj/item/weapon/weldingtool
|
||||
var/sound = 'sound/machines/click.ogg'
|
||||
var/storage_capacity = 30 //This is so that someone can't pack hundreds of items in a locker/crate
|
||||
//then open it in a populated area to crash clients.
|
||||
var/cutting_sound = 'sound/items/Welder.ogg'
|
||||
var/storage_capacity = 30 //This is so that someone can't pack hundreds of items in a locker/crate then open it in a populated area to crash clients.
|
||||
var/material_drop = /obj/item/stack/sheet/metal
|
||||
|
||||
/obj/structure/closet/New()
|
||||
..()
|
||||
@@ -136,7 +138,6 @@
|
||||
/obj/structure/closet/proc/toggle(mob/user as mob)
|
||||
if(!(src.opened ? src.close() : src.open()))
|
||||
to_chat(user, "<span class='notice'>It won't budge!</span>")
|
||||
return
|
||||
|
||||
// this should probably use dump_contents()
|
||||
/obj/structure/closet/ex_act(severity)
|
||||
@@ -169,7 +170,6 @@
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.forceMove(loc)
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/attack_animal(mob/living/simple_animal/user as mob)
|
||||
if(user.environment_smash)
|
||||
@@ -259,16 +259,24 @@
|
||||
src.MouseDrop_T(W:affecting, user) //act like they were dragged onto the closet
|
||||
if(istype(W,/obj/item/tk_grab))
|
||||
return 0
|
||||
if(istype(W, /obj/item/weapon/weldingtool))
|
||||
var/obj/item/weapon/weldingtool/WT = W
|
||||
if(!WT.remove_fuel(0,user))
|
||||
to_chat(user, "<span class='notice'>You need more welding fuel to complete this task.</span>")
|
||||
return
|
||||
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)
|
||||
qdel(src)
|
||||
return
|
||||
if(istype(W, cutting_tool))
|
||||
if(istype(W, /obj/item/weapon/weldingtool))
|
||||
var/obj/item/weapon/weldingtool/WT = W
|
||||
if(!WT.remove_fuel(0, user))
|
||||
return
|
||||
to_chat(user, "<span class='notice'>You begin cutting \the [src] apart...</span>")
|
||||
playsound(loc, cutting_sound, 40, 1)
|
||||
if(do_after(user, 40, 1, target = src))
|
||||
if(!opened || !WT.isOn())
|
||||
return
|
||||
playsound(loc, cutting_sound, 50, 1)
|
||||
visible_message("<span class='notice'>[user] slices apart \the [src].</span>",
|
||||
"<span class='notice'>You cut \the [src] apart with \the [WT].</span>",
|
||||
"<span class='italics'>You hear welding.</span>")
|
||||
var/turf/T = get_turf(src)
|
||||
new material_drop(T)
|
||||
qdel(src)
|
||||
return
|
||||
if(isrobot(user))
|
||||
return
|
||||
if(!usr.drop_item())
|
||||
@@ -291,7 +299,6 @@
|
||||
M.show_message("<span class='warning'>[src] has been [welded?"welded shut":"unwelded"] by [user.name].</span>", 3, "You hear welding.", 2)
|
||||
else
|
||||
src.attack_hand(user)
|
||||
return
|
||||
|
||||
/obj/structure/closet/MouseDrop_T(atom/movable/O as mob|obj, mob/user as mob)
|
||||
..()
|
||||
@@ -315,7 +322,6 @@
|
||||
if(user != O)
|
||||
user.show_viewers("<span class='danger'>[user] stuffs [O] into [src]!</span>")
|
||||
src.add_fingerprint(user)
|
||||
return
|
||||
|
||||
/obj/structure/closet/attack_ai(mob/user)
|
||||
if(istype(user, /mob/living/silicon/robot) && Adjacent(user)) //Robots can open/close it, but not the AI
|
||||
|
||||
@@ -6,6 +6,8 @@
|
||||
icon_closed = "cardboard"
|
||||
health = 10
|
||||
sound = 'sound/effects/rustle2.ogg'
|
||||
material_drop = /obj/item/stack/sheet/cardboard
|
||||
cutting_sound = 'sound/items/poster_ripped.ogg'
|
||||
var/move_delay = 0
|
||||
var/egged = 0
|
||||
|
||||
|
||||
@@ -3,4 +3,5 @@
|
||||
desc = "A crate which can sustain life for a while."
|
||||
icon_state = "critter"
|
||||
icon_opened = "critteropen"
|
||||
icon_closed = "critter"
|
||||
icon_closed = "critter"
|
||||
material_drop = /obj/item/stack/sheet/wood
|
||||
@@ -193,7 +193,6 @@
|
||||
to_chat(user, "\red Cabinet locked.")
|
||||
else
|
||||
to_chat(user, "\blue Cabinet unlocked.")
|
||||
return
|
||||
|
||||
update_icon() //Template: fireaxe[has fireaxe][is opened][hits taken][is smashed]. If you want the opening or closing animations, add "opening" or "closing" right after the numbers
|
||||
var/hasaxe = 0
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
|
||||
/obj/structure/closet/athletic_mixed/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/shorts/grey(src)
|
||||
new /obj/item/clothing/under/shorts/black(src)
|
||||
new /obj/item/clothing/under/shorts/red(src)
|
||||
@@ -25,7 +24,6 @@
|
||||
|
||||
/obj/structure/closet/boxinggloves/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/gloves/boxing/blue(src)
|
||||
new /obj/item/clothing/gloves/boxing/green(src)
|
||||
new /obj/item/clothing/gloves/boxing/yellow(src)
|
||||
@@ -38,7 +36,6 @@
|
||||
|
||||
/obj/structure/closet/masks/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/mask/luchador(src)
|
||||
new /obj/item/clothing/mask/luchador/rudos(src)
|
||||
new /obj/item/clothing/mask/luchador/tecnicos(src)
|
||||
@@ -52,7 +49,6 @@
|
||||
|
||||
/obj/structure/closet/lasertag/red/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/gun/energy/laser/redtag(src)
|
||||
new /obj/item/weapon/gun/energy/laser/redtag(src)
|
||||
new /obj/item/weapon/gun/energy/laser/redtag(src)
|
||||
@@ -69,7 +65,6 @@
|
||||
|
||||
/obj/structure/closet/lasertag/blue/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/gun/energy/laser/bluetag(src)
|
||||
new /obj/item/weapon/gun/energy/laser/bluetag(src)
|
||||
new /obj/item/weapon/gun/energy/laser/bluetag(src)
|
||||
|
||||
@@ -36,7 +36,6 @@
|
||||
|
||||
/obj/structure/closet/gimmick/russian/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/head/ushanka(src)
|
||||
new /obj/item/clothing/head/ushanka(src)
|
||||
new /obj/item/clothing/head/ushanka(src)
|
||||
@@ -58,7 +57,6 @@
|
||||
|
||||
/obj/structure/closet/gimmick/tacticool/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/glasses/eyepatch(src)
|
||||
new /obj/item/clothing/glasses/sunglasses(src)
|
||||
new /obj/item/clothing/gloves/combat(src)
|
||||
@@ -83,16 +81,11 @@
|
||||
icon_opened = "syndicateopen"
|
||||
anchored = 1
|
||||
|
||||
/obj/structure/closet/thunderdome/New()
|
||||
..()
|
||||
sleep(2)
|
||||
|
||||
/obj/structure/closet/thunderdome/tdred
|
||||
name = "red-team Thunderdome closet"
|
||||
|
||||
/obj/structure/closet/thunderdome/tdred/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/armor/tdome/red(src)
|
||||
new /obj/item/clothing/suit/armor/tdome/red(src)
|
||||
new /obj/item/clothing/suit/armor/tdome/red(src)
|
||||
@@ -120,7 +113,6 @@
|
||||
|
||||
/obj/structure/closet/thunderdome/tdgreen/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/armor/tdome/green(src)
|
||||
new /obj/item/clothing/suit/armor/tdome/green(src)
|
||||
new /obj/item/clothing/suit/armor/tdome/green(src)
|
||||
|
||||
@@ -16,7 +16,6 @@
|
||||
|
||||
/obj/structure/closet/gmcloset/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/head/that(src)
|
||||
new /obj/item/clothing/head/that(src)
|
||||
new /obj/item/device/radio/headset/headset_service(src)
|
||||
@@ -45,7 +44,6 @@
|
||||
|
||||
/obj/structure/closet/chefcloset/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/waiter(src)
|
||||
new /obj/item/clothing/under/waiter(src)
|
||||
new /obj/item/device/radio/headset/headset_service(src)
|
||||
@@ -74,7 +72,6 @@
|
||||
|
||||
/obj/structure/closet/jcloset/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/janitor(src)
|
||||
new /obj/item/device/radio/headset/headset_service(src)
|
||||
new /obj/item/weapon/cartridge/janitor(src)
|
||||
@@ -104,7 +101,6 @@
|
||||
|
||||
/obj/structure/closet/lawcloset/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/lawyer/female(src)
|
||||
new /obj/item/clothing/under/lawyer/black(src)
|
||||
new /obj/item/clothing/under/lawyer/red(src)
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
|
||||
/obj/structure/closet/l3closet/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/storage/bag/bio( src )
|
||||
new /obj/item/clothing/suit/bio_suit/general( src )
|
||||
new /obj/item/clothing/head/bio_hood/general( src )
|
||||
@@ -20,7 +19,6 @@
|
||||
|
||||
/obj/structure/closet/l3closet/general/New()
|
||||
..()
|
||||
sleep(2)
|
||||
contents = list()
|
||||
new /obj/item/clothing/suit/bio_suit/general( src )
|
||||
new /obj/item/clothing/head/bio_hood/general( src )
|
||||
@@ -33,7 +31,6 @@
|
||||
|
||||
/obj/structure/closet/l3closet/virology/New()
|
||||
..()
|
||||
sleep(2)
|
||||
contents = list()
|
||||
new /obj/item/weapon/storage/bag/bio( src )
|
||||
new /obj/item/clothing/suit/bio_suit/virology( src )
|
||||
@@ -49,7 +46,6 @@
|
||||
|
||||
/obj/structure/closet/l3closet/security/New()
|
||||
..()
|
||||
sleep(2)
|
||||
contents = list()
|
||||
new /obj/item/clothing/suit/bio_suit/security( src )
|
||||
new /obj/item/clothing/head/bio_hood/security( src )
|
||||
@@ -62,7 +58,6 @@
|
||||
|
||||
/obj/structure/closet/l3closet/janitor/New()
|
||||
..()
|
||||
sleep(2)
|
||||
contents = list()
|
||||
new /obj/item/clothing/suit/bio_suit/janitor( src )
|
||||
new /obj/item/clothing/head/bio_hood/janitor( src )
|
||||
@@ -75,7 +70,6 @@
|
||||
|
||||
/obj/structure/closet/l3closet/scientist/New()
|
||||
..()
|
||||
sleep(2)
|
||||
contents = list()
|
||||
new /obj/item/weapon/storage/bag/bio( src )
|
||||
new /obj/item/clothing/suit/bio_suit/scientist( src )
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
|
||||
/obj/structure/closet/malf/suits/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/tank/jetpack/void(src)
|
||||
new /obj/item/clothing/mask/breath(src)
|
||||
new /obj/item/clothing/head/helmet/space/nasavoid(src)
|
||||
|
||||
@@ -11,7 +11,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
@@ -22,7 +21,6 @@
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/bar/update_icon()
|
||||
if(broken)
|
||||
|
||||
@@ -10,14 +10,12 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/cargotech(src)
|
||||
new /obj/item/clothing/shoes/black(src)
|
||||
new /obj/item/device/radio/headset/headset_cargo(src)
|
||||
new /obj/item/clothing/gloves/fingerless(src)
|
||||
new /obj/item/clothing/head/soft(src)
|
||||
// new /obj/item/weapon/cartridge/quartermaster(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/quartermaster
|
||||
name = "quartermaster's locker"
|
||||
@@ -31,7 +29,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/cargo(src)
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
new /obj/item/device/radio/headset/headset_cargo(src)
|
||||
@@ -42,5 +39,4 @@
|
||||
new /obj/item/weapon/tank/emergency_oxygen(src)
|
||||
new /obj/item/clothing/mask/gas(src)
|
||||
new /obj/item/clothing/glasses/meson(src)
|
||||
new /obj/item/clothing/head/soft(src)
|
||||
return
|
||||
new /obj/item/clothing/head/soft(src)
|
||||
@@ -11,7 +11,6 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/chaplain/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/chaplain(src)
|
||||
new /obj/item/clothing/shoes/black(src)
|
||||
new /obj/item/clothing/suit/nun(src)
|
||||
@@ -29,5 +28,4 @@
|
||||
new /obj/item/clothing/gloves/ring/silver(src)
|
||||
new /obj/item/clothing/gloves/ring/silver(src)
|
||||
new /obj/item/clothing/gloves/ring/gold(src)
|
||||
new /obj/item/clothing/gloves/ring/gold(src)
|
||||
return
|
||||
new /obj/item/clothing/gloves/ring/gold(src)
|
||||
@@ -10,7 +10,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
if(prob(50))
|
||||
new /obj/item/weapon/storage/backpack/industrial(src)
|
||||
else
|
||||
@@ -32,7 +31,6 @@
|
||||
new /obj/item/device/flash(src)
|
||||
new /obj/item/taperoll/engineering(src)
|
||||
new /obj/item/clothing/head/beret/eng(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/engineering_electrical
|
||||
name = "electrical supplies locker"
|
||||
@@ -47,7 +45,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/gloves/color/yellow(src)
|
||||
new /obj/item/clothing/gloves/color/yellow(src)
|
||||
new /obj/item/weapon/storage/toolbox/electrical(src)
|
||||
@@ -60,7 +57,6 @@
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/clothing/head/beret/eng
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -77,14 +73,12 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/head/welding(src)
|
||||
new /obj/item/clothing/head/welding(src)
|
||||
new /obj/item/clothing/head/welding(src)
|
||||
new /obj/item/weapon/weldingtool/largetank(src)
|
||||
new /obj/item/weapon/weldingtool/largetank(src)
|
||||
new /obj/item/weapon/weldingtool/largetank(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -101,7 +95,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
if(prob(50))
|
||||
new /obj/item/weapon/storage/backpack/industrial(src)
|
||||
else
|
||||
@@ -116,7 +109,6 @@
|
||||
new /obj/item/weapon/cartridge/engineering(src)
|
||||
new /obj/item/taperoll/engineering(src)
|
||||
new /obj/item/clothing/head/beret/eng(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/atmos_personal
|
||||
name = "technician's locker"
|
||||
@@ -131,7 +123,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/device/radio/headset/headset_eng(src)
|
||||
new /obj/item/weapon/cartridge/atmos(src)
|
||||
new /obj/item/weapon/storage/toolbox/mechanical(src)
|
||||
@@ -147,6 +138,4 @@
|
||||
new /obj/item/weapon/tank/emergency_oxygen/engi(src)
|
||||
new /obj/item/weapon/watertank/atmos(src)
|
||||
new /obj/item/clothing/suit/fire/atmos(src)
|
||||
new /obj/item/clothing/head/hardhat/atmos(src)
|
||||
|
||||
return
|
||||
new /obj/item/clothing/head/hardhat/atmos(src)
|
||||
@@ -21,7 +21,6 @@
|
||||
var/list/bombs = search_contents_for(/obj/item/device/transfer_valve)
|
||||
if(!isemptylist(bombs)) // You're fucked.
|
||||
..(severity)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/freezer/kitchen
|
||||
name = "kitchen cabinet"
|
||||
@@ -29,8 +28,7 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
for(var/i = 0, i < 3, i++)
|
||||
for(var/i in 1 to 3)
|
||||
new /obj/item/weapon/reagent_containers/food/condiment/flour(src)
|
||||
new /obj/item/weapon/reagent_containers/food/condiment/rice(src)
|
||||
new /obj/item/weapon/reagent_containers/food/condiment/sugar(src)
|
||||
@@ -54,10 +52,8 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
for(var/i = 0, i < 4, i++)
|
||||
for(var/i in 1 to 4)
|
||||
new /obj/item/weapon/reagent_containers/food/snacks/meat/monkey(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -73,14 +69,11 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
for(var/i = 0, i < 5, i++)
|
||||
for(var/i in 1 to 5)
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/milk(src)
|
||||
for(var/i = 0, i < 5, i++)
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/soymilk(src)
|
||||
for(var/i = 0, i < 2, i++)
|
||||
for(var/i in 1 to 2)
|
||||
new /obj/item/weapon/storage/fancy/egg_box(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -97,9 +90,7 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
dispense_cash(6700,src)
|
||||
return
|
||||
dispense_cash(6700, src)
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -11,7 +11,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
switch(rand(1,2))
|
||||
if(1)
|
||||
new /obj/item/clothing/suit/apron(src)
|
||||
@@ -24,5 +23,4 @@
|
||||
new /obj/item/device/radio/headset/headset_service(src)
|
||||
new /obj/item/clothing/mask/bandana/botany(src)
|
||||
new /obj/item/weapon/minihoe(src)
|
||||
new /obj/item/weapon/hatchet(src)
|
||||
return
|
||||
new /obj/item/weapon/hatchet(src)
|
||||
@@ -12,7 +12,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/storage/box/autoinjectors(src)
|
||||
new /obj/item/weapon/storage/box/syringes(src)
|
||||
new /obj/item/weapon/reagent_containers/dropper(src)
|
||||
@@ -23,7 +22,6 @@
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/epinephrine(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/charcoal(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/charcoal(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -41,14 +39,12 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/tank/anesthetic(src)
|
||||
new /obj/item/weapon/tank/anesthetic(src)
|
||||
new /obj/item/weapon/tank/anesthetic(src)
|
||||
new /obj/item/clothing/mask/breath/medical(src)
|
||||
new /obj/item/clothing/mask/breath/medical(src)
|
||||
new /obj/item/clothing/mask/breath/medical(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -64,7 +60,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
if(prob(50))
|
||||
new /obj/item/weapon/storage/backpack/medic(src)
|
||||
else
|
||||
@@ -79,7 +74,6 @@
|
||||
new /obj/item/weapon/storage/belt/medical(src)
|
||||
new /obj/item/clothing/glasses/hud/health(src)
|
||||
new /obj/item/clothing/shoes/sandal/white(src)
|
||||
return
|
||||
|
||||
//Exam Room
|
||||
/obj/structure/closet/secure_closet/exam
|
||||
@@ -96,7 +90,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/storage/box/syringes(src)
|
||||
new /obj/item/weapon/reagent_containers/dropper(src)
|
||||
new /obj/item/weapon/storage/belt/medical(src)
|
||||
@@ -111,7 +104,6 @@
|
||||
new /obj/item/weapon/storage/firstaid/fire(src)
|
||||
new /obj/item/weapon/storage/firstaid/o2(src)
|
||||
new /obj/item/weapon/storage/firstaid/toxin(src)
|
||||
return
|
||||
|
||||
|
||||
// Psychiatrist's pill bottle
|
||||
@@ -138,14 +130,11 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/straight_jacket(src)
|
||||
new /obj/item/weapon/reagent_containers/syringe(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/ether(src)
|
||||
new /obj/item/weapon/storage/pill_bottle/psychiatrist(src)
|
||||
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/CMO
|
||||
name = "chief medical officer's locker"
|
||||
req_access = list(access_cmo)
|
||||
@@ -158,7 +147,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
if(prob(50))
|
||||
new /obj/item/weapon/storage/backpack/medic(src)
|
||||
else
|
||||
@@ -187,7 +175,6 @@
|
||||
new /obj/item/device/flash(src)
|
||||
new /obj/item/weapon/reagent_containers/hypospray/CMO(src)
|
||||
new /obj/item/organ/internal/cyberimp/eyes/hud/medical(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -198,12 +185,10 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/device/assembly/signaler(src)
|
||||
new /obj/item/device/radio/electropack(src)
|
||||
new /obj/item/device/radio/electropack(src)
|
||||
new /obj/item/device/radio/electropack(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -221,10 +206,8 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/storage/box/pillbottles(src)
|
||||
new /obj/item/weapon/storage/box/pillbottles(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/medical_wall
|
||||
name = "first aid closet"
|
||||
@@ -266,12 +249,10 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/space/eva/paramedic(src)
|
||||
new /obj/item/clothing/head/helmet/space/eva/paramedic(src)
|
||||
new /obj/item/clothing/head/helmet/space/eva/paramedic(src)
|
||||
new /obj/item/device/sensor_device(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/reagents
|
||||
name = "chemical storage closet"
|
||||
@@ -287,11 +268,9 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/phenol(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/ammonia(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/oil(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/acetone(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/acid(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/diethylamine(src)
|
||||
return
|
||||
|
||||
@@ -6,15 +6,13 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/personal/New()
|
||||
..()
|
||||
spawn(2)
|
||||
if(prob(50))
|
||||
new /obj/item/weapon/storage/backpack/duffel(src)
|
||||
if(prob(50))
|
||||
new /obj/item/weapon/storage/backpack(src)
|
||||
else
|
||||
new /obj/item/weapon/storage/backpack/satchel_norm(src)
|
||||
new /obj/item/device/radio/headset( src )
|
||||
return
|
||||
if(prob(50))
|
||||
new /obj/item/weapon/storage/backpack/duffel(src)
|
||||
if(prob(50))
|
||||
new /obj/item/weapon/storage/backpack(src)
|
||||
else
|
||||
new /obj/item/weapon/storage/backpack/satchel_norm(src)
|
||||
new /obj/item/device/radio/headset( src )
|
||||
|
||||
|
||||
/obj/structure/closet/secure_closet/personal/patient
|
||||
@@ -22,11 +20,9 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/personal/patient/New()
|
||||
..()
|
||||
spawn(4)
|
||||
contents = list()
|
||||
new /obj/item/clothing/under/color/white( src )
|
||||
new /obj/item/clothing/shoes/white( src )
|
||||
return
|
||||
contents.Cut()
|
||||
new /obj/item/clothing/under/color/white( src )
|
||||
new /obj/item/clothing/shoes/white( src )
|
||||
|
||||
|
||||
|
||||
@@ -52,11 +48,9 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/personal/cabinet/New()
|
||||
..()
|
||||
spawn(4)
|
||||
contents = list()
|
||||
new /obj/item/weapon/storage/backpack/satchel/withwallet( src )
|
||||
new /obj/item/device/radio/headset( src )
|
||||
return
|
||||
contents.Cut()
|
||||
new /obj/item/weapon/storage/backpack/satchel/withwallet( src )
|
||||
new /obj/item/device/radio/headset( src )
|
||||
|
||||
/obj/structure/closet/secure_closet/personal/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
|
||||
if (src.opened)
|
||||
@@ -91,4 +85,3 @@
|
||||
emag_act(user)
|
||||
else
|
||||
to_chat(user, "\red Access Denied")
|
||||
return
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/storage/backpack/science(src)
|
||||
new /obj/item/weapon/storage/backpack/satchel_tox(src)
|
||||
new /obj/item/clothing/under/rank/scientist(src)
|
||||
@@ -22,7 +21,6 @@
|
||||
new /obj/item/weapon/tank/air(src)
|
||||
new /obj/item/clothing/mask/gas(src)
|
||||
new /obj/item/clothing/shoes/sandal/white(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -38,7 +36,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/bio_suit/scientist(src)
|
||||
new /obj/item/clothing/head/bio_hood/scientist(src)
|
||||
new /obj/item/clothing/under/rank/research_director(src)
|
||||
@@ -52,7 +49,6 @@
|
||||
new /obj/item/clothing/suit/armor/reactive(src)
|
||||
new /obj/item/device/flash(src)
|
||||
new /obj/item/device/laser_pointer(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/research_reagents
|
||||
name = "research chemical storage closet"
|
||||
@@ -68,7 +64,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/morphine(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/morphine(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/morphine(src)
|
||||
@@ -82,5 +77,4 @@
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/oil(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/acetone(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/acid(src)
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/diethylamine(src)
|
||||
return
|
||||
new /obj/item/weapon/reagent_containers/glass/bottle/reagent/diethylamine(src)
|
||||
@@ -10,7 +10,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
if(prob(50))
|
||||
new /obj/item/weapon/storage/backpack/captain(src)
|
||||
else
|
||||
@@ -27,7 +26,6 @@
|
||||
new /obj/item/device/radio/headset/heads/captain/alt(src)
|
||||
new /obj/item/clothing/gloves/color/captain(src)
|
||||
new /obj/item/weapon/gun/energy/gun(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -43,7 +41,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/glasses/sunglasses(src)
|
||||
new /obj/item/clothing/head/hopcap(src)
|
||||
new /obj/item/weapon/cartridge/hop(src)
|
||||
@@ -55,7 +52,6 @@
|
||||
new /obj/item/device/flash(src)
|
||||
new /obj/item/weapon/mining_voucher(src)
|
||||
new /obj/item/clothing/accessory/petcollar(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/hop2
|
||||
name = "head of personnel's attire"
|
||||
@@ -69,7 +65,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/head_of_personnel(src)
|
||||
new /obj/item/clothing/under/dress/dress_hop(src)
|
||||
new /obj/item/clothing/under/dress/dress_hr(src)
|
||||
@@ -82,7 +77,6 @@
|
||||
new /obj/item/clothing/shoes/leather(src)
|
||||
new /obj/item/clothing/shoes/white(src)
|
||||
new /obj/item/clothing/under/rank/head_of_personnel_whimsy(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -98,7 +92,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
if(prob(50))
|
||||
new /obj/item/weapon/storage/backpack/security(src)
|
||||
else
|
||||
@@ -121,7 +114,6 @@
|
||||
new /obj/item/weapon/storage/belt/security/sec(src)
|
||||
new /obj/item/taperoll/police(src)
|
||||
new /obj/item/weapon/gun/energy/hos(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -138,7 +130,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
if(prob(50))
|
||||
new /obj/item/weapon/storage/backpack/security(src)
|
||||
else
|
||||
@@ -161,7 +152,6 @@
|
||||
new /obj/item/weapon/gun/energy/advtaser(src)
|
||||
new /obj/item/weapon/storage/belt/security/sec(src)
|
||||
new /obj/item/weapon/storage/box/holobadge(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -177,7 +167,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
if(prob(50))
|
||||
new /obj/item/weapon/storage/backpack/security(src)
|
||||
else
|
||||
@@ -194,7 +183,6 @@
|
||||
new /obj/item/clothing/head/helmet(src)
|
||||
new /obj/item/weapon/melee/baton/loaded(src)
|
||||
new /obj/item/taperoll/police(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/brigdoc
|
||||
name = "brig physician's locker"
|
||||
@@ -208,7 +196,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
if(prob(50))
|
||||
new /obj/item/weapon/storage/backpack/medic(src)
|
||||
else
|
||||
@@ -225,7 +212,6 @@
|
||||
new /obj/item/clothing/shoes/white(src)
|
||||
new /obj/item/device/radio/headset/headset_sec/alt(src)
|
||||
new /obj/item/clothing/shoes/sandal/white(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/blueshield
|
||||
name = "blueshield's locker"
|
||||
@@ -239,7 +225,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/storage/briefcase(src)
|
||||
new /obj/item/weapon/storage/firstaid/adv(src)
|
||||
new /obj/item/weapon/storage/belt/security/sec(src)
|
||||
@@ -257,7 +242,6 @@
|
||||
new /obj/item/clothing/accessory/holster(src)
|
||||
new /obj/item/clothing/accessory/blue(src)
|
||||
new /obj/item/clothing/shoes/jackboots/jacksandals(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/ntrep
|
||||
name = "\improper Nanotrasen Representative's locker"
|
||||
@@ -271,7 +255,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/storage/briefcase(src)
|
||||
new /obj/item/device/paicard(src)
|
||||
new /obj/item/device/flash(src)
|
||||
@@ -283,7 +266,6 @@
|
||||
new /obj/item/clothing/under/lawyer/female(src)
|
||||
new /obj/item/clothing/head/ntrep(src)
|
||||
new /obj/item/clothing/shoes/sandal/fancy(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/secure_closet/security/cargo
|
||||
@@ -292,7 +274,6 @@
|
||||
..()
|
||||
new /obj/item/clothing/accessory/armband/cargo(src)
|
||||
new /obj/item/device/encryptionkey/headset_cargo(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/security/engine
|
||||
|
||||
@@ -300,7 +281,6 @@
|
||||
..()
|
||||
new /obj/item/clothing/accessory/armband/engine(src)
|
||||
new /obj/item/device/encryptionkey/headset_eng(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/security/science
|
||||
|
||||
@@ -308,7 +288,6 @@
|
||||
..()
|
||||
new /obj/item/clothing/accessory/armband/science(src)
|
||||
new /obj/item/device/encryptionkey/headset_sci(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/security/med
|
||||
|
||||
@@ -316,7 +295,6 @@
|
||||
..()
|
||||
new /obj/item/clothing/accessory/armband/medgreen(src)
|
||||
new /obj/item/device/encryptionkey/headset_med(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/secure_closet/detective
|
||||
@@ -331,7 +309,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/det(src)
|
||||
new /obj/item/clothing/suit/storage/det_suit(src)
|
||||
new /obj/item/clothing/suit/storage/forensics/blue(src)
|
||||
@@ -351,7 +328,6 @@
|
||||
new /obj/item/clothing/accessory/holster/armpit(src)
|
||||
new /obj/item/clothing/glasses/sunglasses/yeah(src)
|
||||
new /obj/item/device/flashlight/seclite(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/detective/update_icon()
|
||||
if(broken)
|
||||
@@ -372,10 +348,8 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/reagent_containers/ld50_syringe/lethal(src)
|
||||
new /obj/item/weapon/reagent_containers/ld50_syringe/lethal(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -386,9 +360,9 @@
|
||||
var/id = null
|
||||
|
||||
New()
|
||||
..()
|
||||
new /obj/item/clothing/under/color/orange/prison( src )
|
||||
new /obj/item/clothing/shoes/orange( src )
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -398,7 +372,6 @@
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
new /obj/item/weapon/paper/Court (src)
|
||||
new /obj/item/weapon/paper/Court (src)
|
||||
@@ -407,7 +380,6 @@
|
||||
new /obj/item/clothing/suit/judgerobe (src)
|
||||
new /obj/item/clothing/head/powdered_wig (src)
|
||||
new /obj/item/weapon/storage/briefcase(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/wall
|
||||
name = "wall locker"
|
||||
|
||||
@@ -108,8 +108,6 @@
|
||||
health -= Proj.damage
|
||||
check_health()
|
||||
|
||||
return
|
||||
|
||||
/obj/structure/closet/statue/attack_animal(mob/living/simple_animal/user as mob)
|
||||
if(user.environment_smash)
|
||||
for(var/mob/M in src)
|
||||
|
||||
@@ -11,7 +11,6 @@
|
||||
|
||||
/obj/structure/closet/syndicate/personal/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/syndicate(src)
|
||||
new /obj/item/clothing/shoes/black(src)
|
||||
new /obj/item/ammo_box/magazine/m10mm(src)
|
||||
@@ -24,7 +23,6 @@
|
||||
|
||||
/obj/structure/closet/syndicate/suits/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/head/helmet/space/rig/syndi(src)
|
||||
new /obj/item/clothing/mask/gas/syndicate(src)
|
||||
new /obj/item/clothing/suit/space/rig/syndi(src)
|
||||
@@ -35,7 +33,6 @@
|
||||
|
||||
/obj/structure/closet/syndicate/nuclear/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/ammo_box/magazine/m10mm(src)
|
||||
new /obj/item/ammo_box/magazine/m10mm(src)
|
||||
new /obj/item/ammo_box/magazine/m10mm(src)
|
||||
@@ -55,7 +52,6 @@
|
||||
new /obj/item/weapon/pinpointer/nukeop(src)
|
||||
new /obj/item/weapon/pinpointer/nukeop(src)
|
||||
new /obj/item/device/pda/syndicate(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/syndicate/resources/
|
||||
desc = "An old, dusty locker."
|
||||
@@ -67,9 +63,6 @@
|
||||
var/rare_min = 5 //Minimum HONK of HONK in the stack HONK HONK rare minerals
|
||||
var/rare_max = 20 //Maximum HONK HONK HONK in the HONK for HONK rare HONK
|
||||
|
||||
|
||||
sleep(2)
|
||||
|
||||
var/pickednum = rand(1, 50)
|
||||
|
||||
//Sad trombone
|
||||
@@ -114,12 +107,11 @@
|
||||
if(pickednum == 50)
|
||||
new /obj/item/weapon/tank/jetpack/carbondioxide(src)
|
||||
|
||||
return
|
||||
|
||||
/obj/structure/closet/syndicate/resources/everything
|
||||
desc = "It's an emergency storage closet for repairs."
|
||||
|
||||
New()
|
||||
..()
|
||||
var/list/resources = list(
|
||||
/obj/item/stack/sheet/metal,
|
||||
/obj/item/stack/sheet/glass,
|
||||
@@ -133,11 +125,7 @@
|
||||
/obj/item/stack/rods
|
||||
)
|
||||
|
||||
sleep(2)
|
||||
|
||||
for(var/i = 0, i<2, i++)
|
||||
for(var/i in 1 to 2)
|
||||
for(var/res in resources)
|
||||
var/obj/item/stack/R = new res(src)
|
||||
R.amount = R.max_amount
|
||||
|
||||
return
|
||||
R.amount = R.max_amount
|
||||
@@ -80,8 +80,7 @@
|
||||
|
||||
/obj/structure/closet/firecloset/full/New()
|
||||
..()
|
||||
sleep(4)
|
||||
contents = list()
|
||||
contents.Cut()
|
||||
|
||||
new /obj/item/clothing/suit/fire/firefighter(src)
|
||||
new /obj/item/clothing/mask/gas(src)
|
||||
@@ -167,7 +166,6 @@
|
||||
|
||||
/obj/structure/closet/bombcloset/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/bomb_suit( src )
|
||||
new /obj/item/clothing/under/color/black( src )
|
||||
new /obj/item/clothing/shoes/black( src )
|
||||
@@ -183,7 +181,6 @@
|
||||
|
||||
/obj/structure/closet/bombclosetsecurity/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/bomb_suit/security( src )
|
||||
new /obj/item/clothing/under/rank/security( src )
|
||||
new /obj/item/clothing/shoes/brown( src )
|
||||
@@ -204,7 +201,6 @@
|
||||
|
||||
/obj/structure/closet/hydrant/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/fire/firefighter(src)
|
||||
new /obj/item/clothing/mask/gas(src)
|
||||
new /obj/item/device/flashlight(src)
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/generic/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/color/blue(src)
|
||||
new /obj/item/clothing/under/color/blue(src)
|
||||
new /obj/item/clothing/under/color/blue(src)
|
||||
@@ -19,7 +18,6 @@
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/wardrobe/red
|
||||
@@ -29,7 +27,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/red/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/storage/backpack/duffel/security(src)
|
||||
new /obj/item/weapon/storage/backpack/duffel/security(src)
|
||||
new /obj/item/clothing/mask/bandana/red(src)
|
||||
@@ -54,8 +51,6 @@
|
||||
new /obj/item/clothing/head/beret/sec(src)
|
||||
new /obj/item/clothing/head/beret/sec(src)
|
||||
|
||||
return
|
||||
|
||||
/obj/structure/closet/redcorp
|
||||
name = "corporate security wardrobe"
|
||||
icon_state = "red"
|
||||
@@ -63,7 +58,6 @@
|
||||
|
||||
/obj/structure/closet/redcorp/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/security/corp(src)
|
||||
new /obj/item/clothing/under/rank/security/corp(src)
|
||||
new /obj/item/clothing/under/rank/security/corp(src)
|
||||
@@ -78,14 +72,12 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/pink/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/color/pink(src)
|
||||
new /obj/item/clothing/under/color/pink(src)
|
||||
new /obj/item/clothing/under/color/pink(src)
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
new /obj/item/clothing/shoes/brown(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/wardrobe/black
|
||||
name = "black wardrobe"
|
||||
@@ -94,7 +86,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/black/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/color/black(src)
|
||||
new /obj/item/clothing/under/color/black(src)
|
||||
new /obj/item/clothing/under/color/black(src)
|
||||
@@ -109,7 +100,6 @@
|
||||
new /obj/item/clothing/head/soft/black(src)
|
||||
new /obj/item/clothing/head/soft/black(src)
|
||||
new /obj/item/clothing/head/soft/black(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/wardrobe/green
|
||||
name = "green wardrobe"
|
||||
@@ -118,14 +108,12 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/green/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/color/green(src)
|
||||
new /obj/item/clothing/under/color/green(src)
|
||||
new /obj/item/clothing/under/color/green(src)
|
||||
new /obj/item/clothing/shoes/black(src)
|
||||
new /obj/item/clothing/shoes/black(src)
|
||||
new /obj/item/clothing/shoes/black(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/wardrobe/xenos
|
||||
name = "xenos wardrobe"
|
||||
@@ -134,13 +122,11 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/xenos/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/suit/unathi/mantle(src)
|
||||
new /obj/item/clothing/suit/unathi/robe(src)
|
||||
new /obj/item/clothing/shoes/sandal(src)
|
||||
new /obj/item/clothing/shoes/sandal(src)
|
||||
new /obj/item/clothing/shoes/sandal(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/wardrobe/orange
|
||||
@@ -151,14 +137,12 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/orange/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/color/orange/prison(src)
|
||||
new /obj/item/clothing/under/color/orange/prison(src)
|
||||
new /obj/item/clothing/under/color/orange/prison(src)
|
||||
new /obj/item/clothing/shoes/orange(src)
|
||||
new /obj/item/clothing/shoes/orange(src)
|
||||
new /obj/item/clothing/shoes/orange(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/wardrobe/yellow
|
||||
@@ -168,14 +152,12 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/yellow/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/color/yellow(src)
|
||||
new /obj/item/clothing/under/color/yellow(src)
|
||||
new /obj/item/clothing/under/color/yellow(src)
|
||||
new /obj/item/clothing/shoes/orange(src)
|
||||
new /obj/item/clothing/shoes/orange(src)
|
||||
new /obj/item/clothing/shoes/orange(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/wardrobe/atmospherics_yellow
|
||||
@@ -185,7 +167,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/atmospherics_yellow/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/atmospheric_technician(src)
|
||||
new /obj/item/clothing/under/rank/atmospheric_technician(src)
|
||||
new /obj/item/clothing/under/rank/atmospheric_technician(src)
|
||||
@@ -198,7 +179,6 @@
|
||||
new /obj/item/clothing/head/beret/atmos(src)
|
||||
new /obj/item/clothing/head/beret/atmos(src)
|
||||
new /obj/item/clothing/head/beret/atmos(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -209,7 +189,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/engineering_yellow/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/engineer(src)
|
||||
new /obj/item/clothing/under/rank/engineer(src)
|
||||
new /obj/item/clothing/under/rank/engineer(src)
|
||||
@@ -222,7 +201,6 @@
|
||||
new /obj/item/clothing/head/beret/eng(src)
|
||||
new /obj/item/clothing/head/beret/eng(src)
|
||||
new /obj/item/clothing/head/beret/eng(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/wardrobe/white
|
||||
@@ -232,14 +210,12 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/white/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/color/white(src)
|
||||
new /obj/item/clothing/under/color/white(src)
|
||||
new /obj/item/clothing/under/color/white(src)
|
||||
new /obj/item/clothing/shoes/white(src)
|
||||
new /obj/item/clothing/shoes/white(src)
|
||||
new /obj/item/clothing/shoes/white(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/wardrobe/medical_white
|
||||
name = "medical doctor's wardrobe"
|
||||
@@ -248,7 +224,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/medical_white/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/nursesuit (src)
|
||||
new /obj/item/clothing/head/nursehat (src)
|
||||
new /obj/item/clothing/under/rank/nurse(src)
|
||||
@@ -265,7 +240,6 @@
|
||||
new /obj/item/clothing/shoes/black(src)
|
||||
new /obj/item/clothing/shoes/black(src)
|
||||
new /obj/item/clothing/shoes/black(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/wardrobe/pjs
|
||||
name = "Pajama wardrobe"
|
||||
@@ -274,7 +248,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/pjs/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/pj/red(src)
|
||||
new /obj/item/clothing/under/pj/red(src)
|
||||
new /obj/item/clothing/under/pj/blue(src)
|
||||
@@ -283,7 +256,6 @@
|
||||
new /obj/item/clothing/shoes/white(src)
|
||||
new /obj/item/clothing/shoes/slippers(src)
|
||||
new /obj/item/clothing/shoes/slippers(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/wardrobe/toxins_white
|
||||
@@ -293,7 +265,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/toxins_white/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/scientist(src)
|
||||
new /obj/item/clothing/under/rank/scientist(src)
|
||||
new /obj/item/clothing/under/rank/scientist(src)
|
||||
@@ -306,7 +277,6 @@
|
||||
new /obj/item/clothing/shoes/slippers
|
||||
new /obj/item/clothing/shoes/slippers
|
||||
new /obj/item/clothing/shoes/slippers
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/wardrobe/robotics_black
|
||||
@@ -316,7 +286,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/robotics_black/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/glasses/hud/diagnostic(src)
|
||||
new /obj/item/clothing/glasses/hud/diagnostic(src)
|
||||
new /obj/item/clothing/under/rank/roboticist(src)
|
||||
@@ -329,7 +298,6 @@
|
||||
new /obj/item/clothing/gloves/fingerless(src)
|
||||
new /obj/item/clothing/head/soft/black(src)
|
||||
new /obj/item/clothing/head/soft/black(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/wardrobe/chemistry_white
|
||||
@@ -339,7 +307,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/chemistry_white/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/chemist(src)
|
||||
new /obj/item/clothing/under/rank/chemist(src)
|
||||
new /obj/item/clothing/shoes/white(src)
|
||||
@@ -354,7 +321,6 @@
|
||||
new /obj/item/weapon/storage/bag/chemistry(src)
|
||||
new /obj/item/clothing/mask/gas(src)
|
||||
new /obj/item/clothing/mask/gas(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/wardrobe/genetics_white
|
||||
@@ -364,7 +330,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/genetics_white/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/geneticist(src)
|
||||
new /obj/item/clothing/under/rank/geneticist(src)
|
||||
new /obj/item/clothing/shoes/white(src)
|
||||
@@ -375,7 +340,6 @@
|
||||
new /obj/item/weapon/storage/backpack/genetics(src)
|
||||
new /obj/item/weapon/storage/backpack/satchel_gen(src)
|
||||
new /obj/item/weapon/storage/backpack/satchel_gen(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/wardrobe/virology_white
|
||||
@@ -385,7 +349,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/virology_white/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/virologist(src)
|
||||
new /obj/item/clothing/under/rank/virologist(src)
|
||||
new /obj/item/clothing/shoes/white(src)
|
||||
@@ -398,7 +361,6 @@
|
||||
new /obj/item/weapon/storage/backpack/virology(src)
|
||||
new /obj/item/weapon/storage/backpack/satchel_vir(src)
|
||||
new /obj/item/weapon/storage/backpack/satchel_vir(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/wardrobe/medic_white
|
||||
@@ -408,7 +370,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/medic_white/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/rank/medical(src)
|
||||
new /obj/item/clothing/under/rank/medical(src)
|
||||
new /obj/item/clothing/under/rank/medical/blue(src)
|
||||
@@ -420,7 +381,6 @@
|
||||
new /obj/item/clothing/suit/storage/labcoat(src)
|
||||
new /obj/item/clothing/mask/surgical(src)
|
||||
new /obj/item/clothing/mask/surgical(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/wardrobe/grey
|
||||
@@ -430,7 +390,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/grey/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/color/grey(src)
|
||||
new /obj/item/clothing/under/color/grey(src)
|
||||
new /obj/item/clothing/under/color/grey(src)
|
||||
@@ -446,7 +405,6 @@
|
||||
new /obj/item/clothing/under/assistantformal(src)
|
||||
if(prob(40))
|
||||
new /obj/item/clothing/under/assistantformal(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/wardrobe/mixed
|
||||
@@ -456,7 +414,6 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/mixed/New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/under/color/blue(src)
|
||||
new /obj/item/clothing/under/color/yellow(src)
|
||||
new /obj/item/clothing/under/color/green(src)
|
||||
@@ -471,4 +428,3 @@
|
||||
new /obj/item/clothing/shoes/orange(src)
|
||||
new /obj/item/clothing/shoes/purple(src)
|
||||
new /obj/item/clothing/shoes/leather(src)
|
||||
return
|
||||
|
||||
@@ -212,7 +212,6 @@
|
||||
return
|
||||
src.add_fingerprint(user)
|
||||
src.toggle(user)
|
||||
return
|
||||
|
||||
// Called when a crate is delivered by MULE at a location, for notifying purposes
|
||||
/obj/structure/closet/crate/proc/notifyRecipient(var/destination)
|
||||
@@ -317,7 +316,6 @@
|
||||
src.broken = 1
|
||||
update_icon()
|
||||
to_chat(user, "<span class='notice'>You unlock \the [src].</span>")
|
||||
return
|
||||
|
||||
/obj/structure/closet/crate/secure/emp_act(severity)
|
||||
for(var/obj/O in src)
|
||||
@@ -513,7 +511,6 @@
|
||||
if(!M.anchored)
|
||||
M.forceMove(src)
|
||||
break
|
||||
return
|
||||
|
||||
/obj/structure/closet/crate/secure/large
|
||||
name = "large crate"
|
||||
@@ -541,7 +538,6 @@
|
||||
if(!M.anchored)
|
||||
M.forceMove(src)
|
||||
break
|
||||
return
|
||||
|
||||
//fluff variant
|
||||
/obj/structure/closet/crate/secure/large/reinforced
|
||||
|
||||
@@ -274,3 +274,12 @@
|
||||
mineral = "metal"
|
||||
walltype = "iron"
|
||||
canSmoothWith = list(/obj/structure/falsewall/iron, /turf/simulated/wall/mineral/iron)
|
||||
|
||||
/obj/structure/falsewall/abductor
|
||||
name = "alien wall"
|
||||
desc = "A wall with alien alloy plating."
|
||||
icon = 'icons/turf/walls/abductor_wall.dmi'
|
||||
icon_state = "abductor"
|
||||
mineral = "abductor"
|
||||
walltype = "abductor"
|
||||
canSmoothWith = list(/obj/structure/falsewall/abductor, /turf/simulated/wall/mineral/abductor)
|
||||
@@ -89,12 +89,18 @@
|
||||
health = 160
|
||||
reinf = 1
|
||||
|
||||
New()
|
||||
..()
|
||||
color = null
|
||||
/obj/structure/window/full/shuttle/New()
|
||||
..()
|
||||
color = null
|
||||
|
||||
update_icon() //icon_state has to be set manually
|
||||
return
|
||||
/obj/structure/window/full/shuttle/update_icon() //icon_state has to be set manually
|
||||
return
|
||||
|
||||
/obj/structure/window/full/shuttle/shuttleRotate(rotation)
|
||||
..()
|
||||
var/matrix/M = transform
|
||||
M.Turn(rotation)
|
||||
transform = M
|
||||
|
||||
/obj/structure/window/full/shuttle/dark
|
||||
icon = 'icons/turf/shuttle.dmi'
|
||||
|
||||
@@ -10,13 +10,6 @@
|
||||
var/planchette = "A"
|
||||
var/lastuser = null
|
||||
|
||||
/obj/structure/spirit_board/proc/announce_to_ghosts()
|
||||
for(var/mob/dead/observer/O in player_list)
|
||||
if(O.client)
|
||||
var/area/A = get_area(src)
|
||||
if(A)
|
||||
to_chat(O, "\blue <b>Someone has begun playing with a [src.name] in [A.name]!. (<a href='?src=\ref[O];jump=\ref[src]'>Teleport</a>)</b>")
|
||||
|
||||
/obj/structure/spirit_board/examine(mob/user)
|
||||
..(user)
|
||||
to_chat(user, "[initial(desc)] The planchette is sitting at \"[planchette]\".")
|
||||
@@ -37,7 +30,7 @@
|
||||
|
||||
if(virgin)
|
||||
virgin = 0
|
||||
announce_to_ghosts()
|
||||
notify_ghosts("Someone has begun playing with a [src.name] in [get_area(src)]!", source = src)
|
||||
|
||||
planchette = input("Choose the letter.", "Seance!") in list("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z")
|
||||
add_logs(M, src, "picked a letter on", addition="which was \"[planchette]\".")
|
||||
|
||||
Reference in New Issue
Block a user