-
Notifications
You must be signed in to change notification settings - Fork 565
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
SO CIC vendor quality of life tweaks (#4707)
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may not be viewable. --> # About the pull request Brings more cohesion to the SO vendor system, as well as CIC Armory. Reworking the gear/prep aspect of SOs to better reflect what gear would be reasonable for them to have IC (no machetes right out of cryo for example). - SO spawn vendors majorly cut back, with webbing, combat helmet, machete, all belts, and RTO pack removed, moving each to the _SO Armory Vendor_. The SO spawn vendor should provide purely for SO activity _within_ CIC, and I feel this is more appropriate - Added a new vendor in CIC's Armory called the 'SO Armory Vendor' to serve as a new location for the deployment gear set required by SOs. - On top of already already-mentioned moved gear, the Armory vendor adds combat gear, aviator shades (because of course), an option to specialize as either an Engineer or a Medic with their essential kit, an engineer belt! (as well as all the other belts removed from the SO spawn room) - Adds some extra items to the Armory vendor point-buy section to **finally** give SOs a reason to chew up their 45 points, notably including the RTO pack # Explain why it's good for the game I've always found it really unusual how SO spawn vendors are a bit all over the place in terms of supplied gear. With this PR, SO gear has been split into two distinct vendors, with one being firmly behind the Armory shutters to ensure that SOs aren't allowed to continually roll around the Almayer with a full combat set minus the chest piece and rifle. This way, SOs can still get basic gear needed for CIC operation from their regular vendor, but can also access a full combat set _and more_ once the Armory shutters go up, whether it's from XO deployment or code red. # Testing Photographs and Procedure <!-- Include any screenshots/videos/debugging steps of the modified code functioning successfully, ideally including edge cases. --> <details> <summary>Screenshots & Videos</summary> New SO spawn vend: https://cdn.discordapp.com/attachments/1100833406314618880/1163812305352528015/image.png?ex=6540efac&is=652e7aac&hm=5a4db3d47b2a0f6416e7b0181ad135913203512f7fb7b5c5600394d75e9856aa& Armory Vendor, the typo has since been repaired (1/2): https://cdn.discordapp.com/attachments/1100833406314618880/1163812464232775690/image.png?ex=6540efd2&is=652e7ad2&hm=b6040e631260ef77f502903b1cf65a59d18f7b2a896d45d0d0e9ce0493e2887e& Armory Vendor (2/2): https://cdn.discordapp.com/attachments/1100833406314618880/1163812566569582632/image.png?ex=6540efea&is=652e7aea&hm=186a90a37c2b6b8821de93ae476aa02733db22a9360e050900beb81d4b412a7a& New CIC Armory setup: https://cdn.discordapp.com/attachments/1100833406314618880/1163812692696498226/image.png?ex=6540f008&is=652e7b08&hm=7434e1a665e87af3683be853a388c97039f3c790ba1c17e9482347c532fca2e9& </details> # Changelog <!-- If your PR modifies aspects of the game that can be concretely observed by players or admins you should add a changelog. If your change does NOT meet this description, remove this section. Be sure to properly label your changes in the changelog. Please note that maintainers freely reserve the right to remove and add tags should they deem it appropriate. You can attempt to finagle the system all you want, but it's best to shoot for clear communication right off the bat. --> <!-- If you add a name after the ':cl', that name will be used in the changelog. You must add your CKEY after the CL if your GitHub name doesn't match. Maintainers freely reserve the right to remove and add tags should they deem it appropriate. --> :cl: add: CIC Armory SO vendor balance: Moved most combat-themed gear from SO spawn vendors, to CIC Armory vendor balance: Made RTO pack a point-buy item in CIC Armory vendor for SOs /:cl: <!-- Both :cl:'s are required for the changelog to work! -->
- Loading branch information
Showing
5 changed files
with
92 additions
and
57 deletions.
There are no files selected for viewing
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
83 changes: 83 additions & 0 deletions
83
code/game/machinery/vending/vendor_types/crew/staff_officer_armory.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,83 @@ | ||
/obj/structure/machinery/cm_vending/clothing/staff_officer_armory | ||
name = "\improper ColMarTech Staff Officer Armory Equipment Rack" | ||
desc = "An automated combat equipment vendor for Staff Officers." | ||
req_access = list(ACCESS_MARINE_COMMAND) | ||
icon_state = "mar_rack" | ||
vendor_role = list(JOB_SO) | ||
|
||
/obj/structure/machinery/cm_vending/clothing/staff_officer_armory/get_listed_products(mob/user) | ||
return GLOB.cm_vending_clothing_staff_officer_armory | ||
|
||
//------------GEAR--------------- | ||
|
||
GLOBAL_LIST_INIT(cm_vending_clothing_staff_officer_armory, list( | ||
list("COMBAT EQUIPMENT (TAKE ALL)", 0, null, null, null), | ||
list("Officer M3 Armor", 0, /obj/item/clothing/suit/storage/marine/MP/SO, MARINE_CAN_BUY_COMBAT_ARMOR, VENDOR_ITEM_MANDATORY), | ||
list("Officer M10 Helmet", 0, /obj/item/clothing/head/helmet/marine/MP/SO, MARINE_CAN_BUY_COMBAT_HELMET, VENDOR_ITEM_MANDATORY), | ||
list("Marine Combat Boots", 0, /obj/item/clothing/shoes/marine/knife, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY), | ||
list("Marine Combat Gloves", 0, /obj/item/clothing/gloves/marine, MARINE_CAN_BUY_GLOVES, VENDOR_ITEM_MANDATORY), | ||
list("MRE", 0, /obj/item/storage/box/MRE, MARINE_CAN_BUY_MRE, VENDOR_ITEM_MANDATORY), | ||
list("Aviator Shades", 0, /obj/item/clothing/glasses/sunglasses/aviator, MARINE_CAN_BUY_GLASSES, VENDOR_ITEM_REGULAR), | ||
|
||
list("SPECIALISATION KIT (CHOOSE 1)", 0, null, null, null), | ||
list("Essential Engineer Set", 0, /obj/effect/essentials_set/engi, MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_RECOMMENDED), | ||
list("Essential Medical Set", 0, /obj/effect/essentials_set/medic, MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_RECOMMENDED), | ||
|
||
list("BELT (CHOOSE 1)", 0, null, null, null), | ||
list("G8-A General Utility Pouch", 0, /obj/item/storage/backpack/general_belt, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED), | ||
list("M276 Ammo Load Rig", 0, /obj/item/storage/belt/marine, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED), | ||
list("M276 Toolbelt Rig (Full)", 0, /obj/item/storage/belt/utility/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED), | ||
list("M276 Lifesaver Bag (Full)", 0, /obj/item/storage/belt/medical/lifesaver/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR), | ||
list("M276 Medical Storage Rig (Full)", 0, /obj/item/storage/belt/medical/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR), | ||
list("M276 M39 Holster Rig", 0, /obj/item/storage/belt/gun/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR), | ||
list("M276 M82F Holster Rig", 0, /obj/item/storage/belt/gun/flaregun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR), | ||
list("M276 Shotgun Shell Loading Rig", 0, /obj/item/storage/belt/shotgun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR), | ||
list("M276 M40 Grenade Rig", 0, /obj/item/storage/belt/grenade, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR), | ||
|
||
list("POUCHES (CHOOSE 2)", 0, null, null, null), | ||
list("Autoinjector Pouch", 0, /obj/item/storage/pouch/autoinjector, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("Construction Pouch", 0, /obj/item/storage/pouch/construction, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("Document Pouch", 0, /obj/item/storage/pouch/document, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("Electronics Pouch (Full)", 0, /obj/item/storage/pouch/electronics/full, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("First-Aid Pouch (Refillable Injectors)", 0, /obj/item/storage/pouch/firstaid/full, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("First-Aid Pouch (Splints, Gauze, Ointment)", 0, /obj/item/storage/pouch/firstaid/full/alternate, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("First-Aid Pouch (Pill Packets)", 0, /obj/item/storage/pouch/firstaid/full/pills, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("First Responder Pouch", 0, /obj/item/storage/pouch/first_responder, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("Flare Pouch (Full)", 0, /obj/item/storage/pouch/flare/full, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("Fuel Tank Strap Pouch", 0, /obj/item/storage/pouch/flamertank, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("Large General Pouch", 0, /obj/item/storage/pouch/general/large, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_RECOMMENDED), | ||
list("Large Magazine Pouch", 0, /obj/item/storage/pouch/magazine/large, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("Large Shotgun Shell Pouch", 0, /obj/item/storage/pouch/shotgun/large, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("Large Pistol Magazine Pouch", 0, /obj/item/storage/pouch/magazine/pistol/large, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("Medical Pouch", 0, /obj/item/storage/pouch/medical, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("Medical Kit Pouch", 0, /obj/item/storage/pouch/medkit, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("Pistol Pouch", 0, /obj/item/storage/pouch/pistol, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("Sling Pouch", 0, /obj/item/storage/pouch/sling, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
list("Tools Pouch (Full)", 0, /obj/item/storage/pouch/tools/full, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), | ||
|
||
list("ACCESSORIES (CHOOSE 1)", 0, null, null, null), | ||
list("Black Webbing Vest", 0, /obj/item/clothing/accessory/storage/black_vest, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), | ||
list("Brown Webbing Vest", 0, /obj/item/clothing/accessory/storage/black_vest/brown_vest, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_RECOMMENDED), | ||
list("Drop Pouch", 0, /obj/item/clothing/accessory/storage/droppouch, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), | ||
list("Webbing", 0, /obj/item/clothing/accessory/storage/webbing, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), | ||
list("Shoulder Holster", 0, /obj/item/clothing/accessory/storage/holster, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), | ||
|
||
list("MASK (CHOOSE 1)", 0, null, null, null), | ||
list("Gas Mask", 0, /obj/item/clothing/mask/gas, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR), | ||
list("Heat Absorbent Coif", 0, /obj/item/clothing/mask/rebreather/scarf, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR), | ||
|
||
list("OTHER SUPPLIES", 0, null, null, null), | ||
list("Medical Helmet Optic", 5, /obj/item/device/helmet_visor/medical, null, VENDOR_ITEM_REGULAR), | ||
list("Magnetic Harness", 12, /obj/item/attachable/magnetic_harness, null, VENDOR_ITEM_REGULAR), | ||
list("Radio Telephone Pack", 15, /obj/item/storage/backpack/marine/satchel/rto, null, VENDOR_ITEM_RECOMMENDED), | ||
list("Binoculars", 5,/obj/item/device/binoculars, null, VENDOR_ITEM_REGULAR), | ||
list("Rangefinder", 8, /obj/item/device/binoculars/range, null, VENDOR_ITEM_REGULAR), | ||
list("Laser Designator", 12, /obj/item/device/binoculars/range/designator, null, VENDOR_ITEM_RECOMMENDED), | ||
list("Data Detector", 5, /obj/item/device/motiondetector/intel, null, VENDOR_ITEM_REGULAR), | ||
list("Flashlight", 1, /obj/item/device/flashlight, null, VENDOR_ITEM_RECOMMENDED), | ||
list("Fulton Recovery Device", 5, /obj/item/stack/fulton, null, VENDOR_ITEM_REGULAR), | ||
list("Motion Detector", 5, /obj/item/device/motiondetector, null, VENDOR_ITEM_REGULAR), | ||
list("Space Cleaner", 2, /obj/item/reagent_container/spray/cleaner, null, VENDOR_ITEM_REGULAR), | ||
list("Whistle", 5, /obj/item/device/whistle, null, VENDOR_ITEM_REGULAR), | ||
list("Machete Scabbard (Full)", 5, /obj/item/storage/large_holster/machete/full, null, VENDOR_ITEM_REGULAR) | ||
)) |
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