diff --git a/code/__DEFINES/mode.dm b/code/__DEFINES/mode.dm index f9e1bbc70b..cc1797a81f 100644 --- a/code/__DEFINES/mode.dm +++ b/code/__DEFINES/mode.dm @@ -289,6 +289,7 @@ DEFINE_BITFIELD(whitelist_status, list( #define FACTION_LIST_ERT_ALL list(FACTION_PMC, FACTION_WY_DEATHSQUAD, FACTION_WY, FACTION_CLF, FACTION_CONTRACTOR, FACTION_UPP, FACTION_FREELANCER, FACTION_MERCENARY, FACTION_DUTCH, FACTION_HEFA, FACTION_GLADIATOR, FACTION_PIRATE, FACTION_PIZZA, FACTION_SOUTO, FACTION_MARSHAL, FACTION_TWE) #define FACTION_LIST_WY list(FACTION_PMC, FACTION_WY_DEATHSQUAD, FACTION_WY) #define FACTION_LIST_UPP list(FACTION_UPP) +#define FACTION_LIST_UPP_COLONY list(FACTION_COLONIST, FACTION_UPP) #define FACTION_LIST_CLF list(FACTION_CLF) #define FACTION_LIST_TWE list(FACTION_TWE) #define FACTION_LIST_FREELANCER list(FACTION_FREELANCER) diff --git a/code/game/objects/prop.dm b/code/game/objects/prop.dm index a3b37f295a..35dd5415e8 100644 --- a/code/game/objects/prop.dm +++ b/code/game/objects/prop.dm @@ -345,3 +345,13 @@ desc = "The most ancient of tools." w_class = SIZE_TINY hitsound = 'sound/weapons/genhit3.ogg' + +/obj/item/prop/deviltrap + name = "devil trap" + icon = 'icons/obj/items/misc.dmi' + icon_state = "deviltrap" + item_state = "" + force = 0.5 + throwforce = 0.5 + desc = "An object crafted out of branches, twigs, and twine rope that seem to form a miniature pyramid. It leaves you with an ominous feeling." + w_class = SIZE_LARGE diff --git a/code/modules/clothing/under/marine_uniform.dm b/code/modules/clothing/under/marine_uniform.dm index 81766bb390..6c227fd763 100644 --- a/code/modules/clothing/under/marine_uniform.dm +++ b/code/modules/clothing/under/marine_uniform.dm @@ -534,6 +534,8 @@ desc = "A pair of blue-grey slacks coupled with a blue shirt, featuring venlar armor inserts at critical areas to protect from blades and low caliber ballistics." icon_state = "upp_uniform_pap" worn_state = "upp_uniform_pap" + has_sensor = UNIFORM_HAS_SENSORS + sensor_faction = FACTION_LIST_UPP_COLONY flags_jumpsuit = UNIFORM_SLEEVE_ROLLABLE|UNIFORM_JACKET_REMOVABLE /obj/item/clothing/under/marine/veteran/UPP/service @@ -543,30 +545,6 @@ worn_state = "upp_uniform_service" flags_jumpsuit = UNIFORM_SLEEVE_ROLLABLE|UNIFORM_JACKET_REMOVABLE -/obj/item/clothing/under/marine/veteran/UPP/civi1 - name = "\improper UPP Civilian-style Orange overalls" - desc = "A set of Civilian-style Orange Overalls with a dark tan undershirt. The material is of a poor quality, however it's better than nothing. Clothing of this style is typically given out to those who work laborious jobs." - icon_state = "upp_uniform_civi1" - worn_state = "upp_uniform_civi1" - -/obj/item/clothing/under/marine/veteran/UPP/civi2 - name = "\improper UPP Civilian-style tan overalls" - desc = "A set of Civilian-style Tan Overalls with a Blue undershirt. The material is of a poor quality, however it's better than nothing. Clothing of this style is typically given to those who work laborious jobs." - icon_state = "upp_uniform_civi2" - worn_state = "upp_uniform_civi2" - -/obj/item/clothing/under/marine/veteran/UPP/civi3 - name = "\improper UPP Civilian-style shirt and pants" - desc = "A set of Civilian-style tan shirt and jeans. The material, while poor, is comfortable enough to be worn during all periods of the day." - icon_state = "upp_uniform_civi3" - worn_state = "upp_uniform_civi3" - -/obj/item/clothing/under/marine/veteran/UPP/civi4 - name = "\improper UPP Civilian-style Vest and pants" - desc = "A set of Civilian-style Brown vest and orange pants. The material is surprisingly decent, something not often worn by the civilians of the UPP for two reasons: They typically can't afford such clothing, and if they can, it paints a target on their back." - icon_state = "upp_uniform_civi4" - worn_state = "upp_uniform_civi4" - //=========================//Freelancer\\================================\\ /obj/item/clothing/under/marine/veteran/freelancer diff --git a/code/modules/cm_marines/equipment/kit_boxes.dm b/code/modules/cm_marines/equipment/kit_boxes.dm index e9f32c5f1a..ff4de502e4 100644 --- a/code/modules/cm_marines/equipment/kit_boxes.dm +++ b/code/modules/cm_marines/equipment/kit_boxes.dm @@ -527,7 +527,7 @@ new /obj/item/storage/pill_bottle/packet/oxycodone(src) new /obj/item/storage/pill_bottle/packet/kelotane(src) new /obj/item/storage/pill_bottle/packet/bicaridine(src) - new /obj/item/weapon/gun/shotgun/combat/guard(src) + new /obj/item/weapon/gun/shotgun/combat(src) new /obj/item/storage/pouch/general/large(src) new /obj/item/ammo_magazine/shotgun/buckshot(src) new /obj/item/ammo_magazine/shotgun/buckshot(src) diff --git a/code/modules/gear_presets/contractor.dm b/code/modules/gear_presets/contractor.dm index 3847fbb0bc..706ba3b5f6 100644 --- a/code/modules/gear_presets/contractor.dm +++ b/code/modules/gear_presets/contractor.dm @@ -131,7 +131,7 @@ new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ap, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/extended, WEAR_IN_BACK) if(8 to 9) // 20% - new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/shotgun/combat/covert, WEAR_J_STORE) + new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/shotgun/combat, WEAR_J_STORE) new_human.equip_to_slot_or_del(new /obj/item/clothing/accessory/storage/black_vest, WEAR_ACCESSORY) new_human.equip_to_slot_or_del(new /obj/item/explosive/grenade/high_explosive, WEAR_IN_ACCESSORY) new_human.equip_to_slot_or_del(new /obj/item/explosive/grenade/high_explosive, WEAR_IN_ACCESSORY) @@ -527,7 +527,7 @@ new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ap, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/extended, WEAR_IN_BACK) if(8 to 9) // 20% - new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/shotgun/combat/covert, WEAR_J_STORE) + new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/shotgun/combat, WEAR_J_STORE) new_human.equip_to_slot_or_del(new /obj/item/clothing/accessory/storage/black_vest, WEAR_ACCESSORY) new_human.equip_to_slot_or_del(new /obj/item/explosive/grenade/high_explosive, WEAR_IN_ACCESSORY) new_human.equip_to_slot_or_del(new /obj/item/explosive/grenade/high_explosive, WEAR_IN_ACCESSORY) diff --git a/code/modules/gear_presets/upp.dm b/code/modules/gear_presets/upp.dm index 012577df37..5952c98e7a 100644 --- a/code/modules/gear_presets/upp.dm +++ b/code/modules/gear_presets/upp.dm @@ -145,7 +145,6 @@ new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/shotgun/heavy/buckshot, WEAR_IN_ACCESSORY) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/shotgun/heavy/buckshot, WEAR_IN_ACCESSORY) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/shotgun/heavy/buckshot, WEAR_IN_JACKET) - new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/shotgun/heavy/buckshot, WEAR_L_HAND) //*****************************************************************************************************/ /datum/equipment_preset/upp/rifleman @@ -723,7 +722,7 @@ new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/upp, WEAR_FEET) new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/marine, WEAR_HANDS) //pockets - new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/autoinjector, WEAR_L_STORE) + new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/autoinjector/full, WEAR_L_STORE) new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/firstaid/full/alternate, WEAR_R_STORE) //*****************************************************************************************************/ @@ -1058,7 +1057,8 @@ /datum/equipment_preset/upp/admin name = "UPP Civilian Administrator" flags = EQUIPMENT_PRESET_EXTRA - faction = list(FACTION_COLONIST, FACTION_UPP) + faction = FACTION_COLONIST + faction_group = FACTION_LIST_UPP_COLONY assignment = "Administrator" role_comm_title = "ADMIN" paygrades = list(PAY_SHORT_CIV = JOB_PLAYTIME_TIER_0) @@ -1180,7 +1180,8 @@ /datum/equipment_preset/upp/police name = "UPP People's Armed Police Officer" flags = EQUIPMENT_PRESET_EXTRA - faction = list(FACTION_COLONIST, FACTION_UPP) + faction = FACTION_COLONIST + faction_group = FACTION_LIST_UPP_COLONY assignment = "People's Armed Police Militsioner" role_comm_title = "MILTSY" paygrades = list(PAY_SHORT_UC1 = JOB_PLAYTIME_TIER_0) @@ -1212,14 +1213,6 @@ /datum/equipment_preset/upp/police/riot name = "UPP People's Armed Police Officer - Riot" - flags = EQUIPMENT_PRESET_EXTRA - faction = list(FACTION_COLONIST, FACTION_UPP) - assignment = "People's Armed Police Militsioner" - role_comm_title = "MILTSY" - paygrades = list(PAY_SHORT_UC1 = JOB_PLAYTIME_TIER_0) - skills = /datum/skills/cmb - access = list(ACCESS_UPP_GENERAL, ACCESS_CIVILIAN_PUBLIC, ACCESS_CIVILIAN_LOGISTICS, ACCESS_CIVILIAN_ENGINEERING, ACCESS_CIVILIAN_BRIG, ACCESS_CIVILIAN_MEDBAY, ACCESS_CIVILIAN_COMMAND) - idtype = /obj/item/card/id/silver /datum/equipment_preset/upp/police/riot/load_gear(mob/living/carbon/human/new_human) @@ -1253,8 +1246,7 @@ new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/t73, WEAR_IN_L_STORE) new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/firstaid/full/alternate, WEAR_R_STORE) - new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/shotgun/pump/type23, WEAR_R_HAND) - new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/shotgun/heavy/beanbag, WEAR_L_HAND) + new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/shotgun/pump/type23/riot, WEAR_R_HAND) /datum/equipment_preset/upp/prisoner name = "UPP Prisoner" diff --git a/code/modules/projectiles/guns/shotguns.dm b/code/modules/projectiles/guns/shotguns.dm index 69e4ab0213..0dab357e5e 100644 --- a/code/modules/projectiles/guns/shotguns.dm +++ b/code/modules/projectiles/guns/shotguns.dm @@ -286,27 +286,15 @@ can cause issues with ammo types getting mixed up during the burst. . = ..() if(in_chamber) . += "It has a chambered round." -/obj/item/weapon/gun/shotgun/combat/loaded - current_mag = /obj/item/ammo_magazine/internal/shotgun/combat/loaded +/obj/item/weapon/gun/shotgun/combat/unloaded + current_mag = /obj/item/ammo_magazine/internal/shotgun/combat/unloaded + +/obj/item/weapon/gun/shotgun/combat/slug + current_mag = /obj/item/ammo_magazine/internal/shotgun/combat/slug /obj/item/weapon/gun/shotgun/combat/riot - name = "\improper M120/R tactical shotgun" - icon_state = "mp220" - item_state = "mp220" - desc = "A successor to the Benelli M4 Super 90, the M120 tactical shotgun is in service with the USCM due its easy maneuverability in close quarters, 12 gauge chambering, high firerate and integrated U1 underslung grenade launcher. While not part of the standard doctrine, they are common none the less. This one comes with a blue steel finish to denote its function as a riot shotgun. The internal tube magazine stores 6 shells and the U1 grenade launcher stores three grenades." current_mag = /obj/item/ammo_magazine/internal/shotgun/combat/riot -/obj/item/weapon/gun/shotgun/combat/guard - desc = "The Weyland-Yutani M120 Shotgun, a semi-automatic shotgun with a quick fire rate. Equipped with a red handle to signify its use with Military Police Honor Guards." - icon_state = "mp221" - item_state = "mp221" - starting_attachment_types = list(/obj/item/attachable/magnetic_harness, /obj/item/attachable/bayonet) - current_mag = /obj/item/ammo_magazine/internal/shotgun/combat - -/obj/item/weapon/gun/shotgun/combat/covert - starting_attachment_types = list(/obj/item/attachable/magnetic_harness, /obj/item/attachable/extended_barrel) - current_mag = /obj/item/ammo_magazine/internal/shotgun/combat - //SOF MK210, an earlier developmental variant of the MK211 tactical used by USCM SOF. /obj/item/weapon/gun/shotgun/combat/marsoc name = "\improper XM38 tactical shotgun" @@ -401,8 +389,14 @@ can cause issues with ammo types getting mixed up during the burst. recoil = RECOIL_AMOUNT_TIER_1 recoil_unwielded = RECOIL_AMOUNT_TIER_1 -/obj/item/weapon/gun/shotgun/type23 - current_mag = /obj/item/ammo_magazine/internal/shotgun/type23/loaded +/obj/item/weapon/gun/shotgun/type23/unloaded + current_mag = /obj/item/ammo_magazine/internal/shotgun/type23/unloaded + +/obj/item/weapon/gun/shotgun/type23/slug + current_mag = /obj/item/ammo_magazine/internal/shotgun/type23/slug + +/obj/item/weapon/gun/shotgun/type23/riot + current_mag = /obj/item/ammo_magazine/internal/shotgun/type23/riot /obj/item/weapon/gun/shotgun/pump/type23 name = "\improper KS-29 riot shotgun" @@ -432,8 +426,15 @@ can cause issues with ammo types getting mixed up during the burst. recoil = RECOIL_AMOUNT_TIER_1 recoil_unwielded = RECOIL_AMOUNT_TIER_1 -/obj/item/weapon/gun/shotgun/pump/type23 - current_mag = /obj/item/ammo_magazine/internal/shotgun/type23/loaded +/obj/item/weapon/gun/shotgun/pump/type23/unloaded + current_mag = /obj/item/ammo_magazine/internal/shotgun/type23/unloaded + +/obj/item/weapon/gun/shotgun/pump/type23/slug + current_mag = /obj/item/ammo_magazine/internal/shotgun/type23/slug + +/obj/item/weapon/gun/shotgun/pump/type23/riot + current_mag = /obj/item/ammo_magazine/internal/shotgun/type23/riot + //------------------------------------------------------- //DOUBLE SHOTTY @@ -1132,7 +1133,7 @@ can cause issues with ammo types getting mixed up during the burst. return ..() /obj/item/weapon/gun/shotgun/pump - current_mag = /obj/item/ammo_magazine/internal/shotgun/loaded + current_mag = /obj/item/ammo_magazine/internal/shotgun //------------------------------------------------------- diff --git a/code/modules/projectiles/magazines/shotguns.dm b/code/modules/projectiles/magazines/shotguns.dm index efc00af6d9..0d8ff0d7ca 100644 --- a/code/modules/projectiles/magazines/shotguns.dm +++ b/code/modules/projectiles/magazines/shotguns.dm @@ -150,11 +150,17 @@ also doesn't really matter. You can only reload them with handfuls. default_ammo = /datum/ammo/bullet/shotgun/buckshot caliber = "12g" max_rounds = 4 - current_rounds = 0 + current_rounds = 4 chamber_closed = 0 -/obj/item/ammo_magazine/internal/shotgun/loaded - current_rounds = 4 +/obj/item/ammo_magazine/internal/shotgun/slug + default_ammo = /datum/ammo/bullet/shotgun/slug + +/obj/item/ammo_magazine/internal/shotgun/riot + default_ammo = /datum/ammo/bullet/shotgun/beanbag + +/obj/item/ammo_magazine/internal/shotgun/unloaded + current_rounds = 0 /obj/item/ammo_magazine/internal/shotgun/double //For a double barrel. max_rounds = 2 @@ -175,14 +181,16 @@ also doesn't really matter. You can only reload them with handfuls. /obj/item/ammo_magazine/internal/shotgun/combat caliber = "12g" max_rounds = 6 - -/obj/item/ammo_magazine/internal/shotgun/combat/loaded - current_rounds = 6 +/obj/item/ammo_magazine/internal/shotgun/combat/slug + default_ammo = /datum/ammo/bullet/shotgun/slug + /obj/item/ammo_magazine/internal/shotgun/combat/riot default_ammo = /datum/ammo/bullet/shotgun/beanbag - current_rounds = 6 + +/obj/item/ammo_magazine/internal/shotgun/combat/unloaded + current_rounds = 0 /obj/item/ammo_magazine/internal/shotgun/marsoc caliber = "12g" @@ -193,16 +201,32 @@ also doesn't really matter. You can only reload them with handfuls. max_rounds = 5 /obj/item/ammo_magazine/internal/shotgun/type23 - default_ammo = /datum/ammo/bullet/shotgun/heavy/buckshot - caliber = "8g" max_rounds = 4 - -/obj/item/ammo_magazine/internal/shotgun/type23/loaded current_rounds = 4 + default_ammo = /datum/ammo/bullet/shotgun/heavy/buckshot + +/obj/item/ammo_magazine/internal/shotgun/type23/slug + default_ammo = /datum/ammo/bullet/shotgun/heavy/slug + +/obj/item/ammo_magazine/internal/shotgun/type23/riot + default_ammo = /datum/ammo/bullet/shotgun/heavy/beanbag + +/obj/item/ammo_magazine/internal/shotgun/type23/unloaded + current_rounds = 0 + /obj/item/ammo_magazine/internal/shotgun/cmb default_ammo = /datum/ammo/bullet/shotgun/buckshot max_rounds = 4 + current_rounds = 4 + +/obj/item/ammo_magazine/internal/shotgun/cmb/slug + default_ammo = /datum/ammo/bullet/shotgun/slug + +/obj/item/ammo_magazine/internal/shotgun/cmb/riot + default_ammo = /datum/ammo/bullet/shotgun/beanbag +/obj/item/ammo_magazine/internal/shotgun/cmb/riot + current_rounds = 0 /obj/item/ammo_magazine/internal/shotgun/cmb/m3717 max_rounds = 5 diff --git a/icons/obj/items/misc.dmi b/icons/obj/items/misc.dmi index 5e1b9cdca4..9eb72df5be 100644 Binary files a/icons/obj/items/misc.dmi and b/icons/obj/items/misc.dmi differ diff --git a/maps/shuttles/dropship_upp.dmm b/maps/shuttles/dropship_upp.dmm index ecb5e4ba49..2c28023880 100644 --- a/maps/shuttles/dropship_upp.dmm +++ b/maps/shuttles/dropship_upp.dmm @@ -120,19 +120,13 @@ dir = 8; can_buckle = 1 }, -/turf/open/floor/strata/multi_tiles/west, +/turf/open/floor/plating/plating_catwalk/strata, /area/shuttle/ds_upp) "lm" = ( /turf/closed/shuttle/ert{ icon_state = "upp1" }, /area/shuttle/ds_upp) -"lS" = ( -/obj/structure/bed/chair/dropship/pilot{ - dir = 1 - }, -/turf/open/floor/strata/grey_multi_tiles, -/area/shuttle/ds_upp) "nZ" = ( /obj/structure/machinery/camera/autoname/golden_arrow/midway{ dir = 4; @@ -231,8 +225,7 @@ /obj/effect/decal/warning_stripes{ icon_state = "S" }, -/obj/effect/decal/strata_decals/catwalk/prison, -/turf/open/floor/strata/grey_multi_tiles, +/turf/open/floor/strata/multi_tiles/southwest, /area/shuttle/ds_upp) "AK" = ( /turf/closed/shuttle/ert{ @@ -293,6 +286,14 @@ dir = 8; pixel_x = -14 }, +/obj/structure/bed/chair/dropship/pilot{ + dir = 1; + layer = 6 + }, +/obj/effect/decal/warning_stripes{ + icon_state = "E"; + pixel_x = 1 + }, /turf/open/floor/strata/multi_tiles/southwest, /area/shuttle/ds_upp) "FY" = ( @@ -375,7 +376,7 @@ dir = 4; can_buckle = 1 }, -/turf/open/floor/strata/multi_tiles/west, +/turf/open/floor/plating/plating_catwalk/strata, /area/shuttle/ds_upp) "Kv" = ( /obj/structure/bed/chair/vehicle{ @@ -448,7 +449,9 @@ pixel_y = 32; name = "Akademia Nauk Telephone"; phone_category = "Dropship"; - phone_id = "Akademia Nauk" + phone_id = "Akademia Nauk"; + networks_receive = list("UPP"); + networks_transmit = list("UPP") }, /turf/open/floor/strata/floor3/east, /area/shuttle/ds_upp) @@ -461,6 +464,14 @@ pixel_x = -6; pixel_y = -16 }, +/obj/structure/bed/chair/dropship/pilot{ + dir = 1; + layer = 6 + }, +/obj/effect/decal/warning_stripes{ + icon_state = "W"; + pixel_x = -1 + }, /turf/open/floor/strata/multi_tiles/southwest, /area/shuttle/ds_upp) "Sn" = ( @@ -472,8 +483,7 @@ /obj/structure/machinery/camera/autoname/golden_arrow/midway{ network = list("Chapaev","Akademia Nauk") }, -/obj/effect/decal/strata_decals/catwalk/prison, -/turf/open/floor/strata/grey_multi_tiles, +/turf/open/floor/plating/plating_catwalk/strata, /area/shuttle/ds_upp) "Sx" = ( /turf/closed/shuttle/ert{ @@ -679,7 +689,7 @@ wi (5,1,1) = {" HB GH -lS +Th Ou iN Kv diff --git a/maps/shuttles/ert_upp_shuttle.dmm b/maps/shuttles/ert_upp_shuttle.dmm index 6654175822..3b68a0da18 100644 --- a/maps/shuttles/ert_upp_shuttle.dmm +++ b/maps/shuttles/ert_upp_shuttle.dmm @@ -151,7 +151,7 @@ /obj/structure/barricade/handrail/strata{ layer = 3.5 }, -/turf/open/floor/plating/plating_catwalk/strata, +/turf/open/floor/strata/floor3/east, /area/shuttle/ert) "C" = ( /obj/effect/decal/warning_stripes{ @@ -188,7 +188,8 @@ /area/shuttle/ert) "I" = ( /turf/closed/shuttle/ert{ - icon_state = "upp27" + icon_state = "upp27"; + opacity = 0 }, /area/shuttle/ert) "J" = ( @@ -268,8 +269,9 @@ }, /area/shuttle/ert) "W" = ( -/obj/structure/bed/chair/vehicle{ - dir = 1 +/obj/structure/bed/chair/dropship/pilot{ + dir = 1; + layer = 6 }, /turf/open/floor/strata/multi_tiles/southwest, /area/shuttle/ert)