Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Executive Officer's Weapons Vendor + More Belt Options #5179

Merged
merged 8 commits into from
Dec 25, 2023
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
70 changes: 69 additions & 1 deletion code/game/machinery/vending/vendor_types/crew/senior_officers.dm
Original file line number Diff line number Diff line change
Expand Up @@ -268,6 +268,67 @@ GLOBAL_LIST_INIT(cm_vending_clothing_cmo, list(


//------------ EXECUTIVE OFFFICER ---------------

//------------WEAPON VENDOR---------------
GLOBAL_LIST_INIT(cm_vending_gear_executive_officer, list(
Steelpoint marked this conversation as resolved.
Show resolved Hide resolved
list("CAPTAIN'S PRIMARY (CHOOSE 1)", 0, null, null, null),
list("M41A MK1 Pulse Rifle", 0, /obj/item/storage/box/guncase/m41aMK1AP, MARINE_CAN_BUY_KIT, VENDOR_ITEM_MANDATORY),
list("MK221 Tactical Shotgun", 0, /obj/effect/essentials_set/xo/shotgunpreset, MARINE_CAN_BUY_KIT, VENDOR_ITEM_MANDATORY),

list("PRIMARY AMMUNITION", 0, null, null, null),
list("M41A MK1 Magazine", 40, /obj/item/ammo_magazine/rifle/m41aMK1, null, VENDOR_ITEM_RECOMMENDED),
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

40 points?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Limits you to 3 additional mags.

I'm open to changing prices

list("M41A MK1 AP Magazine", 60, /obj/item/ammo_magazine/rifle/m41aMK1/ap, null, VENDOR_ITEM_RECOMMENDED),
list("Buckshot Shells", 20, /obj/item/ammo_magazine/shotgun/buckshot, null, VENDOR_ITEM_REGULAR),
list("Shotgun Slugs", 20, /obj/item/ammo_magazine/shotgun/slugs, null, VENDOR_ITEM_REGULAR),
list("Flechette Shells", 20, /obj/item/ammo_magazine/shotgun/flechette, null, VENDOR_ITEM_REGULAR),

list("EXPLOSIVES", 0, null, null, null),
list("HEDP Grenade Pack", 15, /obj/item/storage/box/packet/high_explosive, null, VENDOR_ITEM_REGULAR),
list("HEFA Grenade Pack", 15, /obj/item/storage/box/packet/hefa, null, VENDOR_ITEM_REGULAR),
list("WP Grenade Pack", 15, /obj/item/storage/box/packet/phosphorus, null, VENDOR_ITEM_REGULAR),

list("RAIL ATTACHMENTS", 0, null, null, null),
list("Red-Dot Sight", 15, /obj/item/attachable/reddot, null, VENDOR_ITEM_REGULAR),
list("Reflex Sight", 15, /obj/item/attachable/reflex, null, VENDOR_ITEM_REGULAR),
list("S4 2x Telescopic Mini-Scope", 15, /obj/item/attachable/scope/mini, null, VENDOR_ITEM_REGULAR),

list("Helmet Visors", 0, null, null, null),
list("Welding Visor", 5, /obj/item/device/helmet_visor/welding_visor, null, VENDOR_ITEM_RECOMMENDED),

list("UNDERBARREL ATTACHMENTS", 0, null, null, null),
list("Laser Sight", 15, /obj/item/attachable/lasersight, null, VENDOR_ITEM_REGULAR),
list("Angled Grip", 15, /obj/item/attachable/angledgrip, null, VENDOR_ITEM_REGULAR),
list("Vertical Grip", 15, /obj/item/attachable/verticalgrip, null, VENDOR_ITEM_REGULAR),
list("Underbarrel Shotgun", 15, /obj/item/attachable/attached_gun/shotgun, null, VENDOR_ITEM_REGULAR),
list("Underbarrel Extinguisher", 15, /obj/item/attachable/attached_gun/extinguisher, null, VENDOR_ITEM_REGULAR),
list("Underbarrel Flamethrower", 15, /obj/item/attachable/attached_gun/flamer, null, VENDOR_ITEM_REGULAR),
list("Underbarrel Grenade Launcher", 5, /obj/item/attachable/attached_gun/grenade, null, VENDOR_ITEM_REGULAR),

list("BARREL ATTACHMENTS", 0, null, null, null),
list("Extended Barrel", 15, /obj/item/attachable/extended_barrel, null, VENDOR_ITEM_REGULAR),
list("Recoil Compensator", 15, /obj/item/attachable/compensator, null, VENDOR_ITEM_REGULAR),
list("Suppressor", 15, /obj/item/attachable/suppressor, null, VENDOR_ITEM_REGULAR),
))

/obj/effect/essentials_set/xo/shotgunpreset
spawned_gear_list = list(
/obj/item/weapon/gun/shotgun/combat,
/obj/item/ammo_magazine/shotgun/buckshot,
/obj/item/ammo_magazine/shotgun/slugs,
)

/obj/structure/machinery/cm_vending/gear/executive_officer
name = "\improper ColMarTech Executive Officer Weapon Rack"
desc = "An automated weapons rack for the Executive Officer. It features a decent selection of weaponry meant only for the second in command of a ship."
req_access = list(ACCESS_MARINE_SENIOR)
vendor_role = list(JOB_XO)
icon_state = "guns"
use_snowflake_points = TRUE

/obj/structure/machinery/cm_vending/gear/executive_officer/get_listed_products(mob/user)
return GLOB.cm_vending_gear_executive_officer

//------------UNIFORM/GEAR VENDOR---------------
GLOBAL_LIST_INIT(cm_vending_clothing_xo, list(

list("STANDARD EQUIPMENT (TAKE ALL)", 0, null, null, null),
Expand All @@ -285,6 +346,14 @@ GLOBAL_LIST_INIT(cm_vending_clothing_xo, list(
list("Mod 88 Pistol", 0, /obj/item/storage/belt/gun/m4a3/mod88, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_REGULAR),
list("M44 Revolver", 0, /obj/item/storage/belt/gun/m44/mp, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_REGULAR),

list("BELTS (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("Military Police Belt", 0, /obj/item/storage/belt/security/MP/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
list("M276 Medical Storage Rig", 0, /obj/item/storage/belt/medical/full, 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 Holster Toolrig", 0, /obj/item/storage/belt/gun/utility/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
list("M276 M82F Holster Rig", 0, /obj/item/storage/belt/gun/flaregun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),

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_ARMOR, VENDOR_ITEM_MANDATORY),
list("Officer M10 Helmet", 0, /obj/item/clothing/head/helmet/marine/MP/SO, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY),
Expand Down Expand Up @@ -312,7 +381,6 @@ GLOBAL_LIST_INIT(cm_vending_clothing_xo, list(
list("Document Pouch", 0, /obj/item/storage/pouch/document, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
list("Shotgun Shell Pouch", 0, /obj/item/storage/pouch/shotgun, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),


list("ACCESSORIES (CHOOSE 1)", 0, null, null, null),
list("Shoulder Holster", 0, /obj/item/clothing/accessory/storage/holster, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
list("Black Webbing Vest", 0, /obj/item/clothing/accessory/storage/black_vest, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
Expand Down
58 changes: 27 additions & 31 deletions maps/map_files/USS_Almayer/USS_Almayer.dmm
Steelpoint marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -9282,11 +9282,9 @@
/turf/open/floor/plating/plating_catwalk,
/area/almayer/command/telecomms)
"aFj" = (
/obj/structure/machinery/power/apc/almayer{
dir = 1
},
/obj/structure/flora/pottedplant{
icon_state = "pottedplant_21"
/obj/structure/machinery/cm_vending/clothing/senior_officer{
density = 0;
pixel_y = 30
},
/turf/open/floor/almayer{
icon_state = "plate"
Expand Down Expand Up @@ -9328,8 +9326,12 @@
},
/area/almayer/engineering/upper_engineering)
"aFo" = (
/obj/structure/closet/secure_closet/personal/cabinet{
req_access = null
/obj/structure/machinery/cm_vending/gear/executive_officer{
pixel_y = 30;
density = 0
},
/obj/structure/machinery/power/apc/almayer{
dir = 4
},
/turf/open/floor/almayer{
icon_state = "plate"
Expand Down Expand Up @@ -10522,6 +10524,9 @@
/area/almayer/hallways/aft_hallway)
"aKE" = (
/obj/structure/machinery/light,
/obj/structure/closet/secure_closet/personal/cabinet{
req_access = null
},
/turf/open/floor/almayer,
/area/almayer/living/numbertwobunks)
"aKF" = (
Expand Down Expand Up @@ -35165,8 +35170,7 @@
"fuR" = (
/obj/structure/bed/bedroll{
desc = "A bed of cotton fabric, purposely made for a cat to comfortably sleep on.";
name = "cat bed";
pixel_y = 0
name = "cat bed"
},
/mob/living/simple_animal/cat/Jones{
dir = 8
Expand Down Expand Up @@ -42302,12 +42306,8 @@
/obj/structure/machinery/light{
dir = 4
},
/obj/item/bedsheet/hop{
pixel_y = 0
},
/obj/structure/bed{
pixel_y = 0
},
/obj/item/bedsheet/hop,
/obj/structure/bed,
/turf/open/floor/wood/ship,
/area/almayer/living/commandbunks)
"isC" = (
Expand Down Expand Up @@ -49167,13 +49167,6 @@
},
/turf/open/floor/plating,
/area/almayer/living/cryo_cells)
"lgK" = (
/obj/structure/machinery/cm_vending/clothing/senior_officer{
density = 0;
pixel_y = 30
},
/turf/open/floor/almayer,
/area/almayer/living/numbertwobunks)
"lgX" = (
/obj/structure/sign/safety/storage{
pixel_y = 32
Expand Down Expand Up @@ -55595,7 +55588,6 @@
/area/almayer/command/lifeboat)
"nKs" = (
/obj/structure/machinery/cm_vending/clothing/dress{
pixel_y = 0;
req_access = list(1)
},
/turf/open/floor/almayer{
Expand Down Expand Up @@ -70184,9 +70176,7 @@
},
/area/almayer/hallways/aft_hallway)
"tMu" = (
/obj/structure/machinery/cm_vending/clothing/commanding_officer{
pixel_y = 0
},
/obj/structure/machinery/cm_vending/clothing/commanding_officer,
/turf/open/floor/almayer{
icon_state = "cargo"
},
Expand Down Expand Up @@ -71058,9 +71048,7 @@
/area/almayer/shipboard/brig/evidence_storage)
"ueD" = (
/obj/structure/machinery/light,
/obj/structure/machinery/cm_vending/gear/commanding_officer{
pixel_y = 0
},
/obj/structure/machinery/cm_vending/gear/commanding_officer,
/turf/open/floor/almayer{
icon_state = "cargo"
},
Expand Down Expand Up @@ -76368,6 +76356,14 @@
"wcn" = (
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/upper_hull/u_f_s)
"wcK" = (
/obj/structure/flora/pottedplant{
icon_state = "pottedplant_21"
},
/turf/open/floor/almayer{
icon_state = "plate"
},
/area/almayer/living/numbertwobunks)
"wcN" = (
/obj/structure/machinery/status_display{
pixel_y = 30
Expand Down Expand Up @@ -104826,7 +104822,7 @@ dum
wVW
wVW
wVW
lgK
rvA
aGZ
awF
cST
Expand Down Expand Up @@ -105637,7 +105633,7 @@ amO
avj
awF
aFo
aGY
wcK
rvA
aqm
awF
Expand Down
Loading