-
Notifications
You must be signed in to change notification settings - Fork 92
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
52b4f6a
commit 2be739d
Showing
8 changed files
with
266 additions
and
22 deletions.
There are no files selected for viewing
41 changes: 41 additions & 0 deletions
41
code/game/machinery/vending/vendor_types/antag/antag_clothing.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
//------------ADAPTIVE ANTAG CLOSET--------------- | ||
//Spawn one of these bad boys and you will have a proper automated closet for CLF/UPP players (for now, more can be always added later) | ||
|
||
/obj/structure/machinery/cm_vending/clothing/antag | ||
name = "\improper Suspicious Automated Equipment Rack" | ||
desc = "While similar in function to ColMarTech automated racks, this one is clearly not of USCM origin. Contains various equipment." | ||
icon_state = "antag_clothing" | ||
req_one_access = list(ACCESS_ILLEGAL_PIRATE, ACCESS_UPP_GENERAL, ACCESS_CLF_GENERAL) | ||
req_access = null | ||
|
||
listed_products = list() | ||
|
||
/obj/structure/machinery/cm_vending/clothing/antag/Initialize() | ||
. = ..() | ||
vend_flags |= VEND_FACTION_THEMES | ||
|
||
/obj/structure/machinery/cm_vending/clothing/antag/get_listed_products(mob/user) | ||
if(!user) | ||
var/list/all_equipment = list() | ||
var/list/presets = typesof(/datum/equipment_preset) | ||
for(var/i in presets) | ||
var/datum/equipment_preset/eq = new i | ||
var/list/equipment = eq.get_antag_clothing_equipment() | ||
if(LAZYLEN(equipment)) | ||
all_equipment += equipment | ||
qdel(eq) | ||
return all_equipment | ||
|
||
if(!ishuman(user)) | ||
return | ||
var/mob/living/carbon/human/H = user | ||
var/list/products_sets = list() | ||
if(H.assigned_equipment_preset) | ||
if(!(H.assigned_equipment_preset.type in listed_products)) | ||
listed_products[H.assigned_equipment_preset.type] = H.assigned_equipment_preset.get_antag_clothing_equipment() | ||
products_sets = listed_products[H.assigned_equipment_preset.type] | ||
else | ||
if(!(/datum/equipment_preset/clf in listed_products)) | ||
listed_products[/datum/equipment_preset/clf] = GLOB.gear_path_presets_list[/datum/equipment_preset/clf].get_antag_clothing_equipment() | ||
products_sets = listed_products[/datum/equipment_preset/clf] | ||
return products_sets |
109 changes: 109 additions & 0 deletions
109
code/game/machinery/vending/vendor_types/antag/antag_gear.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,109 @@ | ||
//------------ADAPTIVE ANTAG GEAR VENDOR--------------- | ||
|
||
/obj/structure/machinery/cm_vending/gear/antag | ||
name = "\improper Suspicious Automated Gear Rack" | ||
desc = "While similar in function to ColMarTech automated racks, this one is clearly not of USCM origin. Contains various gear." | ||
icon_state = "gear" | ||
|
||
req_one_access = list(ACCESS_ILLEGAL_PIRATE, ACCESS_UPP_GENERAL, ACCESS_CLF_GENERAL) | ||
req_access = null | ||
listed_products = list() | ||
|
||
/obj/structure/machinery/cm_vending/gear/antag/Initialize() | ||
. = ..() | ||
vend_flags |= VEND_FACTION_THEMES | ||
|
||
/obj/structure/machinery/cm_vending/gear/antag/get_listed_products(mob/user) | ||
. = list() | ||
if(!user) | ||
var/list/all_equipment = list() | ||
var/list/presets = typesof(/datum/equipment_preset) | ||
for(var/i in presets) | ||
var/datum/equipment_preset/eq = new i | ||
var/list/equipment = eq.get_antag_gear_equipment() | ||
if(LAZYLEN(equipment)) | ||
all_equipment += equipment | ||
qdel(eq) | ||
return all_equipment | ||
|
||
var/mob/living/carbon/human/human = user | ||
if(human.assigned_equipment_preset) | ||
return human.assigned_equipment_preset.get_antag_gear_equipment() | ||
else | ||
var/datum/equipment_preset/default = new /datum/equipment_preset/clf | ||
var/list/gear = default.get_antag_gear_equipment() | ||
qdel(default) | ||
return gear | ||
|
||
//--------------ESSENTIALS------------------------ | ||
|
||
/obj/effect/essentials_set/medic/upp | ||
spawned_gear_list = list( | ||
/obj/item/bodybag/cryobag, | ||
/obj/item/device/defibrillator, | ||
/obj/item/storage/firstaid/adv, | ||
/obj/item/device/healthanalyzer, | ||
/obj/item/roller, | ||
/obj/item/tool/surgery/surgical_line, | ||
/obj/item/tool/surgery/synthgraft, | ||
) | ||
|
||
/obj/effect/essentials_set/upp_heavy | ||
spawned_gear_list = list( | ||
/obj/item/weapon/gun/pkp, | ||
/obj/item/ammo_magazine/pkp, | ||
/obj/item/ammo_magazine/pkp, | ||
) | ||
|
||
/obj/effect/essentials_set/leader/upp | ||
spawned_gear_list = list( | ||
/obj/item/explosive/plastic, | ||
/obj/item/device/binoculars/range, | ||
/obj/item/map/current_map, | ||
/obj/item/storage/box/zipcuffs, | ||
) | ||
|
||
/obj/effect/essentials_set/kit/svd | ||
spawned_gear_list = list( | ||
/obj/item/weapon/gun/rifle/sniper/svd, | ||
/obj/item/ammo_magazine/sniper/svd, | ||
/obj/item/ammo_magazine/sniper/svd, | ||
/obj/item/ammo_magazine/sniper/svd, | ||
) | ||
|
||
/obj/effect/essentials_set/kit/custom_shotgun | ||
spawned_gear_list = list( | ||
/obj/item/weapon/gun/shotgun/merc, | ||
/obj/item/ammo_magazine/shotgun/incendiary, | ||
/obj/item/ammo_magazine/shotgun, | ||
/obj/item/ammo_magazine/shotgun/flechette, | ||
) | ||
|
||
/obj/effect/essentials_set/kit/m60 | ||
spawned_gear_list = list( | ||
/obj/item/weapon/gun/m60, | ||
/obj/item/ammo_magazine/m60, | ||
/obj/item/ammo_magazine/m60, | ||
) | ||
|
||
/obj/effect/essentials_set/random/clf_bonus_item | ||
spawned_gear_list = list( | ||
/obj/item/storage/pill_bottle/tramadol/skillless, | ||
/obj/item/storage/pill_bottle/tramadol/skillless, | ||
/obj/item/storage/pill_bottle/tramadol/skillless, | ||
/obj/item/tool/hatchet, | ||
/obj/item/tool/hatchet, | ||
/obj/item/weapon/twohanded/spear, | ||
/obj/item/reagent_container/spray/pepper, | ||
/obj/item/reagent_container/spray/pepper, | ||
/obj/item/reagent_container/spray/pepper, | ||
/obj/item/reagent_container/ld50_syringe/choral, | ||
/obj/item/storage/bible, | ||
/obj/item/clothing/mask/gas/pmc, | ||
/obj/item/clothing/accessory/storage/holster, | ||
/obj/item/clothing/accessory/storage/webbing, | ||
/obj/item/storage/pill_bottle/happy, | ||
/obj/item/storage/pill_bottle/happy, | ||
/obj/item/storage/pill_bottle/happy, | ||
/obj/item/explosive/grenade/smokebomb, | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
|
||
/obj/item/clothing/head/soft/trucker | ||
name = "trucker hat" | ||
desc = "It's a blue trucker hat." | ||
icon_state = "truckercap_bluesoft" | ||
cap_color = "truckercap_blue" | ||
|
||
/obj/item/clothing/head/soft/trucker/red | ||
name = "trucker hat" | ||
desc = "It's a red trucker hat." | ||
icon_state = "truckercap_redsoft" | ||
cap_color = "truckercap_red" |
97 changes: 97 additions & 0 deletions
97
code/modules/gear_presets/survivors/lv_522/forcon_survivors.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,97 @@ | ||
///*****************************LV-522 Force Recon Survivors*******************************************************/ | ||
//Nanu told me to put them here so they dont clutter up survivors.dm | ||
/datum/equipment_preset/survivor/forecon | ||
paygrade = "ME5" | ||
idtype = /obj/item/card/id/dogtag | ||
role_comm_title = "FORECON" | ||
rank = JOB_SURVIVOR | ||
faction_group = list(FACTION_USCM, FACTION_SURVIVOR) | ||
flags = EQUIPMENT_PRESET_START_OF_ROUND | ||
access = list( | ||
ACCESS_CIVILIAN_PUBLIC, | ||
ACCESS_CIVILIAN_ENGINEERING, | ||
ACCESS_CIVILIAN_LOGISTICS, | ||
) | ||
|
||
/datum/equipment_preset/survivor/forecon/load_gear(mob/living/carbon/human/new_human) | ||
var/obj/item/clothing/under/marine = new() | ||
var/obj/item/clothing/accessory/storage/droppouch/pouch = new() | ||
var/obj/item/clothing/accessory/ranks/marine/e5/pin = new() | ||
var/obj/item/clothing/accessory/patch/patch_uscm = new() | ||
var/obj/item/clothing/accessory/patch/forecon/patch_forecon = new() | ||
uniform.attach_accessory(new_human,pouch) | ||
uniform.attach_accessory(new_human,patch_uscm) | ||
uniform.attach_accessory(new_human,pin) | ||
uniform.attach_accessory(new_human,patch_forecon) | ||
new_human.equip_to_slot_or_del(uniform, WEAR_BODY) | ||
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/marine/forecon(new_human), WEAR_JACKET) | ||
new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/marine/satchel(new_human), WEAR_BACK) | ||
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/magazine/large(new_human), WEAR_R_STORE) | ||
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/firstaid/full/alternate(new_human), WEAR_L_STORE) | ||
new_human.equip_to_slot_or_del(new /obj/item/reagent_container/food/drinks/flask/marine(new_human), WEAR_IN_ACCESSORY) | ||
new_human.equip_to_slot_or_del(new /obj/item/facepaint/sniper(new_human), WEAR_IN_ACCESSORY) | ||
new_human.equip_to_slot_or_del(new /obj/item/storage/box/MRE(new_human), WEAR_IN_ACCESSORY) | ||
new_human.equip_to_slot_or_del(new /obj/item/tool/crowbar/tactical(new_human), WEAR_IN_JACKET) | ||
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/jungle/knife(new_human), WEAR_FEET) | ||
new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/sof(new_human), WEAR_L_EAR) | ||
GLOB.character_traits[/datum/character_trait/skills/spotter].apply_trait(new_human) | ||
|
||
/datum/equipment_preset/survivor/forecon/add_survivor_weapon_security(mob/living/carbon/human/new_human) | ||
return | ||
|
||
/datum/equipment_preset/survivor/forecon/proc/add_forecon_weapon(mob/living/carbon/human/new_human) | ||
var/random_gun = rand(1,3) | ||
switch(random_gun) | ||
if(1 , 2) | ||
new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/rifle/m41aMK1(new_human), WEAR_L_HAND) | ||
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/m41aMK1(new_human), WEAR_IN_BACK) | ||
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/m41aMK1(new_human), WEAR_IN_BACK) | ||
if(3) | ||
new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/rifle/m4ra/pve(new_human), WEAR_L_HAND) | ||
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/m4ra/pve(new_human), WEAR_IN_BACK) | ||
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/m4ra/pve(new_human), WEAR_IN_BACK) | ||
|
||
/datum/equipment_preset/survivor/forecon/add_survivor_weapon_pistol(mob/living/carbon/human/new_human) | ||
return | ||
|
||
/datum/equipment_preset/survivor/forecon/proc/add_forecon_weapon_pistol(mob/living/carbon/human/new_human) | ||
var/random_pistol = rand(1,4) | ||
switch(random_pistol) | ||
if(1 , 2) | ||
new_human.equip_to_slot_or_del(new /obj/item/storage/belt/gun/m4a3(new_human), WEAR_WAIST) | ||
new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/m1911/socom(new_human), WEAR_IN_BELT) | ||
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m1911(new_human), WEAR_IN_BELT) | ||
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m1911(new_human), WEAR_IN_BELT) | ||
if(3 , 4) | ||
new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/general_belt(new_human), WEAR_WAIST) | ||
new_human.equip_to_slot_or_del(new /obj/item/device/motiondetector(new_human),WEAR_IN_BELT) | ||
|
||
/datum/equipment_preset/survivor/forecon/add_random_survivor_equipment(mob/living/carbon/human/new_human) | ||
return | ||
|
||
/datum/equipment_preset/survivor/forecon/proc/add_forecon_equipment(mob/living/carbon/human/new_human) | ||
var/random_equipment = rand(1,3) | ||
switch(random_equipment) | ||
if(1) | ||
new_human.equip_to_slot_or_del(new /obj/item/device/walkman(new_human), WEAR_IN_BACK) | ||
new_human.equip_to_slot_or_del(new /obj/item/device/cassette_tape/indie(new_human), WEAR_IN_BACK) | ||
if(2) | ||
new_human.equip_to_slot_or_del(new /obj/item/toy/deck(new_human), WEAR_IN_ACCESSORY) | ||
if(3) | ||
new_human.equip_to_slot_or_del(new /obj/item/storage/fancy/cigarettes/lucky_strikes(new_human), WEAR_IN_ACCESSORY) | ||
|
||
/datum/equipment_preset/survivor/forecon/proc/spawn_random_headgear(mob/living/carbon/human/new_human) | ||
var/i = rand(1,10) | ||
switch(i) | ||
if (1 , 2) | ||
new_human.equip_to_slot_or_del(new /obj/item/clothing/head/cmcap(new_human), WEAR_HEAD) | ||
if (3 , 4) | ||
new_human.equip_to_slot_or_del(new /obj/item/clothing/head/cmcap/boonie(new_human), WEAR_HEAD) | ||
if (5 , 6) | ||
new_human.equip_to_slot_or_del(new /obj/item/clothing/head/durag(new_human), WEAR_HEAD) | ||
if (7 , 8) | ||
new_human.equip_to_slot_or_del(new /obj/item/clothing/head/cmcap/boonie/tan(new_human), WEAR_HEAD) | ||
if (9) | ||
new_human.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine(new_human), WEAR_HEAD) | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters