mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-13 11:43:31 +00:00
Ports Bay's outfit system
This commit is contained in:
3
code/datums/outfits/_defines.dm
Normal file
3
code/datums/outfits/_defines.dm
Normal file
@@ -0,0 +1,3 @@
|
||||
#define OUTFIT_HAS_JETPACK 1
|
||||
#define OUTFIT_HAS_BACKPACK 2
|
||||
#define OUTFIT_EXTENDED_SURVIVAL 4
|
||||
61
code/datums/outfits/horror_killers.dm
Normal file
61
code/datums/outfits/horror_killers.dm
Normal file
@@ -0,0 +1,61 @@
|
||||
/decl/hierarchy/outfit/tunnel_clown
|
||||
name = "Tunnel clown"
|
||||
uniform = /obj/item/clothing/under/rank/clown
|
||||
shoes = /obj/item/clothing/shoes/clown_shoes
|
||||
gloves = /obj/item/clothing/gloves/black
|
||||
mask = /obj/item/clothing/mask/gas/clown_hat
|
||||
head = /obj/item/clothing/head/chaplain_hood
|
||||
l_ear = /obj/item/device/radio/headset
|
||||
glasses = /obj/item/clothing/glasses/thermal/plain/monocle
|
||||
suit = /obj/item/clothing/suit/storage/hooded/chaplain_hoodie
|
||||
r_pocket = /obj/item/weapon/bikehorn
|
||||
r_hand = /obj/item/weapon/material/twohanded/fireaxe
|
||||
|
||||
id_slot = slot_wear_id
|
||||
id_type = /obj/item/weapon/card/id/syndicate/station_access
|
||||
id_pda_assignment = "Tunnel Clown!"
|
||||
|
||||
/decl/hierarchy/outfit/masked_killer
|
||||
name = "Masked killer"
|
||||
uniform = /obj/item/clothing/under/overalls
|
||||
shoes = /obj/item/clothing/shoes/white
|
||||
gloves = /obj/item/clothing/gloves/sterile/latex
|
||||
mask = /obj/item/clothing/mask/surgical
|
||||
head = /obj/item/clothing/head/welding
|
||||
l_ear = /obj/item/device/radio/headset
|
||||
glasses = /obj/item/clothing/glasses/thermal/plain/monocle
|
||||
suit = /obj/item/clothing/suit/storage/apron
|
||||
l_pocket = /obj/item/weapon/material/hatchet/tacknife
|
||||
r_pocket = /obj/item/weapon/surgical/scalpel
|
||||
r_hand = /obj/item/weapon/material/twohanded/fireaxe
|
||||
|
||||
/decl/hierarchy/outfit/masked_killer/post_equip(var/mob/living/carbon/human/H)
|
||||
var/victim = get_mannequin(H.ckey)
|
||||
for(var/obj/item/carried_item in H.get_equipped_items(TRUE))
|
||||
carried_item.add_blood(victim) //Oh yes, there will be blood.. just not blood from the killer because that's odd
|
||||
|
||||
/decl/hierarchy/outfit/professional
|
||||
name = "Professional"
|
||||
uniform = /obj/item/clothing/under/suit_jacket{ starting_accessories=list(/obj/item/clothing/accessory/wcoat) }
|
||||
shoes = /obj/item/clothing/shoes/black
|
||||
gloves = /obj/item/clothing/gloves/black
|
||||
l_ear = /obj/item/device/radio/headset
|
||||
glasses = /obj/item/clothing/glasses/sunglasses
|
||||
l_pocket = /obj/item/weapon/melee/energy/sword
|
||||
|
||||
id_slot = slot_wear_id
|
||||
id_type = /obj/item/weapon/card/id/syndicate/station_access
|
||||
pda_slot = slot_belt
|
||||
pda_type = /obj/item/device/pda/heads
|
||||
|
||||
/decl/hierarchy/outfit/professional/post_equip(var/mob/living/carbon/human/H)
|
||||
var/obj/item/weapon/storage/secure/briefcase/sec_briefcase = new(H)
|
||||
for(var/obj/item/briefcase_item in sec_briefcase)
|
||||
qdel(briefcase_item)
|
||||
for(var/i=3, i>0, i--)
|
||||
sec_briefcase.contents += new /obj/item/weapon/spacecash/c1000
|
||||
sec_briefcase.contents += new /obj/item/weapon/gun/energy/crossbow
|
||||
sec_briefcase.contents += new /obj/item/weapon/gun/projectile/revolver/mateba
|
||||
sec_briefcase.contents += new /obj/item/ammo_magazine/s357
|
||||
sec_briefcase.contents += new /obj/item/weapon/plastique
|
||||
H.equip_to_slot_or_del(sec_briefcase, slot_l_hand)
|
||||
1
code/datums/outfits/jobs/_defines.dm
Normal file
1
code/datums/outfits/jobs/_defines.dm
Normal file
@@ -0,0 +1 @@
|
||||
#define OUTFIT_JOB_NAME(job_name) ("Job - " + job_name)
|
||||
28
code/datums/outfits/jobs/cargo.dm
Normal file
28
code/datums/outfits/jobs/cargo.dm
Normal file
@@ -0,0 +1,28 @@
|
||||
/decl/hierarchy/outfit/job/cargo
|
||||
l_ear = /obj/item/device/radio/headset/headset_cargo
|
||||
hierarchy_type = /decl/hierarchy/outfit/job/cargo
|
||||
|
||||
/decl/hierarchy/outfit/job/cargo/qm
|
||||
name = OUTFIT_JOB_NAME("Cargo")
|
||||
uniform = /obj/item/clothing/under/rank/cargo
|
||||
shoes = /obj/item/clothing/shoes/brown
|
||||
glasses = /obj/item/clothing/glasses/sunglasses
|
||||
l_hand = /obj/item/weapon/clipboard
|
||||
id_type = /obj/item/weapon/card/id/cargo/head
|
||||
pda_type = /obj/item/device/pda/quartermaster
|
||||
|
||||
/decl/hierarchy/outfit/job/cargo/cargo_tech
|
||||
name = OUTFIT_JOB_NAME("Cargo technician")
|
||||
uniform = /obj/item/clothing/under/rank/cargotech
|
||||
id_type = /obj/item/weapon/card/id/cargo/cargo_tech
|
||||
pda_type = /obj/item/device/pda/cargo
|
||||
|
||||
/decl/hierarchy/outfit/job/cargo/mining
|
||||
name = OUTFIT_JOB_NAME("Shaft miner")
|
||||
uniform = /obj/item/clothing/under/rank/miner
|
||||
backpack = /obj/item/weapon/storage/backpack/industrial
|
||||
satchel_one = /obj/item/weapon/storage/backpack/satchel/eng
|
||||
id_type = /obj/item/weapon/card/id/cargo/mining
|
||||
pda_type = /obj/item/device/pda/shaftminer
|
||||
backpack_contents = list(/obj/item/weapon/crowbar = 1, /obj/item/weapon/storage/bag/ore = 1)
|
||||
flags = OUTFIT_HAS_BACKPACK|OUTFIT_EXTENDED_SURVIVAL
|
||||
63
code/datums/outfits/jobs/civilian.dm
Normal file
63
code/datums/outfits/jobs/civilian.dm
Normal file
@@ -0,0 +1,63 @@
|
||||
/decl/hierarchy/outfit/job/assistant
|
||||
name = OUTFIT_JOB_NAME("Assistant")
|
||||
|
||||
/decl/hierarchy/outfit/job/service
|
||||
l_ear = /obj/item/device/radio/headset/headset_service
|
||||
hierarchy_type = /decl/hierarchy/outfit/job/service
|
||||
|
||||
/decl/hierarchy/outfit/job/service/bartender
|
||||
name = OUTFIT_JOB_NAME("Bartender")
|
||||
uniform = /obj/item/clothing/under/rank/bartender
|
||||
id_type = /obj/item/weapon/card/id/civilian/bartender
|
||||
pda_type = /obj/item/device/pda/bar
|
||||
|
||||
/decl/hierarchy/outfit/job/service/chef
|
||||
name = OUTFIT_JOB_NAME("Chef")
|
||||
uniform = /obj/item/clothing/under/rank/chef
|
||||
suit = /obj/item/clothing/suit/chef
|
||||
head = /obj/item/clothing/head/chefhat
|
||||
id_type = /obj/item/weapon/card/id/civilian/chef
|
||||
pda_type = /obj/item/device/pda/chef
|
||||
|
||||
/decl/hierarchy/outfit/job/service/gardener
|
||||
name = OUTFIT_JOB_NAME("Gardener")
|
||||
uniform = /obj/item/clothing/under/rank/hydroponics
|
||||
suit = /obj/item/clothing/suit/storage/apron
|
||||
gloves = /obj/item/clothing/gloves/botanic_leather
|
||||
r_pocket = /obj/item/device/analyzer/plant_analyzer
|
||||
backpack = /obj/item/weapon/storage/backpack/hydroponics
|
||||
satchel_one = /obj/item/weapon/storage/backpack/satchel/hyd
|
||||
id_type = /obj/item/weapon/card/id/civilian/botanist
|
||||
pda_type = /obj/item/device/pda/botanist
|
||||
messenger_bag = /obj/item/weapon/storage/backpack/messenger/hyd
|
||||
|
||||
/decl/hierarchy/outfit/job/service/janitor
|
||||
name = OUTFIT_JOB_NAME("Janitor")
|
||||
uniform = /obj/item/clothing/under/rank/janitor
|
||||
id_type = /obj/item/weapon/card/id/civilian/janitor
|
||||
pda_type = /obj/item/device/pda/janitor
|
||||
|
||||
/decl/hierarchy/outfit/job/librarian
|
||||
name = OUTFIT_JOB_NAME("Librarian")
|
||||
uniform = /obj/item/clothing/under/suit_jacket/red
|
||||
l_hand = /obj/item/weapon/barcodescanner
|
||||
id_type = /obj/item/weapon/card/id/civilian/librarian
|
||||
pda_type = /obj/item/device/pda/librarian
|
||||
|
||||
/decl/hierarchy/outfit/job/internal_affairs_agent
|
||||
name = OUTFIT_JOB_NAME("Internal affairs agent")
|
||||
l_ear = /obj/item/device/radio/headset/ia
|
||||
uniform = /obj/item/clothing/under/rank/internalaffairs
|
||||
suit = /obj/item/clothing/suit/storage/toggle/internalaffairs
|
||||
shoes = /obj/item/clothing/shoes/brown
|
||||
glasses = /obj/item/clothing/glasses/sunglasses/big
|
||||
l_hand = /obj/item/weapon/storage/briefcase
|
||||
id_type = /obj/item/weapon/card/id/civilian/internal_affairs_agent
|
||||
pda_type = /obj/item/device/pda/lawyer
|
||||
|
||||
/decl/hierarchy/outfit/job/chaplain
|
||||
name = OUTFIT_JOB_NAME("Chaplain")
|
||||
uniform = /obj/item/clothing/under/rank/chaplain
|
||||
l_hand = /obj/item/weapon/storage/bible
|
||||
id_type = /obj/item/weapon/card/id/civilian/chaplain
|
||||
pda_type = /obj/item/device/pda/chaplain
|
||||
35
code/datums/outfits/jobs/command.dm
Normal file
35
code/datums/outfits/jobs/command.dm
Normal file
@@ -0,0 +1,35 @@
|
||||
/decl/hierarchy/outfit/job/captain
|
||||
name = OUTFIT_JOB_NAME("Captain")
|
||||
head = /obj/item/clothing/head/caphat
|
||||
glasses = /obj/item/clothing/glasses/sunglasses
|
||||
uniform = /obj/item/clothing/under/rank/captain
|
||||
l_ear = /obj/item/device/radio/headset/heads/captain
|
||||
shoes = /obj/item/clothing/shoes/brown
|
||||
backpack = /obj/item/weapon/storage/backpack/captain
|
||||
satchel_one = /obj/item/weapon/storage/backpack/satchel/cap
|
||||
id_type = /obj/item/weapon/card/id/gold/captain
|
||||
pda_type = /obj/item/device/pda/captain
|
||||
backpack_contents = list(/obj/item/weapon/storage/box/ids = 1)
|
||||
messenger_bag = /obj/item/weapon/storage/backpack/messenger/com
|
||||
|
||||
/decl/hierarchy/outfit/job/captain/post_equip(var/mob/living/carbon/human/H)
|
||||
..()
|
||||
if(H.age>49)
|
||||
// Since we can have something other than the default uniform at this
|
||||
// point, check if we can actually attach the medal
|
||||
var/obj/item/clothing/uniform = H.w_uniform
|
||||
if(uniform)
|
||||
var/obj/item/clothing/accessory/medal/gold/captain/medal = new()
|
||||
if(uniform.can_attach_accessory(medal))
|
||||
uniform.attach_accessory(null, medal)
|
||||
else
|
||||
qdel(medal)
|
||||
|
||||
/decl/hierarchy/outfit/job/hop
|
||||
name = OUTFIT_JOB_NAME("Head of Personnel")
|
||||
uniform = /obj/item/clothing/under/rank/head_of_personnel
|
||||
l_ear = /obj/item/device/radio/headset/heads/hop
|
||||
shoes = /obj/item/clothing/shoes/brown
|
||||
id_type = /obj/item/weapon/card/id/silver/hop
|
||||
pda_type = /obj/item/device/pda/heads/hop
|
||||
backpack_contents = list(/obj/item/weapon/storage/box/ids = 1)
|
||||
34
code/datums/outfits/jobs/engineering.dm
Normal file
34
code/datums/outfits/jobs/engineering.dm
Normal file
@@ -0,0 +1,34 @@
|
||||
/decl/hierarchy/outfit/job/engineering
|
||||
hierarchy_type = /decl/hierarchy/outfit/job/engineering
|
||||
belt = /obj/item/weapon/storage/belt/utility/full
|
||||
l_ear = /obj/item/device/radio/headset/headset_eng
|
||||
shoes = /obj/item/clothing/shoes/boots/workboots
|
||||
backpack = /obj/item/weapon/storage/backpack/industrial
|
||||
satchel_one = /obj/item/weapon/storage/backpack/satchel/eng
|
||||
messenger_bag = /obj/item/weapon/storage/backpack/messenger/engi
|
||||
pda_slot = slot_l_store
|
||||
flags = OUTFIT_HAS_BACKPACK|OUTFIT_EXTENDED_SURVIVAL
|
||||
|
||||
/decl/hierarchy/outfit/job/engineering/chief_engineer
|
||||
name = OUTFIT_JOB_NAME("Chief engineer")
|
||||
head = /obj/item/clothing/head/hardhat/white
|
||||
uniform = /obj/item/clothing/under/rank/chief_engineer
|
||||
l_ear = /obj/item/device/radio/headset/heads/ce
|
||||
gloves = /obj/item/clothing/gloves/black
|
||||
id_type = /obj/item/weapon/card/id/engineering/head
|
||||
pda_type = /obj/item/device/pda/heads/ce
|
||||
|
||||
/decl/hierarchy/outfit/job/engineering/engineer
|
||||
name = OUTFIT_JOB_NAME("Engineer")
|
||||
head = /obj/item/clothing/head/hardhat
|
||||
uniform = /obj/item/clothing/under/rank/engineer
|
||||
r_pocket = /obj/item/device/t_scanner
|
||||
id_type = /obj/item/weapon/card/id/engineering/engineer
|
||||
pda_type = /obj/item/device/pda/engineering
|
||||
|
||||
/decl/hierarchy/outfit/job/engineering/atmos
|
||||
name = OUTFIT_JOB_NAME("Atmospheric technician")
|
||||
uniform = /obj/item/clothing/under/rank/atmospheric_technician
|
||||
belt = /obj/item/weapon/storage/belt/utility/atmostech
|
||||
id_type = /obj/item/weapon/card/id/engineering/atmos
|
||||
pda_type = /obj/item/device/pda/atmos
|
||||
21
code/datums/outfits/jobs/job.dm
Normal file
21
code/datums/outfits/jobs/job.dm
Normal file
@@ -0,0 +1,21 @@
|
||||
/decl/hierarchy/outfit/job
|
||||
name = "Standard Gear"
|
||||
hierarchy_type = /decl/hierarchy/outfit/job
|
||||
|
||||
uniform = /obj/item/clothing/under/color/grey
|
||||
l_ear = /obj/item/device/radio/headset
|
||||
shoes = /obj/item/clothing/shoes/black
|
||||
|
||||
id_slot = slot_wear_id
|
||||
id_type = /obj/item/weapon/card/id/civilian
|
||||
pda_slot = slot_belt
|
||||
pda_type = /obj/item/device/pda
|
||||
|
||||
flags = OUTFIT_HAS_BACKPACK
|
||||
|
||||
/decl/hierarchy/outfit/job/equip_id(mob/living/carbon/human/H)
|
||||
var/obj/item/weapon/card/id/C = ..()
|
||||
if(H.mind)
|
||||
if(H.mind.initial_account)
|
||||
C.associated_account_number = H.mind.initial_account.account_number
|
||||
return C
|
||||
105
code/datums/outfits/jobs/medical.dm
Normal file
105
code/datums/outfits/jobs/medical.dm
Normal file
@@ -0,0 +1,105 @@
|
||||
/decl/hierarchy/outfit/job/medical
|
||||
hierarchy_type = /decl/hierarchy/outfit/job/medical
|
||||
l_ear = /obj/item/device/radio/headset/headset_med
|
||||
shoes = /obj/item/clothing/shoes/white
|
||||
pda_type = /obj/item/device/pda/medical
|
||||
pda_slot = slot_l_store
|
||||
backpack = /obj/item/weapon/storage/backpack/medic
|
||||
satchel_one = /obj/item/weapon/storage/backpack/satchel/med
|
||||
messenger_bag = /obj/item/weapon/storage/backpack/messenger/med
|
||||
|
||||
/decl/hierarchy/outfit/job/medical/cmo
|
||||
name = OUTFIT_JOB_NAME("Chief Medical Officer")
|
||||
l_ear =/obj/item/device/radio/headset/heads/cmo
|
||||
uniform = /obj/item/clothing/under/rank/chief_medical_officer
|
||||
suit = /obj/item/clothing/suit/storage/toggle/labcoat/cmo
|
||||
shoes = /obj/item/clothing/shoes/brown
|
||||
l_hand = /obj/item/weapon/storage/firstaid/adv
|
||||
r_pocket = /obj/item/device/flashlight/pen
|
||||
id_type = /obj/item/weapon/card/id/medical/head
|
||||
pda_type = /obj/item/device/pda/heads/cmo
|
||||
|
||||
/decl/hierarchy/outfit/job/medical/doctor
|
||||
name = OUTFIT_JOB_NAME("Medical Doctor")
|
||||
uniform = /obj/item/clothing/under/rank/medical
|
||||
suit = /obj/item/clothing/suit/storage/toggle/labcoat
|
||||
l_hand = /obj/item/weapon/storage/firstaid/adv
|
||||
r_pocket = /obj/item/device/flashlight/pen
|
||||
id_type = /obj/item/weapon/card/id/medical/doctor
|
||||
|
||||
/decl/hierarchy/outfit/job/medical/doctor/emergency_physician
|
||||
name = OUTFIT_JOB_NAME("Emergency physician")
|
||||
suit = /obj/item/clothing/suit/storage/toggle/fr_jacket
|
||||
|
||||
/decl/hierarchy/outfit/job/medical/doctor/surgeon
|
||||
name = OUTFIT_JOB_NAME("Surgeon")
|
||||
uniform = /obj/item/clothing/under/rank/medical/scrubs
|
||||
head = /obj/item/clothing/head/surgery/blue
|
||||
|
||||
/decl/hierarchy/outfit/job/medical/doctor/virologist
|
||||
name = OUTFIT_JOB_NAME("Virologist")
|
||||
uniform = /obj/item/clothing/under/rank/virologist
|
||||
suit = /obj/item/clothing/suit/storage/toggle/labcoat/virologist
|
||||
mask = /obj/item/clothing/mask/surgical
|
||||
backpack = /obj/item/weapon/storage/backpack/virology
|
||||
satchel_one = /obj/item/weapon/storage/backpack/satchel/vir
|
||||
|
||||
/decl/hierarchy/outfit/job/medical/doctor/nurse
|
||||
name = OUTFIT_JOB_NAME("Nurse")
|
||||
suit = null
|
||||
|
||||
/decl/hierarchy/outfit/job/medical/doctor/nurse/pre_equip(mob/living/carbon/human/H)
|
||||
..()
|
||||
if(H.gender == FEMALE)
|
||||
if(prob(50))
|
||||
uniform = /obj/item/clothing/under/rank/nursesuit
|
||||
else
|
||||
uniform = /obj/item/clothing/under/rank/nurse
|
||||
head = /obj/item/clothing/head/nursehat
|
||||
else
|
||||
uniform = /obj/item/clothing/under/rank/medical/scrubs/purple
|
||||
head = null
|
||||
|
||||
/decl/hierarchy/outfit/job/medical/chemist
|
||||
name = OUTFIT_JOB_NAME("Chemist")
|
||||
uniform = /obj/item/clothing/under/rank/chemist
|
||||
suit = /obj/item/clothing/suit/storage/toggle/labcoat/chemist
|
||||
backpack = /obj/item/weapon/storage/backpack/chemistry
|
||||
satchel_one = /obj/item/weapon/storage/backpack/satchel/chem
|
||||
id_type = /obj/item/weapon/card/id/medical/chemist
|
||||
pda_type = /obj/item/device/pda/chemist
|
||||
|
||||
/decl/hierarchy/outfit/job/medical/geneticist
|
||||
name = OUTFIT_JOB_NAME("Geneticist")
|
||||
uniform = /obj/item/clothing/under/rank/geneticist
|
||||
suit = /obj/item/clothing/suit/storage/toggle/labcoat/genetics
|
||||
backpack = /obj/item/weapon/storage/backpack/genetics
|
||||
r_pocket = /obj/item/device/flashlight/pen
|
||||
satchel_one = /obj/item/weapon/storage/backpack/satchel/gen
|
||||
id_type = /obj/item/weapon/card/id/medical/geneticist
|
||||
pda_type = /obj/item/device/pda/geneticist
|
||||
|
||||
/decl/hierarchy/outfit/job/medical/psychiatrist
|
||||
name = OUTFIT_JOB_NAME("Psychiatrist")
|
||||
uniform = /obj/item/clothing/under/rank/psych
|
||||
suit = /obj/item/clothing/suit/storage/toggle/labcoat
|
||||
shoes = /obj/item/clothing/shoes/laceup
|
||||
id_type = /obj/item/weapon/card/id/medical/psychiatrist
|
||||
|
||||
/decl/hierarchy/outfit/job/medical/psychiatrist/psychologist
|
||||
name = OUTFIT_JOB_NAME("Psychologist")
|
||||
uniform = /obj/item/clothing/under/rank/psych/turtleneck
|
||||
|
||||
/decl/hierarchy/outfit/job/medical/paramedic
|
||||
name = OUTFIT_JOB_NAME("Paramedic")
|
||||
uniform = /obj/item/clothing/under/rank/medical/scrubs/black
|
||||
suit = /obj/item/clothing/suit/storage/toggle/fr_jacket
|
||||
shoes = /obj/item/clothing/shoes/boots/jackboots
|
||||
l_hand = /obj/item/weapon/storage/firstaid/adv
|
||||
belt = /obj/item/weapon/storage/belt/medical/emt
|
||||
id_type = /obj/item/weapon/card/id/medical/paramedic
|
||||
flags = OUTFIT_HAS_BACKPACK|OUTFIT_EXTENDED_SURVIVAL
|
||||
|
||||
/decl/hierarchy/outfit/job/medical/paramedic/emt
|
||||
name = OUTFIT_JOB_NAME("Emergency medical technician")
|
||||
uniform = /obj/item/clothing/under/rank/medical/paramedic
|
||||
11
code/datums/outfits/jobs/misc.dm
Normal file
11
code/datums/outfits/jobs/misc.dm
Normal file
@@ -0,0 +1,11 @@
|
||||
/decl/hierarchy/outfit/job/silicon
|
||||
head = /obj/item/clothing/head/cardborg
|
||||
hierarchy_type = /decl/hierarchy/outfit/job/silicon
|
||||
|
||||
/decl/hierarchy/outfit/job/silicon/ai
|
||||
name = OUTFIT_JOB_NAME("AI")
|
||||
suit = /obj/item/clothing/suit/straight_jacket
|
||||
|
||||
/decl/hierarchy/outfit/job/silicon/cyborg
|
||||
name = OUTFIT_JOB_NAME("Cyborg")
|
||||
suit = /obj/item/clothing/suit/cardborg
|
||||
41
code/datums/outfits/jobs/science.dm
Normal file
41
code/datums/outfits/jobs/science.dm
Normal file
@@ -0,0 +1,41 @@
|
||||
/decl/hierarchy/outfit/job/science
|
||||
hierarchy_type = /decl/hierarchy/outfit/job/science
|
||||
l_ear = /obj/item/device/radio/headset/headset_sci
|
||||
suit = /obj/item/clothing/suit/storage/toggle/labcoat
|
||||
shoes = /obj/item/clothing/shoes/white
|
||||
pda_type = /obj/item/device/pda/science
|
||||
backpack = /obj/item/weapon/storage/backpack/toxins
|
||||
satchel_one = /obj/item/weapon/storage/backpack/satchel/tox
|
||||
messenger_bag = /obj/item/weapon/storage/backpack/messenger/tox
|
||||
|
||||
/decl/hierarchy/outfit/job/science/rd
|
||||
name = OUTFIT_JOB_NAME("Research Director")
|
||||
l_ear = /obj/item/device/radio/headset/heads/rd
|
||||
uniform = /obj/item/clothing/under/rank/research_director
|
||||
shoes = /obj/item/clothing/shoes/brown
|
||||
l_hand = /obj/item/weapon/clipboard
|
||||
id_type = /obj/item/weapon/card/id/science/head
|
||||
pda_type = /obj/item/device/pda/heads/rd
|
||||
|
||||
/decl/hierarchy/outfit/job/science/scientist
|
||||
name = OUTFIT_JOB_NAME("Scientist")
|
||||
uniform = /obj/item/clothing/under/rank/scientist
|
||||
id_type = /obj/item/weapon/card/id/science/scientist
|
||||
suit = /obj/item/clothing/suit/storage/toggle/labcoat/science
|
||||
|
||||
/decl/hierarchy/outfit/job/science/xenobiologist
|
||||
name = OUTFIT_JOB_NAME("Xenobiologist")
|
||||
uniform = /obj/item/clothing/under/rank/scientist
|
||||
id_type = /obj/item/weapon/card/id/science/xenobiologist
|
||||
suit = /obj/item/clothing/suit/storage/toggle/labcoat/science
|
||||
|
||||
/decl/hierarchy/outfit/job/science/roboticist
|
||||
name = OUTFIT_JOB_NAME("Roboticist")
|
||||
uniform = /obj/item/clothing/under/rank/scientist
|
||||
shoes = /obj/item/clothing/shoes/black
|
||||
belt = /obj/item/weapon/storage/belt/utility/full
|
||||
id_type = /obj/item/weapon/card/id/science/roboticist
|
||||
pda_slot = slot_r_store
|
||||
pda_type = /obj/item/device/pda/roboticist
|
||||
backpack = /obj/item/weapon/storage/backpack
|
||||
satchel_one = /obj/item/weapon/storage/backpack/satchel/norm
|
||||
52
code/datums/outfits/jobs/security.dm
Normal file
52
code/datums/outfits/jobs/security.dm
Normal file
@@ -0,0 +1,52 @@
|
||||
/decl/hierarchy/outfit/job/security
|
||||
hierarchy_type = /decl/hierarchy/outfit/job/security
|
||||
glasses = /obj/item/clothing/glasses/sunglasses/sechud
|
||||
l_ear = /obj/item/device/radio/headset/headset_sec
|
||||
gloves = /obj/item/clothing/gloves/black
|
||||
shoes = /obj/item/clothing/shoes/boots/jackboots
|
||||
backpack = /obj/item/weapon/storage/backpack/security
|
||||
satchel_one = /obj/item/weapon/storage/backpack/satchel/sec
|
||||
backpack_contents = list(/obj/item/weapon/handcuffs = 1)
|
||||
messenger_bag = /obj/item/weapon/storage/backpack/messenger/sec
|
||||
|
||||
/decl/hierarchy/outfit/job/security/hos
|
||||
name = OUTFIT_JOB_NAME("Head of security")
|
||||
l_ear = /obj/item/device/radio/headset/heads/hos
|
||||
uniform = /obj/item/clothing/under/rank/head_of_security
|
||||
id_type = /obj/item/weapon/card/id/security/head
|
||||
pda_type = /obj/item/device/pda/heads/hos
|
||||
backpack_contents = list(/obj/item/weapon/handcuffs = 1)
|
||||
|
||||
/decl/hierarchy/outfit/job/security/warden
|
||||
name = OUTFIT_JOB_NAME("Warden")
|
||||
uniform = /obj/item/clothing/under/rank/warden
|
||||
l_pocket = /obj/item/device/flash
|
||||
id_type = /obj/item/weapon/card/id/security //warden
|
||||
pda_type = /obj/item/device/pda/warden
|
||||
|
||||
/decl/hierarchy/outfit/job/security/detective
|
||||
name = OUTFIT_JOB_NAME("Detective")
|
||||
head = /obj/item/clothing/head/det
|
||||
uniform = /obj/item/clothing/under/det
|
||||
suit = /obj/item/clothing/suit/storage/det_trench
|
||||
l_pocket = /obj/item/weapon/flame/lighter/zippo
|
||||
shoes = /obj/item/clothing/shoes/laceup
|
||||
r_hand = /obj/item/weapon/storage/briefcase/crimekit
|
||||
id_type = /obj/item/weapon/card/id/security //detective
|
||||
pda_type = /obj/item/device/pda/detective
|
||||
backpack = /obj/item/weapon/storage/backpack
|
||||
satchel_one = /obj/item/weapon/storage/backpack/satchel/norm
|
||||
backpack_contents = list(/obj/item/weapon/storage/box/evidence = 1)
|
||||
|
||||
/decl/hierarchy/outfit/job/security/detective/forensic
|
||||
name = OUTFIT_JOB_NAME("Forensic technician")
|
||||
head = null
|
||||
suit = /obj/item/clothing/suit/storage/forensics/blue
|
||||
|
||||
/decl/hierarchy/outfit/job/security/officer
|
||||
name = OUTFIT_JOB_NAME("Security Officer")
|
||||
uniform = /obj/item/clothing/under/rank/security
|
||||
l_pocket = /obj/item/device/flash
|
||||
r_pocket = /obj/item/weapon/handcuffs
|
||||
id_type = /obj/item/weapon/card/id/security
|
||||
pda_type = /obj/item/device/pda/security
|
||||
55
code/datums/outfits/misc.dm
Normal file
55
code/datums/outfits/misc.dm
Normal file
@@ -0,0 +1,55 @@
|
||||
/decl/hierarchy/outfit/standard_space_gear
|
||||
name = "Standard space gear"
|
||||
shoes = /obj/item/clothing/shoes/black
|
||||
head = /obj/item/clothing/head/helmet/space
|
||||
suit = /obj/item/clothing/suit/space
|
||||
uniform = /obj/item/clothing/under/color/grey
|
||||
back = /obj/item/weapon/tank/jetpack/oxygen
|
||||
mask = /obj/item/clothing/mask/breath
|
||||
flags = OUTFIT_HAS_JETPACK
|
||||
|
||||
/decl/hierarchy/outfit/emergency_space_gear
|
||||
name = "Emergency space gear"
|
||||
shoes = /obj/item/clothing/shoes/black
|
||||
head = /obj/item/clothing/head/helmet/space/emergency
|
||||
suit = /obj/item/clothing/suit/space/emergency
|
||||
uniform = /obj/item/clothing/under/color/grey
|
||||
back = /obj/item/weapon/tank/oxygen
|
||||
mask = /obj/item/clothing/mask/breath
|
||||
|
||||
/decl/hierarchy/outfit/soviet_soldier
|
||||
name = "Soviet soldier"
|
||||
uniform = /obj/item/clothing/under/soviet
|
||||
shoes = /obj/item/clothing/shoes/boots/combat
|
||||
head = /obj/item/clothing/head/ushanka
|
||||
gloves = /obj/item/clothing/gloves/combat
|
||||
back = /obj/item/weapon/storage/backpack/satchel
|
||||
belt = /obj/item/weapon/gun/projectile/revolver/mateba
|
||||
|
||||
/decl/hierarchy/outfit/soviet_soldier/admiral
|
||||
name = "Soviet admiral"
|
||||
head = /obj/item/clothing/head/hgpiratecap
|
||||
l_ear = /obj/item/device/radio/headset/heads/captain
|
||||
glasses = /obj/item/clothing/glasses/thermal/plain/eyepatch
|
||||
suit = /obj/item/clothing/suit/hgpirate
|
||||
|
||||
id_slot = slot_wear_id
|
||||
id_type = /obj/item/weapon/card/id/centcom //station
|
||||
id_pda_assignment = "Admiral"
|
||||
|
||||
/decl/hierarchy/outfit/merchant
|
||||
name = "Merchant"
|
||||
shoes = /obj/item/clothing/shoes/black
|
||||
l_ear = /obj/item/device/radio/headset
|
||||
uniform = /obj/item/clothing/under/color/grey
|
||||
id_slot = slot_wear_id
|
||||
id_type = /obj/item/weapon/card/id/civilian //merchant
|
||||
pda_slot = slot_r_store
|
||||
pda_type = /obj/item/device/pda/chef //cause I like the look
|
||||
id_pda_assignment = "Merchant"
|
||||
|
||||
/decl/hierarchy/outfit/merchant/vox
|
||||
name = "Merchant - Vox"
|
||||
shoes = /obj/item/clothing/shoes/boots/jackboots/toeless
|
||||
uniform = /obj/item/clothing/under/vox/vox_robes
|
||||
suit = /obj/item/clothing/suit/armor/vox_scrap
|
||||
32
code/datums/outfits/nanotrasen.dm
Normal file
32
code/datums/outfits/nanotrasen.dm
Normal file
@@ -0,0 +1,32 @@
|
||||
/decl/hierarchy/outfit/nanotrasen
|
||||
hierarchy_type = /decl/hierarchy/outfit/nanotrasen
|
||||
uniform = /obj/item/clothing/under/rank/centcom
|
||||
shoes = /obj/item/clothing/shoes/laceup
|
||||
gloves = /obj/item/clothing/gloves/white
|
||||
l_ear = /obj/item/device/radio/headset/heads/hop
|
||||
glasses = /obj/item/clothing/glasses/sunglasses
|
||||
|
||||
id_slot = slot_wear_id
|
||||
id_type = /obj/item/weapon/card/id/centcom //station
|
||||
pda_slot = slot_r_store
|
||||
pda_type = /obj/item/device/pda/heads
|
||||
|
||||
/decl/hierarchy/outfit/nanotrasen/representative
|
||||
name = "Nanotrasen representative"
|
||||
belt = /obj/item/weapon/clipboard
|
||||
id_pda_assignment = "NanoTrasen Navy Representative"
|
||||
|
||||
/decl/hierarchy/outfit/nanotrasen/officer
|
||||
name = "Nanotrasen officer"
|
||||
head = /obj/item/clothing/head/beret/centcom/officer
|
||||
l_ear = /obj/item/device/radio/headset/heads/captain
|
||||
belt = /obj/item/weapon/gun/energy
|
||||
id_pda_assignment = "NanoTrasen Navy Officer"
|
||||
|
||||
/decl/hierarchy/outfit/nanotrasen/captain
|
||||
name = "Nanotrasen captain"
|
||||
uniform = /obj/item/clothing/under/rank/centcom_captain
|
||||
l_ear = /obj/item/device/radio/headset/heads/captain
|
||||
head = /obj/item/clothing/head/beret/centcom/captain
|
||||
belt = /obj/item/weapon/gun/energy
|
||||
id_pda_assignment = "NanoTrasen Navy Captain"
|
||||
187
code/datums/outfits/outfit.dm
Normal file
187
code/datums/outfits/outfit.dm
Normal file
@@ -0,0 +1,187 @@
|
||||
var/list/outfits_decls_
|
||||
var/list/outfits_decls_root_
|
||||
var/list/outfits_decls_by_type_
|
||||
|
||||
/proc/outfit_by_type(var/outfit_type)
|
||||
if(!outfits_decls_root_)
|
||||
init_outfit_decls()
|
||||
return outfits_decls_by_type_[outfit_type]
|
||||
|
||||
/proc/outfits()
|
||||
if(!outfits_decls_root_)
|
||||
init_outfit_decls()
|
||||
return outfits_decls_
|
||||
|
||||
/proc/init_outfit_decls()
|
||||
if(outfits_decls_root_)
|
||||
return
|
||||
outfits_decls_ = list()
|
||||
outfits_decls_by_type_ = list()
|
||||
outfits_decls_root_ = new/decl/hierarchy/outfit()
|
||||
|
||||
/decl/hierarchy/outfit
|
||||
name = "Naked"
|
||||
|
||||
var/uniform = null
|
||||
var/suit = null
|
||||
var/back = null
|
||||
var/belt = null
|
||||
var/gloves = null
|
||||
var/shoes = null
|
||||
var/head = null
|
||||
var/mask = null
|
||||
var/l_ear = null
|
||||
var/r_ear = null
|
||||
var/glasses = null
|
||||
var/id = null
|
||||
var/l_pocket = null
|
||||
var/r_pocket = null
|
||||
var/suit_store = null
|
||||
var/r_hand = null
|
||||
var/l_hand = null
|
||||
var/list/backpack_contents = list() // In the list(path=count,otherpath=count) format
|
||||
|
||||
var/id_type
|
||||
var/id_desc
|
||||
var/id_slot
|
||||
|
||||
var/pda_type
|
||||
var/pda_slot
|
||||
|
||||
var/id_pda_assignment
|
||||
|
||||
var/backpack = /obj/item/weapon/storage/backpack
|
||||
var/satchel_one = /obj/item/weapon/storage/backpack/satchel/norm
|
||||
var/satchel_two = /obj/item/weapon/storage/backpack/satchel
|
||||
var/messenger_bag = /obj/item/weapon/storage/backpack/messenger
|
||||
|
||||
var/flags // Specific flags
|
||||
|
||||
/decl/hierarchy/outfit/New()
|
||||
..()
|
||||
|
||||
if(is_hidden_category())
|
||||
return
|
||||
outfits_decls_by_type_[type] = src
|
||||
dd_insertObjectList(outfits_decls_, src)
|
||||
|
||||
/decl/hierarchy/outfit/proc/pre_equip(mob/living/carbon/human/H)
|
||||
if(flags & OUTFIT_HAS_BACKPACK)
|
||||
switch(H.backbag)
|
||||
if(2) back = backpack
|
||||
if(3) back = satchel_one
|
||||
if(4) back = satchel_two
|
||||
if(5) back = messenger_bag
|
||||
else back = null
|
||||
|
||||
/decl/hierarchy/outfit/proc/post_equip(mob/living/carbon/human/H)
|
||||
if(flags & OUTFIT_HAS_JETPACK)
|
||||
var/obj/item/weapon/tank/jetpack/J = locate(/obj/item/weapon/tank/jetpack) in H
|
||||
if(!J)
|
||||
return
|
||||
J.toggle()
|
||||
J.toggle_valve()
|
||||
|
||||
// A proc for non-human species, specially Unathi and Tajara, since they e.g.
|
||||
// can't normally wear gloves as humans. Correct this issue by trying again, but
|
||||
// apply some changes to the said item.
|
||||
//
|
||||
// Currently checks for gloves
|
||||
//
|
||||
// If you want to add more items that has species restriction, consider follow-
|
||||
// ing the same format as the gloves shown in the code below. Thanks.
|
||||
/decl/hierarchy/outfit/proc/check_and_try_equip_xeno(mob/living/carbon/human/H)
|
||||
var/datum/species/S = H.species
|
||||
if (!S || istype(S, /datum/species/human)) // null failcheck & get out here you damn humans
|
||||
return
|
||||
|
||||
// end of check_and_try_equip_xeno
|
||||
|
||||
/decl/hierarchy/outfit/proc/equip(mob/living/carbon/human/H, var/rank, var/assignment)
|
||||
equip_base(H)
|
||||
|
||||
rank = id_pda_assignment || rank
|
||||
assignment = id_pda_assignment || assignment || rank
|
||||
var/obj/item/weapon/card/id/W = equip_id(H, rank, assignment)
|
||||
if(W)
|
||||
rank = W.rank
|
||||
assignment = W.assignment
|
||||
equip_pda(H, rank, assignment)
|
||||
|
||||
for(var/path in backpack_contents)
|
||||
var/number = backpack_contents[path]
|
||||
for(var/i=0,i<number,i++)
|
||||
H.equip_to_slot_or_del(new path(H), slot_in_backpack)
|
||||
|
||||
post_equip(H)
|
||||
H.regenerate_icons()
|
||||
if(W) // We set ID info last to ensure the ID photo is as correct as possible.
|
||||
H.set_id_info(W)
|
||||
return 1
|
||||
|
||||
/decl/hierarchy/outfit/proc/equip_base(mob/living/carbon/human/H)
|
||||
pre_equip(H)
|
||||
|
||||
//Start with uniform,suit,backpack for additional slots
|
||||
if(uniform)
|
||||
H.equip_to_slot_or_del(new uniform(H),slot_w_uniform)
|
||||
if(suit)
|
||||
H.equip_to_slot_or_del(new suit(H),slot_wear_suit)
|
||||
if(back)
|
||||
H.equip_to_slot_or_del(new back(H),slot_back)
|
||||
if(belt)
|
||||
H.equip_to_slot_or_del(new belt(H),slot_belt)
|
||||
if(gloves)
|
||||
H.equip_to_slot_or_del(new gloves(H),slot_gloves)
|
||||
if(shoes)
|
||||
H.equip_to_slot_or_del(new shoes(H),slot_shoes)
|
||||
if(mask)
|
||||
H.equip_to_slot_or_del(new mask(H),slot_wear_mask)
|
||||
if(head)
|
||||
H.equip_to_slot_or_del(new head(H),slot_head)
|
||||
if(l_ear)
|
||||
H.equip_to_slot_or_del(new l_ear(H),slot_l_ear)
|
||||
if(r_ear)
|
||||
H.equip_to_slot_or_del(new r_ear(H),slot_r_ear)
|
||||
if(glasses)
|
||||
H.equip_to_slot_or_del(new glasses(H),slot_glasses)
|
||||
if(id)
|
||||
H.equip_to_slot_or_del(new id(H),slot_wear_id)
|
||||
if(l_pocket)
|
||||
H.equip_to_slot_or_del(new l_pocket(H),slot_l_store)
|
||||
if(r_pocket)
|
||||
H.equip_to_slot_or_del(new r_pocket(H),slot_r_store)
|
||||
if(suit_store)
|
||||
H.equip_to_slot_or_del(new suit_store(H),slot_s_store)
|
||||
|
||||
if(l_hand)
|
||||
H.put_in_l_hand(new l_hand(H))
|
||||
if(r_hand)
|
||||
H.put_in_r_hand(new r_hand(H))
|
||||
if(H.species)
|
||||
H.species.equip_survival_gear(H, flags&OUTFIT_EXTENDED_SURVIVAL)
|
||||
check_and_try_equip_xeno(H)
|
||||
|
||||
/decl/hierarchy/outfit/proc/equip_id(mob/living/carbon/human/H, rank, assignment)
|
||||
if(!id_slot || !id_type)
|
||||
return
|
||||
var/obj/item/weapon/card/id/W = new id_type(H)
|
||||
if(id_desc)
|
||||
W.desc = id_desc
|
||||
if(rank)
|
||||
W.rank = rank
|
||||
if(assignment)
|
||||
W.assignment = assignment
|
||||
H.set_id_info(W)
|
||||
if(H.equip_to_slot_or_del(W, id_slot))
|
||||
return W
|
||||
|
||||
/decl/hierarchy/outfit/proc/equip_pda(mob/living/carbon/human/H, assignment)
|
||||
if(!pda_slot || !pda_type)
|
||||
return
|
||||
var/obj/item/device/pda/heads/pda = new pda_type(H)
|
||||
if(H.equip_to_slot_or_del(pda, pda_slot))
|
||||
return pda
|
||||
|
||||
/decl/hierarchy/outfit/dd_SortValue()
|
||||
return name
|
||||
17
code/datums/outfits/pirates.dm
Normal file
17
code/datums/outfits/pirates.dm
Normal file
@@ -0,0 +1,17 @@
|
||||
/decl/hierarchy/outfit/pirate
|
||||
hierarchy_type = /decl/hierarchy/outfit/pirate
|
||||
name = "Pirate"
|
||||
uniform = /obj/item/clothing/under/pirate
|
||||
shoes = /obj/item/clothing/shoes/brown
|
||||
head = /obj/item/clothing/head/bandana
|
||||
glasses = /obj/item/clothing/glasses/eyepatch
|
||||
l_hand = /obj/item/weapon/melee/energy/sword/pirate
|
||||
|
||||
/decl/hierarchy/outfit/pirate/norm
|
||||
|
||||
/decl/hierarchy/outfit/pirate/space
|
||||
name = "Pirate - Space"
|
||||
head = /obj/item/clothing/head/helmet/space
|
||||
suit = /obj/item/clothing/suit/pirate
|
||||
back = /obj/item/weapon/tank/jetpack/oxygen
|
||||
flags = OUTFIT_HAS_JETPACK
|
||||
69
code/datums/outfits/spec_op.dm
Normal file
69
code/datums/outfits/spec_op.dm
Normal file
@@ -0,0 +1,69 @@
|
||||
/decl/hierarchy/outfit/spec_op_officer
|
||||
name = "Special ops - Officer"
|
||||
uniform = /obj/item/clothing/under/syndicate/combat
|
||||
suit = /obj/item/clothing/suit/armor/swat/officer
|
||||
l_ear = /obj/item/device/radio/headset/ert
|
||||
glasses = /obj/item/clothing/glasses/thermal/plain/eyepatch
|
||||
mask = /obj/item/clothing/mask/smokable/cigarette/cigar/havana
|
||||
head = /obj/item/clothing/head/beret //deathsquad
|
||||
belt = /obj/item/weapon/gun/energy/pulse_rifle/M1911
|
||||
back = /obj/item/weapon/storage/backpack/satchel
|
||||
shoes = /obj/item/clothing/shoes/boots/combat
|
||||
gloves = /obj/item/clothing/gloves/combat
|
||||
|
||||
id_slot = slot_wear_id
|
||||
id_type = /obj/item/weapon/card/id/centcom/ERT
|
||||
id_desc = "Special operations ID."
|
||||
id_pda_assignment = "Special Operations Officer"
|
||||
|
||||
/decl/hierarchy/outfit/spec_op_officer/space
|
||||
name = "Special ops - Officer in space"
|
||||
suit = /obj/item/clothing/suit/armor/swat //obj/item/clothing/suit/space/void/swat
|
||||
back = /obj/item/weapon/tank/jetpack/oxygen
|
||||
mask = /obj/item/clothing/mask/gas/swat
|
||||
|
||||
flags = OUTFIT_HAS_JETPACK
|
||||
|
||||
/decl/hierarchy/outfit/ert
|
||||
name = "Spec ops - Emergency response team"
|
||||
uniform = /obj/item/clothing/under/ert
|
||||
shoes = /obj/item/clothing/shoes/boots/swat
|
||||
gloves = /obj/item/clothing/gloves/swat
|
||||
l_ear = /obj/item/device/radio/headset/ert
|
||||
belt = /obj/item/weapon/gun/energy/gun
|
||||
glasses = /obj/item/clothing/glasses/sunglasses
|
||||
back = /obj/item/weapon/storage/backpack/satchel
|
||||
|
||||
id_slot = slot_wear_id
|
||||
id_type = /obj/item/weapon/card/id/centcom/ERT
|
||||
|
||||
/decl/hierarchy/outfit/death_command
|
||||
name = "Spec ops - Death commando"
|
||||
|
||||
/decl/hierarchy/outfit/death_command/equip(var/mob/living/carbon/human/H)
|
||||
deathsquad.equip(H)
|
||||
return 1
|
||||
|
||||
/decl/hierarchy/outfit/syndicate_command
|
||||
name = "Spec ops - Syndicate commando"
|
||||
|
||||
/decl/hierarchy/outfit/syndicate_command/equip(var/mob/living/carbon/human/H)
|
||||
commandos.equip(H)
|
||||
return 1
|
||||
|
||||
/decl/hierarchy/outfit/mercenary
|
||||
name = "Spec ops - Mercenary"
|
||||
uniform = /obj/item/clothing/under/syndicate
|
||||
shoes = /obj/item/clothing/shoes/boots/combat
|
||||
l_ear = /obj/item/device/radio/headset/syndicate
|
||||
belt = /obj/item/weapon/storage/belt/security
|
||||
glasses = /obj/item/clothing/glasses/sunglasses
|
||||
gloves = /obj/item/clothing/gloves/swat
|
||||
|
||||
l_pocket = /obj/item/weapon/reagent_containers/pill/cyanide
|
||||
|
||||
id_slot = slot_wear_id
|
||||
id_type = /obj/item/weapon/card/id/syndicate
|
||||
id_pda_assignment = "Mercenary"
|
||||
|
||||
flags = OUTFIT_HAS_BACKPACK
|
||||
49
code/datums/outfits/tournament.dm
Normal file
49
code/datums/outfits/tournament.dm
Normal file
@@ -0,0 +1,49 @@
|
||||
/decl/hierarchy/outfit/tournament_gear
|
||||
hierarchy_type = /decl/hierarchy/outfit/tournament_gear
|
||||
head = /obj/item/clothing/head/helmet/thunderdome
|
||||
suit = /obj/item/clothing/suit/armor/vest
|
||||
l_hand = /obj/item/weapon/material/knife
|
||||
r_hand = /obj/item/weapon/gun/energy/pulse_rifle/destroyer
|
||||
r_pocket = /obj/item/weapon/grenade/smokebomb
|
||||
shoes = /obj/item/clothing/shoes/black
|
||||
|
||||
/decl/hierarchy/outfit/tournament_gear/red
|
||||
name = "Tournament - Red"
|
||||
uniform = /obj/item/clothing/under/color/red
|
||||
|
||||
/decl/hierarchy/outfit/tournament_gear/green
|
||||
name = "Tournament gear - Green"
|
||||
uniform = /obj/item/clothing/under/color/green
|
||||
|
||||
/decl/hierarchy/outfit/tournament_gear/gangster
|
||||
name = "Tournament gear - Gangster"
|
||||
head = /obj/item/clothing/head/det
|
||||
uniform = /obj/item/clothing/under/det
|
||||
suit_store = /obj/item/clothing/suit/storage/det_trench
|
||||
glasses = /obj/item/clothing/glasses/thermal/plain/monocle
|
||||
r_hand = /obj/item/weapon/gun/projectile/revolver
|
||||
l_pocket = /obj/item/ammo_magazine/s357
|
||||
|
||||
/decl/hierarchy/outfit/tournament_gear/chef
|
||||
name = "Tournament gear - Chef"
|
||||
head = /obj/item/clothing/head/chefhat
|
||||
uniform = /obj/item/clothing/under/rank/chef
|
||||
suit = /obj/item/clothing/suit/chef
|
||||
r_hand = /obj/item/weapon/material/kitchen/rollingpin
|
||||
l_pocket = /obj/item/weapon/material/hatchet/tacknife
|
||||
r_pocket = /obj/item/weapon/material/hatchet/tacknife
|
||||
|
||||
/decl/hierarchy/outfit/tournament_gear/janitor
|
||||
name = "Tournament gear - Janitor"
|
||||
uniform = /obj/item/clothing/under/rank/janitor
|
||||
back = /obj/item/weapon/storage/backpack
|
||||
r_hand = /obj/item/weapon/mop
|
||||
l_hand = /obj/item/weapon/reagent_containers/glass/bucket
|
||||
l_pocket = /obj/item/weapon/grenade/chem_grenade/cleaner
|
||||
r_pocket = /obj/item/weapon/grenade/chem_grenade/cleaner
|
||||
backpack_contents = list(/obj/item/stack/tile/floor = 6)
|
||||
|
||||
/decl/hierarchy/outfit/tournament_gear/janitor/post_equip(var/mob/living/carbon/human/H)
|
||||
var/obj/item/weapon/reagent_containers/glass/bucket/bucket = locate(/obj/item/weapon/reagent_containers/glass/bucket) in H
|
||||
if(bucket)
|
||||
bucket.reagents.add_reagent(/datum/reagent/water, 70)
|
||||
26
code/datums/outfits/wizardry.dm
Normal file
26
code/datums/outfits/wizardry.dm
Normal file
@@ -0,0 +1,26 @@
|
||||
/decl/hierarchy/outfit/wizard
|
||||
uniform = /obj/item/clothing/under/color/lightpurple
|
||||
shoes = /obj/item/clothing/shoes/sandal
|
||||
l_ear = /obj/item/device/radio/headset
|
||||
r_pocket = /obj/item/weapon/teleportation_scroll
|
||||
l_hand = /obj/item/weapon/staff
|
||||
r_hand = /obj/item/weapon/spellbook
|
||||
back = /obj/item/weapon/storage/backpack
|
||||
backpack_contents = list(/obj/item/weapon/storage/box = 1)
|
||||
hierarchy_type = /decl/hierarchy/outfit/wizard
|
||||
|
||||
/decl/hierarchy/outfit/wizard/blue
|
||||
name = "Wizard - Blue"
|
||||
head = /obj/item/clothing/head/wizard
|
||||
suit = /obj/item/clothing/suit/wizrobe
|
||||
|
||||
/decl/hierarchy/outfit/wizard/red
|
||||
name = "Wizard - Red"
|
||||
head = /obj/item/clothing/head/wizard/red
|
||||
suit = /obj/item/clothing/suit/wizrobe/red
|
||||
|
||||
/decl/hierarchy/outfit/wizard/marisa
|
||||
name = "Wizard - Marisa"
|
||||
head = /obj/item/clothing/head/wizard/marisa
|
||||
suit = /obj/item/clothing/suit/wizrobe/marisa
|
||||
shoes = /obj/item/clothing/shoes/sandal/marisa
|
||||
@@ -49,7 +49,7 @@
|
||||
spawn_positions = 3
|
||||
supervisors = "the chief medical officer"
|
||||
selection_color = "#013D3B"
|
||||
idtype = /obj/item/weapon/card/id/medical
|
||||
idtype = /obj/item/weapon/card/id/medical/doctor
|
||||
economic_modifier = 7
|
||||
access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_eva)
|
||||
minimal_access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_virology, access_eva)
|
||||
@@ -113,7 +113,7 @@
|
||||
spawn_positions = 2
|
||||
supervisors = "the chief medical officer"
|
||||
selection_color = "#013D3B"
|
||||
idtype = /obj/item/weapon/card/id/medical
|
||||
idtype = /obj/item/weapon/card/id/medical/chemist
|
||||
economic_modifier = 5
|
||||
access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics)
|
||||
minimal_access = list(access_medical, access_medical_equip, access_chemistry)
|
||||
@@ -147,6 +147,7 @@
|
||||
spawn_positions = 0
|
||||
supervisors = "the chief medical officer and research director"
|
||||
selection_color = "#013D3B"
|
||||
idtype = /obj/item/weapon/card/id/medical/geneticist
|
||||
economic_modifier = 7
|
||||
access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_research)
|
||||
minimal_access = list(access_medical, access_morgue, access_genetics, access_research)
|
||||
@@ -177,7 +178,7 @@
|
||||
economic_modifier = 5
|
||||
supervisors = "the chief medical officer"
|
||||
selection_color = "#013D3B"
|
||||
idtype = /obj/item/weapon/card/id/medical
|
||||
idtype = /obj/item/weapon/card/id/medical/psychiatrist
|
||||
access = list(access_medical, access_medical_equip, access_morgue, access_psychiatrist)
|
||||
minimal_access = list(access_medical, access_medical_equip, access_psychiatrist)
|
||||
alt_titles = list("Psychologist")
|
||||
@@ -211,7 +212,7 @@
|
||||
spawn_positions = 2
|
||||
supervisors = "the chief medical officer"
|
||||
selection_color = "#013D3B"
|
||||
idtype = /obj/item/weapon/card/id/medical
|
||||
idtype = /obj/item/weapon/card/id/medical/paramedic
|
||||
economic_modifier = 4
|
||||
access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_eva, access_maint_tunnels, access_external_airlocks, access_psychiatrist)
|
||||
minimal_access = list(access_medical, access_medical_equip, access_morgue, access_eva, access_maint_tunnels, access_external_airlocks)
|
||||
|
||||
101
code/game/objects/items/weapons/id cards/cards.dm
Normal file
101
code/game/objects/items/weapons/id cards/cards.dm
Normal file
@@ -0,0 +1,101 @@
|
||||
/* Cards
|
||||
* Contains:
|
||||
* DATA CARD
|
||||
* ID CARD
|
||||
* FINGERPRINT CARD HOLDER
|
||||
* FINGERPRINT CARD
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* DATA CARDS - Used for the teleporter
|
||||
*/
|
||||
/obj/item/weapon/card
|
||||
name = "card"
|
||||
desc = "Does card things."
|
||||
icon = 'icons/obj/card.dmi'
|
||||
w_class = ITEMSIZE_TINY
|
||||
slot_flags = SLOT_EARS
|
||||
var/associated_account_number = 0
|
||||
|
||||
var/list/files = list( )
|
||||
|
||||
/obj/item/weapon/card/data
|
||||
name = "data disk"
|
||||
desc = "A disk of data."
|
||||
icon_state = "data"
|
||||
var/function = "storage"
|
||||
var/data = "null"
|
||||
var/special = null
|
||||
item_state = "card-id"
|
||||
|
||||
/obj/item/weapon/card/data/verb/label(t as text)
|
||||
set name = "Label Disk"
|
||||
set category = "Object"
|
||||
set src in usr
|
||||
|
||||
if (t)
|
||||
src.name = text("data disk- '[]'", t)
|
||||
else
|
||||
src.name = "data disk"
|
||||
src.add_fingerprint(usr)
|
||||
return
|
||||
|
||||
/obj/item/weapon/card/data/clown
|
||||
name = "\proper the coordinates to clown planet"
|
||||
icon_state = "data"
|
||||
item_state = "card-id"
|
||||
layer = 3
|
||||
level = 2
|
||||
desc = "This card contains coordinates to the fabled Clown Planet. Handle with care."
|
||||
function = "teleporter"
|
||||
data = "Clown Land"
|
||||
|
||||
/*
|
||||
* ID CARDS
|
||||
*/
|
||||
|
||||
/obj/item/weapon/card/emag_broken
|
||||
desc = "It's a card with a magnetic strip attached to some circuitry. It looks too busted to be used for anything but salvage."
|
||||
name = "broken cryptographic sequencer"
|
||||
icon_state = "emag"
|
||||
item_state = "card-id"
|
||||
origin_tech = list(TECH_MAGNET = 2, TECH_ILLEGAL = 2)
|
||||
|
||||
/obj/item/weapon/card/emag
|
||||
desc = "It's a card with a magnetic strip attached to some circuitry."
|
||||
name = "cryptographic sequencer"
|
||||
icon_state = "emag"
|
||||
item_state = "card-id"
|
||||
origin_tech = list(TECH_MAGNET = 2, TECH_ILLEGAL = 2)
|
||||
var/uses = 10
|
||||
|
||||
/obj/item/weapon/card/emag/resolve_attackby(atom/A, mob/user)
|
||||
var/used_uses = A.emag_act(uses, user, src)
|
||||
if(used_uses < 0)
|
||||
return ..(A, user)
|
||||
|
||||
uses -= used_uses
|
||||
A.add_fingerprint(user)
|
||||
log_and_message_admins("emagged \an [A].")
|
||||
|
||||
if(uses<1)
|
||||
user.visible_message("<span class='warning'>\The [src] fizzles and sparks - it seems it's been used once too often, and is now spent.</span>")
|
||||
user.drop_item()
|
||||
var/obj/item/weapon/card/emag_broken/junk = new(user.loc)
|
||||
junk.add_fingerprint(user)
|
||||
qdel(src)
|
||||
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/card/emag/attackby(obj/item/O as obj, mob/user as mob)
|
||||
if(istype(O, /obj/item/stack/telecrystal))
|
||||
var/obj/item/stack/telecrystal/T = O
|
||||
if(T.amount < 1)
|
||||
usr << "<span class='notice'>You are not adding enough telecrystals to fuel \the [src].</span>"
|
||||
return
|
||||
uses += T.amount/2 //Gives 5 uses per 10 TC
|
||||
uses = ceil(uses) //Ensures no decimal uses nonsense, rounds up to be nice
|
||||
usr << "<span class='notice'>You add \the [O] to \the [src]. Increasing the uses of \the [src] to [uses].</span>"
|
||||
qdel(O)
|
||||
@@ -1,106 +1,3 @@
|
||||
/* Cards
|
||||
* Contains:
|
||||
* DATA CARD
|
||||
* ID CARD
|
||||
* FINGERPRINT CARD HOLDER
|
||||
* FINGERPRINT CARD
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* DATA CARDS - Used for the teleporter
|
||||
*/
|
||||
/obj/item/weapon/card
|
||||
name = "card"
|
||||
desc = "Does card things."
|
||||
icon = 'icons/obj/card.dmi'
|
||||
w_class = ITEMSIZE_TINY
|
||||
slot_flags = SLOT_EARS
|
||||
var/associated_account_number = 0
|
||||
|
||||
var/list/files = list( )
|
||||
|
||||
/obj/item/weapon/card/data
|
||||
name = "data disk"
|
||||
desc = "A disk of data."
|
||||
icon_state = "data"
|
||||
var/function = "storage"
|
||||
var/data = "null"
|
||||
var/special = null
|
||||
item_state = "card-id"
|
||||
|
||||
/obj/item/weapon/card/data/verb/label(t as text)
|
||||
set name = "Label Disk"
|
||||
set category = "Object"
|
||||
set src in usr
|
||||
|
||||
if (t)
|
||||
src.name = text("data disk- '[]'", t)
|
||||
else
|
||||
src.name = "data disk"
|
||||
src.add_fingerprint(usr)
|
||||
return
|
||||
|
||||
/obj/item/weapon/card/data/clown
|
||||
name = "\proper the coordinates to clown planet"
|
||||
icon_state = "data"
|
||||
item_state = "card-id"
|
||||
layer = 3
|
||||
level = 2
|
||||
desc = "This card contains coordinates to the fabled Clown Planet. Handle with care."
|
||||
function = "teleporter"
|
||||
data = "Clown Land"
|
||||
|
||||
/*
|
||||
* ID CARDS
|
||||
*/
|
||||
|
||||
/obj/item/weapon/card/emag_broken
|
||||
desc = "It's a card with a magnetic strip attached to some circuitry. It looks too busted to be used for anything but salvage."
|
||||
name = "broken cryptographic sequencer"
|
||||
icon_state = "emag"
|
||||
item_state = "card-id"
|
||||
origin_tech = list(TECH_MAGNET = 2, TECH_ILLEGAL = 2)
|
||||
|
||||
/obj/item/weapon/card/emag
|
||||
desc = "It's a card with a magnetic strip attached to some circuitry."
|
||||
name = "cryptographic sequencer"
|
||||
icon_state = "emag"
|
||||
item_state = "card-id"
|
||||
origin_tech = list(TECH_MAGNET = 2, TECH_ILLEGAL = 2)
|
||||
var/uses = 10
|
||||
|
||||
/obj/item/weapon/card/emag/resolve_attackby(atom/A, mob/user)
|
||||
var/used_uses = A.emag_act(uses, user, src)
|
||||
if(used_uses < 0)
|
||||
return ..(A, user)
|
||||
|
||||
uses -= used_uses
|
||||
A.add_fingerprint(user)
|
||||
log_and_message_admins("emagged \an [A].")
|
||||
|
||||
if(uses<1)
|
||||
user.visible_message("<span class='warning'>\The [src] fizzles and sparks - it seems it's been used once too often, and is now spent.</span>")
|
||||
user.drop_item()
|
||||
var/obj/item/weapon/card/emag_broken/junk = new(user.loc)
|
||||
junk.add_fingerprint(user)
|
||||
qdel(src)
|
||||
|
||||
return 1
|
||||
|
||||
/obj/item/weapon/card/emag/attackby(obj/item/O as obj, mob/user as mob)
|
||||
if(istype(O, /obj/item/stack/telecrystal))
|
||||
var/obj/item/stack/telecrystal/T = O
|
||||
if(T.amount < 1)
|
||||
usr << "<span class='notice'>You are not adding enough telecrystals to fuel \the [src].</span>"
|
||||
return
|
||||
uses += T.amount/2 //Gives 5 uses per 10 TC
|
||||
uses = ceil(uses) //Ensures no decimal uses nonsense, rounds up to be nice
|
||||
usr << "<span class='notice'>You add \the [O] to \the [src]. Increasing the uses of \the [src] to [uses].</span>"
|
||||
qdel(O)
|
||||
|
||||
|
||||
/obj/item/weapon/card/id
|
||||
name = "identification card"
|
||||
desc = "A card used to provide ID and determine access across the station."
|
||||
@@ -219,18 +116,28 @@
|
||||
icon_state = "silver"
|
||||
item_state = "silver_id"
|
||||
|
||||
/obj/item/weapon/card/id/silver/secretary/New()
|
||||
..()
|
||||
access |= list(access_heads)
|
||||
|
||||
/obj/item/weapon/card/id/silver/hop/New()
|
||||
..()
|
||||
access |= list(access_security, access_sec_doors, access_brig, access_forensics_lockers,
|
||||
access_medical, access_engine, access_change_ids, access_ai_upload, access_eva, access_heads,
|
||||
access_all_personal_lockers, access_maint_tunnels, access_bar, access_janitor, access_construction, access_morgue,
|
||||
access_crematorium, access_kitchen, access_cargo, access_cargo_bot, access_mailsorting, access_qm, access_hydroponics, access_lawyer,
|
||||
access_chapel_office, access_library, access_research, access_mining, access_heads_vault, access_mining_station,
|
||||
access_hop, access_RC_announce, access_keycard_auth, access_gateway)
|
||||
|
||||
/obj/item/weapon/card/id/gold
|
||||
name = "identification card"
|
||||
desc = "A golden card which shows power and might."
|
||||
icon_state = "gold"
|
||||
item_state = "gold_id"
|
||||
|
||||
/obj/item/weapon/card/id/syndicate_command
|
||||
name = "syndicate ID card"
|
||||
desc = "An ID straight from the Syndicate."
|
||||
registered_name = "Syndicate"
|
||||
assignment = "Syndicate Overlord"
|
||||
access = list(access_syndicate, access_external_airlocks)
|
||||
/obj/item/weapon/card/id/gold/captain/New()
|
||||
access = get_all_station_access()
|
||||
..()
|
||||
|
||||
/obj/item/weapon/card/id/captains_spare
|
||||
name = "colony director's spare ID"
|
||||
@@ -239,6 +146,7 @@
|
||||
item_state = "gold_id"
|
||||
registered_name = "Colony Director"
|
||||
assignment = "Colony Director"
|
||||
|
||||
/obj/item/weapon/card/id/captains_spare/New()
|
||||
access = get_all_station_access()
|
||||
..()
|
||||
@@ -260,10 +168,15 @@
|
||||
icon_state = "centcom"
|
||||
registered_name = "Central Command"
|
||||
assignment = "General"
|
||||
New()
|
||||
|
||||
/obj/item/weapon/card/id/centcom/New()
|
||||
access = get_all_centcom_access()
|
||||
..()
|
||||
|
||||
/obj/item/weapon/card/id/centcom/station/New()
|
||||
..()
|
||||
access |= get_all_station_access()
|
||||
|
||||
/obj/item/weapon/card/id/centcom/ERT
|
||||
name = "\improper Emergency Response Team ID"
|
||||
assignment = "Emergency Response Team"
|
||||
@@ -279,6 +192,27 @@
|
||||
icon_state = "med"
|
||||
primary_color = rgb(189,237,237)
|
||||
secondary_color = rgb(223,255,255)
|
||||
access = list(access_medical, access_medical_equip)
|
||||
|
||||
/obj/item/weapon/card/id/medical/doctor/New()
|
||||
..()
|
||||
access |= list(access_morgue, access_surgery, access_virology, access_eva)
|
||||
|
||||
/obj/item/weapon/card/id/medical/chemist/New()
|
||||
..()
|
||||
access |= list(access_chemistry)
|
||||
|
||||
/obj/item/weapon/card/id/medical/geneticist/New()
|
||||
..()
|
||||
access |= list(access_morgue, access_genetics)
|
||||
|
||||
/obj/item/weapon/card/id/medical/psychiatrist/New()
|
||||
..()
|
||||
access |= list(access_psychiatrist)
|
||||
|
||||
/obj/item/weapon/card/id/medical/paramedic/New()
|
||||
..()
|
||||
access |= list(access_morgue, access_eva, access_maint_tunnels, access_external_airlocks)
|
||||
|
||||
/obj/item/weapon/card/id/medical/head
|
||||
name = "identification card"
|
||||
@@ -287,12 +221,29 @@
|
||||
primary_color = rgb(189,237,237)
|
||||
secondary_color = rgb(255,223,127)
|
||||
|
||||
/obj/item/weapon/card/id/medical/head/New()
|
||||
access |= list(access_morgue, access_genetics, access_heads, access_chemistry, access_virology, access_cmo, access_surgery, access_RC_announce,
|
||||
access_keycard_auth, access_sec_doors, access_psychiatrist, access_eva, access_external_airlocks, access_maint_tunnels)
|
||||
|
||||
/obj/item/weapon/card/id/security
|
||||
name = "identification card"
|
||||
desc = "A card issued to station security staff."
|
||||
icon_state = "sec"
|
||||
primary_color = rgb(189,47,0)
|
||||
secondary_color = rgb(223,127,95)
|
||||
access = list(access_security, access_sec_doors, access_maint_tunnels, access_external_airlocks, access_eva)
|
||||
|
||||
/obj/item/weapon/card/id/security/officer/New()
|
||||
..()
|
||||
access |= list(access_brig)
|
||||
|
||||
/obj/item/weapon/card/id/security/detective/New()
|
||||
..()
|
||||
access |= list(access_forensics_lockers, access_morgue)
|
||||
|
||||
/obj/item/weapon/card/id/security/warden/New()
|
||||
..()
|
||||
access |= list(access_brig, access_armory)
|
||||
|
||||
/obj/item/weapon/card/id/security/head
|
||||
name = "identification card"
|
||||
@@ -301,12 +252,27 @@
|
||||
primary_color = rgb(189,47,0)
|
||||
secondary_color = rgb(255,223,127)
|
||||
|
||||
/obj/item/weapon/card/id/security/head/New()
|
||||
..()
|
||||
access |= list(access_brig, access_armory, access_forensics_lockers, access_morgue, access_all_personal_lockers,
|
||||
access_research, access_engine, access_mining, access_medical, access_construction, access_mailsorting,
|
||||
access_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway)
|
||||
|
||||
/obj/item/weapon/card/id/engineering
|
||||
name = "identification card"
|
||||
desc = "A card issued to station engineering staff."
|
||||
icon_state = "eng"
|
||||
primary_color = rgb(189,94,0)
|
||||
secondary_color = rgb(223,159,95)
|
||||
access = list(access_eva, access_engine, access_maint_tunnels, access_construction, access_external_airlocks)
|
||||
|
||||
/obj/item/weapon/card/id/engineering/engineer/New()
|
||||
..()
|
||||
access |= list(access_engine_equip, access_tech_storage)
|
||||
|
||||
/obj/item/weapon/card/id/engineering/atmos/New()
|
||||
..()
|
||||
access |= list(access_atmospherics, access_emergency_storage)
|
||||
|
||||
/obj/item/weapon/card/id/engineering/head
|
||||
name = "identification card"
|
||||
@@ -315,12 +281,30 @@
|
||||
primary_color = rgb(189,94,0)
|
||||
secondary_color = rgb(255,223,127)
|
||||
|
||||
/obj/item/weapon/card/id/engineering/head/New()
|
||||
..()
|
||||
access |= list(access_engine_equip, access_tech_storage, access_teleporter, access_atmospherics, access_emergency_storage,
|
||||
access_heads, access_sec_doors, access_ce, access_RC_announce, access_keycard_auth, access_tcomsat, access_ai_upload)
|
||||
|
||||
/obj/item/weapon/card/id/science
|
||||
name = "identification card"
|
||||
desc = "A card issued to station science staff."
|
||||
icon_state = "sci"
|
||||
primary_color = rgb(142,47,142)
|
||||
secondary_color = rgb(191,127,191)
|
||||
access = list(access_research)
|
||||
|
||||
/obj/item/weapon/card/id/science/scientist/New()
|
||||
..()
|
||||
access |= list(access_tox, access_tox_storage, access_xenoarch)
|
||||
|
||||
/obj/item/weapon/card/id/science/xenobiologist/New()
|
||||
..()
|
||||
access |= list(access_xenobiology, access_hydroponics, access_tox_storage)
|
||||
|
||||
/obj/item/weapon/card/id/science/roboticist/New()
|
||||
..()
|
||||
access |= list(access_robotics, access_tech_storage, access_morgue)
|
||||
|
||||
/obj/item/weapon/card/id/science/head
|
||||
name = "identification card"
|
||||
@@ -329,12 +313,27 @@
|
||||
primary_color = rgb(142,47,142)
|
||||
secondary_color = rgb(255,223,127)
|
||||
|
||||
/obj/item/weapon/card/id/science/head/New()
|
||||
..()
|
||||
access |= list(access_rd, access_heads, access_tox, access_genetics, access_morgue, access_tox_storage, access_teleporter, access_sec_doors,
|
||||
access_robotics, access_xenobiology, access_ai_upload, access_tech_storage, access_RC_announce, access_keycard_auth,
|
||||
access_tcomsat, access_gateway, access_xenoarch)
|
||||
|
||||
/obj/item/weapon/card/id/cargo
|
||||
name = "identification card"
|
||||
desc = "A card issued to station cargo staff."
|
||||
icon_state = "cargo"
|
||||
primary_color = rgb(142,94,0)
|
||||
secondary_color = rgb(191,159,95)
|
||||
access = list(access_mailsorting)
|
||||
|
||||
/obj/item/weapon/card/id/cargo/cargo_tech/New()
|
||||
..()
|
||||
access |= list(access_maint_tunnels, access_cargo, access_cargo_bot)
|
||||
|
||||
/obj/item/weapon/card/id/cargo/mining/New()
|
||||
..()
|
||||
access |= list(access_mining, access_mining_station)
|
||||
|
||||
/obj/item/weapon/card/id/cargo/head
|
||||
name = "identification card"
|
||||
@@ -343,12 +342,45 @@
|
||||
primary_color = rgb(142,94,0)
|
||||
secondary_color = rgb(255,223,127)
|
||||
|
||||
/obj/item/weapon/card/id/cargo/head/New()
|
||||
..()
|
||||
access |= list(access_maint_tunnels, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station)
|
||||
|
||||
/obj/item/weapon/card/id/civilian
|
||||
name = "identification card"
|
||||
desc = "A card issued to station civilian staff."
|
||||
icon_state = "civ"
|
||||
primary_color = rgb(0,94,142)
|
||||
secondary_color = rgb(95,159,191)
|
||||
access = list()
|
||||
|
||||
/obj/item/weapon/card/id/civilian/bartender/New()
|
||||
..()
|
||||
access |= list(access_bar)
|
||||
|
||||
/obj/item/weapon/card/id/civilian/botanist/New()
|
||||
..()
|
||||
access |= list(access_hydroponics)
|
||||
|
||||
/obj/item/weapon/card/id/civilian/chaplain/New()
|
||||
..()
|
||||
access |= list(access_chapel_office, access_crematorium)
|
||||
|
||||
/obj/item/weapon/card/id/civilian/chef/New()
|
||||
..()
|
||||
access |= list(access_kitchen)
|
||||
|
||||
/obj/item/weapon/card/id/civilian/internal_affairs_agent/New()
|
||||
..()
|
||||
access |= list(access_lawyer, access_sec_doors, access_heads)
|
||||
|
||||
/obj/item/weapon/card/id/civilian/janitor/New()
|
||||
..()
|
||||
access |= list(access_janitor, access_maint_tunnels)
|
||||
|
||||
/obj/item/weapon/card/id/civilian/librarian/New()
|
||||
..()
|
||||
access |= list(access_library)
|
||||
|
||||
/obj/item/weapon/card/id/civilian/head //This is not the HoP. There's no position that uses this right now.
|
||||
name = "identification card"
|
||||
@@ -27,12 +27,12 @@
|
||||
var/obj/item/weapon/card/id/I = O
|
||||
src.access |= I.access
|
||||
if(player_is_antag(user.mind))
|
||||
user << "<span class='notice'>The microscanner activates as you pass it over the ID, copying its access.</span>"
|
||||
to_chat(user, "<span class='notice'>The microscanner activates as you pass it over the ID, copying its access.</span>")
|
||||
|
||||
/obj/item/weapon/card/id/syndicate/attack_self(mob/user as mob)
|
||||
// We use the fact that registered_name is not unset should the owner be vaporized, to ensure the id doesn't magically become unlocked.
|
||||
if(!registered_user && register_user(user))
|
||||
user << "<span class='notice'>The microscanner marks you as its owner, preventing others from accessing its internals.</span>"
|
||||
to_chat(user, "<span class='notice'>The microscanner marks you as its owner, preventing others from accessing its internals.</span>")
|
||||
if(registered_user == user)
|
||||
switch(alert("Would you like edit the ID, or show it?","Show or Edit?", "Edit","Show"))
|
||||
if("Edit")
|
||||
@@ -209,3 +209,10 @@
|
||||
|
||||
/datum/card_state/dd_SortValue()
|
||||
return name
|
||||
|
||||
/obj/item/weapon/card/id/syndicate_command
|
||||
name = "syndicate ID card"
|
||||
desc = "An ID straight from the Syndicate."
|
||||
registered_name = "Syndicate"
|
||||
assignment = "Syndicate Overlord"
|
||||
access = list(access_syndicate, access_external_airlocks)
|
||||
@@ -112,7 +112,7 @@ var/list/admin_verbs_sounds = list(
|
||||
)
|
||||
var/list/admin_verbs_fun = list(
|
||||
/client/proc/object_talk,
|
||||
/client/proc/cmd_admin_dress,
|
||||
/datum/admins/proc/cmd_admin_dress,
|
||||
/client/proc/cmd_admin_gib_self,
|
||||
/client/proc/drop_bomb,
|
||||
/client/proc/everyone_random,
|
||||
@@ -255,7 +255,7 @@ var/list/admin_verbs_hideable = list(
|
||||
/client/proc/play_sound,
|
||||
/client/proc/play_server_sound,
|
||||
/client/proc/object_talk,
|
||||
/client/proc/cmd_admin_dress,
|
||||
/datum/admins/proc/cmd_admin_dress,
|
||||
/client/proc/cmd_admin_gib_self,
|
||||
/client/proc/drop_bomb,
|
||||
/client/proc/cinematic,
|
||||
|
||||
@@ -385,411 +385,32 @@
|
||||
for(var/areatype in areas_without_camera)
|
||||
world << "* [areatype]"
|
||||
|
||||
/client/proc/cmd_admin_dress()
|
||||
/datum/admins/proc/cmd_admin_dress()
|
||||
set category = "Fun"
|
||||
set name = "Select equipment"
|
||||
|
||||
var/mob/living/carbon/human/M = input("Select mob.", "Select equipment.") as null|anything in human_mob_list
|
||||
if(!M) return
|
||||
|
||||
//log_admin("[key_name(src)] has alienized [M.key].")
|
||||
var/list/dresspacks = list(
|
||||
"strip",
|
||||
"job",
|
||||
"standard space gear",
|
||||
"tournament standard red",
|
||||
"tournament standard green",
|
||||
"tournament gangster",
|
||||
"tournament chef",
|
||||
"tournament janitor",
|
||||
"pirate",
|
||||
"space pirate",
|
||||
"soviet admiral",
|
||||
"tunnel clown",
|
||||
"masked killer",
|
||||
"assassin",
|
||||
"death commando",
|
||||
"syndicate commando",
|
||||
"special ops officer",
|
||||
"blue wizard",
|
||||
"red wizard",
|
||||
"marisa wizard",
|
||||
"emergency response team",
|
||||
"nanotrasen representative",
|
||||
"nanotrasen officer",
|
||||
"nanotrasen captain"
|
||||
)
|
||||
var/dresscode = input("Select dress for [M]", "Robust quick dress shop") as null|anything in dresspacks
|
||||
if (isnull(dresscode))
|
||||
return
|
||||
feedback_add_details("admin_verb","SEQ") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
for (var/obj/item/I in M)
|
||||
if (istype(I, /obj/item/weapon/implant))
|
||||
continue
|
||||
M.drop_from_inventory(I)
|
||||
if(I.loc != M)
|
||||
qdel(I)
|
||||
switch(dresscode)
|
||||
if ("strip")
|
||||
//do nothing
|
||||
if ("job")
|
||||
var/selected_job = input("Select job", "Robust quick dress shop") as null|anything in joblist
|
||||
if (isnull(selected_job))
|
||||
if(!check_rights(R_FUN))
|
||||
return
|
||||
|
||||
var/datum/job/job = job_master.GetJob(selected_job)
|
||||
if(!job)
|
||||
var/mob/living/carbon/human/H = input("Select mob.", "Select equipment.") as null|anything in human_mob_list
|
||||
if(!H)
|
||||
return
|
||||
|
||||
job.equip(M)
|
||||
job.apply_fingerprints(M)
|
||||
job_master.spawnId(M, selected_job)
|
||||
|
||||
if ("standard space gear")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(M), slot_shoes)
|
||||
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/color/grey(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/space(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/space(M), slot_head)
|
||||
var /obj/item/weapon/tank/jetpack/J = new /obj/item/weapon/tank/jetpack/oxygen(M)
|
||||
M.equip_to_slot_or_del(J, slot_back)
|
||||
J.toggle()
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/mask/breath(M), slot_wear_mask)
|
||||
J.Topic(null, list("stat" = 1))
|
||||
if ("tournament standard red","tournament standard green") //we think stunning weapon is too overpowered to use it on tournaments. --rastaf0
|
||||
if (dresscode=="tournament standard red")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/color/red(M), slot_w_uniform)
|
||||
else
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/color/green(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(M), slot_shoes)
|
||||
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/thunderdome(M), slot_head)
|
||||
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/pulse_rifle/destroyer(M), slot_r_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_l_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/grenade/smokebomb(M), slot_r_store)
|
||||
|
||||
|
||||
if ("tournament gangster") //gangster are supposed to fight each other. --rastaf0
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/det(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(M), slot_shoes)
|
||||
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/det_trench(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/thermal/plain/monocle(M), slot_glasses)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/det(M), slot_head)
|
||||
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/revolver(M), slot_r_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/ammo_magazine/s357(M), slot_l_store)
|
||||
|
||||
if ("tournament chef") //Steven Seagal FTW
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/chef(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/chef(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/chefhat(M), slot_head)
|
||||
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/material/kitchen/rollingpin(M), slot_r_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_l_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_r_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_s_store)
|
||||
|
||||
if ("tournament janitor")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/janitor(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(M), slot_shoes)
|
||||
var/obj/item/weapon/storage/backpack/backpack = new(M)
|
||||
for(var/obj/item/I in backpack)
|
||||
qdel(I)
|
||||
M.equip_to_slot_or_del(backpack, slot_back)
|
||||
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/mop(M), slot_r_hand)
|
||||
var/obj/item/weapon/reagent_containers/glass/bucket/bucket = new(M)
|
||||
bucket.reagents.add_reagent("water", 70)
|
||||
M.equip_to_slot_or_del(bucket, slot_l_hand)
|
||||
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/grenade/chem_grenade/cleaner(M), slot_r_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/grenade/chem_grenade/cleaner(M), slot_l_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/stack/tile/floor(M), slot_in_backpack)
|
||||
M.equip_to_slot_or_del(new /obj/item/stack/tile/floor(M), slot_in_backpack)
|
||||
M.equip_to_slot_or_del(new /obj/item/stack/tile/floor(M), slot_in_backpack)
|
||||
M.equip_to_slot_or_del(new /obj/item/stack/tile/floor(M), slot_in_backpack)
|
||||
M.equip_to_slot_or_del(new /obj/item/stack/tile/floor(M), slot_in_backpack)
|
||||
M.equip_to_slot_or_del(new /obj/item/stack/tile/floor(M), slot_in_backpack)
|
||||
M.equip_to_slot_or_del(new /obj/item/stack/tile/floor(M), slot_in_backpack)
|
||||
|
||||
if ("pirate")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/pirate(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/brown(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/bandana(M), slot_head)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/eyepatch(M), slot_glasses)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/melee/energy/sword/pirate(M), slot_r_hand)
|
||||
|
||||
if ("space pirate")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/pirate(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/brown(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/space/pirate(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/space/pirate(M), slot_head)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/eyepatch(M), slot_glasses)
|
||||
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/melee/energy/sword/pirate(M), slot_r_hand)
|
||||
|
||||
if ("soviet soldier")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/soviet(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/ushanka(M), slot_head)
|
||||
|
||||
if("tunnel clown")//Tunnel clowns rule!
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/clown(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/clown_shoes(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(M), slot_gloves)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/clown_hat(M), slot_wear_mask)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/thermal/plain/monocle(M), slot_glasses)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/hooded/chaplain_hoodie(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/bikehorn(M), slot_r_store)
|
||||
|
||||
var/obj/item/weapon/card/id/W = new(M)
|
||||
W.name = "[M.real_name]'s ID Card"
|
||||
W.access = get_all_station_access()
|
||||
W.assignment = "Tunnel Clown!"
|
||||
W.registered_name = M.real_name
|
||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
||||
|
||||
var/obj/item/weapon/material/twohanded/fireaxe/fire_axe = new(M)
|
||||
M.equip_to_slot_or_del(fire_axe, slot_r_hand)
|
||||
|
||||
if("masked killer")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/overalls(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/white(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/sterile/latex(M), slot_gloves)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/mask/surgical(M), slot_wear_mask)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/welding(M), slot_head)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/thermal/plain/monocle(M), slot_glasses)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/apron(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_l_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/surgical/scalpel(M), slot_r_store)
|
||||
|
||||
var/obj/item/weapon/material/twohanded/fireaxe/fire_axe = new(M)
|
||||
M.equip_to_slot_or_del(fire_axe, slot_r_hand)
|
||||
|
||||
for(var/obj/item/carried_item in M.contents)
|
||||
if(!istype(carried_item, /obj/item/weapon/implant))//If it's not an implant.
|
||||
carried_item.add_blood(M)//Oh yes, there will be blood...
|
||||
|
||||
if("assassin")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/suit_jacket(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(M), slot_gloves)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(M), slot_glasses)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/accessory/wcoat(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/melee/energy/sword(M), slot_l_store)
|
||||
|
||||
var/obj/item/weapon/storage/secure/briefcase/sec_briefcase = new(M)
|
||||
for(var/obj/item/briefcase_item in sec_briefcase)
|
||||
qdel(briefcase_item)
|
||||
for(var/i=3, i>0, i--)
|
||||
sec_briefcase.contents += new /obj/item/weapon/spacecash/c1000
|
||||
sec_briefcase.contents += new /obj/item/weapon/gun/energy/crossbow
|
||||
sec_briefcase.contents += new /obj/item/weapon/gun/projectile/revolver/mateba
|
||||
sec_briefcase.contents += new /obj/item/ammo_magazine/s357
|
||||
sec_briefcase.contents += new /obj/item/weapon/plastique
|
||||
M.equip_to_slot_or_del(sec_briefcase, slot_l_hand)
|
||||
|
||||
var/obj/item/device/pda/heads/pda = new(M)
|
||||
pda.owner = M.real_name
|
||||
pda.ownjob = "Reaper"
|
||||
pda.name = "PDA-[M.real_name] ([pda.ownjob])"
|
||||
|
||||
M.equip_to_slot_or_del(pda, slot_belt)
|
||||
|
||||
var/obj/item/weapon/card/id/syndicate/W = new(M)
|
||||
W.name = "[M.real_name]'s ID Card"
|
||||
W.access = get_all_station_access()
|
||||
W.assignment = "Reaper"
|
||||
W.registered_name = M.real_name
|
||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
||||
|
||||
if("death commando")//Was looking to add this for a while.
|
||||
deathsquad.equip(M)
|
||||
|
||||
if("syndicate commando")
|
||||
commandos.equip(M)
|
||||
|
||||
if("nanotrasen representative")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/centcom(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/white(M), slot_gloves)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/hop(M), slot_l_ear)
|
||||
|
||||
var/obj/item/device/pda/heads/pda = new(M)
|
||||
pda.owner = M.real_name
|
||||
pda.ownjob = "NanoTrasen Navy Representative"
|
||||
pda.name = "PDA-[M.real_name] ([pda.ownjob])"
|
||||
|
||||
M.equip_to_slot_or_del(pda, slot_r_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(M), slot_l_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/clipboard(M), slot_belt)
|
||||
|
||||
var/obj/item/weapon/card/id/W = new(M)
|
||||
W.name = "[M.real_name]'s ID Card"
|
||||
W.icon_state = "centcom"
|
||||
W.item_state = "id_inv"
|
||||
W.access = get_all_station_access()
|
||||
W.access += list("VIP Guest","Custodian","Thunderdome Overseer","Intel Officer","Medical Officer","Death Commando","Research Officer")
|
||||
W.assignment = "NanoTrasen Navy Representative"
|
||||
W.registered_name = M.real_name
|
||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
||||
|
||||
if("nanotrasen officer")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/centcom_officer(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/white(M), slot_gloves)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/captain(M), slot_l_ear)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/beret/centcom/officer(M), slot_head)
|
||||
|
||||
var/obj/item/device/pda/heads/pda = new(M)
|
||||
pda.owner = M.real_name
|
||||
pda.ownjob = "NanoTrasen Navy Officer"
|
||||
pda.name = "PDA-[M.real_name] ([pda.ownjob])"
|
||||
|
||||
M.equip_to_slot_or_del(pda, slot_r_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(M), slot_l_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/gun/energy(M), slot_belt)
|
||||
|
||||
var/obj/item/weapon/card/id/centcom/W = new(M)
|
||||
W.name = "[M.real_name]'s ID Card"
|
||||
W.access = get_all_station_access()
|
||||
W.access += get_all_centcom_access()
|
||||
W.assignment = "NanoTrasen Navy Officer"
|
||||
W.registered_name = M.real_name
|
||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
||||
|
||||
|
||||
if("nanotrasen captain")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/centcom_captain(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/white(M), slot_gloves)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/captain(M), slot_l_ear)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/beret/centcom/captain(M), slot_head)
|
||||
|
||||
var/obj/item/device/pda/heads/pda = new(M)
|
||||
pda.owner = M.real_name
|
||||
pda.ownjob = "NanoTrasen Navy Captain"
|
||||
pda.name = "PDA-[M.real_name] ([pda.ownjob])"
|
||||
|
||||
M.equip_to_slot_or_del(pda, slot_r_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(M), slot_l_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/gun/energy(M), slot_belt)
|
||||
|
||||
var/obj/item/weapon/card/id/centcom/W = new(M)
|
||||
W.name = "[M.real_name]'s ID Card"
|
||||
W.access = get_all_station_access()
|
||||
W.access += get_all_centcom_access()
|
||||
W.assignment = "NanoTrasen Navy Captain"
|
||||
W.registered_name = M.real_name
|
||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
||||
|
||||
if("emergency response team")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/centcom_officer(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/boots/swat(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/swat(M), slot_gloves)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset/ert(M), slot_l_ear)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/gun(M), slot_belt)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(M), slot_glasses)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(M), slot_back)
|
||||
|
||||
var/obj/item/weapon/card/id/W = new(M)
|
||||
W.name = "[M.real_name]'s ID Card"
|
||||
W.icon_state = "centcom"
|
||||
W.access = get_all_station_access()
|
||||
W.access += get_all_centcom_access()
|
||||
W.assignment = "Emergency Response Team"
|
||||
W.registered_name = M.real_name
|
||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
||||
|
||||
if("special ops officer")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/syndicate/combat(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/swat/officer(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/boots/combat(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/combat(M), slot_gloves)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/captain(M), slot_l_ear)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/thermal/plain/eyepatch(M), slot_glasses)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/mask/smokable/cigarette/cigar/havana(M), slot_wear_mask)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/space/deathsquad/beret(M), slot_head)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/pulse_rifle/M1911(M), slot_belt)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/flame/lighter/zippo(M), slot_r_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(M), slot_back)
|
||||
|
||||
var/obj/item/weapon/card/id/W = new(M)
|
||||
W.name = "[M.real_name]'s ID Card"
|
||||
W.icon_state = "centcom"
|
||||
W.access = get_all_station_access()
|
||||
W.access += get_all_centcom_access()
|
||||
W.assignment = "Special Operations Officer"
|
||||
W.registered_name = M.real_name
|
||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
||||
|
||||
if("blue wizard")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/wizard(M), slot_head)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/teleportation_scroll(M), slot_r_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/spellbook(M), slot_r_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/staff(M), slot_l_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack(M), slot_back)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/storage/box(M), slot_in_backpack)
|
||||
|
||||
if("red wizard")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe/red(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/wizard/red(M), slot_head)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/teleportation_scroll(M), slot_r_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/spellbook(M), slot_r_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/staff(M), slot_l_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack(M), slot_back)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/storage/box(M), slot_in_backpack)
|
||||
|
||||
if("marisa wizard")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe/marisa(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal/marisa(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/wizard/marisa(M), slot_head)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/teleportation_scroll(M), slot_r_store)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/spellbook(M), slot_r_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/staff(M), slot_l_hand)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack(M), slot_back)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/storage/box(M), slot_in_backpack)
|
||||
if("soviet admiral")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/hgpiratecap(M), slot_head)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/boots/combat(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/combat(M), slot_gloves)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/captain(M), slot_l_ear)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/thermal/plain/eyepatch(M), slot_glasses)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/hgpirate(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(M), slot_back)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/revolver/mateba(M), slot_belt)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/soviet(M), slot_w_uniform)
|
||||
var/obj/item/weapon/card/id/W = new(M)
|
||||
W.name = "[M.real_name]'s ID Card"
|
||||
W.icon_state = "centcom"
|
||||
W.access = get_all_station_access()
|
||||
W.access += get_all_centcom_access()
|
||||
W.assignment = "Admiral"
|
||||
W.registered_name = M.real_name
|
||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
||||
|
||||
M.regenerate_icons()
|
||||
|
||||
log_admin("[key_name(usr)] changed the equipment of [key_name(M)] to [dresscode].")
|
||||
message_admins("<font color='blue'>[key_name_admin(usr)] changed the equipment of [key_name_admin(M)] to [dresscode]..</font>", 1)
|
||||
var/decl/hierarchy/outfit/outfit = input("Select outfit.", "Select equipment.") as null|anything in outfits()
|
||||
if(!outfit)
|
||||
return
|
||||
|
||||
feedback_add_details("admin_verb","SEQ")
|
||||
dressup_human(H, outfit)
|
||||
|
||||
/proc/dressup_human(var/mob/living/carbon/human/H, var/decl/hierarchy/outfit/outfit, var/undress = TRUE)
|
||||
if(!H || !outfit)
|
||||
return
|
||||
if(undress)
|
||||
H.delete_inventory(TRUE)
|
||||
outfit.equip(H)
|
||||
log_and_message_admins("changed the equipment of [key_name(H)] to [outfit.name].")
|
||||
|
||||
/client/proc/startSinglo()
|
||||
|
||||
set category = "Debug"
|
||||
|
||||
24
polaris.dme
24
polaris.dme
@@ -224,6 +224,25 @@
|
||||
#include "code\datums\observation\turf_changed.dm"
|
||||
#include "code\datums\observation\unequipped.dm"
|
||||
#include "code\datums\observation\~cleanup.dm"
|
||||
#include "code\datums\outfits\_defines.dm"
|
||||
#include "code\datums\outfits\horror_killers.dm"
|
||||
#include "code\datums\outfits\misc.dm"
|
||||
#include "code\datums\outfits\nanotrasen.dm"
|
||||
#include "code\datums\outfits\outfit.dm"
|
||||
#include "code\datums\outfits\pirates.dm"
|
||||
#include "code\datums\outfits\spec_op.dm"
|
||||
#include "code\datums\outfits\tournament.dm"
|
||||
#include "code\datums\outfits\wizardry.dm"
|
||||
#include "code\datums\outfits\jobs\_defines.dm"
|
||||
#include "code\datums\outfits\jobs\cargo.dm"
|
||||
#include "code\datums\outfits\jobs\civilian.dm"
|
||||
#include "code\datums\outfits\jobs\command.dm"
|
||||
#include "code\datums\outfits\jobs\engineering.dm"
|
||||
#include "code\datums\outfits\jobs\job.dm"
|
||||
#include "code\datums\outfits\jobs\medical.dm"
|
||||
#include "code\datums\outfits\jobs\misc.dm"
|
||||
#include "code\datums\outfits\jobs\science.dm"
|
||||
#include "code\datums\outfits\jobs\security.dm"
|
||||
#include "code\datums\repositories\cameras.dm"
|
||||
#include "code\datums\repositories\crew.dm"
|
||||
#include "code\datums\repositories\decls.dm"
|
||||
@@ -841,8 +860,6 @@
|
||||
#include "code\game\objects\items\weapons\AI_modules.dm"
|
||||
#include "code\game\objects\items\weapons\autopsy.dm"
|
||||
#include "code\game\objects\items\weapons\candle.dm"
|
||||
#include "code\game\objects\items\weapons\cards_ids.dm"
|
||||
#include "code\game\objects\items\weapons\cards_ids_syndicate.dm"
|
||||
#include "code\game\objects\items\weapons\cigs_lighters.dm"
|
||||
#include "code\game\objects\items\weapons\clown_items.dm"
|
||||
#include "code\game\objects\items\weapons\cosmetics.dm"
|
||||
@@ -910,6 +927,9 @@
|
||||
#include "code\game\objects\items\weapons\grenades\grenade.dm"
|
||||
#include "code\game\objects\items\weapons\grenades\smokebomb.dm"
|
||||
#include "code\game\objects\items\weapons\grenades\spawnergrenade.dm"
|
||||
#include "code\game\objects\items\weapons\id cards\cards.dm"
|
||||
#include "code\game\objects\items\weapons\id cards\station_ids.dm"
|
||||
#include "code\game\objects\items\weapons\id cards\syndicate_ids.dm"
|
||||
#include "code\game\objects\items\weapons\implants\implant.dm"
|
||||
#include "code\game\objects\items\weapons\implants\implantcase.dm"
|
||||
#include "code\game\objects\items\weapons\implants\implantchair.dm"
|
||||
|
||||
Reference in New Issue
Block a user