diff --git a/code/datums/ASRS.dm b/code/datums/ASRS.dm index dc5ebc362fd1..5bd82ef6c532 100644 --- a/code/datums/ASRS.dm +++ b/code/datums/ASRS.dm @@ -40,6 +40,10 @@ reference_package = /datum/supply_packs/ammo_m4a3_mag_box_ap cost = ASRS_VERY_LOW_WEIGHT +/datum/supply_packs_asrs/ammo_m4a3_mag_box_hp + reference_package = /datum/supply_packs/ammo_m4a3_mag_box_hp + cost = ASRS_VERY_LOW_WEIGHT + /datum/supply_packs_asrs/ammo_mag_box reference_package = /datum/supply_packs/ammo_mag_box cost = ASRS_VERY_LOW_WEIGHT @@ -123,3 +127,4 @@ /datum/supply_packs_asrs/ingredient reference_package = /datum/supply_packs/ingredient pool = ASRS_POOL_FOOD + cost = ASRS_VERY_LOW_WEIGHT diff --git a/code/datums/supply_packs/ammo.dm b/code/datums/supply_packs/ammo.dm index 2e81d8fed164..b8b26225a010 100644 --- a/code/datums/supply_packs/ammo.dm +++ b/code/datums/supply_packs/ammo.dm @@ -291,7 +291,7 @@ ) name = "M41AE2 HPR Magazines crate (HPR ammo box x2)" cost = 20 - containertype = /obj/structure/closet/crate + containertype = /obj/structure/closet/crate/ammo containername = "\improper M41AE2 HPR magazines crate" group = "Ammo" @@ -301,8 +301,8 @@ /obj/item/ammo_magazine/rifle/lmg/holo_target, ) name = "M41AE2 HPR Holo-Target Magazines crate (HPR HT ammo box x2)" - cost = 30 - containertype = /obj/structure/closet/crate + cost = 20 + containertype = /obj/structure/closet/crate/ammo containername = "\improper M41AE2 HPR holo-target magazines crate" group = "Ammo" diff --git a/code/datums/supply_packs/explosives.dm b/code/datums/supply_packs/explosives.dm index 78f0f3e9251a..f032d0f891b0 100644 --- a/code/datums/supply_packs/explosives.dm +++ b/code/datums/supply_packs/explosives.dm @@ -111,25 +111,25 @@ containername = "\improper explosive HEDP grenade crate (WARNING)" group = "Explosives" -/datum/supply_packs/explosives_M40_HPDP - name = "M40 HPDP white phosphorus grenades crate (x6)" +/datum/supply_packs/explosives_M40_CCDP + name = "M40 CCDP chemical compound grenades crate (x6)" contains = list( /obj/item/storage/box/packet/phosphorus, /obj/item/storage/box/packet/phosphorus, ) cost = 30 containertype = /obj/structure/closet/crate/explosives - containername = "\improper M40 HPDP grenade crate (WARNING)" + containername = "\improper M40 CCDP grenade crate (WARNING)" group = "Explosives" -/datum/supply_packs/explosives_M40_HPDP_crate - name = "M40 HPDP white phosphorus grenade box crate (x25)" +/datum/supply_packs/explosives_M40_CCDP_crate + name = "M40 WPDP chemical compund grenade box crate (x25)" contains = list( /obj/item/storage/box/nade_box/phophorus, ) cost = 100 containertype = /obj/structure/closet/crate/explosives - containername = "\improper HPDP grenade crate (WARNING)" + containername = "\improper CCDP grenade crate (WARNING)" group = "Explosives" /datum/supply_packs/explosives_M40_HEFA @@ -186,6 +186,16 @@ containername = "\improper explosive M74 AGM-I grenades crate (WARNING)" group = "Explosives" +/datum/supply_packs/explosives_M74_AGM_I_box + name = "M74 Airburst Grenade Munition incendiary grenades box crate (x25)" + contains = list( + /obj/item/storage/box/nade_box/airburstincen, + ) + cost = 100 + containertype = /obj/structure/closet/crate/explosives + containername = "\improper M74 Airburst Grenade Munition incendiary grenades crate (WARNING)" + group = "Explosives" + /datum/supply_packs/explosives_airburst_smoke name = "M74 Airburst Grenade Munition smoke grenades crate (x6)" contains = list( diff --git a/code/datums/supply_packs/mortar.dm b/code/datums/supply_packs/mortar.dm index 3f075cad632f..c9f53e49ce7d 100644 --- a/code/datums/supply_packs/mortar.dm +++ b/code/datums/supply_packs/mortar.dm @@ -72,3 +72,18 @@ containertype = /obj/structure/closet/crate/secure/mortar_ammo containername = "\improper M402 mortar flare shells crate" group = "Mortar" + +/datum/supply_packs/ammo_mortar_frag + name = "M402 mortar shells crate (x6 Frag)" + cost = 20 + contains = list( + /obj/item/mortar_shell/frag, + /obj/item/mortar_shell/frag, + /obj/item/mortar_shell/frag, + /obj/item/mortar_shell/frag, + /obj/item/mortar_shell/frag, + /obj/item/mortar_shell/frag, + ) + containertype = /obj/structure/closet/crate/secure/mortar_ammo + containername = "\improper M402 mortar frag shells crate" + group = "Mortar" diff --git a/code/game/machinery/vending/cm_vending.dm b/code/game/machinery/vending/cm_vending.dm index 5746a29aa1ae..eb95a870faae 100644 --- a/code/game/machinery/vending/cm_vending.dm +++ b/code/game/machinery/vending/cm_vending.dm @@ -1216,6 +1216,7 @@ GLOBAL_LIST_INIT(cm_vending_gear_corresponding_types_list, list( /obj/item/ammo_box/magazine/lever_action/training/empty = /obj/item/ammo_box/magazine/lever_action/training, /obj/item/ammo_box/magazine/lever_action/tracker/empty = /obj/item/ammo_box/magazine/lever_action/tracker, /obj/item/ammo_box/magazine/lever_action/marksman/empty = /obj/item/ammo_box/magazine/lever_action/marksman, + /obj/item/ammo_box/magazine/lever_action/xm88/empty = /obj/item/ammo_box/magazine/lever_action/xm88, /obj/item/ammo_box/rounds/smg/empty = /obj/item/ammo_box/rounds/smg, /obj/item/ammo_box/rounds/smg/ap/empty = /obj/item/ammo_box/rounds/smg/ap, @@ -1346,7 +1347,7 @@ GLOBAL_LIST_INIT(cm_vending_gear_corresponding_types_list, list( if(LAZYLEN(itemspec)) //making sure it's not empty if(vend_delay) overlays.Cut() - icon_state = "[initial(icon_state)]_vend" + flick("[initial(icon_state)]_vend", src) if(vend_sound) playsound(loc, vend_sound, 25, 1, 2) //heard only near vendor sleep(vend_delay) diff --git a/code/game/machinery/vending/vendor_types/crew/senior_officers.dm b/code/game/machinery/vending/vendor_types/crew/senior_officers.dm index b668b8583bd3..e724d2f33a3b 100644 --- a/code/game/machinery/vending/vendor_types/crew/senior_officers.dm +++ b/code/game/machinery/vending/vendor_types/crew/senior_officers.dm @@ -176,10 +176,11 @@ GLOBAL_LIST_INIT(cm_vending_clothing_req_officer, list( list("Quartermaster Uniform", 0, /obj/item/clothing/under/rank/qm_suit, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_MANDATORY), list("Headset", 0, /obj/item/device/radio/headset/almayer/qm, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY), list("Satchel", 0, /obj/item/storage/backpack/marine/satchel/tech, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY), - list("Quartermaster Jacket", 0, /obj/item/clothing/suit/storage/RO, MARINE_CAN_BUY_MRE, VENDOR_ITEM_MANDATORY), + list("Quartermaster Jacket", 0, /obj/item/clothing/suit/storage/jacket/marine/RO, MARINE_CAN_BUY_MRE, VENDOR_ITEM_MANDATORY), list("Headgear (CHOOSE 1)", 0, null, null, null), list("Quartermaster Cap", 0, /obj/item/clothing/head/cmcap/req/ro, MARINE_CAN_BUY_MASK, VENDOR_ITEM_RECOMMENDED), + list("Quartermaster Beret", 0, /obj/item/clothing/head/beret/marine/ro, MARINE_CAN_BUY_MASK, VENDOR_ITEM_RECOMMENDED), list("Requisitions Cap", 0, /obj/item/clothing/head/cmcap/req, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR), list("PERSONAL SIDEARM (CHOOSE 1)", 0, null, null, null), diff --git a/code/game/machinery/vending/vendor_types/crew/synthetic.dm b/code/game/machinery/vending/vendor_types/crew/synthetic.dm index d175e20fdc37..240155176efa 100644 --- a/code/game/machinery/vending/vendor_types/crew/synthetic.dm +++ b/code/game/machinery/vending/vendor_types/crew/synthetic.dm @@ -317,7 +317,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_synth_snowflake, list( list("Windbreaker, Exploration", 12, /obj/item/clothing/suit/storage/windbreaker/windbreaker_covenant, null, VENDOR_ITEM_REGULAR), list("Labcoat", 12, /obj/item/clothing/suit/storage/labcoat, null, VENDOR_ITEM_REGULAR), list("Labcoat, Researcher", 12, /obj/item/clothing/suit/storage/labcoat/researcher, null, VENDOR_ITEM_REGULAR), - list("Quartermaster Jacket", 12, /obj/item/clothing/suit/storage/RO, null, VENDOR_ITEM_REGULAR), + list("Quartermaster Jacket", 12, /obj/item/clothing/suit/storage/jacket/marine/RO, null, VENDOR_ITEM_REGULAR), list("Bio Suit", 12, /obj/item/clothing/suit/storage/synthbio, null, VENDOR_ITEM_REGULAR), list("Black Suit Jacket", 12, /obj/item/clothing/suit/storage/jacket/marine/corporate/black, null, VENDOR_ITEM_REGULAR), list("Brown Suit Jacket", 12, /obj/item/clothing/suit/storage/jacket/marine/corporate/brown, null, VENDOR_ITEM_REGULAR), diff --git a/code/game/machinery/vending/vendor_types/requisitions.dm b/code/game/machinery/vending/vendor_types/requisitions.dm index a4328bad5ea4..ec3783837edf 100644 --- a/code/game/machinery/vending/vendor_types/requisitions.dm +++ b/code/game/machinery/vending/vendor_types/requisitions.dm @@ -48,7 +48,7 @@ list("M20 Claymore Anti-Personnel Mine", floor(scale * 4), /obj/item/explosive/mine, VENDOR_ITEM_REGULAR), list("M40 HEDP Grenade", floor(scale * 25), /obj/item/explosive/grenade/high_explosive, VENDOR_ITEM_REGULAR), list("M40 HIDP Incendiary Grenade", floor(scale * 4), /obj/item/explosive/grenade/incendiary, VENDOR_ITEM_REGULAR), - list("M40 HPDP White Phosphorus Smoke Grenade", floor(scale * 4), /obj/item/explosive/grenade/phosphorus, VENDOR_ITEM_REGULAR), + list("M40 CCDP Chemical Compound Smoke Grenade", floor(scale * 4), /obj/item/explosive/grenade/phosphorus, VENDOR_ITEM_REGULAR), list("M40 HSDP Smoke Grenade", floor(scale * 5), /obj/item/explosive/grenade/smokebomb, VENDOR_ITEM_REGULAR), list("M74 AGM-Frag Airburst Grenade", floor(scale * 4), /obj/item/explosive/grenade/high_explosive/airburst, VENDOR_ITEM_REGULAR), list("M74 AGM-Incendiary Airburst Grenade", floor(scale * 4), /obj/item/explosive/grenade/incendiary/airburst, VENDOR_ITEM_REGULAR), @@ -68,6 +68,7 @@ list("Webbing", floor(scale * 5), /obj/item/clothing/accessory/storage/webbing, VENDOR_ITEM_REGULAR), list("Knife Webbing", floor(scale * 1), /obj/item/clothing/accessory/storage/knifeharness, VENDOR_ITEM_REGULAR), list("Drop Pouch", floor(scale * 2), /obj/item/clothing/accessory/storage/droppouch, VENDOR_ITEM_REGULAR), + list("External Webbing", floor(scale * 5), /obj/item/clothing/suit/storage/webbing, VENDOR_ITEM_REGULAR), list("BACKPACKS", -1, null, null), list("Lightweight IMP Backpack", floor(scale * 15), /obj/item/storage/backpack/marine, VENDOR_ITEM_REGULAR), @@ -118,7 +119,7 @@ list("Large Shotgun Shell Pouch", floor(scale * 1), /obj/item/storage/pouch/shotgun/large, VENDOR_ITEM_REGULAR), list("MISCELLANEOUS", -1, null, null), - list("Combat Flashlight", floor(scale * 5), /obj/item/device/flashlight/combat, VENDOR_ITEM_REGULAR), + list("Combat Flashlight", floor(scale * 8), /obj/item/device/flashlight/combat, VENDOR_ITEM_REGULAR), list("Entrenching Tool", floor(scale * 4), /obj/item/tool/shovel/etool/folded, VENDOR_ITEM_REGULAR), list("Gas Mask", floor(scale * 10), /obj/item/clothing/mask/gas, VENDOR_ITEM_REGULAR), list("M89-S Signal Flare Pack", floor(scale * 2), /obj/item/storage/box/m94/signal, VENDOR_ITEM_REGULAR), @@ -147,19 +148,24 @@ list("M40 HEDP Grenade Packet", 0, /obj/item/storage/box/packet/high_explosive, VENDOR_ITEM_REGULAR), list("M40 HEDP Grenade Box", 0, /obj/item/storage/box/nade_box, VENDOR_ITEM_REGULAR), list("M40 HIDP Grenade Packet", 0, /obj/item/storage/box/packet/incendiary, VENDOR_ITEM_REGULAR), - list("M40 HPDP Grenade Box", 0, /obj/item/storage/box/nade_box/phophorus, VENDOR_ITEM_REGULAR), + list("M40 HIDP Grenade Box", 0, /obj/item/storage/box/nade_box/incen, VENDOR_ITEM_REGULAR), + list("M40 CCDP Grenade Packet", 0, /obj/item/storage/box/packet/phosphorus/strong, VENDOR_ITEM_REGULAR), + list("M40 CCDP Grenade Box", 0, /obj/item/storage/box/nade_box/phophorus, VENDOR_ITEM_REGULAR), list("M40 HSDP Grenade Packet", 0, /obj/item/storage/box/packet/smoke, VENDOR_ITEM_REGULAR), + list("M40 MFHS Grenade Packet", 0, /obj/item/storage/box/packet/foam, VENDOR_ITEM_REGULAR), list("M40 HIRR Baton Slug Packet", 0, /obj/item/storage/box/packet/baton_slug, VENDOR_ITEM_REGULAR), - list("M74 AGM-Airburst Grenade Packet", 0, /obj/item/storage/box/packet/airburst_he, VENDOR_ITEM_REGULAR), - list("M74 AGM-F grenade box", 0, /obj/item/storage/box/nade_box/airburst, VENDOR_ITEM_REGULAR), - list("M74 AGM-Airburst Incendiary Grenade Packet", 0, /obj/item/storage/box/packet/airburst_incen, VENDOR_ITEM_REGULAR), - list("M74 AGM-Airburst Smoke Grenade Packet", 0, /obj/item/storage/box/packet/airburst_smoke, VENDOR_ITEM_REGULAR), + list("M74 AGM-F Grenade Packet", 0, /obj/item/storage/box/packet/airburst_he, VENDOR_ITEM_REGULAR), + list("M74 AGM-F Grenade box", 0, /obj/item/storage/box/nade_box/airburst, VENDOR_ITEM_REGULAR), + list("M74 AGM-I Grenade Packet", 0, /obj/item/storage/box/packet/airburst_incen, VENDOR_ITEM_REGULAR), + list("M74 AGM-I Grenade Box", 0, /obj/item/storage/box/nade_box/airburstincen, VENDOR_ITEM_REGULAR), + list("M74 AGM-S Smoke Grenade Packet", 0, /obj/item/storage/box/packet/airburst_smoke, VENDOR_ITEM_REGULAR), list("M74 AGM-S Star Shell Packet", 0, /obj/item/storage/box/packet/flare, VENDOR_ITEM_REGULAR), list("M74 AGM-H Hornet Shell Packet", 0, /obj/item/storage/box/packet/hornet, VENDOR_ITEM_REGULAR), list("G2 Electroshock grenade packet", 0, /obj/item/storage/box/packet/sebb, VENDOR_ITEM_REGULAR), list("M20 mine box", 0, /obj/item/storage/box/explosive_mines, VENDOR_ITEM_REGULAR), list("OTHER BOXES", -1, null, null), + list("Box of Combat Flashlights", 0, /obj/item/ammo_box/magazine/misc/flashlight/combat, VENDOR_ITEM_REGULAR), list("Box of M94 Marking Flare Packs", 0, /obj/item/ammo_box/magazine/misc/flares, VENDOR_ITEM_REGULAR), list("Box of M89 Signal Flare Packs", 0, /obj/item/ammo_box/magazine/misc/flares/signal, VENDOR_ITEM_REGULAR), list("Box of High-Capacity Power Cells", 0, /obj/item/ammo_box/magazine/misc/power_cell, VENDOR_ITEM_REGULAR), @@ -206,6 +212,8 @@ /obj/structure/machinery/cm_vending/sorted/cargo_guns/cargo/blend icon_state = "req_guns_wall" + vend_delay = 3 + vend_sound = 'sound/machines/vending_drop.ogg' tiles_with = list( /obj/structure/window/framed/almayer, /obj/structure/machinery/door/airlock, @@ -236,6 +244,7 @@ list("Box Of Buckshot Shells", floor(scale * 56), /obj/item/ammo_magazine/shotgun/buckshot, VENDOR_ITEM_REGULAR), list("Box Of Flechette Shells", floor(scale * 56), /obj/item/ammo_magazine/shotgun/flechette, VENDOR_ITEM_REGULAR), list("Box Of Shotgun Slugs", floor(scale * 56), /obj/item/ammo_magazine/shotgun/slugs, VENDOR_ITEM_REGULAR), + list("Box Of Breaching Slugs", floor(scale * 4), /obj/item/ammo_magazine/shotgun/light/breaching, VENDOR_ITEM_REGULAR), list("M4RA Magazine (10x24mm)", floor(scale * 60), /obj/item/ammo_magazine/rifle/m4ra, VENDOR_ITEM_REGULAR), list("M41A MK2 Magazine (10x24mm)", floor(scale * 100), /obj/item/ammo_magazine/rifle, VENDOR_ITEM_REGULAR), list("M39 HV Magazine (10x20mm)", floor(scale * 100), /obj/item/ammo_magazine/smg/m39, VENDOR_ITEM_REGULAR), @@ -260,6 +269,7 @@ list("M44 Marksman Speed Loader (.44)", 6, /obj/item/ammo_magazine/revolver/marksman, VENDOR_ITEM_REGULAR), list("M4A3 HP Magazine (9mm)", floor(scale * 2), /obj/item/ammo_magazine/pistol/hp, VENDOR_ITEM_REGULAR), list("M41AE2 Holo Target Rounds (10x24mm)", floor(scale * 2), /obj/item/ammo_magazine/rifle/lmg/holo_target, VENDOR_ITEM_REGULAR), + list("Box Of .458 SOCOM Rounds (.458 SOCOM)", floor(scale * 4), /obj/item/ammo_magazine/lever_action/xm88, VENDOR_ITEM_REGULAR), list("RESTRICTED FIREARM AMMUNITION", -1, null, null), list("VP78 Magazine", 11, /obj/item/ammo_magazine/pistol/vp78, VENDOR_ITEM_REGULAR), @@ -291,11 +301,12 @@ list("Shotgun Shell Box (Buckshot x 100)", 0, /obj/item/ammo_box/magazine/shotgun/buckshot, VENDOR_ITEM_REGULAR), list("Shotgun Shell Box (Flechette x 100)", 0, /obj/item/ammo_box/magazine/shotgun/flechette, VENDOR_ITEM_REGULAR), list("Shotgun Shell Box (Slugs x 100)", 0, /obj/item/ammo_box/magazine/shotgun, VENDOR_ITEM_REGULAR), - list("Shotgun Shell Box (16g) (Breaching x 120)", 1, /obj/item/ammo_box/magazine/shotgun/light/breaching, VENDOR_ITEM_REGULAR), + list("Shotgun Shell Box (16g) (Breaching x 120)", 0, /obj/item/ammo_box/magazine/shotgun/light/breaching, VENDOR_ITEM_REGULAR), list("Magazine Box (88 Mod 4 AP x 16)", 0, /obj/item/ammo_box/magazine/mod88, VENDOR_ITEM_REGULAR), list("Magazine Box (SU-6 x 16)", 0, /obj/item/ammo_box/magazine/su6, VENDOR_ITEM_REGULAR), list("Magazine Box (VP78 x 16)", 0, /obj/item/ammo_box/magazine/vp78, VENDOR_ITEM_REGULAR), list("Magazine Box (XM51 x 8)", 0, /obj/item/ammo_box/magazine/xm51, VENDOR_ITEM_REGULAR), + list("Rounds Box (.458 SOCOM x 300)", 0, /obj/item/ammo_box/magazine/lever_action/xm88, VENDOR_ITEM_REGULAR), list("Ammo Box (M2C x 8)", 0, /obj/item/ammo_box/magazine/m2c, VENDOR_ITEM_REGULAR), list("Drum Box (M56B x 8)", 0, /obj/item/ammo_box/magazine/m56b, VENDOR_ITEM_REGULAR), list("Drum Box (M56D x 8)", 0, /obj/item/ammo_box/magazine/m56d, VENDOR_ITEM_REGULAR), @@ -339,11 +350,14 @@ return //We found our item, no reason to go on. /obj/structure/machinery/cm_vending/sorted/cargo_ammo/cargo/blend - icon_state = "req_ammo_wall" - tiles_with = list( - /obj/structure/window/framed/almayer, - /obj/structure/machinery/door/airlock, - /turf/closed/wall/almayer) + icon_state = "req_ammo_wall" + vend_delay = 3 + vend_sound = 'sound/machines/vending_drop.ogg' + tiles_with = list( + /obj/structure/window/framed/almayer, + /obj/structure/machinery/door/airlock, + /turf/closed/wall/almayer, + ) //Special cargo-specific vendor with vending offsets /obj/structure/machinery/cm_vending/sorted/cargo_ammo/cargo @@ -410,6 +424,8 @@ /obj/structure/machinery/cm_vending/sorted/attachments/blend icon_state = "req_attach_wall" + vend_delay = 3 + vend_sound = 'sound/machines/vending_drop.ogg' tiles_with = list( /obj/structure/window/framed/almayer, /obj/structure/machinery/door/airlock, @@ -428,12 +444,24 @@ listed_products = list( list("UNIFORM", -1, null, null), - list("Lightweight IMP Backpack", 20, /obj/item/storage/backpack/marine, VENDOR_ITEM_REGULAR), + list("USCM Uniform", 20, /obj/item/clothing/under/marine, VENDOR_ITEM_REGULAR), + list("USCM Combat Technician Uniform", 5, /obj/item/clothing/under/marine/engineer, VENDOR_ITEM_REGULAR), + list("USCM Hospital Corpsman uniform", 5, /obj/item/clothing/under/marine/medic, VENDOR_ITEM_REGULAR), + + list("BOOTS", -1, null, null), list("Marine Combat Boots", 20, /obj/item/clothing/shoes/marine, VENDOR_ITEM_REGULAR), - list("M276 Ammo Load Rig", 10, /obj/item/storage/belt/marine, VENDOR_ITEM_REGULAR), - list("M276 Shotgun Shell Loading Rig", 10, /obj/item/storage/belt/shotgun, VENDOR_ITEM_REGULAR), + list("Marine Brown Combat Boots", 5, /obj/item/clothing/shoes/marine/brown, VENDOR_ITEM_REGULAR), + list("Marine Jungle Combat Boots", 5, /obj/item/clothing/shoes/marine/jungle, VENDOR_ITEM_REGULAR), + + list("BACKPACKS", -1, null, null), + list("Lightweight IMP Backpack", 20, /obj/item/storage/backpack/marine, VENDOR_ITEM_REGULAR), list("USCM Satchel", 20, /obj/item/storage/backpack/marine/satchel, VENDOR_ITEM_REGULAR), - list("USCM Uniform", 20, /obj/item/clothing/under/marine, VENDOR_ITEM_REGULAR), + list("USCM Chestrig", 10, /obj/item/storage/backpack/marine/satchel/chestrig, VENDOR_ITEM_REGULAR), + list("USCM Technician Backpack", 10, /obj/item/storage/backpack/marine/tech, VENDOR_ITEM_REGULAR), + list("USCM Technician Chestrig", 10, /obj/item/storage/backpack/marine/satchel/tech, VENDOR_ITEM_REGULAR), + list("USCM Corpsman Backpack", 10, /obj/item/storage/backpack/marine/medic, VENDOR_ITEM_REGULAR), + list("USCM Corpsman Satchel", 10, /obj/item/storage/backpack/marine/satchel/medic, VENDOR_ITEM_REGULAR), + list("ARMOR", -1, null, null), list("M10 Pattern Marine Helmet", 20, /obj/item/clothing/head/helmet/marine, VENDOR_ITEM_REGULAR), @@ -450,6 +478,7 @@ list("GLOVES", -1, null, null), list("Marine Combat Gloves", 40, /obj/item/clothing/gloves/marine, VENDOR_ITEM_REGULAR), list("Marine Black Combat Gloves", 40, /obj/item/clothing/gloves/marine/black, VENDOR_ITEM_REGULAR), + list("Marine Brown Combat Gloves", 20, /obj/item/clothing/gloves/marine/brown, VENDOR_ITEM_REGULAR), list("RADIO", -1, null, null), list("Alpha Squad Radio Encryption Key", 5, /obj/item/device/encryptionkey/alpha, VENDOR_ITEM_REGULAR), diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_engineer.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_engineer.dm index 74a3d2a6167b..8d5e7b83590f 100644 --- a/code/game/machinery/vending/vendor_types/squad_prep/squad_engineer.dm +++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_engineer.dm @@ -27,7 +27,7 @@ GLOBAL_LIST_INIT(cm_vending_gear_engi, list( list("EXPLOSIVES", 0, null, null, null), list("M40 HEDP High Explosive Packet (x3 grenades)", 18, /obj/item/storage/box/packet/high_explosive, null, VENDOR_ITEM_REGULAR), list("M40 HIDP Incendiary Packet (x3 grenades)", 18, /obj/item/storage/box/packet/incendiary, null, VENDOR_ITEM_REGULAR), - list("M40 HPDP White Phosphorus Packet (x3 grenades)", 18, /obj/item/storage/box/packet/phosphorus, null, VENDOR_ITEM_REGULAR), + list("M40 WPDP White Phosphorus Packet (x3 grenades)", 18, /obj/item/storage/box/packet/phosphorus, null, VENDOR_ITEM_REGULAR), list("M40 HSDP Smoke Packet (x3 grenades)", 9, /obj/item/storage/box/packet/smoke, null, VENDOR_ITEM_REGULAR), list("M74 AGM-Frag Airburst Packet (x3 airburst grenades)", 18, /obj/item/storage/box/packet/airburst_he, null, VENDOR_ITEM_REGULAR), list("M74 AGM-Incendiary Airburst Packet (x3 airburst grenades)", 18, /obj/item/storage/box/packet/airburst_incen, null, VENDOR_ITEM_REGULAR), diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_leader.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_leader.dm index 0055dc2b1375..8cb71a57872f 100644 --- a/code/game/machinery/vending/vendor_types/squad_prep/squad_leader.dm +++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_leader.dm @@ -53,7 +53,7 @@ GLOBAL_LIST_INIT(cm_vending_gear_leader, list( list("EXPLOSIVES", 0, null, null, null), list("M40 HEDP High Explosive Packet (x3 grenades)", 18, /obj/item/storage/box/packet/high_explosive, null, VENDOR_ITEM_REGULAR), list("M40 HIDP Incendiary Packet (x3 grenades)", 18, /obj/item/storage/box/packet/incendiary, null, VENDOR_ITEM_REGULAR), - list("M40 HPDP White Phosphorus Packet (x3 grenades)", 18, /obj/item/storage/box/packet/phosphorus, null, VENDOR_ITEM_REGULAR), + list("M40 WPDP White Phosphorus Packet (x3 grenades)", 18, /obj/item/storage/box/packet/phosphorus, null, VENDOR_ITEM_REGULAR), list("M40 HSDP Smoke Packet (x3 grenades)", 9, /obj/item/storage/box/packet/smoke, null, VENDOR_ITEM_REGULAR), list("M74 AGM-Frag Airburst Packet (x3 airburst grenades)", 20, /obj/item/storage/box/packet/airburst_he, null, VENDOR_ITEM_REGULAR), list("M74 AGM-Incendiary Airburst Packet (x3 airburst grenades)", 20, /obj/item/storage/box/packet/airburst_incen, null, VENDOR_ITEM_REGULAR), diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_medic.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_medic.dm index 887fb969b7a9..9952c7f00b8f 100644 --- a/code/game/machinery/vending/vendor_types/squad_prep/squad_medic.dm +++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_medic.dm @@ -50,7 +50,7 @@ GLOBAL_LIST_INIT(cm_vending_gear_medic, list( list("EXPLOSIVES", 0, null, null, null), list("M40 HEDP High Explosive Packet (x3 grenades)", 18, /obj/item/storage/box/packet/high_explosive, null, VENDOR_ITEM_REGULAR), list("M40 HIDP Incendiary Packet (x3 grenades)", 18, /obj/item/storage/box/packet/incendiary, null, VENDOR_ITEM_REGULAR), - list("M40 HPDP White Phosphorus Packet (x3 grenades)", 18, /obj/item/storage/box/packet/phosphorus, null, VENDOR_ITEM_REGULAR), + list("M40 WPDP White Phosphorus Packet (x3 grenades)", 18, /obj/item/storage/box/packet/phosphorus, null, VENDOR_ITEM_REGULAR), list("M40 HSDP Smoke Packet (x3 grenades)", 9, /obj/item/storage/box/packet/smoke, null, VENDOR_ITEM_REGULAR), list("M74 AGM-Frag Airburst Packet (x3 airburst grenades)", 20, /obj/item/storage/box/packet/airburst_he, null, VENDOR_ITEM_REGULAR), list("M74 AGM-Incendiary Airburst Packet (x3 airburst grenades)", 20, /obj/item/storage/box/packet/airburst_incen, null, VENDOR_ITEM_REGULAR), diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_rifleman.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_rifleman.dm index 1db378bd1d98..f210aed9518a 100644 --- a/code/game/machinery/vending/vendor_types/squad_prep/squad_rifleman.dm +++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_rifleman.dm @@ -59,7 +59,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_marine, list( list("EXPLOSIVES", 0, null, null, null), list("M40 HEDP High Explosive Packet (x3 grenades)", 20, /obj/item/storage/box/packet/high_explosive, null, VENDOR_ITEM_REGULAR), list("M40 HIDP Incendiary Packet (x3 grenades)", 20, /obj/item/storage/box/packet/incendiary, null, VENDOR_ITEM_REGULAR), - list("M40 HPDP White Phosphorus Packet (x3 grenades)", 20, /obj/item/storage/box/packet/phosphorus, null, VENDOR_ITEM_REGULAR), + list("M40 WPDP White Phosphorus Packet (x3 grenades)", 20, /obj/item/storage/box/packet/phosphorus, null, VENDOR_ITEM_REGULAR), list("M40 HSDP Smoke Packet (x3 grenades)", 10, /obj/item/storage/box/packet/smoke, null, VENDOR_ITEM_REGULAR), list("M74 AGM-Frag Airburst Packet (x3 airburst grenades)", 15, /obj/item/storage/box/packet/airburst_he, null, VENDOR_ITEM_REGULAR), list("M74 AGM-Incendiary Airburst Packet (x3 airburst grenades)", 15, /obj/item/storage/box/packet/airburst_incen, null, VENDOR_ITEM_REGULAR), diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_smartgunner.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_smartgunner.dm index 962580529eb2..b568208c8cff 100644 --- a/code/game/machinery/vending/vendor_types/squad_prep/squad_smartgunner.dm +++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_smartgunner.dm @@ -12,7 +12,7 @@ GLOBAL_LIST_INIT(cm_vending_gear_smartgun, list( list("EXPLOSIVES", 0, null, null, null), list("M40 HEDP High Explosive Packet (x3 grenades)", 30, /obj/item/storage/box/packet/high_explosive, null, VENDOR_ITEM_REGULAR), list("M40 HIDP Incendiary Packet (x3 grenades)", 30, /obj/item/storage/box/packet/incendiary, null, VENDOR_ITEM_REGULAR), - list("M40 HPDP White Phosphorus Packet (x3 grenades)", 30, /obj/item/storage/box/packet/phosphorus, null, VENDOR_ITEM_REGULAR), + list("M40 WPDP White Phosphorus Packet (x3 grenades)", 30, /obj/item/storage/box/packet/phosphorus, null, VENDOR_ITEM_REGULAR), list("M40 HSDP Smoke Packet (x3 grenades)", 15, /obj/item/storage/box/packet/smoke, null, VENDOR_ITEM_REGULAR), list("M74 AGM-Frag Airburst Packet (x3 airburst grenades)", 20, /obj/item/storage/box/packet/airburst_he, null, VENDOR_ITEM_REGULAR), list("M74 AGM-Incendiary Airburst Packet (x3 airburst grenades)", 20, /obj/item/storage/box/packet/airburst_incen, null, VENDOR_ITEM_REGULAR), diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_specialist.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_specialist.dm index 527bb89b6af2..8e84f7556b50 100644 --- a/code/game/machinery/vending/vendor_types/squad_prep/squad_specialist.dm +++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_specialist.dm @@ -28,7 +28,7 @@ GLOBAL_LIST_INIT(cm_vending_gear_spec, list( list("EXTRA GRENADES", 0, null, null, null), list("M40 HEDP Grenades x6", 40, /obj/effect/essentials_set/hedp_6_pack, null, VENDOR_ITEM_REGULAR), list("M40 HIDP Incendiary Grenades x6", 40, /obj/effect/essentials_set/hidp_6_pack, null, VENDOR_ITEM_REGULAR), - list("M40 HPDP White Phosphorus Grenades x6", 40, /obj/effect/essentials_set/hpdp_6_pack, null, VENDOR_ITEM_REGULAR), + list("M40 CCDP Chemical Compound Grenades x6", 40, /obj/effect/essentials_set/ccdp_6_pack, null, VENDOR_ITEM_REGULAR), list("M74 AGM-F Fragmentation Grenades x6", 40, /obj/effect/essentials_set/agmf_6_pack, null, VENDOR_ITEM_REGULAR), list("M74 AGM-I Incendiary Grenades x6", 40, /obj/effect/essentials_set/agmi_6_pack, null, VENDOR_ITEM_REGULAR), list("M74 AGM-S Smoke Grenades x6", 20, /obj/effect/essentials_set/agms_6_pack, null, VENDOR_ITEM_REGULAR), @@ -211,7 +211,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_specialist, list( /obj/item/explosive/grenade/incendiary, ) -/obj/effect/essentials_set/hpdp_6_pack +/obj/effect/essentials_set/ccdp_6_pack spawned_gear_list = list( /obj/item/explosive/grenade/phosphorus, /obj/item/explosive/grenade/phosphorus, diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_tl.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_tl.dm index a4535fc7bfb4..0d338502972d 100644 --- a/code/game/machinery/vending/vendor_types/squad_prep/squad_tl.dm +++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_tl.dm @@ -4,7 +4,7 @@ GLOBAL_LIST_INIT(cm_vending_gear_tl, list( list("EXPLOSIVES", 0, null, null, null), list("M40 HEDP High Explosive Packet (x3 grenades)", 18, /obj/item/storage/box/packet/high_explosive, null, VENDOR_ITEM_REGULAR), list("M40 HIDP Incendiary Packet (x3 grenades)", 18, /obj/item/storage/box/packet/incendiary, null, VENDOR_ITEM_REGULAR), - list("M40 HPDP White Phosphorus Packet (x3 grenades)", 18, /obj/item/storage/box/packet/phosphorus, null, VENDOR_ITEM_REGULAR), + list("M40 WPDP White Phosphorus Packet (x3 grenades)", 18, /obj/item/storage/box/packet/phosphorus, null, VENDOR_ITEM_REGULAR), list("M40 HSDP Smoke Packet (x3 grenades)", 9, /obj/item/storage/box/packet/smoke, null, VENDOR_ITEM_REGULAR), list("M74 AGM-Frag Airburst Packet (x3 airburst grenades)", 20, /obj/item/storage/box/packet/airburst_he, null, VENDOR_ITEM_REGULAR), list("M74 AGM-Incendiary Airburst Packet (x3 airburst grenades)", 20, /obj/item/storage/box/packet/airburst_incen, null, VENDOR_ITEM_REGULAR), diff --git a/code/game/objects/items/devices/megaphone.dm b/code/game/objects/items/devices/megaphone.dm index 114ed48b1819..f155233a6a96 100644 --- a/code/game/objects/items/devices/megaphone.dm +++ b/code/game/objects/items/devices/megaphone.dm @@ -2,7 +2,7 @@ name = "megaphone" desc = "A device used to project your voice. Loudly." icon_state = "megaphone" - item_state = "radio" + item_state = "megaphone" w_class = SIZE_SMALL flags_atom = FPRINT|CONDUCT @@ -46,6 +46,7 @@ continue listener.show_message("[user] broadcasts, [FONT_SIZE_LARGE("\"[message]\"")]", SHOW_MESSAGE_AUDIBLE) // 2 stands for hearable message langchat_long_listeners += listener + playsound(loc, 'sound/items/megaphone.ogg', 100, FALSE, TRUE) user.langchat_long_speech(message, langchat_long_listeners, user.get_default_language()) COOLDOWN_START(src, spam_cooldown, spam_cooldown_time) diff --git a/code/game/objects/items/explosives/grenades/marines.dm b/code/game/objects/items/explosives/grenades/marines.dm index fef62ab6a835..e669a27ab1a7 100644 --- a/code/game/objects/items/explosives/grenades/marines.dm +++ b/code/game/objects/items/explosives/grenades/marines.dm @@ -421,9 +421,9 @@ qdel(src) /obj/item/explosive/grenade/phosphorus - name = "\improper M40 HPDP grenade" - desc = "The M40 HPDP is a small, but powerful phosphorus grenade. It is set to detonate in 2 seconds." - icon_state = "grenade_phos" + name = "\improper M40 CCDP grenade" + desc = "The M40 CCDP is a small, but powerful chemical compound grenade, similar in effect to WPDP. Word on the block says that the CCDP doesn't actually release White Phosphorus, but some other chemical developed in W-Y labs." + icon_state = "grenade_chem" det_time = 20 item_state = "grenade_phos" underslug_launchable = TRUE @@ -437,7 +437,9 @@ return ..() /obj/item/explosive/grenade/phosphorus/weak - desc = "The M40 HPDP is a small, but powerful phosphorus grenade. Word on the block says that the HPDP doesn't actually release White Phosphorus, but some other chemical developed in W-Y labs." + name = "\improper M40 WPDP grenade" + icon_state = "grenade_phos" + desc = "The M40 WPDP is a small, but powerful phosphorus grenade. It is set to detonate in 2 seconds." /obj/item/explosive/grenade/phosphorus/Initialize() . = ..() diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index e4022c3e4ca0..b2a23549c65f 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -312,6 +312,7 @@ GLOBAL_LIST_INIT_TYPED(cardboard_recipes, /datum/stack_recipe, list ( \ new/datum/stack_recipe("empty box of M94 Marking Flare Packs", /obj/item/ammo_box/magazine/misc/flares/empty), \ new/datum/stack_recipe("empty box of M89 Signal Flare Packs", /obj/item/ammo_box/magazine/misc/flares/signal/empty), \ new/datum/stack_recipe("empty box of flashlights", /obj/item/ammo_box/magazine/misc/flashlight/empty), \ + new/datum/stack_recipe("empty box of combat flashlights", /obj/item/ammo_box/magazine/misc/flashlight/combat/empty), \ new/datum/stack_recipe("empty box of High-Capacity Power Cells", /obj/item/ammo_box/magazine/misc/power_cell/empty), \ null, \ new/datum/stack_recipe("empty magazine box (Desert Eagle)", /obj/item/ammo_box/magazine/deagle/empty), \ diff --git a/code/game/objects/items/storage/boxes.dm b/code/game/objects/items/storage/boxes.dm index 406f5d0ab407..b03a6e4f490f 100644 --- a/code/game/objects/items/storage/boxes.dm +++ b/code/game/objects/items/storage/boxes.dm @@ -630,6 +630,8 @@ max_storage_space = 50 can_hold = list(/obj/item/explosive/grenade/high_explosive) var/base_icon + var/model_icon = "model_m40" + var/type_icon = "hedp" var/grenade_type = /obj/item/explosive/grenade/high_explosive has_gamemode_skin = TRUE @@ -659,49 +661,61 @@ new grenade_type(src) /obj/item/storage/box/nade_box/update_icon() + overlays.Cut() if(!length(contents)) icon_state = "[base_icon]_e" else icon_state = base_icon + if(type_icon) + overlays += image(icon, type_icon) + if(model_icon) + overlays += image(icon, model_icon) /obj/item/storage/box/nade_box/frag name = "\improper M40 HEFA grenade box" desc = "A secure box holding 25 M40 High-Explosive Fragmenting-Antipersonnel grenades. High explosive, don't store near the flamer fuel." - icon_state = "frag_nade_placeholder" - w_class = SIZE_LARGE - storage_slots = 25 - max_storage_space = 50 + type_icon = "hefa" can_hold = list(/obj/item/explosive/grenade/high_explosive/frag) grenade_type = /obj/item/explosive/grenade/high_explosive/frag - has_gamemode_skin = FALSE /obj/item/storage/box/nade_box/phophorus - name = "\improper M40 HPDP grenade box" - desc = "A secure box holding 25 M40 HPDP white phosphorus grenade. High explosive, don't store near the flamer fuel." - icon_state = "phos_nade_placeholder" - w_class = SIZE_LARGE - storage_slots = 25 - max_storage_space = 50 + name = "\improper M40 CCDP grenade box" + desc = "A secure box holding 25 M40 CCDP chemical compound grenade. High explosive, don't store near the flamer fuel." + type_icon = "ccdp" can_hold = list(/obj/item/explosive/grenade/phosphorus) grenade_type = /obj/item/explosive/grenade/phosphorus - has_gamemode_skin = FALSE + +/obj/item/storage/box/nade_box/incen + name = "\improper M40 HIDP grenade box" + desc = "A secure box holding 25 M40 HIDP white incendiary grenades. Highly flammable, don't store near the flamer fuel." + type_icon = "hidp" + can_hold = list(/obj/item/explosive/grenade/incendiary) + grenade_type = /obj/item/explosive/grenade/incendiary /obj/item/storage/box/nade_box/airburst name = "\improper M74 AGM-F grenade box" desc = "A secure box holding 25 M74 AGM Fragmentation grenades. Explosive, don't store near the flamer fuel." - icon_state = "airburst_nade_placeholder" - w_class = SIZE_LARGE - storage_slots = 25 - max_storage_space = 50 + model_icon = "model_m74" + type_icon = "agmf" can_hold = list(/obj/item/explosive/grenade/high_explosive/airburst) grenade_type = /obj/item/explosive/grenade/high_explosive/airburst - has_gamemode_skin = FALSE + +/obj/item/storage/box/nade_box/airburstincen + name = "\improper M74 AGM-I grenade box" + desc = "A secure box holding 25 M74 AGM Incendiary grenades. Highly flammable, don't store near the flamer fuel." + model_icon = "model_m74" + type_icon = "agmi" + can_hold = list(/obj/item/explosive/grenade/incendiary/airburst) + grenade_type = /obj/item/explosive/grenade/incendiary/airburst + /obj/item/storage/box/nade_box/training name = "\improper M07 training grenade box" desc = "A secure box holding 25 M07 training grenades. Harmless and reusable." icon_state = "train_nade_placeholder" + model_icon = "model_mo7" + type_icon = null grenade_type = /obj/item/explosive/grenade/high_explosive/training can_hold = list(/obj/item/explosive/grenade/high_explosive/training) has_gamemode_skin = FALSE @@ -710,6 +724,8 @@ name = "\improper M66 tear gas grenade box" desc = "A secure box holding 25 M66 tear gas grenades. Used for riot control." icon_state = "teargas_nade_placeholder" + model_icon = "model_m66" + type_icon = null can_hold = list(/obj/item/explosive/grenade/custom/teargas) grenade_type = /obj/item/explosive/grenade/custom/teargas has_gamemode_skin = FALSE diff --git a/code/game/objects/structures/crates_lockers/closets/secure/cargo.dm b/code/game/objects/structures/crates_lockers/closets/secure/cargo.dm index ae9f15b3634f..31b142a924e0 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/cargo.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/cargo.dm @@ -20,6 +20,32 @@ new /obj/item/clothing/head/soft(src) return +/obj/structure/closet/secure_closet/quartermaster_uscm + name = "Quartermaster's Locker" + req_access = list(ACCESS_MARINE_RO) + icon_state = "secureqm1" + icon_closed = "secureqm" + icon_locked = "secureqm1" + icon_opened = "secureqmopen" + icon_broken = "secureqmbroken" + icon_off = "secureqmoff" + +/obj/structure/closet/secure_closet/quartermaster_uscm/Initialize() + . = ..() + new /obj/item/clothing/under/rank/qm_suit(src) + new /obj/item/clothing/head/cmcap/req/ro(src) + new /obj/item/clothing/shoes/marine(src) + new /obj/item/clothing/gloves/yellow(src) + new /obj/item/device/flashlight(src) + new /obj/item/tool/stamp/ro(src) + new /obj/item/device/flash(src) + new /obj/item/clothing/suit/fire/firefighter(src) + new /obj/item/device/megaphone(src) + new /obj/item/clothing/mask/gas(src) + new /obj/item/folder/yellow(src) + new /obj/item/clipboard(src) + return + diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index f52e8f886468..99abd167d297 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -15,10 +15,17 @@ /// Types this crate can be made into var/list/crate_customizing_types = list( "Plain" = /obj/structure/closet/crate, + "Plain (Green)" = /obj/structure/closet/crate/green, "Weapons" = /obj/structure/closet/crate/weapon, "Supply" = /obj/structure/closet/crate/supply, "Ammo" = /obj/structure/closet/crate/ammo, + "Ammo (Black)" = /obj/structure/closet/crate/ammo/alt, + "Ammo (Flame)" = /obj/structure/closet/crate/ammo/alt/flame, "Construction" = /obj/structure/closet/crate/construction, + "Science" = /obj/structure/closet/crate/science, + "Hydroponics" = /obj/structure/closet/crate/hydroponics, + "Medical" = /obj/structure/closet/crate/medical, + "Internals" = /obj/structure/closet/crate/internals, "Explosives" = /obj/structure/closet/crate/explosives, "Alpha" = /obj/structure/closet/crate/alpha, "Bravo" = /obj/structure/closet/crate/bravo, diff --git a/code/game/objects/structures/signs.dm b/code/game/objects/structures/signs.dm index c6e789aeb367..a69ad56ac95f 100644 --- a/code/game/objects/structures/signs.dm +++ b/code/game/objects/structures/signs.dm @@ -591,6 +591,58 @@ desc = " 1. You are not entitled to service or equipment. Attachments are a privilege, not a right.\n 2. You must be fully dressed to obtain service. Cryosleep underwear is non-permissible.\n 3. The Quartermaster has the final say and the right to decline service. Only the Acting Commanding Officer may override their decisions.\n 4. Please treat your Requsitions staff with respect. They work hard." icon_state = "roplaque" +/obj/structure/sign/ROcreed + name = "\improper QMC Creed Plaque" + desc = "The short version of the Quartermaster Creed made by the US Quartermaster Corps, this on is purely decorative and ceremonial version which is much shorter and doesn't include more modern edits." + desc_lore = {"I am Quartermaster + My story is enfolded in the history of this nation. + Sustainer of Armies... + + My forges burned at Valley Forge. + Down frozen, rutted roads my oxen hauled + the meager foods a bankrupt Congress sent me... + Scant rations for the cold and starving troops, + Gunpowder, salt, and lead. + + In 1812 we sailed to war in ships my boatwrights built. + I fought beside you in the deserts of our great Southwest. + My pack mules perished seeking water holes, + And I went on with camels. + I gave flags to serve. + The medals and crest you wear are my design. + + Since 1862, I have sought our fallen brothers + from Private to President. + In war or peace I bring them home + And lay them gently down in fields of honor. + + Provisioner, transporter. + In 1898 I took you to Havana Harbor and the Philippines. + I brought you tents, your khaki cloth for uniforms. + When yellow fever struck, I brought the mattresses you lay upon. + + In 1917, we crossed the ocean to fight in the trenches and fields of France, + New weapons, training, technologies, and tactics for the Great War. + But always the need for food, water, ammunition, and now fuel. + + We shed first blood together at Pearl Harbor and Corregidor. + Then begin the long march to Victory - Guadalcanal and North Africa, Sicily and the Solomons. + I was there with you at Omaha Beach on D-Day and even the night before from Glider and Parachute. + Across Europe and the Pacific, I drove and dug and fought till the job was done. + + When war came to the Peninsula in 1950, it was my 'chutes that filled the grey Korean skies. + From the perimeter at Pusan to the cold roads of the Chosin, I was there. + In 1965, I established the fire bases and depots across South Vietnam, + The Hueys and Chinooks carried my supplies forward. + + I AM QUARTERMASTER. + I can shape the course of combat, + Change the outcome of battle. + Look to me: Sustainer of Armies...Since 1775. + + I AM QUARTERMASTER. I AM PROUD."} + icon_state = "rocreed" + /obj/structure/sign/prop1 name = "\improper USCM Poster" desc = "The symbol of the United States Colonial Marines corps." diff --git a/code/modules/asset_cache/asset_list_items.dm b/code/modules/asset_cache/asset_list_items.dm index c78eb93237fb..3ee8ef5b616d 100644 --- a/code/modules/asset_cache/asset_list_items.dm +++ b/code/modules/asset_cache/asset_list_items.dm @@ -281,44 +281,50 @@ name = "vending" /datum/asset/spritesheet/vending_products/register() - for (var/k in GLOB.vending_products) - var/atom/item = k + for (var/current_product in GLOB.vending_products) + var/atom/item = current_product var/icon_file = initial(item.icon) var/icon_state = initial(item.icon_state) - var/icon/I + var/icon/new_icon if (!ispath(item, /atom)) log_debug("not atom! [item]") continue - var/imgid = replacetext(replacetext("[k]", "/obj/item/", ""), "/", "-") + var/imgid = replacetext(replacetext("[current_product]", "/obj/item/", ""), "/", "-") if(sprites[imgid]) continue if(icon_state in icon_states(icon_file)) - I = icon(icon_file, icon_state, SOUTH) - var/c = initial(item.color) - if (!isnull(c) && c != "#FFFFFF") - I.Blend(c, ICON_MULTIPLY) + if(ispath(current_product, /obj/item/storage/box) || ispath(current_product, /obj/item/ammo_box) || ispath(current_product, /obj/item/reagent_container)) + item = new current_product() + new_icon = getFlatIcon(item) + new_icon.Scale(32,32) + qdel(item) + else + new_icon = icon(icon_file, icon_state, SOUTH) + var/new_color = initial(item.color) + if (!isnull(new_color) && new_color != "#FFFFFF") + new_icon.Blend(new_color, ICON_MULTIPLY) else - if (ispath(k, /obj/effect/essentials_set)) - var/obj/effect/essentials_set/es_set = new k() - var/list/spawned_list = es_set.spawned_gear_list + if(ispath(current_product, /obj/effect/essentials_set)) + var/obj/effect/essentials_set/essentials = new current_product() + var/list/spawned_list = essentials.spawned_gear_list if(LAZYLEN(spawned_list)) var/obj/item/target = spawned_list[1] icon_file = initial(target.icon) icon_state = initial(target.icon_state) var/target_obj = new target() - I = getFlatIcon(target_obj) - I.Scale(32,32) + new_icon = getFlatIcon(target_obj) + new_icon.Scale(32,32) qdel(target_obj) else - item = new k() - I = icon(item.icon, item.icon_state, SOUTH) + item = new current_product() + new_icon = icon(item.icon, item.icon_state, SOUTH) qdel(item) - Insert(imgid, I) + Insert(imgid, new_icon) return ..() diff --git a/code/modules/clothing/head/head.dm b/code/modules/clothing/head/head.dm index 7e1c1d8d08d2..a441256ae450 100644 --- a/code/modules/clothing/head/head.dm +++ b/code/modules/clothing/head/head.dm @@ -577,6 +577,15 @@ desc = "A beret with the lieutenant insignia emblazoned on it. It inspires a feeling of respect." icon_state = "beret_badge" +/obj/item/clothing/head/beret/marine/ro + name = "\improper USCM quartermaster beret" + desc = "A beret with the sergeant insignia emblazoned on it. It symbolizes hard work and shady business." + icon = 'icons/obj/items/clothing/cm_hats.dmi' + icon_state = "ro_beret" + item_icons = list( + WEAR_HEAD = 'icons/mob/humans/onmob/head_1.dmi' + ) + //==========================//PROTECTIVE\\===============================\\ //=======================================================================\\ diff --git a/code/modules/clothing/suits/marine_armor/_marine_armor.dm b/code/modules/clothing/suits/marine_armor/_marine_armor.dm index 3d89ecb7cabb..0ba339433fc2 100644 --- a/code/modules/clothing/suits/marine_armor/_marine_armor.dm +++ b/code/modules/clothing/suits/marine_armor/_marine_armor.dm @@ -665,15 +665,6 @@ flags_item = MOB_LOCK_ON_EQUIP|NO_CRYO_STORE unacidable = TRUE -/obj/item/clothing/suit/storage/RO - name = "quartermaster jacket" - desc = "A green jacket worn by USCM personnel. The back has the flag of the United Americas on it." - icon_state = "RO_jacket" - blood_overlay_type = "coat" - flags_armor_protection = BODY_FLAG_CHEST|BODY_FLAG_ARMS - valid_accessory_slots = list(ACCESSORY_SLOT_ARMBAND, ACCESSORY_SLOT_DECOR, ACCESSORY_SLOT_MEDAL) - restricted_accessory_slots = list(ACCESSORY_SLOT_ARMBAND) - //==================Combat Correspondent==================\\ /obj/item/clothing/suit/storage/marine/light/reporter diff --git a/code/modules/clothing/suits/marine_coat.dm b/code/modules/clothing/suits/marine_coat.dm index 78c8154e1810..a69f0922bf5b 100644 --- a/code/modules/clothing/suits/marine_coat.dm +++ b/code/modules/clothing/suits/marine_coat.dm @@ -89,6 +89,16 @@ flags_atom = NO_SNOW_TYPE initial_icon_state = "pilot_alt" +/obj/item/clothing/suit/storage/jacket/marine/RO + name = "quartermaster jacket" + desc = "A green jacket worn by USCM personnel. The back has the flag of the United Americas on it." + icon_state = "RO_jacket" + icon = 'icons/obj/items/clothing/suits.dmi' + item_icons = list( + WEAR_JACKET = 'icons/mob/humans/onmob/suit_0.dmi' + ) + flags_atom = NO_SNOW_TYPE + /obj/item/clothing/suit/storage/jacket/marine/service/mp name = "military police service jacket" desc = "A marine service jacket adopted for use by Military Police personnel on board USCM ships. Ironically most ships require their MP departments to use full armor, making these barely used by on duty MPs. This variant is also available to regular Marines, if they are willing to bear the shame." diff --git a/code/modules/cm_marines/equipment/gear.dm b/code/modules/cm_marines/equipment/gear.dm index 9e5352621e32..6e11181e249e 100644 --- a/code/modules/cm_marines/equipment/gear.dm +++ b/code/modules/cm_marines/equipment/gear.dm @@ -4,8 +4,8 @@ /obj/item/device/flashlight/combat name = "combat flashlight" - desc = "A Flashlight designed to be held in the hand, or attached to a rifle" - icon_state = "flashlight" + desc = "A Flashlight designed to be held in the hand, or attached to a rifle, has better bulb compared to a normal flashlight." + icon_state = "combat_flashlight" item_state = "flashlight" light_range = 5 //Pretty luminous, but still a flashlight that fits in a pocket diff --git a/code/modules/gear_presets/synths.dm b/code/modules/gear_presets/synths.dm index d7c531332c9a..db82e44ea890 100644 --- a/code/modules/gear_presets/synths.dm +++ b/code/modules/gear_presets/synths.dm @@ -89,7 +89,7 @@ new_human.equip_to_slot_or_del(new /obj/item/clothing/head/beret/cm(new_human), WEAR_HEAD) new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/mcom/synth(new_human), WEAR_L_EAR) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/rank/synthetic(new_human), WEAR_BODY) - new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/RO(new_human), WEAR_JACKET) + new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/jacket/marine/RO(new_human), WEAR_JACKET) new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(new_human), WEAR_FEET) new_human.equip_to_slot_or_del(new /obj/item/storage/belt/utility/full(new_human), WEAR_WAIST) new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/yellow(new_human), WEAR_HANDS) diff --git a/code/modules/projectiles/ammo_boxes/box_structures.dm b/code/modules/projectiles/ammo_boxes/box_structures.dm index da0b700068b9..ada2c6aa7bf2 100644 --- a/code/modules/projectiles/ammo_boxes/box_structures.dm +++ b/code/modules/projectiles/ammo_boxes/box_structures.dm @@ -101,7 +101,7 @@ if(item_box.handfuls) var/obj/item/ammo_magazine/AM = locate(/obj/item/ammo_magazine) in item_box.contents if(AM) - . += SPAN_INFO("It has roughly [floor(AM.current_rounds/5)] handfuls remaining.") + . += SPAN_INFO("It has roughly [floor(AM.current_rounds/AM.transfer_handful_amount)] handfuls remaining.") else . += SPAN_INFO("It has [length(item_box.contents)] magazines out of [item_box.num_of_magazines].") if(burning) diff --git a/code/modules/projectiles/ammo_boxes/grenade_packets.dm b/code/modules/projectiles/ammo_boxes/grenade_packets.dm index 0fe64342060b..91ea15e039b1 100644 --- a/code/modules/projectiles/ammo_boxes/grenade_packets.dm +++ b/code/modules/projectiles/ammo_boxes/grenade_packets.dm @@ -32,6 +32,7 @@ GLOBAL_LIST_INIT(grenade_packets, list( /obj/item/storage/box/packet/hornet, /obj/item/storage/box/packet/incendiary, /obj/item/storage/box/packet/smoke, + /obj/item/storage/box/packet/foam, /obj/item/storage/box/packet/phosphorus, /obj/item/storage/box/packet/phosphorus/upp, /obj/item/storage/box/packet/m15, @@ -76,11 +77,17 @@ GLOBAL_LIST_INIT(grenade_packets, list( content_type = /obj/item/explosive/grenade/smokebomb /obj/item/storage/box/packet/phosphorus - name = "\improper HPDP grenade packet" - desc = "It contains three HPDP white phosphorus grenades." - icon_state = "hpdp_packet" + name = "\improper WPDP grenade packet" + desc = "It contains three WPDP white phosphorus grenades." + icon_state = "wpdp_packet" content_type = /obj/item/explosive/grenade/phosphorus/weak +/obj/item/storage/box/packet/phosphorus/strong + name = "\improper CCDP grenade packet" + desc = "It contains three CCDP chemical compound grenades." + icon_state = "ccdp_packet" + content_type = /obj/item/explosive/grenade/phosphorus + /obj/item/storage/box/packet/phosphorus/upp name = "\improper Type 8 WP grenade packet" desc = "It contains three type 8 white phosphorus grenades." @@ -97,6 +104,12 @@ GLOBAL_LIST_INIT(grenade_packets, list( desc = "These little packets of joy were distributed in the 100th (Season 2) Issue of the Boots! magazine as commemorative rewards for subscribers. Nobody knows how anyone, at any point, never asked 'wait, is this a terrible idea?' during the process." content_type = /obj/item/explosive/grenade/high_explosive/frag/toy +/obj/item/storage/box/packet/foam + name = "\improper MFHS foam grenade packet" + desc = "It contains three MFHS metal-foam grenades." + icon_state = "mfhs_packet" + content_type = /obj/item/explosive/grenade/metal_foam + /obj/item/storage/box/packet/m15 name = "\improper M15 fragmentation grenade packet" desc = "It contains three M15 fragmentation grenades. Handle with care." diff --git a/code/modules/projectiles/ammo_boxes/misc_boxes.dm b/code/modules/projectiles/ammo_boxes/misc_boxes.dm index defb82cf670d..77731ab7fa7b 100644 --- a/code/modules/projectiles/ammo_boxes/misc_boxes.dm +++ b/code/modules/projectiles/ammo_boxes/misc_boxes.dm @@ -163,6 +163,19 @@ /obj/item/ammo_box/magazine/misc/flashlight/empty empty = TRUE +/obj/item/ammo_box/magazine/misc/flashlight/combat + name = "\improper box of combat flashlights" + desc = "A box of flashlights to brighten your day!" + magazine_type = /obj/item/device/flashlight/combat + num_of_magazines = 8 + icon_state = "flashlightbox_combat" + icon_state_deployed = "flashlightbox_combat_deployed" + overlay_content = "_flashlight" + +/obj/item/ammo_box/magazine/misc/flashlight/combat/empty + empty = TRUE + + //------------------------Battery Box-------------------------- /obj/item/ammo_box/magazine/misc/power_cell diff --git a/code/modules/projectiles/magazines/lever_action.dm b/code/modules/projectiles/magazines/lever_action.dm index 2eb2d25a28f8..ac1d57dbd412 100644 --- a/code/modules/projectiles/magazines/lever_action.dm +++ b/code/modules/projectiles/magazines/lever_action.dm @@ -52,6 +52,7 @@ Similar to shotguns.dm but not exactly. icon_state = "458-box" item_state = "458-box" default_ammo = /datum/ammo/bullet/lever_action/xm88 + max_rounds = 100 caliber = ".458" gun_type = /obj/item/weapon/gun/lever_action/xm88 handful_state = "boomslang_bullet" diff --git a/code/modules/vehicles/interior/interactable/vendors.dm b/code/modules/vehicles/interior/interactable/vendors.dm index 8069c8ba71e4..4ad837169fba 100644 --- a/code/modules/vehicles/interior/interactable/vendors.dm +++ b/code/modules/vehicles/interior/interactable/vendors.dm @@ -182,7 +182,7 @@ list("M20 Claymore Anti-Personnel Mine", 0, /obj/item/explosive/mine, VENDOR_ITEM_REGULAR), list("M40 HEDP Grenade", 0, /obj/item/explosive/grenade/high_explosive, VENDOR_ITEM_REGULAR), list("M40 HIDP Incendiary Grenade", 0, /obj/item/explosive/grenade/incendiary, VENDOR_ITEM_REGULAR), - list("M40 HPDP White Phosphorus Smoke Grenade", 0, /obj/item/explosive/grenade/phosphorus, VENDOR_ITEM_REGULAR), + list("M40 CCDP Chemical Compound Smoke Grenade", 0, /obj/item/explosive/grenade/phosphorus, VENDOR_ITEM_REGULAR), list("M40 HSDP Smoke Grenade", floor(scale * 1), /obj/item/explosive/grenade/smokebomb, VENDOR_ITEM_REGULAR), list("M74 AGM-Frag Airburst Grenade", 0, /obj/item/explosive/grenade/high_explosive/airburst, VENDOR_ITEM_REGULAR), list("M74 AGM-Incendiary Airburst Grenade", 0, /obj/item/explosive/grenade/incendiary/airburst, VENDOR_ITEM_REGULAR), diff --git a/icons/mob/humans/onmob/head_1.dmi b/icons/mob/humans/onmob/head_1.dmi index f178b88abf36..5b2cbecdff22 100644 Binary files a/icons/mob/humans/onmob/head_1.dmi and b/icons/mob/humans/onmob/head_1.dmi differ diff --git a/icons/mob/humans/onmob/items_lefthand_0.dmi b/icons/mob/humans/onmob/items_lefthand_0.dmi index 434765ed34fd..f949062be7b7 100644 Binary files a/icons/mob/humans/onmob/items_lefthand_0.dmi and b/icons/mob/humans/onmob/items_lefthand_0.dmi differ diff --git a/icons/mob/humans/onmob/items_righthand_0.dmi b/icons/mob/humans/onmob/items_righthand_0.dmi index 5be50a08fd8e..1f70077321ee 100644 Binary files a/icons/mob/humans/onmob/items_righthand_0.dmi and b/icons/mob/humans/onmob/items_righthand_0.dmi differ diff --git a/icons/obj/items/clothing/cm_hats.dmi b/icons/obj/items/clothing/cm_hats.dmi index 318ff118a922..3c11412ee69c 100644 Binary files a/icons/obj/items/clothing/cm_hats.dmi and b/icons/obj/items/clothing/cm_hats.dmi differ diff --git a/icons/obj/items/lighting.dmi b/icons/obj/items/lighting.dmi index 617109d9a829..0c3519a7e80a 100644 Binary files a/icons/obj/items/lighting.dmi and b/icons/obj/items/lighting.dmi differ diff --git a/icons/obj/items/storage/packets.dmi b/icons/obj/items/storage/packets.dmi index c7c2d1612e00..ac900a18aafa 100644 Binary files a/icons/obj/items/storage/packets.dmi and b/icons/obj/items/storage/packets.dmi differ diff --git a/icons/obj/items/weapons/grenade.dmi b/icons/obj/items/weapons/grenade.dmi index 589b52cd0a6a..61c9707e43df 100644 Binary files a/icons/obj/items/weapons/grenade.dmi and b/icons/obj/items/weapons/grenade.dmi differ diff --git a/icons/obj/items/weapons/guns/ammo_boxes/boxes_and_lids.dmi b/icons/obj/items/weapons/guns/ammo_boxes/boxes_and_lids.dmi index f01be20a48b4..1152bf3ed569 100644 Binary files a/icons/obj/items/weapons/guns/ammo_boxes/boxes_and_lids.dmi and b/icons/obj/items/weapons/guns/ammo_boxes/boxes_and_lids.dmi differ diff --git a/icons/obj/structures/machinery/vending.dmi b/icons/obj/structures/machinery/vending.dmi index ba45e612ca22..f2449fcad0ed 100644 Binary files a/icons/obj/structures/machinery/vending.dmi and b/icons/obj/structures/machinery/vending.dmi differ diff --git a/icons/obj/structures/props/decals.dmi b/icons/obj/structures/props/decals.dmi index e99f52a10439..5b641ceaba89 100644 Binary files a/icons/obj/structures/props/decals.dmi and b/icons/obj/structures/props/decals.dmi differ diff --git a/maps/map_files/LV522_Chances_Claim/LV522_Chances_Claim.dmm b/maps/map_files/LV522_Chances_Claim/LV522_Chances_Claim.dmm index 15653a8d98de..12cf5cbeb613 100644 --- a/maps/map_files/LV522_Chances_Claim/LV522_Chances_Claim.dmm +++ b/maps/map_files/LV522_Chances_Claim/LV522_Chances_Claim.dmm @@ -30097,7 +30097,7 @@ /turf/open/floor/prison, /area/lv522/indoors/a_block/kitchen) "oxd" = ( -/obj/item/clothing/suit/storage/RO{ +/obj/item/clothing/suit/storage/jacket/marine/RO{ name = "\improper UA jacket" }, /turf/open/shuttle/dropship/can_surgery/light_grey_single_wide_up_to_down, diff --git a/maps/map_files/USS_Almayer/USS_Almayer.dmm b/maps/map_files/USS_Almayer/USS_Almayer.dmm index 079067d7938a..f6ca37bce875 100644 --- a/maps/map_files/USS_Almayer/USS_Almayer.dmm +++ b/maps/map_files/USS_Almayer/USS_Almayer.dmm @@ -20565,7 +20565,12 @@ /obj/structure/surface/table/almayer, /obj/item/storage/firstaid/regular, /obj/item/clipboard, -/obj/item/tool/pen, +/obj/item/tool/pen{ + pixel_y = -17 + }, +/obj/item/paper_bin/uscm{ + pixel_y = -16 + }, /turf/open/floor/almayer/plate, /area/almayer/squads/req) "eAI" = ( @@ -32918,6 +32923,12 @@ pixel_y = 10; req_one_access_txt = "1;21" }, +/obj/item/paper_bin/uscm{ + pixel_y = -4 + }, +/obj/item/tool/pen{ + pixel_y = -5 + }, /turf/open/floor/almayer/plate, /area/almayer/squads/req) "jOo" = ( @@ -38917,6 +38928,7 @@ /turf/open/floor/almayer/plate, /area/almayer/medical/morgue) "mrM" = ( +/obj/structure/closet/secure_closet/quartermaster_uscm, /turf/open/floor/almayer/green, /area/almayer/squads/req) "msg" = ( @@ -41623,8 +41635,12 @@ pixel_x = 4; pixel_y = 11 }, -/obj/structure/sign/poster/propaganda{ - pixel_y = 34 +/obj/structure/sign/ROcreed{ + pixel_y = 30 + }, +/obj/item/device/flashlight/lamp{ + pixel_y = -11; + pixel_x = 7 }, /turf/open/floor/almayer/green/north, /area/almayer/squads/req) @@ -46899,7 +46915,9 @@ /area/almayer/engineering/lower) "pCr" = ( /obj/structure/machinery/cm_vending/sorted/attachments/blend, -/turf/open/floor/almayer/plate, +/turf/closed/wall/almayer{ + opacity = 0 + }, /area/almayer/squads/req) "pDh" = ( /obj/structure/machinery/power/monitor{ @@ -52161,6 +52179,9 @@ /area/almayer/maint/hull/upper/p_stern) "rHN" = ( /obj/structure/pipes/vents/pump/on, +/obj/structure/bed/chair{ + dir = 4 + }, /turf/open/floor/plating/plating_catwalk, /area/almayer/squads/req) "rIj" = ( @@ -57643,6 +57664,11 @@ /obj/item/storage/box/m94, /obj/item/storage/box/m94, /obj/item/stack/sheet/mineral/plastic/small_stack, +/obj/item/frame/rack, +/obj/item/frame/rack, +/obj/item/frame/rack, +/obj/item/frame/rack, +/obj/item/frame/rack, /turf/open/floor/almayer/test_floor4, /area/almayer/squads/req) "tXn" = ( @@ -64472,6 +64498,12 @@ /obj/effect/landmark/start/pilot/dropship_pilot, /turf/open/floor/plating/plating_catwalk, /area/almayer/living/pilotbunks) +"wEF" = ( +/obj/structure/bed/chair{ + dir = 4 + }, +/turf/open/floor/almayer, +/area/almayer/squads/req) "wEI" = ( /obj/structure/surface/table/reinforced/black, /obj/item/tool/pen, @@ -112335,7 +112367,7 @@ mww sZe bdl fgm -bdj +wEF rHN kuu mDj diff --git a/sound/items/megaphone.ogg b/sound/items/megaphone.ogg new file mode 100644 index 000000000000..31d7a8d1ad96 Binary files /dev/null and b/sound/items/megaphone.ogg differ diff --git a/sound/machines/vending_drop.ogg b/sound/machines/vending_drop.ogg new file mode 100644 index 000000000000..4e0ed7dd6d89 Binary files /dev/null and b/sound/machines/vending_drop.ogg differ