mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-28 11:02:08 +00:00
Antag loadout refactor, also deathsquads I guess (#7308)
all antags that previously had massive equip chains now use the outfit datum system
commandos + deathsquad (aka Syndicate Commandos and NT Asset Protection) have been moved out of nested alert menu hell to the new ERT system as admin-spawned ERTs, they do not appear normally
all outfit datums will now take into account backpack preferences
made the ERT job announcement / details more obvious
This commit is contained in:
@@ -2,3 +2,7 @@
|
||||
name = "Nanotrasen ERT"
|
||||
chance = 20
|
||||
spawner = /datum/ghostspawner/human/ert/nanotrasen
|
||||
|
||||
/datum/responseteam/deathsquad
|
||||
name = "Nanotrasen Asset Protection"
|
||||
spawner = /datum/ghostspawner/human/ert/deathsquad
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
/datum/responseteam/mercenary
|
||||
name = "Independent Mercenaries"
|
||||
chance = 10
|
||||
spawner = /datum/ghostspawner/human/ert/mercenary
|
||||
spawner = /datum/ghostspawner/human/ert/mercenary
|
||||
|
||||
/datum/responseteam/syndicate
|
||||
name = "Syndicate Commandos"
|
||||
spawner = /datum/ghostspawner/human/ert/commando
|
||||
@@ -154,3 +154,101 @@
|
||||
/obj/item/weapon/handcuffs/ziptie = 2,
|
||||
/obj/item/weapon/shield/energy = 1
|
||||
)
|
||||
|
||||
// Deathsquads -- Admin Spawn Only
|
||||
/datum/outfit/admin/deathsquad
|
||||
name = "Asset Protection"
|
||||
|
||||
uniform = /obj/item/clothing/under/ert
|
||||
back = null
|
||||
belt = /obj/item/weapon/storage/belt/security/tactical
|
||||
shoes = null
|
||||
gloves = null
|
||||
mask = /obj/item/clothing/mask/gas/swat
|
||||
l_ear = /obj/item/device/radio/headset/ert
|
||||
glasses = /obj/item/clothing/glasses/sunglasses/sechud/tactical
|
||||
id = /obj/item/weapon/card/id/asset_protection
|
||||
l_pocket = /obj/item/weapon/plastique
|
||||
r_pocket = /obj/item/weapon/melee/energy/sword
|
||||
l_hand = /obj/item/weapon/gun/energy/rifle/pulse
|
||||
|
||||
belt_contents = list(
|
||||
/obj/item/ammo_magazine/a454 = 2,
|
||||
/obj/item/weapon/melee/baton/loaded = 1,
|
||||
/obj/item/weapon/shield/energy = 1,
|
||||
/obj/item/weapon/grenade/flashbang = 2,
|
||||
/obj/item/weapon/handcuffs = 2,
|
||||
/obj/item/weapon/grenade/frag = 1
|
||||
)
|
||||
|
||||
var/syndie = FALSE
|
||||
|
||||
/datum/outfit/admin/deathsquad/leader
|
||||
name = "Asset Protection Lead"
|
||||
|
||||
l_pocket = /obj/item/weapon/pinpointer
|
||||
|
||||
/datum/outfit/admin/deathsquad/syndicate
|
||||
name = "Syndicate Commando"
|
||||
|
||||
uniform = /obj/item/clothing/under/syndicate
|
||||
belt = /obj/item/weapon/storage/belt/military/syndicate
|
||||
mask = /obj/item/clothing/mask/gas/syndicate
|
||||
l_ear = /obj/item/device/radio/headset/syndicate
|
||||
glasses = /obj/item/clothing/glasses/thermal
|
||||
id = /obj/item/weapon/card/id/syndicate_ert
|
||||
l_pocket = /obj/item/ammo_magazine/c45m
|
||||
l_hand = /obj/item/weapon/gun/projectile/automatic/rifle/sts35
|
||||
|
||||
belt_contents = list(
|
||||
/obj/item/ammo_magazine/c762 = 3,
|
||||
/obj/item/weapon/pinpointer = 1,
|
||||
/obj/item/weapon/shield/energy = 1,
|
||||
/obj/item/weapon/handcuffs = 1,
|
||||
/obj/item/weapon/grenade/flashbang = 1,
|
||||
/obj/item/weapon/grenade/frag = 1,
|
||||
/obj/item/weapon/plastique = 1
|
||||
)
|
||||
|
||||
syndie = TRUE
|
||||
|
||||
/datum/outfit/admin/deathsquad/syndicate/leader
|
||||
name = "Syndicate Commando Lead"
|
||||
|
||||
l_pocket = /obj/item/weapon/pinpointer
|
||||
|
||||
/datum/outfit/admin/deathsquad/get_id_access()
|
||||
return get_all_accesses()
|
||||
|
||||
/datum/outfit/admin/deathsquad/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
|
||||
. = ..()
|
||||
if(visualsOnly)
|
||||
return
|
||||
|
||||
var/obj/item/clothing/accessory/holster/armpit/hold = new(H)
|
||||
var/obj/item/weapon/gun/projectile/weapon
|
||||
|
||||
|
||||
if(syndie)
|
||||
weapon = new /obj/item/weapon/gun/projectile/silenced(H)
|
||||
else
|
||||
weapon = new /obj/item/weapon/gun/projectile/revolver/mateba(H)
|
||||
|
||||
if(weapon)
|
||||
hold.contents += weapon
|
||||
hold.holstered = weapon
|
||||
|
||||
var/obj/item/clothing/under/U = H.get_equipped_item(slot_w_uniform)
|
||||
U.attackby(hold, H)
|
||||
|
||||
var/obj/item/weapon/rig/mercrig
|
||||
|
||||
if(syndie)
|
||||
mercrig = new /obj/item/weapon/rig/merc(get_turf(H))
|
||||
else
|
||||
mercrig = new /obj/item/weapon/rig/ert/assetprotection(get_turf(H))
|
||||
|
||||
if(mercrig)
|
||||
H.put_in_hands(mercrig)
|
||||
H.equip_to_slot_or_del(mercrig, slot_back)
|
||||
addtimer(CALLBACK(mercrig, /obj/item/weapon/rig/.proc/toggle_seals, H, TRUE), 2 SECONDS)
|
||||
@@ -6,7 +6,7 @@
|
||||
//If a list of paths is supplied a random item from that list is selected
|
||||
var/uniform = null
|
||||
var/suit = null
|
||||
var/back = null
|
||||
var/back = null // Mutually exclusive with and will override backpack choices below. Use for RIGs, tanks, etc.
|
||||
var/belt = null
|
||||
var/gloves = null
|
||||
var/shoes = null
|
||||
@@ -26,6 +26,14 @@
|
||||
var/id = null
|
||||
var/pda = null
|
||||
|
||||
// Must be paths, used to allow player-pref backpack choice
|
||||
var/allow_backbag_choice = FALSE
|
||||
var/backpack = /obj/item/weapon/storage/backpack
|
||||
var/satchel = /obj/item/weapon/storage/backpack/satchel_norm
|
||||
var/satchel_alt = /obj/item/weapon/storage/backpack/satchel
|
||||
var/dufflebag = /obj/item/weapon/storage/backpack/duffel
|
||||
var/messengerbag = /obj/item/weapon/storage/backpack/messenger
|
||||
|
||||
var/internals_slot = null //ID of slot containing a gas tank
|
||||
var/list/backpack_contents = list() //In the list(path=count,otherpath=count) format
|
||||
var/list/accessory_contents = list()
|
||||
@@ -34,6 +42,23 @@
|
||||
|
||||
/datum/outfit/proc/pre_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
|
||||
//to be overriden for customization depending on client prefs,species etc
|
||||
if(allow_backbag_choice)
|
||||
var/use_job_specific = H.backbag_style == 1
|
||||
switch(H.backbag)
|
||||
if (1)
|
||||
back = null
|
||||
if (2)
|
||||
back = use_job_specific ? backpack : /obj/item/weapon/storage/backpack
|
||||
if (3)
|
||||
back = use_job_specific ? satchel : /obj/item/weapon/storage/backpack/satchel_norm
|
||||
if (4)
|
||||
back = use_job_specific ? satchel_alt : /obj/item/weapon/storage/backpack/satchel
|
||||
if (5)
|
||||
back = use_job_specific ? dufflebag : /obj/item/weapon/storage/backpack/duffel
|
||||
if (6)
|
||||
back = use_job_specific ? messengerbag : /obj/item/weapon/storage/backpack/messenger
|
||||
else
|
||||
back = backpack //Department backpack
|
||||
return
|
||||
|
||||
// Used to equip an item to the mob. Mainly to prevent copypasta for collect_not_del.
|
||||
@@ -43,8 +68,15 @@
|
||||
if(isnum(path)) //Check if parameter is not numeric. Must be a path, list of paths or name of a gear datum
|
||||
CRASH("Outfit [name] - Parameter path: [path] is numeric.")
|
||||
|
||||
if(islist(path)) //If its a list, select a random item
|
||||
var/itempath = pick(path)
|
||||
if(islist(path)) //If its a list, select a random item; if back, try to use preference
|
||||
var/list/pathlist = path
|
||||
var/itempath
|
||||
if(is_type_in_list(/obj/item/weapon/storage/backpack, pathlist) && H.backbag && pathlist.len == 5)
|
||||
if(H.backbag < 2)
|
||||
return // They don't want a backpack
|
||||
itempath = pathlist[H.backbag - 2]
|
||||
else
|
||||
itempath = pick(pathlist)
|
||||
I = new itempath(H)
|
||||
else if(gear_datums[path]) //If its something else, we´ll check if its a gearpath and try to spawn it
|
||||
var/datum/gear/G = gear_datums[path]
|
||||
|
||||
@@ -127,138 +127,6 @@
|
||||
/datum/outfit/admin/lance_operative/get_id_access()
|
||||
return get_syndicate_access(id_access)
|
||||
|
||||
/datum/outfit/admin/syndicate
|
||||
name = "Syndicate Agent"
|
||||
|
||||
uniform = /obj/item/clothing/under/syndicate
|
||||
back = /obj/item/weapon/storage/backpack
|
||||
belt = /obj/item/weapon/storage/belt/utility/full
|
||||
gloves = /obj/item/clothing/gloves/combat
|
||||
shoes = /obj/item/clothing/shoes/combat
|
||||
l_ear = /obj/item/device/radio/headset/syndicate
|
||||
id = /obj/item/weapon/card/id/syndicate
|
||||
r_pocket = /obj/item/device/radio/uplink
|
||||
backpack_contents = list(
|
||||
/obj/item/weapon/storage/box/engineer = 1,
|
||||
/obj/item/device/flashlight = 1,
|
||||
/obj/item/weapon/card/emag = 1,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket = 1,
|
||||
/obj/item/device/multitool = 1
|
||||
)
|
||||
var/id_access = "Syndicate Operative"
|
||||
var/uplink_uses = 20
|
||||
|
||||
/datum/outfit/admin/syndicate/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
|
||||
. = ..()
|
||||
if(visualsOnly)
|
||||
return
|
||||
|
||||
var/obj/item/device/radio/uplink/U = H.r_store
|
||||
if(istype(U))
|
||||
U.hidden_uplink.uplink_owner = "[H.key]"
|
||||
U.hidden_uplink.uses = uplink_uses
|
||||
|
||||
/datum/outfit/admin/syndicate/get_id_access()
|
||||
return get_syndicate_access(id_access)
|
||||
|
||||
|
||||
/datum/outfit/admin/syndicate/operative
|
||||
name = "Syndicate Operative"
|
||||
|
||||
suit = /obj/item/clothing/suit/space/void/merc
|
||||
belt = /obj/item/weapon/storage/belt/military/syndicate
|
||||
head = /obj/item/clothing/head/helmet/space/void/merc
|
||||
mask = /obj/item/clothing/mask/gas/syndicate
|
||||
l_ear = /obj/item/device/radio/headset/syndicate
|
||||
glasses = /obj/item/clothing/glasses/night
|
||||
shoes = /obj/item/clothing/shoes/magboots
|
||||
l_pocket = /obj/item/weapon/pinpointer/nukeop
|
||||
l_hand = /obj/item/weapon/tank/jetpack/void
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/weapon/storage/box/engineer = 1,
|
||||
/obj/item/weapon/reagent_containers/pill/cyanide = 1,
|
||||
/obj/item/weapon/gun/projectile/automatic/x9 = 1,
|
||||
/obj/item/ammo_magazine/c45x = 1,
|
||||
/obj/item/weapon/crowbar/red = 1,
|
||||
/obj/item/weapon/plastique = 1,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket = 1,
|
||||
/obj/item/device/flashlight = 1,
|
||||
/obj/item/clothing/shoes/combat = 1
|
||||
)
|
||||
|
||||
|
||||
/datum/outfit/admin/syndicate/officer
|
||||
name = "Syndicate Officer"
|
||||
|
||||
head = /obj/item/clothing/head/beret
|
||||
mask = /obj/item/clothing/mask/smokable/cigarette/cigar/havana
|
||||
belt = /obj/item/weapon/gun/projectile/deagle
|
||||
l_ear = /obj/item/device/radio/headset/syndicate
|
||||
l_pocket = /obj/item/weapon/pinpointer/advpinpointer
|
||||
r_pocket = null // stop them getting a radio uplink, they get an implant instead
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/weapon/storage/box/engineer = 1,
|
||||
/obj/item/device/flashlight = 1,
|
||||
/obj/item/weapon/reagent_containers/pill/cyanide = 1,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket = 1,
|
||||
/obj/item/ammo_magazine/a50 = 2,
|
||||
/obj/item/clothing/shoes/magboots = 1,
|
||||
/obj/item/weapon/flame/lighter/zippo = 1
|
||||
)
|
||||
implants = list(
|
||||
/obj/item/weapon/implant/explosive
|
||||
)
|
||||
id_access = "Syndicate Operative Leader"
|
||||
|
||||
|
||||
/datum/outfit/admin/syndicate/spy
|
||||
name = "Syndicate Spy"
|
||||
uniform = /obj/item/clothing/under/suit_jacket/really_black
|
||||
shoes = /obj/item/clothing/shoes/black/noslip
|
||||
uplink_uses = 40
|
||||
id_access = "Syndicate Agent"
|
||||
|
||||
implants = list(
|
||||
/obj/item/weapon/implant/explosive
|
||||
)
|
||||
|
||||
/datum/outfit/admin/syndicate/ninja
|
||||
name = "Infiltrator"
|
||||
|
||||
uniform = /obj/item/clothing/under/syndicate/ninja
|
||||
back = /obj/item/weapon/rig/light/ninja
|
||||
belt = /obj/item/weapon/storage/belt/ninja
|
||||
shoes = /obj/item/clothing/shoes/swat/ert
|
||||
gloves = /obj/item/clothing/ring/ninja
|
||||
mask = /obj/item/clothing/mask/balaclava
|
||||
l_ear = /obj/item/device/radio/headset/ninja
|
||||
glasses = /obj/item/clothing/glasses/sunglasses/sechud/tactical
|
||||
id = /obj/item/weapon/card/id/syndicate
|
||||
l_pocket = null
|
||||
r_pocket = null
|
||||
accessory = /obj/item/clothing/accessory/storage/pouches/black
|
||||
|
||||
backpack_contents = list()
|
||||
|
||||
belt_contents = list(
|
||||
/obj/item/device/flashlight/maglight = 1,
|
||||
/obj/item/weapon/crowbar = 1,
|
||||
/obj/item/weapon/screwdriver = 1,
|
||||
/obj/item/device/paicard = 1
|
||||
)
|
||||
|
||||
id_access = "Syndicate Agent"
|
||||
|
||||
/datum/outfit/admin/syndicate/ninja/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
|
||||
. = ..()
|
||||
if(visualsOnly)
|
||||
return
|
||||
|
||||
H.equip_to_slot_or_del(new /obj/item/device/ninja_uplink(H, H.mind), slot_l_store)
|
||||
|
||||
|
||||
/datum/outfit/admin/nt
|
||||
name = "NanoTrasen Representative"
|
||||
|
||||
|
||||
276
code/datums/outfits/outfit_antag.dm
Normal file
276
code/datums/outfits/outfit_antag.dm
Normal file
@@ -0,0 +1,276 @@
|
||||
// Anything that's coded as an "antagonist" that needs outfits should go here, unless it's an ERT.
|
||||
|
||||
/datum/outfit/admin/syndicate
|
||||
name = "Syndicate Agent"
|
||||
allow_backbag_choice = TRUE
|
||||
|
||||
uniform = /obj/item/clothing/under/syndicate
|
||||
back = null
|
||||
backpack = /obj/item/weapon/storage/backpack/syndie
|
||||
satchel = /obj/item/weapon/storage/backpack/satchel_syndie
|
||||
satchel_alt = /obj/item/weapon/storage/backpack/satchel
|
||||
dufflebag = /obj/item/weapon/storage/backpack/duffel/syndie
|
||||
messengerbag = /obj/item/weapon/storage/backpack/messenger/syndie
|
||||
belt = /obj/item/weapon/storage/belt/utility/full
|
||||
gloves = /obj/item/clothing/gloves/combat
|
||||
shoes = /obj/item/clothing/shoes/combat
|
||||
l_ear = /obj/item/device/radio/headset/syndicate
|
||||
id = /obj/item/weapon/card/id/syndicate
|
||||
r_pocket = /obj/item/device/radio/uplink
|
||||
backpack_contents = list(
|
||||
/obj/item/weapon/storage/box/engineer = 1,
|
||||
/obj/item/device/flashlight = 1,
|
||||
/obj/item/weapon/card/emag = 1,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket = 1,
|
||||
/obj/item/device/multitool = 1
|
||||
)
|
||||
|
||||
var/id_access = "Syndicate Operative"
|
||||
var/uplink_uses = DEFAULT_TELECRYSTAL_AMOUNT
|
||||
|
||||
/datum/outfit/admin/syndicate/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
|
||||
. = ..()
|
||||
if(visualsOnly)
|
||||
return
|
||||
|
||||
var/obj/item/device/radio/uplink/U = H.r_store
|
||||
if(istype(U))
|
||||
U.hidden_uplink.uplink_owner = "[H.key]"
|
||||
U.hidden_uplink.uses = uplink_uses
|
||||
|
||||
/datum/outfit/admin/syndicate/get_id_access()
|
||||
return get_syndicate_access(id_access)
|
||||
|
||||
|
||||
/datum/outfit/admin/syndicate/operative
|
||||
name = "Syndicate Operative"
|
||||
|
||||
suit = /obj/item/clothing/suit/space/void/merc
|
||||
belt = /obj/item/weapon/storage/belt/military/syndicate
|
||||
head = /obj/item/clothing/head/helmet/space/void/merc
|
||||
mask = /obj/item/clothing/mask/gas/syndicate
|
||||
l_ear = /obj/item/device/radio/headset/syndicate
|
||||
glasses = /obj/item/clothing/glasses/night
|
||||
shoes = /obj/item/clothing/shoes/magboots
|
||||
l_pocket = /obj/item/weapon/pinpointer/nukeop
|
||||
l_hand = /obj/item/weapon/tank/jetpack/void
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/weapon/storage/box/engineer = 1,
|
||||
/obj/item/weapon/reagent_containers/pill/cyanide = 1,
|
||||
/obj/item/weapon/gun/projectile/automatic/x9 = 1,
|
||||
/obj/item/ammo_magazine/c45x = 1,
|
||||
/obj/item/weapon/crowbar/red = 1,
|
||||
/obj/item/weapon/plastique = 1,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket = 1,
|
||||
/obj/item/device/flashlight = 1,
|
||||
/obj/item/clothing/shoes/combat = 1
|
||||
)
|
||||
|
||||
/datum/outfit/admin/syndicate/officer
|
||||
name = "Syndicate Officer"
|
||||
|
||||
head = /obj/item/clothing/head/beret
|
||||
mask = /obj/item/clothing/mask/smokable/cigarette/cigar/havana
|
||||
belt = /obj/item/weapon/gun/projectile/deagle
|
||||
l_ear = /obj/item/device/radio/headset/syndicate
|
||||
l_pocket = /obj/item/weapon/pinpointer/advpinpointer
|
||||
r_pocket = null // stop them getting a radio uplink, they get an implant instead
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/weapon/storage/box/engineer = 1,
|
||||
/obj/item/device/flashlight = 1,
|
||||
/obj/item/weapon/reagent_containers/pill/cyanide = 1,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/donkpocket/sinpocket = 1,
|
||||
/obj/item/ammo_magazine/a50 = 2,
|
||||
/obj/item/clothing/shoes/magboots = 1,
|
||||
/obj/item/weapon/flame/lighter/zippo = 1
|
||||
)
|
||||
implants = list(
|
||||
/obj/item/weapon/implant/explosive
|
||||
)
|
||||
id_access = "Syndicate Operative Leader"
|
||||
|
||||
/datum/outfit/admin/syndicate/spy
|
||||
name = "Syndicate Spy"
|
||||
uniform = /obj/item/clothing/under/suit_jacket/really_black
|
||||
shoes = /obj/item/clothing/shoes/black/noslip
|
||||
uplink_uses = 40
|
||||
id_access = "Syndicate Agent"
|
||||
|
||||
implants = list(
|
||||
/obj/item/weapon/implant/explosive
|
||||
)
|
||||
|
||||
// Syndicate Auxiliary Outfits (ninja, merc, etc.)
|
||||
|
||||
/datum/outfit/admin/syndicate/ninja
|
||||
name = "Infiltrator"
|
||||
|
||||
uniform = /obj/item/clothing/under/syndicate/ninja
|
||||
back = /obj/item/weapon/rig/light/ninja
|
||||
belt = /obj/item/weapon/storage/belt/ninja
|
||||
shoes = /obj/item/clothing/shoes/swat/ert
|
||||
gloves = /obj/item/clothing/ring/ninja
|
||||
mask = /obj/item/clothing/mask/balaclava
|
||||
l_ear = /obj/item/device/radio/headset/ninja
|
||||
glasses = /obj/item/clothing/glasses/sunglasses/sechud/tactical
|
||||
id = /obj/item/weapon/card/id/syndicate
|
||||
l_pocket = null
|
||||
r_pocket = null
|
||||
accessory = /obj/item/clothing/accessory/storage/pouches/black
|
||||
|
||||
backpack_contents = list()
|
||||
|
||||
belt_contents = list(
|
||||
/obj/item/device/flashlight/maglight = 1,
|
||||
/obj/item/weapon/crowbar = 1,
|
||||
/obj/item/weapon/screwdriver = 1,
|
||||
/obj/item/device/paicard = 1
|
||||
)
|
||||
|
||||
id_access = "Syndicate Agent"
|
||||
|
||||
/datum/outfit/admin/syndicate/ninja/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
|
||||
. = ..()
|
||||
if(visualsOnly)
|
||||
return
|
||||
|
||||
H.equip_to_slot_or_del(new /obj/item/device/ninja_uplink(H, H.mind), slot_l_store)
|
||||
|
||||
/datum/outfit/admin/syndicate/mercenary
|
||||
name = "Mercenary"
|
||||
|
||||
uniform = /obj/item/clothing/under/syndicate
|
||||
belt = /obj/item/weapon/storage/belt/military
|
||||
gloves = /obj/item/clothing/gloves/swat
|
||||
shoes = /obj/item/clothing/shoes/jackboots
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/weapon/storage/box/engineer = 1,
|
||||
/obj/item/weapon/reagent_containers/pill/cyanide = 1
|
||||
)
|
||||
|
||||
/datum/outfit/admin/syndicate/mercenary/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
|
||||
. = ..()
|
||||
if(visualsOnly)
|
||||
return
|
||||
|
||||
if(!H.shoes)
|
||||
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots/unathi(H), slot_shoes)
|
||||
|
||||
/datum/outfit/admin/syndicate/raider
|
||||
name = "Raider"
|
||||
|
||||
uniform = list(
|
||||
/obj/item/clothing/under/soviet,
|
||||
/obj/item/clothing/under/pirate,
|
||||
/obj/item/clothing/under/redcoat,
|
||||
/obj/item/clothing/under/serviceoveralls,
|
||||
/obj/item/clothing/under/captain_fly,
|
||||
/obj/item/clothing/under/det,
|
||||
/obj/item/clothing/under/brown,
|
||||
/obj/item/clothing/under/syndicate/tracksuit
|
||||
)
|
||||
|
||||
suit = list(
|
||||
/obj/item/clothing/suit/pirate,
|
||||
/obj/item/clothing/suit/hgpirate,
|
||||
/obj/item/clothing/suit/storage/toggle/bomber,
|
||||
/obj/item/clothing/suit/storage/toggle/leather_jacket,
|
||||
/obj/item/clothing/suit/storage/toggle/brown_jacket,
|
||||
/obj/item/clothing/suit/unathi/mantle,
|
||||
/obj/item/clothing/accessory/poncho,
|
||||
/obj/item/clothing/suit/storage/hooded/wintercoat/hoodie/grey
|
||||
)
|
||||
|
||||
shoes = list(
|
||||
/obj/item/clothing/shoes/jackboots,
|
||||
/obj/item/clothing/shoes/workboots,
|
||||
/obj/item/clothing/shoes/brown,
|
||||
/obj/item/clothing/shoes/laceup
|
||||
)
|
||||
glasses = list(
|
||||
/obj/item/clothing/glasses/thermal,
|
||||
/obj/item/clothing/glasses/eyepatch/hud/thermal,
|
||||
/obj/item/clothing/glasses/thermal/plain/monocle,
|
||||
/obj/item/clothing/glasses/thermal/aviator
|
||||
)
|
||||
head = list(
|
||||
/obj/item/clothing/head/bearpelt,
|
||||
/obj/item/clothing/head/ushanka,
|
||||
/obj/item/clothing/head/pirate,
|
||||
/obj/item/clothing/head/bandana,
|
||||
/obj/item/clothing/head/hgpiratecap
|
||||
)
|
||||
|
||||
back = null
|
||||
belt = null
|
||||
gloves = null
|
||||
l_ear = /obj/item/device/radio/headset/raider
|
||||
r_pocket = null
|
||||
id = /obj/item/weapon/storage/wallet
|
||||
|
||||
backpack_contents = list()
|
||||
|
||||
/datum/outfit/admin/syndicate/raider/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
|
||||
. = ..()
|
||||
if(visualsOnly)
|
||||
return
|
||||
|
||||
if(!H.shoes)
|
||||
var/fallback_type = pick(/obj/item/clothing/shoes/sandal, /obj/item/clothing/shoes/jackboots/unathi)
|
||||
H.equip_to_slot_or_del(new fallback_type(H), slot_shoes)
|
||||
|
||||
var/obj/item/weapon/storage/wallet/W = H.wear_id
|
||||
var/obj/item/weapon/card/id/raider/id = new(H)
|
||||
id.name = "[H.real_name]'s Passport"
|
||||
if(W)
|
||||
W.handle_item_insertion(id)
|
||||
spawn_money(rand(50,150)*10,W)
|
||||
|
||||
// Non-syndicate antag outfits
|
||||
|
||||
/datum/outfit/admin/highlander
|
||||
name = "Highlander"
|
||||
|
||||
uniform = /obj/item/clothing/under/kilt
|
||||
head = /obj/item/clothing/head/beret
|
||||
shoes = /obj/item/clothing/shoes/combat
|
||||
l_ear = /obj/item/device/radio/headset/heads/captain
|
||||
l_hand = /obj/item/weapon/material/sword
|
||||
l_pocket = /obj/item/weapon/pinpointer
|
||||
|
||||
id = /obj/item/weapon/card/id/highlander
|
||||
|
||||
/datum/outfit/admin/highlander/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
|
||||
. = ..()
|
||||
if(visualsOnly)
|
||||
return
|
||||
|
||||
var/obj/item/weapon/card/id/W = H.wear_id
|
||||
if(W)
|
||||
W.name = "[H.real_name]'s ID"
|
||||
W.registered_name = H.real_name
|
||||
|
||||
/datum/outfit/admin/wizard
|
||||
name = "Wizard"
|
||||
allow_backbag_choice = TRUE
|
||||
|
||||
uniform = /obj/item/clothing/under/lightpurple
|
||||
back = null
|
||||
backpack = /obj/item/weapon/storage/backpack/wizard
|
||||
satchel = /obj/item/weapon/storage/backpack/satchel_wizard
|
||||
satchel_alt = /obj/item/weapon/storage/backpack/satchel
|
||||
dufflebag = /obj/item/weapon/storage/backpack/duffel/wizard
|
||||
messengerbag = /obj/item/weapon/storage/backpack/messenger/wizard
|
||||
suit = /obj/item/clothing/suit/wizrobe
|
||||
head = /obj/item/clothing/head/wizard
|
||||
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/spellbook
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/weapon/storage/box = 1
|
||||
)
|
||||
Reference in New Issue
Block a user