diff --git a/ColonialMarinesALPHA.dme b/ColonialMarinesALPHA.dme index 5f80c7ecd64f..e12f4d1195a2 100644 --- a/ColonialMarinesALPHA.dme +++ b/ColonialMarinesALPHA.dme @@ -623,10 +623,8 @@ #include "code\game\jobs\job\command\cic\captain.dm" #include "code\game\jobs\job\command\cic\executive.dm" #include "code\game\jobs\job\command\cic\staffofficer.dm" -#include "code\game\jobs\job\command\police\cadet_police.dm" #include "code\game\jobs\job\command\police\chief_police.dm" #include "code\game\jobs\job\command\police\police.dm" -#include "code\game\jobs\job\command\police\warden.dm" #include "code\game\jobs\job\logistics\logistics.dm" #include "code\game\jobs\job\logistics\cargo\cargo_tech.dm" #include "code\game\jobs\job\logistics\cargo\chief_req.dm" diff --git a/code/__DEFINES/job.dm b/code/__DEFINES/job.dm index ba7024cb29a6..46406528247d 100644 --- a/code/__DEFINES/job.dm +++ b/code/__DEFINES/job.dm @@ -54,12 +54,10 @@ var/global/list/job_command_roles = JOB_COMMAND_ROLES_LIST #define JOB_CREWMAN "Vehicle Crewman" #define JOB_INTEL "Intelligence Officer" -#define JOB_POLICE_CADET "MP Cadet" #define JOB_POLICE "Military Police" -#define JOB_WARDEN "Military Warden" #define JOB_CHIEF_POLICE "Chief MP" -#define JOB_POLICE_ROLES /datum/timelock/mp -#define JOB_POLICE_ROLES_LIST list(JOB_POLICE_CADET, JOB_POLICE, JOB_WARDEN, JOB_CHIEF_POLICE) +#define JOB_POLICE_ROLES /datum/timelock/mp +#define JOB_POLICE_ROLES_LIST list(JOB_POLICE, JOB_CHIEF_POLICE) #define JOB_SEA "Senior Enlisted Advisor" diff --git a/code/__DEFINES/mode.dm b/code/__DEFINES/mode.dm index e250118502eb..d1b39c6426f6 100644 --- a/code/__DEFINES/mode.dm +++ b/code/__DEFINES/mode.dm @@ -124,13 +124,13 @@ var/list/be_special_flags = list( //================================================= //Role defines, specifically lists of roles for job bans, crew manifests and the like. -var/global/list/ROLES_COMMAND = list(JOB_CO, JOB_XO, JOB_SO, JOB_INTEL, JOB_PILOT, JOB_DROPSHIP_CREW_CHIEF, JOB_CREWMAN, JOB_POLICE, JOB_POLICE_CADET, JOB_CORPORATE_LIAISON, JOB_CHIEF_REQUISITION, JOB_CHIEF_ENGINEER, JOB_CMO, JOB_CHIEF_POLICE, JOB_SEA, JOB_SYNTH, JOB_WARDEN) +var/global/list/ROLES_COMMAND = list(JOB_CO, JOB_XO, JOB_SO, JOB_INTEL, JOB_PILOT, JOB_DROPSHIP_CREW_CHIEF, JOB_CREWMAN, JOB_POLICE, JOB_CORPORATE_LIAISON, JOB_CHIEF_REQUISITION, JOB_CHIEF_ENGINEER, JOB_CMO, JOB_CHIEF_POLICE, JOB_SEA, JOB_SYNTH) -#define ROLES_OFFICERS list(JOB_CO, JOB_XO, JOB_SO, JOB_INTEL, JOB_PILOT, JOB_DROPSHIP_CREW_CHIEF, JOB_CREWMAN, JOB_SEA, JOB_CORPORATE_LIAISON, JOB_SYNTH, JOB_CHIEF_POLICE, JOB_WARDEN, JOB_POLICE, JOB_POLICE_CADET) +#define ROLES_OFFICERS list(JOB_CO, JOB_XO, JOB_SO, JOB_INTEL, JOB_PILOT, JOB_DROPSHIP_CREW_CHIEF, JOB_CREWMAN, JOB_SEA, JOB_CORPORATE_LIAISON, JOB_SYNTH, JOB_CHIEF_POLICE, JOB_POLICE) var/global/list/ROLES_CIC = list(JOB_CO, JOB_XO, JOB_SO, JOB_WO_CO, JOB_WO_XO) var/global/list/ROLES_AUXIL_SUPPORT = list(JOB_INTEL, JOB_PILOT, JOB_DROPSHIP_CREW_CHIEF, JOB_CREWMAN, JOB_WO_CHIEF_POLICE, JOB_WO_SO, JOB_WO_CREWMAN, JOB_WO_POLICE, JOB_WO_PILOT) var/global/list/ROLES_MISC = list(JOB_SYNTH, JOB_WORKING_JOE, JOB_SEA, JOB_CORPORATE_LIAISON, JOB_MESS_SERGEANT, JOB_WO_CORPORATE_LIAISON, JOB_WO_SYNTH) -var/global/list/ROLES_POLICE = list(JOB_CHIEF_POLICE, JOB_WARDEN, JOB_POLICE, JOB_POLICE_CADET) +var/global/list/ROLES_POLICE = list(JOB_CHIEF_POLICE, JOB_POLICE) var/global/list/ROLES_ENGINEERING = list(JOB_CHIEF_ENGINEER, JOB_ORDNANCE_TECH, JOB_MAINT_TECH, JOB_WO_CHIEF_ENGINEER, JOB_WO_ORDNANCE_TECH) var/global/list/ROLES_REQUISITION = list(JOB_CHIEF_REQUISITION, JOB_CARGO_TECH, JOB_WO_CHIEF_REQUISITION, JOB_WO_REQUISITION) var/global/list/ROLES_MEDICAL = list(JOB_CMO, JOB_RESEARCHER, JOB_DOCTOR, JOB_NURSE, JOB_WO_CMO, JOB_WO_RESEARCHER, JOB_WO_DOCTOR) @@ -150,7 +150,7 @@ var/global/list/ROLES_WO = list(JOB_WO_CO, JOB_WO_XO, JOB_WO_CORPORATE_LIAISON #define BLURB_USCM_COMBAT JOB_CO, JOB_XO, JOB_SO, JOB_WO_CO, JOB_WO_XO, JOB_CREWMAN, JOB_WO_CHIEF_POLICE, JOB_WO_SO, JOB_WO_CREWMAN, JOB_WO_POLICE, JOB_SEA,\ JOB_SQUAD_LEADER, JOB_SQUAD_RTO, JOB_SQUAD_SPECIALIST, JOB_SQUAD_SMARTGUN, JOB_SQUAD_MEDIC, JOB_SQUAD_ENGI, JOB_SQUAD_MARINE #define BLURB_USCM_FLIGHT JOB_PILOT, JOB_DROPSHIP_CREW_CHIEF -#define BLURB_USCM_MP JOB_CHIEF_POLICE, JOB_WARDEN, JOB_POLICE +#define BLURB_USCM_POLICE JOB_CHIEF_POLICE, JOB_POLICE #define BLURB_USCM_ENGI JOB_CHIEF_ENGINEER, JOB_ORDNANCE_TECH, JOB_MAINT_TECH, JOB_WO_CHIEF_ENGINEER, JOB_WO_ORDNANCE_TECH, JOB_WO_PILOT #define BLURB_USCM_MEDICAL JOB_CMO, JOB_RESEARCHER, JOB_DOCTOR, JOB_NURSE, JOB_WO_CMO, JOB_WO_RESEARCHER, JOB_WO_DOCTOR #define BLURB_USCM_REQ JOB_CHIEF_REQUISITION, JOB_CARGO_TECH, JOB_WO_CHIEF_REQUISITION, JOB_WO_REQUISITION diff --git a/code/__HELPERS/job.dm b/code/__HELPERS/job.dm index f4a505e21ff7..904464dbd7bf 100644 --- a/code/__HELPERS/job.dm +++ b/code/__HELPERS/job.dm @@ -80,11 +80,9 @@ JOB_RESEARCHER, JOB_DOCTOR, JOB_NURSE, - JOB_POLICE_CADET, JOB_POLICE, - JOB_WARDEN, JOB_CHIEF_POLICE, - JOB_WARDEN, JOB_SEA, + JOB_MARINE ) diff --git a/code/datums/emergency_calls/inspection.dm b/code/datums/emergency_calls/inspection.dm index de33fb0c1e76..365203051058 100644 --- a/code/datums/emergency_calls/inspection.dm +++ b/code/datums/emergency_calls/inspection.dm @@ -19,7 +19,7 @@ var/mob/living/carbon/human/H = new(T) M.transfer_to(H, TRUE) - if(!leader && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, list(JOB_WARDEN, JOB_CHIEF_POLICE), time_required_for_job)) + if(!leader && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, JOB_CHIEF_POLICE, time_required_for_job)) leader = H arm_equipment(H, /datum/equipment_preset/uscm_event/provost/inspector, TRUE, TRUE) to_chat(H, SPAN_ROLE_HEADER("You are an Inspector of the USCM Provost Office!")) @@ -98,7 +98,7 @@ var/mob/living/carbon/human/H = new(T) M.transfer_to(H, TRUE) - if(!leader && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, list(JOB_INTEL,JOB_WARDEN), time_required_for_job)) + if(!leader && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, JOB_INTEL, time_required_for_job)) leader = H arm_equipment(H, /datum/equipment_preset/uscm_event/uaac/tis/io, TRUE, TRUE) to_chat(H, SPAN_ROLE_HEADER("You are an Intelligence Officer working for the UAAC-TIS!")) diff --git a/code/datums/emergency_calls/provost.dm b/code/datums/emergency_calls/provost.dm index c42a7bb6ffbd..2708e1cbbd22 100644 --- a/code/datums/emergency_calls/provost.dm +++ b/code/datums/emergency_calls/provost.dm @@ -17,7 +17,7 @@ var/mob/living/carbon/human/H = new(T) M.transfer_to(H, TRUE) - if(!leader && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, list(JOB_WARDEN, JOB_CHIEF_POLICE), time_required_for_job)) //First one spawned is always the leader. + if(!leader && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, list(JOB_POLICE, JOB_CHIEF_POLICE), time_required_for_job)) //First one spawned is always the leader. leader = H arm_equipment(H, /datum/equipment_preset/uscm_event/provost/tml, TRUE, TRUE) to_chat(H, SPAN_ROLE_HEADER("You are the leader of a Provost Enforcer Team!")) diff --git a/code/datums/emergency_calls/riot.dm b/code/datums/emergency_calls/riot.dm index 830b72d638d3..e257aff7017c 100644 --- a/code/datums/emergency_calls/riot.dm +++ b/code/datums/emergency_calls/riot.dm @@ -17,14 +17,14 @@ var/mob/living/carbon/human/H = new(T) M.transfer_to(H, TRUE) - if(!leader && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, list(JOB_WARDEN, JOB_CHIEF_POLICE), time_required_for_job)) + if(!leader && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, list(JOB_POLICE, JOB_CHIEF_POLICE), time_required_for_job)) leader = H - arm_equipment(H, /datum/equipment_preset/uscm_ship/uscm_police/riot_mp/riot_cmp, TRUE, TRUE) + arm_equipment(H, /datum/equipment_preset/uscm_ship/mp/riot_mp/riot_cmp, TRUE, TRUE) to_chat(H, SPAN_ROLE_HEADER("You are the leader of the High Command Riot Control!")) to_chat(H, SPAN_ROLE_BODY("Follow any orders directly from High Command!")) to_chat(H, SPAN_ROLE_BODY("You only answer to the Marine Law and the High Command!")) else - arm_equipment(H, /datum/equipment_preset/uscm_ship/uscm_police/riot_mp, TRUE, TRUE) + arm_equipment(H, /datum/equipment_preset/uscm_ship/mp/riot_mp, TRUE, TRUE) to_chat(H, SPAN_ROLE_HEADER("You are a member of the High Command Riot Control!")) to_chat(H, SPAN_ROLE_BODY("Follow any orders directly from High Command or your superior!")) to_chat(H, SPAN_ROLE_BODY("You only answer to your superior, the Marine Law and the High Command!")) diff --git a/code/datums/factions/uscm.dm b/code/datums/factions/uscm.dm index 903025d493fd..6df91ab5e9c9 100644 --- a/code/datums/factions/uscm.dm +++ b/code/datums/factions/uscm.dm @@ -59,7 +59,6 @@ holder.overlays += IMG3 else var/marine_rk - var/border_rk var/obj/item/card/id/ID = H.get_idcard() var/_role if(H.mind) @@ -69,16 +68,12 @@ switch(GET_DEFAULT_ROLE(_role)) if(JOB_XO) marine_rk = "xo" - border_rk = "command" if(JOB_CO) marine_rk = "co" - border_rk = "command" if(JOB_SO) marine_rk = "so" - border_rk = "command" if(JOB_GENERAL, JOB_COLONEL) marine_rk = "general" - border_rk = "command" if(JOB_INTEL) marine_rk = "io" if(JOB_PILOT) @@ -89,39 +84,28 @@ marine_rk = "tc" if(JOB_CHIEF_POLICE) marine_rk = "cmp" - border_rk = "command" if(JOB_POLICE) marine_rk = "mp" - if(JOB_POLICE_CADET) - marine_rk = "mpcadet" - if(JOB_WARDEN) - marine_rk = "warden" - border_rk = "command" if(JOB_CHIEF_REQUISITION) marine_rk = "ro" if(JOB_CARGO_TECH) marine_rk = "ct" if(JOB_CHIEF_ENGINEER) marine_rk = "ce" - border_rk = "command" if(JOB_MAINT_TECH) marine_rk = "mt" if(JOB_ORDNANCE_TECH) marine_rk = "ot" if(JOB_CMO) marine_rk = "cmo" - border_rk = "command" if(JOB_DOCTOR) marine_rk = "doctor" - border_rk = "command" if(JOB_RESEARCHER) marine_rk = "researcher" - border_rk = "command" if(JOB_NURSE) marine_rk = "nurse" if(JOB_SEA) marine_rk = "sea" - border_rk = "command" if(JOB_SYNTH) marine_rk = "syn" if(JOB_MESS_SERGEANT) @@ -132,13 +116,10 @@ marine_rk = "pvtml" if(JOB_PROVOST_INSPECTOR) marine_rk = "pvi" - border_rk = "command" if(JOB_PROVOST_ADVISOR) marine_rk = "pva" - border_rk = "command" if(JOB_PROVOST_MARSHAL, JOB_PROVOST_CMARSHAL, JOB_PROVOST_SMARSHAL) marine_rk = "pvm" - border_rk = "command" if(JOB_TIS_IO) marine_rk = "tisio" if(JOB_TIS_SA) @@ -148,5 +129,3 @@ I.color = "#5A934A" holder.overlays += I holder.overlays += image('icons/mob/hud/marine_hud.dmi', H, "hudsquad_[marine_rk]") - if(border_rk) - holder.overlays += image('icons/mob/hud/marine_hud.dmi', H, "hudmarineborder[border_rk]") diff --git a/code/game/gamemodes/cm_self_destruct.dm b/code/game/gamemodes/cm_self_destruct.dm index 1a34354930e3..82f4b082a148 100644 --- a/code/game/gamemodes/cm_self_destruct.dm +++ b/code/game/gamemodes/cm_self_destruct.dm @@ -404,7 +404,7 @@ var/global/datum/authority/branch/evacuation/EvacuationAuthority //This is initi if("dest_trigger") if(EvacuationAuthority.initiate_self_destruct()) nanomanager.close_user_uis(usr, src, "main") if("dest_cancel") - var/list/allowed_officers = list("Commanding Officer", "Executive Officer", "Staff Officer", "Chief MP","Chief Medical Officer","Chief Engineer") + var/list/allowed_officers = list(JOB_CO, JOB_XO, JOB_SO, JOB_CHIEF_POLICE, JOB_CMO, JOB_CHIEF_ENGINEER) if(!allowed_officers.Find(usr.job)) to_chat(usr, SPAN_NOTICE("You don't have the necessary clearance to cancel the emergency destruct system.")) return diff --git a/code/game/gamemodes/colonialmarines/huntergames.dm b/code/game/gamemodes/colonialmarines/huntergames.dm index 908e92c8c737..fc7b4ab1b718 100644 --- a/code/game/gamemodes/colonialmarines/huntergames.dm +++ b/code/game/gamemodes/colonialmarines/huntergames.dm @@ -253,7 +253,7 @@ var/waiting_for_drop_votes = 0 if(0) //colonial marine H.equip_to_slot_or_del(new /obj/item/clothing/under/marine(H), WEAR_BODY) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine(H), WEAR_FEET) - if(1) //MP + if(1) // MP H.equip_to_slot_or_del(new /obj/item/clothing/under/marine/mp(H), WEAR_BODY) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine(H), WEAR_FEET) if(2) //Commander! diff --git a/code/game/gamemodes/colonialmarines/whiskey_outpost/equipping.dm b/code/game/gamemodes/colonialmarines/whiskey_outpost/equipping.dm index 5a0cfe0427ca..63c367276f08 100644 --- a/code/game/gamemodes/colonialmarines/whiskey_outpost/equipping.dm +++ b/code/game/gamemodes/colonialmarines/whiskey_outpost/equipping.dm @@ -52,10 +52,8 @@ Make the USCM proud!"} //************************************* -//----------------CMP------------- +//---------------- Chief MP ------------- //*************************************/ - -//Chief MP /datum/job/command/warrant/whiskey title = JOB_WO_CHIEF_POLICE selection_class = "job_honor_guard_sl" diff --git a/code/game/gamemodes/colonialmarines/whiskey_outpost/skills.dm b/code/game/gamemodes/colonialmarines/whiskey_outpost/skills.dm index b2aba5d12eed..3db82f19d861 100644 --- a/code/game/gamemodes/colonialmarines/whiskey_outpost/skills.dm +++ b/code/game/gamemodes/colonialmarines/whiskey_outpost/skills.dm @@ -1,7 +1,7 @@ //Skills /datum/skills/honor_guard - name = "Honor Guard" //MP + name = "Honor Guard" // MP skills = list( SKILL_VEHICLE = SKILL_VEHICLE_CREWMAN, SKILL_POWERLOADER = SKILL_POWERLOADER_MASTER, @@ -51,4 +51,4 @@ SKILL_CONSTRUCTION = SKILL_CONSTRUCTION_ENGI, SKILL_JTAC = SKILL_JTAC_BEGINNER, SKILL_POWERLOADER = SKILL_POWERLOADER_MASTER - ) \ No newline at end of file + ) diff --git a/code/game/jobs/job/command/auxiliary/senior.dm b/code/game/jobs/job/command/auxiliary/senior.dm index 0797148c0dca..1277cbb15bd8 100644 --- a/code/game/jobs/job/command/auxiliary/senior.dm +++ b/code/game/jobs/job/command/auxiliary/senior.dm @@ -14,7 +14,6 @@ AddTimelock(/datum/job/command/senior, list( JOB_SQUAD_ROLES = 15 HOURS, JOB_ENGINEER_ROLES = 10 HOURS, - JOB_POLICE_ROLES = 10 HOURS, JOB_MEDIC_ROLES = 10 HOURS, JOB_COMMAND_ROLES = 5 HOURS, diff --git a/code/game/jobs/job/command/cic/executive.dm b/code/game/jobs/job/command/cic/executive.dm index 81fe42de2fe3..0eaaf0c20441 100644 --- a/code/game/jobs/job/command/cic/executive.dm +++ b/code/game/jobs/job/command/cic/executive.dm @@ -18,8 +18,7 @@ GLOB.marine_leaders -= JOB_XO AddTimelock(/datum/job/command/executive, list( - JOB_COMMAND_ROLES = 5 HOURS, - JOB_POLICE_ROLES = 3 HOURS + JOB_COMMAND_ROLES = 5 HOURS )) /obj/effect/landmark/start/executive diff --git a/code/game/jobs/job/command/command.dm b/code/game/jobs/job/command/command.dm index 0bcb8cfd7b8e..934474ceef05 100644 --- a/code/game/jobs/job/command/command.dm +++ b/code/game/jobs/job/command/command.dm @@ -12,7 +12,7 @@ src.roles = JOB_COMMAND_ROLES_LIST /datum/timelock/mp - name = "MP Roles" + name = "Military Police Roles" /datum/timelock/mp/New(name, time_required, list/roles) . = ..() @@ -23,7 +23,6 @@ /datum/timelock/human/can_play(client/C) return C.get_total_human_playtime() >= time_required - + /datum/timelock/human/get_role_requirement(client/C) return time_required - C.get_total_human_playtime() - \ No newline at end of file diff --git a/code/game/jobs/job/command/police/cadet_police.dm b/code/game/jobs/job/command/police/cadet_police.dm deleted file mode 100644 index 419b3b10b10b..000000000000 --- a/code/game/jobs/job/command/police/cadet_police.dm +++ /dev/null @@ -1,20 +0,0 @@ -/datum/job/command/cadet_police - title = JOB_POLICE_CADET - total_positions = 2 - spawn_positions = 2 - allow_additional = 0 - scaled = 0 - selection_class = "job_mp" - flags_startup_parameters = ROLE_ADD_TO_DEFAULT - gear_preset = /datum/equipment_preset/uscm_ship/uscm_police/mp_cadet - entry_message_body = "You are held by a higher standard and are required to obey not only the server rules but the Marine Law. Failure to do so may result in a job ban or server ban. Your primary job is to maintain peace and stability aboard the ship. Marines can get rowdy after a few weeks of cryosleep!" - - - -AddTimelock(/datum/job/command/cadet_police, list( - JOB_SQUAD_ROLES = 10 HOURS -)) - -/obj/effect/landmark/start/cadet_police - name = JOB_POLICE_CADET - job = /datum/job/command/cadet_police diff --git a/code/game/jobs/job/command/police/chief_police.dm b/code/game/jobs/job/command/police/chief_police.dm index 5a8d196ee534..2954eaf3def9 100644 --- a/code/game/jobs/job/command/police/chief_police.dm +++ b/code/game/jobs/job/command/police/chief_police.dm @@ -1,16 +1,15 @@ -//Chief MP -/datum/job/command/warrant +/datum/job/command/cmp title = JOB_CHIEF_POLICE selection_class = "job_cmp" flags_startup_parameters = ROLE_ADD_TO_DEFAULT - gear_preset = /datum/equipment_preset/uscm_ship/uscm_police/cmp - entry_message_body = "You are held by a higher standard and are required to obey not only the server rules but the Marine Law. Failure to do so may result in a job ban or server ban. You lead the Military Police, ensure your officers maintain peace and stability aboard the ship. Marines can get rowdy after a few weeks of cryosleep! In addition, you are tasked with the security of high-ranking personnel, including the command staff. Keep them safe!" + gear_preset = /datum/equipment_preset/uscm_ship/mp/cmp + entry_message_body = "You are held by a higher standard and are required to obey not only the server rules but the Marine Law. Failure to do so may result in a job ban or server ban. You lead the Military Police, ensure they keep the peace and stability aboard the ship. Marines can get rowdy after a few weeks of cryosleep! In addition, you are tasked with the security of high-ranking personnel, including the command staff. Keep them safe!" -AddTimelock(/datum/job/command/warrant, list( +AddTimelock(/datum/job/command/cmp, list( JOB_POLICE_ROLES = 15 HOURS, JOB_COMMAND_ROLES = 5 HOURS )) /obj/effect/landmark/start/warrant name = JOB_CHIEF_POLICE - job = /datum/job/command/warrant + job = /datum/job/command/cmp diff --git a/code/game/jobs/job/command/police/police.dm b/code/game/jobs/job/command/police/police.dm index ab814206e6ce..ba0882772761 100644 --- a/code/game/jobs/job/command/police/police.dm +++ b/code/game/jobs/job/command/police/police.dm @@ -1,19 +1,18 @@ -//Military Police -/datum/job/command/police +/datum/job/command/mp title = JOB_POLICE total_positions = 5 spawn_positions = 5 - allow_additional = 1 - scaled = 1 + allow_additional = TRUE + scaled = TRUE selection_class = "job_mp" flags_startup_parameters = ROLE_ADD_TO_DEFAULT - gear_preset = /datum/equipment_preset/uscm_ship/uscm_police/mp - entry_message_body = "You are held by a higher standard and are required to obey not only the server rules but the Marine Law. Failure to do so may result in a job ban or server ban. Your primary job is to maintain peace and stability aboard the ship. Marines can get rowdy after a few weeks of cryosleep! In addition, you are tasked with the security of high-ranking personnel, including the command staff. Keep them safe!" + gear_preset = /datum/equipment_preset/uscm_ship/mp/standard + entry_message_body = "You are held by a higher standard and are required to obey not only the server rules but the Marine Law. Failure to do so may result in a job ban or server ban. You are a member of the military police, just another set of hands for the corps. Your duty is to protect and maintain the security of your assigned vessel, keep order via marine law, repel boarders, put down mutinies, and defend the landing zone during operations. Ooh-rah-to-ashes marine." -/datum/job/command/police/set_spawn_positions(var/count) +/datum/job/command/mp/set_spawn_positions(var/count) spawn_positions = mp_slot_formula(count) -/datum/job/command/police/get_total_positions(var/latejoin = 0) +/datum/job/command/mp/get_total_positions(var/latejoin = 0) var/positions = spawn_positions if(latejoin) positions = mp_slot_formula(get_total_marines()) @@ -25,10 +24,10 @@ total_positions_so_far = positions return positions -AddTimelock(/datum/job/command/police, list( - JOB_POLICE_ROLES = 3 HOURS +AddTimelock(/datum/job/command/mp, list( + JOB_SQUAD_ROLES = 10 HOURS )) /obj/effect/landmark/start/police name = JOB_POLICE - job = /datum/job/command/police + job = /datum/job/command/mp diff --git a/code/game/jobs/job/command/police/warden.dm b/code/game/jobs/job/command/police/warden.dm deleted file mode 100644 index 282ee9bfb432..000000000000 --- a/code/game/jobs/job/command/police/warden.dm +++ /dev/null @@ -1,15 +0,0 @@ -// Warden -/datum/job/command/warden - title = JOB_WARDEN - selection_class = "job_mp" - flags_startup_parameters = ROLE_ADD_TO_DEFAULT - gear_preset = /datum/equipment_preset/uscm_ship/uscm_police/warden - entry_message_body = "You are held by a higher standard and are required to obey not only the server rules but the Marine Law. Failure to do so may result in a job ban or server ban. Your primary job is to maintain peace and stability aboard the ship. Marines can get rowdy after a few weeks of cryosleep! In addition, you are tasked with the mainting security records and overwatching any prisoners in Brig." - -AddTimelock(/datum/job/command/warden, list( - JOB_POLICE_ROLES = 10 HOURS -)) - -/obj/effect/landmark/start/warden - name = JOB_WARDEN - job = /datum/job/command/warden diff --git a/code/game/jobs/job/logistics/cargo/chief_req.dm b/code/game/jobs/job/logistics/cargo/chief_req.dm index e6d891280e36..6ba009bc551c 100644 --- a/code/game/jobs/job/logistics/cargo/chief_req.dm +++ b/code/game/jobs/job/logistics/cargo/chief_req.dm @@ -7,8 +7,7 @@ entry_message_body = "Your job is to dispense supplies to the marines, including weapon attachments. Your cargo techs can help you out, but you have final say in your department. Make sure they're not goofing off. While you may request paperwork for supplies, do not go out of your way to screw with marines, unless you want to get deposed. A happy ship is a well-functioning ship." AddTimelock(/datum/job/logistics/requisition, list( - JOB_REQUISITION_ROLES = 10 HOURS, - JOB_POLICE_ROLES = 1 HOURS + JOB_REQUISITION_ROLES = 10 HOURS )) /obj/effect/landmark/start/requisition diff --git a/code/game/jobs/job/logistics/engi/chief_engineer.dm b/code/game/jobs/job/logistics/engi/chief_engineer.dm index 8db00a430890..709be85857a9 100644 --- a/code/game/jobs/job/logistics/engi/chief_engineer.dm +++ b/code/game/jobs/job/logistics/engi/chief_engineer.dm @@ -6,8 +6,7 @@ entry_message_body = "Your job is to maintain your department and keep your technicians in check. You are responsible for engineering, power, ordnance, and the orbital cannon. Should the commanding and executive officer be unavailable, you are next in the chain of command." AddTimelock(/datum/job/logistics/engineering, list( - JOB_ENGINEER_ROLES = 10 HOURS, - JOB_POLICE_ROLES = 1 HOURS + JOB_ENGINEER_ROLES = 10 HOURS )) /obj/effect/landmark/start/engineering diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm index 85ff6ceb0c61..cf1ffe003709 100644 --- a/code/game/machinery/cryopod.dm +++ b/code/game/machinery/cryopod.dm @@ -224,7 +224,7 @@ GLOBAL_LIST_INIT(frozen_items, list(SQUAD_MARINE_1 = list(), SQUAD_MARINE_2 = li if(ishuman(occupant)) var/mob/living/carbon/human/H = occupant switch(H.job) - if(JOB_POLICE_CADET, JOB_POLICE, JOB_WARDEN, JOB_CHIEF_POLICE) + if(JOB_POLICE, JOB_CHIEF_POLICE) dept_console = GLOB.frozen_items["MP"] if("Nurse", "Doctor","Researcher","Chief Medical Officer") dept_console = GLOB.frozen_items["Med"] diff --git a/code/game/machinery/vending/vending_types.dm b/code/game/machinery/vending/vending_types.dm index f81b3ed954a0..e6b6ac3b271d 100644 --- a/code/game/machinery/vending/vending_types.dm +++ b/code/game/machinery/vending/vending_types.dm @@ -200,11 +200,8 @@ /obj/item/reagent_container/food/snacks/donut/normal = 12, /obj/item/storage/box/evidence = 6, /obj/item/clothing/head/helmet/marine/MP = 6, - /obj/item/clothing/head/helmet/beret/marine/mp/mppeaked = 6, - /obj/item/clothing/head/helmet/beret/marine/mp/mpcap = 6, /obj/item/clothing/under/marine/mp = 2, /obj/item/storage/belt/security/MP = 6, - /obj/item/clothing/head/helmet/beret/marine/mp = 6, /obj/item/clothing/glasses/sunglasses/sechud = 3, /obj/item/device/radio/headset = 6) contraband = list(/obj/item/clothing/glasses/sunglasses = 2,/obj/item/storage/donut_box = 2) diff --git a/code/game/machinery/vending/vendor_types/crew/mp.dm b/code/game/machinery/vending/vendor_types/crew/mp.dm index f948b21a7c97..b5f471c67c49 100644 --- a/code/game/machinery/vending/vendor_types/crew/mp.dm +++ b/code/game/machinery/vending/vendor_types/crew/mp.dm @@ -1,11 +1,13 @@ //------------ MP CLOTHING VENDOR--------------- -GLOBAL_LIST_INIT(cm_vending_clothing_military_police, list( +GLOBAL_LIST_INIT(cm_vending_clothing_mp, list( list("STANDARD EQUIPMENT (TAKE ALL)", 0, null, null, null), list("Gloves", 0, /obj/item/clothing/gloves/marine, MARINE_CAN_BUY_GLOVES, VENDOR_ITEM_MANDATORY), list("Uniform", 0, /obj/item/clothing/under/marine/mp, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_MANDATORY), - list("Headset", 0, /obj/item/device/radio/headset/almayer/mmpo, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY), + list("Headset", 0, /obj/item/device/radio/headset/almayer/mp, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY), list("Satchel", 0, /obj/item/storage/backpack/satchel/sec, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY), + list("Helmet", 0, /obj/item/clothing/head/helmet/marine/MP, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY), + list("Boots", 0, /obj/item/clothing/shoes/marine/knife, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY), list("PERSONAL SIDEARM (CHOOSE 1)", 0, null, null, null), list("M44 Revolver", 0, /obj/item/storage/belt/gun/m44/mp, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED), @@ -13,13 +15,12 @@ GLOBAL_LIST_INIT(cm_vending_clothing_military_police, list( list("Mod 88 Pistol", 0, /obj/item/storage/belt/gun/m4a3/mod88, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED), list("ARMOR (CHOOSE 1)", 0, null, null, null), - list("Military Police M2 Armor", 0, /obj/item/clothing/suit/storage/marine/MP, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY), - list("Military Police M2 Armor and Service Jacket", 0, /obj/item/clothing/suit/storage/marine/MP/jacket, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY), - list("Military Police M2 Padless Armor", 0, /obj/item/clothing/suit/storage/marine/MP/padless, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY), + list("Military Police M2 Pattern Armor", 0, /obj/item/clothing/suit/storage/marine/MP, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY), + list("Military Police M2 Pattern Padless Armor", 0, /obj/item/clothing/suit/storage/marine/MP/padless, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY), - list("COMBAT EQUIPMENT (TAKE ALL)", 0, null, null, null), - list("Military Police M10 Helmet", 0, /obj/item/clothing/head/helmet/marine/MP, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY), - list("Marine Combat Boots", 0, /obj/item/clothing/shoes/marine/knife, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY), + list("COMBAT EQUIPMENT (TAKE ONE)", 0, null, null, null), + list("M41A Pulse Rifle MK2", 0, /obj/effect/essentials_set/mp, MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_RECOMMENDED), + list("L42A Battle Rifle", 0, /obj/effect/essentials_set/mp/l42a, MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_REGULAR), list("EYEWEAR (TAKE ALL)", 0, null, null, null), list("Security HUD Glasses", 0, /obj/item/clothing/glasses/sunglasses/sechud, MARINE_CAN_BUY_GLASSES, VENDOR_ITEM_REGULAR), @@ -27,13 +28,11 @@ GLOBAL_LIST_INIT(cm_vending_clothing_military_police, list( list("POUCHES (CHOOSE 2)", 0, null, null, null), list("First-Aid Pouch (Full)", 0, /obj/item/storage/pouch/firstaid/full, (MARINE_CAN_BUY_R_POUCH|MARINE_CAN_BUY_L_POUCH), VENDOR_ITEM_REGULAR), list("Medium General Pouch", 0, /obj/item/storage/pouch/general/medium, (MARINE_CAN_BUY_R_POUCH|MARINE_CAN_BUY_L_POUCH), VENDOR_ITEM_REGULAR), + list("Magazine Pouch", 0, /obj/item/storage/pouch/magazine, (MARINE_CAN_BUY_R_POUCH|MARINE_CAN_BUY_L_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("Webbing", 0, /obj/item/clothing/accessory/storage/webbing, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), - - list("HAT (CHOOSE 1)", 0, null, null, null), - list("MP Beret", 0, /obj/item/clothing/head/helmet/beret/marine/mp, MARINE_CAN_BUY_MASK, VENDOR_ITEM_MANDATORY), + list("Webbing", 0, /obj/item/clothing/accessory/storage/webbing, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR) )) @@ -41,55 +40,25 @@ GLOBAL_LIST_INIT(cm_vending_clothing_military_police, list( name = "\improper ColMarTech Military Police Equipment Rack" desc = "An automated rack hooked up to a colossal storage of Military Police standard-issue equipment." req_access = list(ACCESS_MARINE_BRIG) - vendor_role = list(JOB_POLICE, JOB_POLICE_CADET) + vendor_role = list(JOB_POLICE) /obj/structure/machinery/cm_vending/clothing/military_police/get_listed_products(var/mob/user) - return GLOB.cm_vending_clothing_military_police - -//------------ Warden CLOTHING VENDOR--------------- - -GLOBAL_LIST_INIT(cm_vending_clothing_military_police_warden, list( - - list("STANDARD EQUIPMENT (TAKE ALL)", 0, null, null, null), - list("Gloves", 0, /obj/item/clothing/gloves/marine, MARINE_CAN_BUY_GLOVES, VENDOR_ITEM_MANDATORY), - list("Warden Uniform", 0, /obj/item/clothing/under/marine/warden, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_MANDATORY), - list("Headset", 0, /obj/item/device/radio/headset/almayer/cmpcom, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY), - list("Satchel", 0, /obj/item/storage/backpack/satchel/sec, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY), - - list("PERSONAL SIDEARM (Take ALL)", 0, null, null, null), - list("M4A3 Service Pistol ", 0, /obj/item/storage/belt/gun/m4a3/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED), - list("Mod 88 Pistol", 0, /obj/item/storage/belt/gun/m4a3/mod88, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED), - list("M44 Revolver", 0, /obj/item/storage/belt/gun/m44/mp, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED), - - list("ARMOR (CHOOSE 1)", 0, null, null, null), - list("Military Warden M3 Armor", 0, /obj/item/clothing/suit/storage/marine/MP/warden, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY), - list("Military Warden M3 Armor and Service Jacket", 0, /obj/item/clothing/suit/storage/marine/MP/warden/jacket, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY), - list("Military Warden M3 Padless Armor", 0, /obj/item/clothing/suit/storage/marine/MP/warden/padless, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY), - - list("COMBAT EQUIPMENT (TAKE ALL)", 0, null, null, null), - list("Military Police M10 Helmet", 0, /obj/item/clothing/head/helmet/marine/MP, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY), - list("Marine Combat Boots", 0, /obj/item/clothing/shoes/marine/knife, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY), - - list("EYEWEAR (TAKE ALL)", 0, null, null, null), - list("Security HUD Glasses", 0, /obj/item/clothing/glasses/sunglasses/sechud, MARINE_CAN_BUY_GLASSES, VENDOR_ITEM_REGULAR), - - list("POUCHES (CHOOSE 2)", 0, null, null, null), - list("First-Aid Pouch (Full)", 0, /obj/item/storage/pouch/firstaid/full, (MARINE_CAN_BUY_R_POUCH|MARINE_CAN_BUY_L_POUCH), VENDOR_ITEM_REGULAR), - list("Medium General Pouch", 0, /obj/item/storage/pouch/general/medium, (MARINE_CAN_BUY_R_POUCH|MARINE_CAN_BUY_L_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("Webbing", 0, /obj/item/clothing/accessory/storage/webbing, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), - - list("HAT (CHOOSE 1)", 0, null, null, null), - list("Warden Peaked Cap", 0, /obj/item/clothing/head/helmet/beret/marine/mp/warden, MARINE_CAN_BUY_MASK, VENDOR_ITEM_MANDATORY), - )) - -/obj/structure/machinery/cm_vending/clothing/military_police_warden - name = "\improper ColMarTech Military Warden Equipment Rack" - desc = "An automated rack hooked up to a colossal storage of Military Police standard-issue equipment." - req_access = list(ACCESS_MARINE_BRIG) - vendor_role = list(JOB_WARDEN) - -/obj/structure/machinery/cm_vending/clothing/military_police_warden/get_listed_products(var/mob/user) - return GLOB.cm_vending_clothing_military_police_warden + return GLOB.cm_vending_clothing_mp + +/obj/effect/essentials_set/mp + spawned_gear_list = list( + /obj/item/weapon/gun/rifle/m41a, + /obj/item/device/binoculars, + /obj/item/ammo_magazine/rifle, + /obj/item/ammo_magazine/rifle, + /obj/item/ammo_magazine/rifle + ) + +/obj/effect/essentials_set/mp/l42a + spawned_gear_list = list( + /obj/item/weapon/gun/rifle/l42a, + /obj/item/device/binoculars, + /obj/item/ammo_magazine/rifle/l42a, + /obj/item/ammo_magazine/rifle/l42a, + /obj/item/ammo_magazine/rifle/l42a + ) 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 3b938f6fbaf3..23fc05f12b36 100644 --- a/code/game/machinery/vending/vendor_types/crew/senior_officers.dm +++ b/code/game/machinery/vending/vendor_types/crew/senior_officers.dm @@ -11,7 +11,7 @@ combined += GLOB.cm_vending_clothing_chief_engineer combined += GLOB.cm_vending_clothing_req_officer combined += GLOB.cm_vending_clothing_cmo - combined += GLOB.cm_vending_clothing_military_police_chief + combined += GLOB.cm_vending_clothing_cmp return combined if(user.job == JOB_XO) return GLOB.cm_vending_clothing_xo @@ -22,18 +22,18 @@ else if(user.job == JOB_CMO) return GLOB.cm_vending_clothing_cmo else if(user.job == JOB_CHIEF_POLICE) - return GLOB.cm_vending_clothing_military_police_chief + return GLOB.cm_vending_clothing_cmp return ..() -//------------ CHIEF MP --------------- -GLOBAL_LIST_INIT(cm_vending_clothing_military_police_chief, list( +//------------ Chief MP --------------- +GLOBAL_LIST_INIT(cm_vending_clothing_cmp, list( list("STANDARD EQUIPMENT (TAKE ALL)", 0, null, null, null), list("Gloves", 0, /obj/item/clothing/gloves/marine, MARINE_CAN_BUY_GLOVES, VENDOR_ITEM_MANDATORY), - list("CMP Uniform", 0, /obj/item/clothing/under/marine/officer/warrant, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_MANDATORY), - list("Headset", 0, /obj/item/device/radio/headset/almayer/cmpcom, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY), + list("Chief MP Uniform", 0, /obj/item/clothing/under/marine/officer/cmp, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_MANDATORY), + list("Headset", 0, /obj/item/device/radio/headset/almayer/cmp, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY), list("Satchel", 0, /obj/item/storage/backpack/satchel/sec, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY), list("Gear Belt", 0, /obj/item/storage/belt/security/MP/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_MANDATORY), @@ -43,9 +43,8 @@ GLOBAL_LIST_INIT(cm_vending_clothing_military_police_chief, list( list("M44 Revolver", 0, /obj/item/storage/belt/gun/m44/mp, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), list("ARMOR (CHOOSE 1)", 0, null, null, null), - list("Military Police Chief M3 Armor", 0, /obj/item/clothing/suit/storage/marine/MP/WO, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_RECOMMENDED), - list("Military Police Chief M3 Armor and Service Jacket", 0, /obj/item/clothing/suit/storage/marine/MP/WO/jacket, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_REGULAR), - list("Military Police Chief M3 Padless Armor", 0, /obj/item/clothing/suit/storage/marine/MP/WO/padless, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_REGULAR), + list("Military Police Chief M2 Pattern Armor", 0, /obj/item/clothing/suit/storage/marine/MP/cmp, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_RECOMMENDED), + list("Military Police Chief M2 Pattern Padless Armor", 0, /obj/item/clothing/suit/storage/marine/MP/padless/cmp, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_REGULAR), list("COMBAT EQUIPMENT (TAKE ALL)", 0, null, null, null), list("Military Police M10 Helmet", 0, /obj/item/clothing/head/helmet/marine/MP, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY), @@ -64,10 +63,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_military_police_chief, list( 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), list("Brown Webbing Vest", 0, /obj/item/clothing/accessory/storage/black_vest/brown_vest, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), - list("Webbing", 0, /obj/item/clothing/accessory/storage/webbing, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), - - list("HAT (CHOOSE 1)", 0, null, null, null), - list("CMP Beret", 0, /obj/item/clothing/head/helmet/beret/marine/mp/cmp, MARINE_CAN_BUY_MASK, VENDOR_ITEM_MANDATORY), + list("Webbing", 0, /obj/item/clothing/accessory/storage/webbing, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR) )) diff --git a/code/game/machinery/vending/vendor_types/crew/synthetic.dm b/code/game/machinery/vending/vendor_types/crew/synthetic.dm index e08be721c771..32b3874d882a 100644 --- a/code/game/machinery/vending/vendor_types/crew/synthetic.dm +++ b/code/game/machinery/vending/vendor_types/crew/synthetic.dm @@ -224,7 +224,6 @@ GLOBAL_LIST_INIT(cm_vending_clothing_synth_snowflake, list( list("Surgical Cap, Blue", 12, /obj/item/clothing/head/surgery/purple, null, VENDOR_ITEM_REGULAR), list("Surgical Cap, Green", 12, /obj/item/clothing/head/surgery/green, null, VENDOR_ITEM_REGULAR), list("Ushanka", 12, /obj/item/clothing/head/ushanka, null, VENDOR_ITEM_REGULAR), - list("MP Cap", 12, /obj/item/clothing/head/helmet/beret/marine/mp/mpcap, null, VENDOR_ITEM_REGULAR), list("RO Cap", 12, /obj/item/clothing/head/cmcap/req, null, VENDOR_ITEM_REGULAR), list("Officer Cap", 12, /obj/item/clothing/head/cmcap/ro, null, VENDOR_ITEM_REGULAR), @@ -238,7 +237,6 @@ GLOBAL_LIST_INIT(cm_vending_clothing_synth_snowflake, list( list("Black Hazard Vest", 12, /obj/item/clothing/suit/storage/hazardvest/black, null, VENDOR_ITEM_REGULAR), list("Synthetic's Snow Suit", 12, /obj/item/clothing/suit/storage/snow_suit/synth, null, VENDOR_ITEM_REGULAR), list("USCM Service Jacket", 12, /obj/item/clothing/suit/storage/jacket/marine/service, null, VENDOR_ITEM_REGULAR), - list("USCM MP Service Jacket", 12, /obj/item/clothing/suit/storage/jacket/marine/service/mp, null, VENDOR_ITEM_REGULAR), list("Brown Windbreaker", 12, /obj/item/clothing/suit/storage/windbreaker/windbreaker_brown, null, VENDOR_ITEM_REGULAR), list("Gray Windbreaker", 12, /obj/item/clothing/suit/storage/windbreaker/windbreaker_gray, null, VENDOR_ITEM_REGULAR), list("Green Windbreaker", 12, /obj/item/clothing/suit/storage/windbreaker/windbreaker_green, null, VENDOR_ITEM_REGULAR), diff --git a/code/game/objects/effects/landmarks/landmarks.dm b/code/game/objects/effects/landmarks/landmarks.dm index 32d75c2f8abc..610befc22c15 100644 --- a/code/game/objects/effects/landmarks/landmarks.dm +++ b/code/game/objects/effects/landmarks/landmarks.dm @@ -285,9 +285,6 @@ /obj/effect/landmark/start/whiskey/police job = /datum/job/command/police/whiskey -/obj/effect/landmark/start/whiskey/warden - job = /datum/job/command/warden //Need to create a WO variant in the future - //****************************************** CIC - COMMAND ************************************************/ /obj/effect/landmark/start/whiskey/commander @@ -312,9 +309,6 @@ /obj/effect/landmark/start/whiskey/tank_crew job = /datum/job/command/tank_crew/whiskey -/obj/effect/landmark/start/whiskey/intel - job = /datum/job/command/warden //Need to create a WO variant in the future, IO's dont exist in code anymore? - /obj/effect/landmark/start/whiskey/chef job = /datum/job/civilian/chef //Need to create a WO variant in the future diff --git a/code/game/objects/items/devices/radio/encryptionkey.dm b/code/game/objects/items/devices/radio/encryptionkey.dm index 4a0d2110c31b..55a50c6e9be9 100644 --- a/code/game/objects/items/devices/radio/encryptionkey.dm +++ b/code/game/objects/items/devices/radio/encryptionkey.dm @@ -80,23 +80,23 @@ icon_state = "req_key" channels = list(RADIO_CHANNEL_REQ = 1, RADIO_CHANNEL_COMMAND = 0, RADIO_CHANNEL_ENGI = 0, SQUAD_MARINE_1 = 0, SQUAD_MARINE_2 = 0, SQUAD_MARINE_3 = 0, SQUAD_MARINE_4 = 0, SQUAD_MARINE_5 = 0, SQUAD_MARINE_CRYO = 0) -/obj/item/device/encryptionkey/mmpo +/obj/item/device/encryptionkey/mp name = "\improper Military Police Radio Encryption Key" icon_state = "sec_key" channels = list(RADIO_CHANNEL_COMMAND = 1, RADIO_CHANNEL_MP = 1, SQUAD_MARINE_1 = 1, SQUAD_MARINE_2 = 1, SQUAD_MARINE_3 = 1, SQUAD_MARINE_4 = 1, SQUAD_MARINE_5 = 1, SQUAD_MARINE_CRYO = 0, RADIO_CHANNEL_ENGI = 1, RADIO_CHANNEL_MEDSCI = 1,) //MARINE ENCRYPTION KEYS -/obj/item/device/encryptionkey/cmpcom +/obj/item/device/encryptionkey/cmp name = "\improper Marine Chief MP Radio Encryption Key" icon_state = "cmp_key" channels = list(RADIO_CHANNEL_COMMAND = 1, RADIO_CHANNEL_MP = 1, RADIO_CHANNEL_ENGI = 1, RADIO_CHANNEL_MEDSCI = 1, RADIO_CHANNEL_REQ = 1, SQUAD_MARINE_1 = 0, SQUAD_MARINE_2 = 0, SQUAD_MARINE_3 = 0, SQUAD_MARINE_4 = 0, SQUAD_MARINE_5 = 0, SQUAD_MARINE_CRYO = 0) -/obj/item/device/encryptionkey/cmpcom/cdrcom +/obj/item/device/encryptionkey/cmp/cdrcom name = "\improper Marine Senior Command Radio Encryption Key" channels = list(RADIO_CHANNEL_COMMAND = 1, RADIO_CHANNEL_MP = 1, SQUAD_MARINE_1 = 1, SQUAD_MARINE_2 = 1, SQUAD_MARINE_3 = 1, SQUAD_MARINE_4 = 1, SQUAD_MARINE_5 = 1, SQUAD_MARINE_CRYO = 0, RADIO_CHANNEL_ENGI = 1, RADIO_CHANNEL_MEDSCI = 1, RADIO_CHANNEL_REQ = 1, RADIO_CHANNEL_JTAC = 1, RADIO_CHANNEL_INTEL = 1) -/obj/item/device/encryptionkey/cmpcom/synth +/obj/item/device/encryptionkey/cmp/synth name = "\improper Marine Synth Radio Encryption Key" channels = list(RADIO_CHANNEL_COMMAND = 1, RADIO_CHANNEL_MP = 1, SQUAD_MARINE_1 = 1, SQUAD_MARINE_2 = 1, SQUAD_MARINE_3 = 1, SQUAD_MARINE_4 = 1, SQUAD_MARINE_5 = 1, SQUAD_MARINE_CRYO = 0, RADIO_CHANNEL_ENGI = 1, RADIO_CHANNEL_MEDSCI = 1, RADIO_CHANNEL_REQ = 1, RADIO_CHANNEL_JTAC = 1, RADIO_CHANNEL_INTEL = 1) diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index 1e097fd8e056..3b1dee1659cf 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -324,7 +324,7 @@ /obj/item/device/radio/headset/ert name = "Wey-Yu Response Team headset" - desc = "The headset of the boss's boss. Channels are as follows: :h - Response Team :c - command, :p - security, :n - engineering, :m - medical." + desc = "The headset of the boss's boss. Channels are as follows: :h - Response Team :c - command, :p - military police, :n - engineering, :m - medical." icon_state = "com_headset" item_state = "headset" freerange = 1 @@ -397,17 +397,17 @@ volume = RADIO_VOLUME_CRITICAL multibroadcast_cooldown = LOW_MULTIBROADCAST_COOLDOWN -/obj/item/device/radio/headset/almayer/mmpo - name = "marine military police radio headset" +/obj/item/device/radio/headset/almayer/mp + name = "marine military police police radio headset" desc = "This is used by marine military police members. Channels are as follows: :p - military police, :v - marine command. :a - alpha squad, :b - bravo squad, :c - charlie squad, :d - delta squad." icon_state = "sec_headset" - initial_keys = list(/obj/item/device/encryptionkey/mmpo) + initial_keys = list(/obj/item/device/encryptionkey/mp) /obj/item/device/radio/headset/almayer/marine/mp_honor name = "marine honor guard radio headset" desc = "This is used by members of the marine honor guard. Channels are as follows: :p - military police, :v - marine command. :a - alpha squad, :b - bravo squad, :c - charlie squad, :d - delta squad." icon_state = "sec_headset" - initial_keys = list(/obj/item/device/encryptionkey/mmpo) + initial_keys = list(/obj/item/device/encryptionkey/mp) volume = RADIO_VOLUME_RAISED locate_setting = TRACKER_CO misc_tracking = TRUE @@ -417,11 +417,11 @@ "Executive Officer" = TRACKER_XO ) -/obj/item/device/radio/headset/almayer/cmpcom +/obj/item/device/radio/headset/almayer/cmp name = "marine chief MP radio headset" - desc = "For discussing the purchase of donuts and arresting of hooligans. Channels are as follows: :v - marine command, :p - military police, :n - engineering, :m - medbay, :u - requisitions, :a - alpha squad, :b - bravo squad, :c - charlie squad, :d - delta squad." + desc = "For discussing vessel defense and marine de-drunkening protocols. Channels are as follows: :v - marine command, :p - military police, :n - engineering, :m - medbay, :u - requisitions, :a - alpha squad, :b - bravo squad, :c - charlie squad, :d - delta squad." icon_state = "sec_headset" - initial_keys = list(/obj/item/device/encryptionkey/cmpcom) + initial_keys = list(/obj/item/device/encryptionkey/cmp) volume = RADIO_VOLUME_CRITICAL /obj/item/device/radio/headset/almayer/mcom @@ -436,7 +436,7 @@ name = "marine honor guard command radio headset" desc = "Given to highly trusted marine honor guard only. It features a non-standard brace. Channels are as follows: :v - marine command, :p - military police, :n - engineering, :m - medbay, :u - requisitions, :a - alpha squad, :b - bravo squad, :c - charlie squad, :d - delta squad." icon_state = "mcom_headset" - initial_keys = list(/obj/item/device/encryptionkey/cmpcom) + initial_keys = list(/obj/item/device/encryptionkey/cmp) /obj/item/device/radio/headset/almayer/po name = "marine pilot radio headset" @@ -466,14 +466,14 @@ name = "marine senior command headset" desc = "Issued only to senior command staff. Channels are as follows: :v - marine command, :p - military police, :a - alpha squad, :b - bravo squad, :c - charlie squad, :d - delta squad, :n - engineering, :m - medbay, :u - requisitions, :j - JTAC, :t - intel" icon_state = "mco_headset" - initial_keys = list(/obj/item/device/encryptionkey/cmpcom/cdrcom) + initial_keys = list(/obj/item/device/encryptionkey/cmp/cdrcom) volume = RADIO_VOLUME_CRITICAL /obj/item/device/radio/headset/almayer/mcom/synth name = "marine synth headset" desc = "Issued only to USCM synthetics. Channels are as follows: :v - marine command, :p - military police, :a - alpha squad, :b - bravo squad, :c - charlie squad, :d - delta squad, :n - engineering, :m - medbay, :u - requisitions, :j - JTAC, :t - intel" icon_state = "ms_headset" - initial_keys = list(/obj/item/device/encryptionkey/cmpcom/synth) + initial_keys = list(/obj/item/device/encryptionkey/cmp/synth) volume = RADIO_VOLUME_CRITICAL misc_tracking = TRUE locate_setting = TRACKER_CO diff --git a/code/game/objects/structures/crates_lockers/closets/secure/cm_closets.dm b/code/game/objects/structures/crates_lockers/closets/secure/cm_closets.dm index 2591e46dd5a6..9fb05e803b0e 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/cm_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/cm_closets.dm @@ -168,7 +168,7 @@ GLOBAL_LIST_EMPTY(co_secure_boxes) new /obj/item/storage/belt/security/MP(src) new /obj/item/device/flashlight(src) new /obj/item/clothing/glasses/sunglasses/sechud(src) - new /obj/item/device/radio/headset/almayer/mmpo(src) + new /obj/item/device/radio/headset/almayer/mp(src) new /obj/item/weapon/gun/energy/taser(src) new /obj/item/weapon/melee/baton(src) new /obj/item/device/flash(src) @@ -195,12 +195,12 @@ GLOBAL_LIST_EMPTY(co_secure_boxes) new /obj/item/clothing/head/helmet/beret/marine/mp/cmp(src) new /obj/item/clothing/accessory/storage/holster/armpit(src) new /obj/item/clothing/shoes/marine(src) - new /obj/item/clothing/under/marine/officer/warrant(src) - new /obj/item/clothing/suit/storage/marine/MP/WO(src) + new /obj/item/clothing/under/marine/officer/cmp(src) + new /obj/item/clothing/suit/storage/marine/MP(src) new /obj/item/storage/belt/security/MP(src) new /obj/item/device/flashlight(src) new /obj/item/clothing/glasses/sunglasses/sechud(src) - new /obj/item/device/radio/headset/almayer/cmpcom(src) + new /obj/item/device/radio/headset/almayer/cmp(src) new /obj/item/weapon/gun/energy/taser(src) new /obj/item/weapon/melee/baton(src) new /obj/item/storage/backpack/security (src) @@ -230,9 +230,9 @@ GLOBAL_LIST_EMPTY(co_secure_boxes) new /obj/item/clothing/head/helmet/riot(src) new /obj/item/device/flashlight(src) new /obj/item/clothing/glasses/sunglasses(src) - new /obj/item/device/radio/headset/almayer/mmpo(src) + new /obj/item/device/radio/headset/almayer/mp(src) new /obj/item/clothing/gloves/black(src) - new /obj/item/device/radio/headset/almayer/mmpo(src) + new /obj/item/device/radio/headset/almayer/mp(src) new /obj/item/clothing/accessory/storage/holster/waist(src) //ALMAYER MEDICAL CLOSET diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index c25792e2fe8b..5166dd070e4d 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -20,6 +20,8 @@ var/list/clothing_traits // Trait modification, lazylist of traits to add/take away, on equipment/drop in the correct slot var/clothing_traits_active = TRUE //are the clothing traits that are applied to the item active (acting on the mob) or not? + var/has_pre_blood_mob_overlay_handling = FALSE + /obj/item/clothing/get_examine_line(mob/user) . = ..() var/list/ties = list() @@ -85,10 +87,15 @@ return /obj/item/clothing/get_mob_overlay(mob/user_mob, slot) - var/image/ret = ..() + var/image/mob_overlay = ..() + return handle_clothing_mob_overlay(mob_overlay, user_mob, slot) +/obj/item/clothing/proc/handle_clothing_mob_overlay(var/image/mob_overlay, var/mob/user_mob, var/slot) if(slot == WEAR_L_HAND || slot == WEAR_R_HAND) - return ret + return mob_overlay + + if(has_pre_blood_mob_overlay_handling) + mob_overlay = handle_pre_blood_overlay(mob_overlay) if(blood_color && blood_overlay_type) var/blood_icon = 'icons/effects/blood.dmi' @@ -96,12 +103,15 @@ var/mob/living/carbon/human/H = user_mob blood_icon = H.species.blood_mask var/image/bloodsies = overlay_image(blood_icon, "[blood_overlay_type]_blood", blood_color, RESET_COLOR|NO_CLIENT_COLOR) - ret.overlays += bloodsies + mob_overlay.overlays += bloodsies if(LAZYLEN(accessories)) for(var/obj/item/clothing/accessory/A in accessories) - ret.overlays |= A.get_mob_overlay(user_mob, slot) - return ret + mob_overlay.overlays |= A.get_mob_overlay(user_mob, slot) + return mob_overlay + +/obj/item/clothing/proc/handle_pre_blood_overlay(var/image/mob_overlay) + return mob_overlay /////////////////////////////////////////////////////////////////////// // Ears: headsets, earmuffs and tiny objects diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index 039351b3adb2..e8e9c1e559d8 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -725,12 +725,19 @@ GLOBAL_LIST_INIT(allowed_helmet_items, list( flags_atom = NO_SNOW_TYPE /obj/item/clothing/head/helmet/marine/MP - name = "\improper M10 pattern MP helmet" - desc = "A special variant of the M10 Pattern Helmet worn by the Military Police of the USCM. Whether you're facing a crime syndicate or a mutiny, this bucket will keep your brains intact." + name = "\improper M10 pattern military police helmet" + desc = "A special variant of the M10 Pattern helmet worn by Military Police. Whether you're facing a crime syndicate or a mutiny, this bucket will keep your brains intact." icon_state = "mp_helmet" item_state = "mp_helmet" armor_energy = CLOTHING_ARMOR_MEDIUMLOW specialty = "M10 pattern military police" + +/obj/item/clothing/head/helmet/marine/MP/riot + name = "\improper M10 pattern riot helmet" + desc = "A special variant of the M10 Pattern helmet worn by Riot Police." + icon_state = "riot_helmet" + item_state = "riot_helmet" + specialty = "M10 pattern riot" flags_atom = NO_SNOW_TYPE /obj/item/clothing/head/helmet/marine/MP/SO @@ -739,8 +746,9 @@ GLOBAL_LIST_INIT(allowed_helmet_items, list( icon_state = "d_helmet" item_state = "d_helmet" specialty = "M10 pattern officer" + flags_atom = NO_SNOW_TYPE -/obj/item/clothing/head/helmet/marine/mp/provost/marshal +/obj/item/clothing/head/helmet/marine/MP/provost/marshal name = "\improper Provost Marshal Cap" desc = "The expensive headwear of a Provost Marshal. Contains shards of kevlar to keep its valuable contents safe." icon_state = "pvmarshalhat" diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index 3aa01c5a5364..c5124b12dc88 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -208,7 +208,7 @@ /obj/item/clothing/suit/armor/riot/marine name = "\improper M5 riot control armor" - desc = "A heavily modified suit of M2 MP Armor used to suppress riots from buckethead marines. Slows you down a lot." + desc = "A heavily modified suit of M2 military police armor used to suppress riots from buckethead marines. Slows you down a lot." icon_state = "riot" item_state = "swat_suit" slowdown = SLOWDOWN_ARMOR_LOWHEAVY diff --git a/code/modules/clothing/suits/marine_armor.dm b/code/modules/clothing/suits/marine_armor.dm index 35268142f52f..0115b5418716 100644 --- a/code/modules/clothing/suits/marine_armor.dm +++ b/code/modules/clothing/suits/marine_armor.dm @@ -295,7 +295,7 @@ var/list/squad_colors_chat = list(rgb(230,125,125), rgb(255,230,80), rgb(255,150 specialty = "XM4 pattern intel" /obj/item/clothing/suit/storage/marine/MP - name = "\improper M2 pattern MP armor" + name = "\improper M2 pattern military police armor" desc = "A standard Colonial Marines M2 Pattern Chestplate. Protects the chest from ballistic rounds, bladed objects and accidents. It has a small leather pouch strapped to it for limited storage." icon_state = "mp" armor_melee = CLOTHING_ARMOR_MEDIUMHIGH @@ -307,7 +307,6 @@ var/list/squad_colors_chat = list(rgb(230,125,125), rgb(255,230,80), rgb(255,150 armor_internaldamage = CLOTHING_ARMOR_MEDIUMLOW storage_slots = 2 slowdown = SLOWDOWN_ARMOR_LIGHT - flags_atom = NO_SNOW_TYPE allowed = list(/obj/item/weapon/gun, /obj/item/tank/emergency_oxygen, /obj/item/device/flashlight, @@ -325,66 +324,21 @@ var/list/squad_colors_chat = list(rgb(230,125,125), rgb(255,230,80), rgb(255,150 /obj/item/weapon/melee/claymore/mercsword/ceremonial, /obj/item/device/motiondetector, /obj/item/device/walkman) - uniform_restricted = list(/obj/item/clothing/under/marine/mp) - specialty = "M2 pattern MP" - item_state_slots = list(WEAR_JACKET = "mp") + uniform_restricted = list(/obj/item/clothing/under/marine/mp, /obj/item/clothing/under/marine/officer/cmp) + specialty = "M2 pattern military police" /obj/item/clothing/suit/storage/marine/MP/padless - name = "\improper M2 pattern padless MP armor" + name = "\improper M2 pattern padless military police armor" icon_state = "mp_2" - specialty = "M2 pattern padless MP" - item_state_slots = list(WEAR_JACKET = "mp_2") - -/obj/item/clothing/suit/storage/marine/MP/jacket - name = "\improper MP service jacket over M2 pattern MP armor" - desc = "A standard Colonial Marines M2 Pattern Chestplate with an MP service jacket worn on top. Protects the chest from ballistic rounds, bladed objects and accidents. It has a small leather pouch strapped to it for limited storage. Arresting Marines for breaking windows has never felt so stylish." - icon_state = "mp_jacket" - specialty = "service jacket over M2 pattern MP" - item_state_slots = list(WEAR_JACKET = "mp_jacket") - -/obj/item/clothing/suit/storage/marine/MP/warden - icon_state = "warden" - name = "\improper M3 pattern warden MP armor" - desc = "A well-crafted suit of M3 Pattern Armor typically distributed to Wardens. Useful for letting your men know who is in charge." - armor_bio = CLOTHING_ARMOR_MEDIUMLOW - armor_rad = CLOTHING_ARMOR_MEDIUMLOW - uniform_restricted = list(/obj/item/clothing/under/marine/warden) - specialty = "M3 pattern warden MP" - item_state_slots = list(WEAR_JACKET = "warden") - -/obj/item/clothing/suit/storage/marine/MP/warden/padless - name = "\improper M3 pattern padless warden MP armor" - icon_state = "warden_2" - specialty = "M3 pattern padless warden MP" - item_state_slots = list(WEAR_JACKET = "warden_2") - -/obj/item/clothing/suit/storage/marine/MP/warden/jacket - name = "\improper warden service jacket over M3 pattern warden MP armor" - desc = "A well-crafted suit of M3 Pattern Armor typically distributed to Wardens, with a Warden service jacket worn on top. Look your best while you're escorting prisoners to their execution." - icon_state = "warden_jacket" - specialty = "warden service jacket over M3 pattern warden MP" - item_state_slots = list(WEAR_JACKET = "warden_jacket") - -/obj/item/clothing/suit/storage/marine/MP/WO - icon_state = "warrant_officer" - name = "\improper M3 pattern chief MP armor" - desc = "A well-crafted suit of M3 Pattern Armor typically distributed to Chief MPs. Useful for letting your men know who is in charge." - uniform_restricted = list(/obj/item/clothing/under/marine/officer/warrant) - specialty = "M3 pattern chief MP" - item_state_slots = list(WEAR_JACKET = "warrant_officer") - -/obj/item/clothing/suit/storage/marine/MP/WO/padless - name = "\improper M3 pattern padless chief MP armor" - icon_state = "warrant_officer_2" - specialty = "M3 pattern padless chief MP" - item_state_slots = list(WEAR_JACKET = "warrant_officer_2") - -/obj/item/clothing/suit/storage/marine/MP/WO/jacket - name = "\improper CMP service jacket over M3 pattern chief MP armor" - desc = "A well-crafted suit of M3 Pattern Armor typically distributed to Chief MPs, with a CMP service jacket on top. Resonates with the strength of a thousand arguments with and arrests of superior officers." - icon_state = "warrant_officer_jacket" - specialty = "CMP service jacket over M3 pattern chief MP" - item_state_slots = list(WEAR_JACKET = "warrant_officer_jacket") + specialty = "M2 pattern padless military police" + +/obj/item/clothing/suit/storage/marine/MP/cmp + name = "\improper M2 pattern chief military police armor" + specialty = "M2 pattern chief military police" + +/obj/item/clothing/suit/storage/marine/MP/padless/cmp + name = "\improper M2 pattern padless chief military police armor" + specialty = "M2 pattern padless chief military police" /obj/item/clothing/suit/storage/marine/MP/general name = "\improper M3 pattern general officer armor" @@ -396,6 +350,7 @@ var/list/squad_colors_chat = list(rgb(230,125,125), rgb(255,230,80), rgb(255,150 specialty = "M3 pattern general" item_state_slots = list(WEAR_JACKET = "general") w_class = SIZE_MEDIUM + flags_atom = NO_SNOW_TYPE /obj/item/clothing/suit/storage/marine/MP/SO name = "\improper M3 pattern officer armor" @@ -406,6 +361,7 @@ var/list/squad_colors_chat = list(rgb(230,125,125), rgb(255,230,80), rgb(255,150 uniform_restricted = list(/obj/item/clothing/under/marine/officer, /obj/item/clothing/under/rank/ro_suit, /obj/item/clothing/under/rank/chief_medical_officer) specialty = "M2 pattern officer" item_state_slots = list(WEAR_JACKET = "officer") + flags_atom = NO_SNOW_TYPE //Making a new object because we might want to edit armor values and such. //Or give it its own sprite. It's more for the future. @@ -422,6 +378,7 @@ var/list/squad_colors_chat = list(rgb(230,125,125), rgb(255,230,80), rgb(255,150 specialty = "M3 pattern captain" item_state_slots = list(WEAR_JACKET = "co_officer") valid_accessory_slots = list(ACCESSORY_SLOT_MEDAL, ACCESSORY_SLOT_RANK, ACCESSORY_SLOT_DECOR, ACCESSORY_SLOT_PONCHO) + flags_atom = NO_SNOW_TYPE /obj/item/clothing/suit/storage/marine/MP/CO/jacket @@ -431,6 +388,7 @@ var/list/squad_colors_chat = list(rgb(230,125,125), rgb(255,230,80), rgb(255,150 item_state = "bridge_coat_armored" item_state_slots = list(WEAR_JACKET = "bridge_coat_armored") valid_accessory_slots = list(ACCESSORY_SLOT_MEDAL, ACCESSORY_SLOT_RANK) + flags_atom = NO_SNOW_TYPE /obj/item/clothing/suit/storage/marine/smartgunner @@ -1567,7 +1525,6 @@ var/list/squad_colors_chat = list(rgb(230,125,125), rgb(255,230,80), rgb(255,150 //=========================//PROVOST\\================================\\ //=======================================================================\\ - /obj/item/clothing/suit/storage/marine/MP/provost name = "\improper M3 pattern Provost armor" desc = "A lighter Provost M3 Pattern Chestplate. Protects the chest from ballistic rounds, bladed objects and accidents. It has a small leather pouch strapped to it for limited storage." diff --git a/code/modules/clothing/suits/marine_coat.dm b/code/modules/clothing/suits/marine_coat.dm index 96c655c8a75a..4bea309ad299 100644 --- a/code/modules/clothing/suits/marine_coat.dm +++ b/code/modules/clothing/suits/marine_coat.dm @@ -74,37 +74,13 @@ if(has_buttons) verbs += /obj/item/clothing/suit/storage/jacket/marine/proc/toggle -//Marine service & tanker jacket + MP themed variants +//Marine service jacket /obj/item/clothing/suit/storage/jacket/marine/service name = "marine service jacket" desc = "A service jacket typically worn by officers of the USCM. It has shards of light Kevlar to help protect against stabbing weapons and bullets." has_buttons = TRUE icon_state = "coat_officer" -/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." - has_buttons = TRUE - icon_state = "coat_mp" - flags_atom = NO_SNOW_TYPE - initial_icon_state = "coat_mp" - -/obj/item/clothing/suit/storage/jacket/marine/service/warden - name = "military warden service jacket" - desc = "A marine service jacket adopted for use by Military Wardens on board USCM ships. Ironically most ships require their MP departments to use full armor, making these barely used by on duty Wardens. The jacket of choice for looking all night at a set of monitors, while cigarette butts pile around you." - has_buttons = TRUE - icon_state = "coat_warden" - flags_atom = NO_SNOW_TYPE - initial_icon_state = "coat_warden" - -/obj/item/clothing/suit/storage/jacket/marine/service/cmp - name = "chief 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. Very popular among those who want to inexplicably smell like donuts." - has_buttons = TRUE - icon_state = "coat_cmp" - flags_atom = NO_SNOW_TYPE - initial_icon_state = "coat_cmp" - /obj/item/clothing/suit/storage/jacket/marine/service/tanker name = "tanker jacket" desc = "A comfortable jacket provided to anyone expected to operate near or inside heavy machinery. Special material within the arms jams up any machinery it gets caught up in, protecting the wearer from injury." diff --git a/code/modules/clothing/under/marine_uniform.dm b/code/modules/clothing/under/marine_uniform.dm index eda4ba4568aa..55c25eb55f0b 100644 --- a/code/modules/clothing/under/marine_uniform.dm +++ b/code/modules/clothing/under/marine_uniform.dm @@ -100,25 +100,22 @@ /obj/item/clothing/under/marine/mp name = "military police jumpsuit" desc = "Standard-issue Military Police uniform. It has shards of light Kevlar to help protect against stabbing weapons and bullets." - icon_state = "MP_jumpsuit" - worn_state = "MP_jumpsuit" - suit_restricted = list(/obj/item/clothing/suit/storage/marine, /obj/item/clothing/suit/armor/riot/marine, /obj/item/clothing/suit/storage/jacket/marine/service/mp) - flags_jumpsuit = UNIFORM_SLEEVE_ROLLABLE + suit_restricted = list(/obj/item/clothing/suit/storage/marine, /obj/item/clothing/suit/armor/riot/marine, /obj/item/clothing/suit/storage/jacket/marine/service) + flags_jumpsuit = UNIFORM_SLEEVE_ROLLABLE|UNIFORM_SLEEVE_CUTTABLE|UNIFORM_JACKET_REMOVABLE specialty = "military police" - flags_atom = NO_SNOW_TYPE -/obj/item/clothing/under/marine/mp/cadet - name = "MP cadet jumpsuit" + var/has_mp_overlay = TRUE + has_pre_blood_mob_overlay_handling = TRUE -/obj/item/clothing/under/marine/warden - name = "military warden jumpsuit" - desc = "Standard-issue Military Warden uniform. It has shards of light Kevlar to help protect against stabbing weapons and bullets." - icon_state = "warden_jumpsuit" - worn_state = "warden_jumpsuit" - suit_restricted = list(/obj/item/clothing/suit/storage/marine, /obj/item/clothing/suit/armor/riot/marine, /obj/item/clothing/suit/storage/jacket/marine/service/warden) - flags_jumpsuit = UNIFORM_SLEEVE_ROLLABLE - specialty = "military warden" - flags_atom = NO_SNOW_TYPE +/obj/item/clothing/under/marine/mp/Initialize(mapload, list/new_protection, list/override_icon_state) + . = ..() + if(has_mp_overlay) + overlays += image('icons/obj/items/clothing/uniform_overlays.dmi', null, "mp-uniform") + +/obj/item/clothing/under/marine/mp/handle_pre_blood_overlay(var/image/mob_overlay) + if(has_mp_overlay) + mob_overlay.overlays += image('icons/mob/humans/onmob/uniform_overlays.dmi', null, "mp-uniform") + return mob_overlay /obj/item/clothing/under/marine/officer name = "marine officer uniform" @@ -138,16 +135,25 @@ worn_state = "io" specialty = "marine intelligence officer" -/obj/item/clothing/under/marine/officer/warrant +/obj/item/clothing/under/marine/officer/cmp name = "\improper chief MP uniform" desc = "A uniform typically worn by a Chief MP of the USCM. It has shards of light Kevlar to help protect against stabbing weapons, bullets, and shrapnel from explosions. This uniform includes a small EMF distributor to help nullify energy-based weapon fire, along with a hazmat chemical filter woven throughout the material to ward off biological and radiation hazards." - icon_state = "WO_jumpsuit" - item_state = "WO_jumpsuit" - worn_state = "WO_jumpsuit" - suit_restricted = list(/obj/item/clothing/suit/storage/marine, /obj/item/clothing/suit/armor/riot/marine, /obj/item/clothing/suit/storage/jacket/marine/service/cmp) + icon_state = "BO_jumpsuit" + item_state = "BO_jumpsuit" + worn_state = "BO_jumpsuit" + suit_restricted = list(/obj/item/clothing/suit/storage/marine, /obj/item/clothing/suit/armor/riot/marine, /obj/item/clothing/suit/storage/jacket/marine/service) flags_jumpsuit = UNIFORM_SLEEVE_ROLLABLE specialty = "chief MP" - flags_atom = NO_SNOW_TYPE + + has_pre_blood_mob_overlay_handling = TRUE + +/obj/item/clothing/under/marine/officer/cmp/Initialize(mapload, list/new_protection, list/override_icon_state) + . = ..() + overlays += image('icons/obj/items/clothing/uniform_overlays.dmi', null, "cmp-uniform") + +/obj/item/clothing/under/marine/officer/cmp/handle_pre_blood_overlay(var/image/mob_overlay) + mob_overlay.overlays += image('icons/mob/humans/onmob/uniform_overlays.dmi', null, "cmp-uniform") + return mob_overlay /obj/item/clothing/under/marine/officer/technical name = "technical officer uniform" @@ -342,8 +348,12 @@ /obj/item/clothing/suit/storage/jacket/marine/provost ) + flags_jumpsuit = UNIFORM_SLEEVE_ROLLABLE + min_cold_protection_temperature = ICE_PLANET_min_cold_protection_temperature + has_mp_overlay = FALSE + /obj/item/clothing/under/marine/mp/provost/enforcer name = "\improper Provost Enforcer Uniform" desc = "The crisp uniform of a Provost Enforcer." @@ -351,26 +361,26 @@ /obj/item/clothing/under/marine/mp/provost/tml name = "\improper Provost Team Leader Uniform" desc = "The crisp uniform of a Provost Team Leader." - icon_state = "warden_jumpsuit" - worn_state = "warden_jumpsuit" + icon_state = "provost_gray" + worn_state = "provost_gray" /obj/item/clothing/under/marine/mp/provost/advisor name = "\improper Provost Advisor Uniform" desc = "The crisp uniform of a Provost Advisor." - icon_state = "warden_jumpsuit" - worn_state = "warden_jumpsuit" + icon_state = "provost_gray" + worn_state = "provost_gray" /obj/item/clothing/under/marine/mp/provost/inspector name = "\improper Provost Inspector Uniform" desc = "The crisp uniform of a Provost Inspector." - icon_state = "warden_jumpsuit" - worn_state = "warden_jumpsuit" + icon_state = "provost_gray" + worn_state = "provost_gray" /obj/item/clothing/under/marine/mp/provost/marshal name = "\improper Provost Marshal Uniform" desc = "The crisp uniform of a Provost Marshal." - icon_state = "WO_jumpsuit" - worn_state = "WO_jumpsuit" + icon_state = "provost_black" + worn_state = "provost_black" /obj/item/clothing/under/marine/mp/provost/marshal/sector name = "\improper Provost Sector Marshal Uniform" diff --git a/code/modules/gear_presets/uscm.dm b/code/modules/gear_presets/uscm.dm index c8976d00cd4b..428ca897c0ae 100644 --- a/code/modules/gear_presets/uscm.dm +++ b/code/modules/gear_presets/uscm.dm @@ -12,7 +12,7 @@ utility_extra = list(/obj/item/clothing/head/beret/cm, /obj/item/clothing/head/beret/cm/tan) service_under = list(/obj/item/clothing/under/marine/officer/bridge) - service_over = list(/obj/item/clothing/suit/storage/jacket/marine/service, /obj/item/clothing/suit/storage/jacket/marine/service/mp) + service_over = list(/obj/item/clothing/suit/storage/jacket/marine/service) service_hat = list(/obj/item/clothing/head/cmcap) service_shoes = list(/obj/item/clothing/shoes/dress) diff --git a/code/modules/gear_presets/uscm_event.dm b/code/modules/gear_presets/uscm_event.dm index 52b6304fca6b..7e5bbb9e299e 100644 --- a/code/modules/gear_presets/uscm_event.dm +++ b/code/modules/gear_presets/uscm_event.dm @@ -68,7 +68,7 @@ languages = list(LANGUAGE_ENGLISH, LANGUAGE_RUSSIAN, LANGUAGE_JAPANESE, LANGUAGE_GERMAN, LANGUAGE_SPANISH, LANGUAGE_CHINESE) //Know your enemy. service_under = list(/obj/item/clothing/under/marine/officer/general, /obj/item/clothing/under/marine/officer/bridge) - service_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/general, /obj/item/clothing/suit/storage/jacket/marine/service, /obj/item/clothing/suit/storage/jacket/marine/service/mp) + service_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/general, /obj/item/clothing/suit/storage/jacket/marine/service) service_gloves = list(/obj/item/clothing/gloves/black, /obj/item/clothing/gloves/marine/dress) service_hat = list(/obj/item/clothing/head/general, /obj/item/clothing/head/beret/marine/commander/black) @@ -371,7 +371,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud/prescription(H), WEAR_EYES) else H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(H), WEAR_EYES) - H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/mp/provost/marshal(H), WEAR_HEAD) + H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/MP/provost/marshal(H), WEAR_HEAD) H.equip_to_slot_or_del(new backItem(H), WEAR_BACK) H.equip_to_slot_or_del(new /obj/item/device/taperecorder(H), WEAR_L_STORE) H.equip_to_slot_or_del(new /obj/item/storage/pouch/magazine/pistol/pmc_mateba(H), WEAR_R_STORE) @@ -403,7 +403,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud/prescription(H), WEAR_EYES) else H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(H), WEAR_EYES) - H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/mp/provost/marshal(H), WEAR_HEAD) + H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/MP/provost/marshal(H), WEAR_HEAD) H.equip_to_slot_or_del(new backItem(H), WEAR_BACK) H.equip_to_slot_or_del(new /obj/item/device/taperecorder(H), WEAR_L_STORE) H.equip_to_slot_or_del(new /obj/item/storage/pouch/magazine/pistol/pmc_mateba(H), WEAR_R_STORE) @@ -435,7 +435,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud/prescription(H), WEAR_EYES) else H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(H), WEAR_EYES) - H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/mp/provost/marshal(H), WEAR_HEAD) + H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/MP/provost/marshal(H), WEAR_HEAD) H.equip_to_slot_or_del(new backItem(H), WEAR_BACK) H.equip_to_slot_or_del(new /obj/item/device/taperecorder(H), WEAR_L_STORE) H.equip_to_slot_or_del(new /obj/item/storage/pouch/magazine/pistol/pmc_mateba(H), WEAR_R_STORE) diff --git a/code/modules/gear_presets/uscm_police.dm b/code/modules/gear_presets/uscm_police.dm index 60c5dbd20f36..b3e797c61ce3 100644 --- a/code/modules/gear_presets/uscm_police.dm +++ b/code/modules/gear_presets/uscm_police.dm @@ -1,11 +1,11 @@ -/datum/equipment_preset/uscm_ship/uscm_police - name = "USCM (police roles)" +/datum/equipment_preset/uscm_ship/mp + name = "USCM (Military Police)" faction = FACTION_MARINE minimum_age = 27 //*****************************************************************************************************/ -/datum/equipment_preset/uscm_ship/uscm_police/mp +/datum/equipment_preset/uscm_ship/mp/standard name = "USCM Military Police (MP)" flags = EQUIPMENT_PRESET_START_OF_ROUND|EQUIPMENT_PRESET_MARINE @@ -27,7 +27,7 @@ ) assignment = JOB_POLICE rank = JOB_POLICE - paygrade = "ME5" + paygrade = "ME4" role_comm_title = "MP" skills = /datum/skills/MP @@ -35,14 +35,19 @@ utility_hat = list(/obj/item/clothing/head/helmet/beret/marine/mp) utility_extra = list(/obj/item/clothing/head/cmcap, /obj/item/clothing/head/beret/cm, /obj/item/clothing/head/beret/cm/tan) - service_over = list(/obj/item/clothing/suit/storage/jacket/marine/service/mp) + service_over = list(/obj/item/clothing/suit/storage/jacket/marine/service) + +/datum/equipment_preset/uscm_ship/mp/standard/load_rank(mob/living/carbon/human/human) + if(human.client && get_job_playtime(human.client, rank) < JOB_PLAYTIME_TIER_1) + return "ME2" + return paygrade -/datum/equipment_preset/uscm_ship/uscm_police/mp/load_gear(mob/living/carbon/human/H) +/datum/equipment_preset/uscm_ship/mp/standard/load_gear(mob/living/carbon/human/H) var/backItem = /obj/item/storage/backpack/satchel/sec if (H.client && H.client.prefs && (H.client.prefs.backbag == 1)) backItem = /obj/item/storage/backpack/security - H.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/mmpo(H), WEAR_L_EAR) + H.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/mp(H), WEAR_L_EAR) H.equip_to_slot_or_del(new /obj/item/clothing/under/marine/mp(H), WEAR_BODY) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(H), WEAR_FEET) H.equip_to_slot_or_del(new /obj/item/clothing/gloves/marine(H), WEAR_HANDS) @@ -51,128 +56,15 @@ if(H.disabilities & NEARSIGHTED) H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud/prescription(H), WEAR_EYES) else - H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(H), WEAR_EYES) - H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/beret/marine/mp(H), WEAR_HEAD) + H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud/eyepiece(H), WEAR_EYES) + H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/MP(H), WEAR_HEAD) H.equip_to_slot_or_del(new backItem(H), WEAR_BACK) H.equip_to_slot_or_del(new /obj/item/device/taperecorder(H), WEAR_L_STORE) H.equip_to_slot_or_del(new /obj/item/storage/pouch/general/medium(H), WEAR_R_STORE) //*****************************************************************************************************/ -/datum/equipment_preset/uscm_ship/uscm_police/mp_cadet - name = "USCM MP Cadet (MPC)" - flags = EQUIPMENT_PRESET_START_OF_ROUND|EQUIPMENT_PRESET_MARINE - - access = list( - ACCESS_MARINE_BRIG, - ACCESS_MARINE_BRIDGE, - ACCESS_MARINE_DROPSHIP, - ACCESS_MARINE_LOGISTICS, - ACCESS_MARINE_PREP, - ACCESS_MARINE_MEDBAY, - ACCESS_MARINE_MORGUE, - ACCESS_MARINE_ALPHA, - ACCESS_MARINE_BRAVO, - ACCESS_MARINE_CHARLIE, - ACCESS_MARINE_DELTA, - ACCESS_MARINE_ENGINEERING, - ACCESS_MARINE_MAINT, - ACCESS_MARINE_OT - ) - assignment = JOB_POLICE_CADET - rank = JOB_POLICE_CADET - paygrade = "ME4" - role_comm_title = "MPC" - skills = /datum/skills/MP - - utility_under = list(/obj/item/clothing/under/marine/mp) - utility_hat = list(/obj/item/clothing/head/helmet/beret/marine/mp) - utility_extra = list(/obj/item/clothing/head/cmcap, /obj/item/clothing/head/beret/cm, /obj/item/clothing/head/beret/cm/tan) - - service_over = list(/obj/item/clothing/suit/storage/jacket/marine/service/mp) - -/datum/equipment_preset/uscm_ship/uscm_police/mp_cadet/load_gear(mob/living/carbon/human/H) - var/backItem = /obj/item/storage/backpack/satchel/sec - if (H.client && H.client.prefs && (H.client.prefs.backbag == 1)) - backItem = /obj/item/storage/backpack/security - - H.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/mmpo(H), WEAR_L_EAR) - H.equip_to_slot_or_del(new /obj/item/clothing/under/marine/mp/cadet(H), WEAR_BODY) - H.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(H), WEAR_FEET) - H.equip_to_slot_or_del(new /obj/item/clothing/gloves/marine(H), WEAR_HANDS) - H.equip_to_slot_or_del(new /obj/item/storage/belt/security/MP/full(H), WEAR_WAIST) - H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/marine/MP(H), WEAR_JACKET) - if(H.disabilities & NEARSIGHTED) - H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud/prescription(H), WEAR_EYES) - else - H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(H), WEAR_EYES) - H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/beret/marine/mp(H), WEAR_HEAD) - H.equip_to_slot_or_del(new backItem(H), WEAR_BACK) - H.equip_to_slot_or_del(new /obj/item/device/taperecorder(H), WEAR_L_STORE) - H.equip_to_slot_or_del(new /obj/item/storage/pouch/general/medium(H), WEAR_R_STORE) - - - -//*****************************************************************************************************/ - -/datum/equipment_preset/uscm_ship/uscm_police/warden - name = "USCM Military Warden (MW)" - flags = EQUIPMENT_PRESET_START_OF_ROUND|EQUIPMENT_PRESET_MARINE - idtype = /obj/item/card/id/silver - - access = list( - ACCESS_MARINE_BRIG, - ACCESS_MARINE_BRIDGE, - ACCESS_MARINE_DROPSHIP, - ACCESS_MARINE_LOGISTICS, - ACCESS_MARINE_PREP, - ACCESS_MARINE_WO, - ACCESS_MARINE_MEDBAY, - ACCESS_MARINE_COMMANDER, - ACCESS_MARINE_MORGUE, - ACCESS_MARINE_ALPHA, - ACCESS_MARINE_BRAVO, - ACCESS_MARINE_CHARLIE, - ACCESS_MARINE_DELTA, - ACCESS_MARINE_ENGINEERING, - ACCESS_MARINE_MAINT, - ACCESS_MARINE_OT - ) - assignment = JOB_WARDEN - rank = JOB_WARDEN - paygrade = "MO1" - role_comm_title = "MW" - skills = /datum/skills/MW - - utility_under = list(/obj/item/clothing/under/marine/warden) - utility_hat = list(/obj/item/clothing/head/helmet/beret/marine/mp/warden) - utility_extra = list(/obj/item/clothing/head/cmcap, /obj/item/clothing/head/beret/cm, /obj/item/clothing/head/beret/cm/tan) - - service_over = list(/obj/item/clothing/suit/storage/jacket/marine/service/warden) - -/datum/equipment_preset/uscm_ship/uscm_police/warden/load_gear(mob/living/carbon/human/H) - var/backItem = /obj/item/storage/backpack/satchel/sec - if (H.client && H.client.prefs && (H.client.prefs.backbag == 1)) - backItem = /obj/item/storage/backpack/security - - H.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/cmpcom(H), WEAR_L_EAR) - H.equip_to_slot_or_del(new /obj/item/clothing/under/marine/warden(H), WEAR_BODY) - H.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(H), WEAR_FEET) - H.equip_to_slot_or_del(new /obj/item/clothing/gloves/marine(H), WEAR_HANDS) - H.equip_to_slot_or_del(new /obj/item/storage/belt/security/MP/full(H), WEAR_WAIST) - H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/marine/MP/warden(H), WEAR_JACKET) - if(H.disabilities & NEARSIGHTED) - H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud/prescription(H), WEAR_EYES) - else - H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(H), WEAR_EYES) - H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/beret/marine/mp/warden(H), WEAR_HEAD) - H.equip_to_slot_or_del(new backItem(H), WEAR_BACK) - H.equip_to_slot_or_del(new /obj/item/device/taperecorder(H), WEAR_L_STORE) - H.equip_to_slot_or_del(new /obj/item/storage/pouch/general/large(H), WEAR_R_STORE) - -//*****************************************************************************************************/ - -/datum/equipment_preset/uscm_ship/uscm_police/cmp +/datum/equipment_preset/uscm_ship/mp/cmp name = "USCM Chief MP (CMP)" flags = EQUIPMENT_PRESET_START_OF_ROUND|EQUIPMENT_PRESET_MARINE idtype = /obj/item/card/id/silver @@ -202,35 +94,35 @@ role_comm_title = "CMP" skills = /datum/skills/CMP - utility_under = list(/obj/item/clothing/under/marine/officer/warrant) + utility_under = list(/obj/item/clothing/under/marine/officer/cmp) utility_hat = list(/obj/item/clothing/head/helmet/beret/marine/mp/cmp) utility_extra = list(/obj/item/clothing/head/cmcap, /obj/item/clothing/head/beret/cm, /obj/item/clothing/head/beret/cm/tan) - service_over = list(/obj/item/clothing/suit/storage/jacket/marine/service/cmp) + service_over = list(/obj/item/clothing/suit/storage/jacket/marine/service) -/datum/equipment_preset/uscm_ship/uscm_police/cmp/load_gear(mob/living/carbon/human/H) +/datum/equipment_preset/uscm_ship/mp/cmp/load_gear(mob/living/carbon/human/H) var/backItem = /obj/item/storage/backpack/satchel/sec if (H.client && H.client.prefs && (H.client.prefs.backbag == 1)) backItem = /obj/item/storage/backpack/security - H.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/cmpcom(H), WEAR_L_EAR) - H.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/warrant(H), WEAR_BODY) + H.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/cmp(H), WEAR_L_EAR) + H.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/cmp(H), WEAR_BODY) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(H), WEAR_FEET) H.equip_to_slot_or_del(new /obj/item/clothing/gloves/marine(H), WEAR_HANDS) H.equip_to_slot_or_del(new /obj/item/storage/belt/security/MP/full(H), WEAR_WAIST) - H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/marine/MP/WO(H), WEAR_JACKET) + H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/marine/MP/padless/cmp(H), WEAR_JACKET) if(H.disabilities & NEARSIGHTED) H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud/prescription(H), WEAR_EYES) else H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(H), WEAR_EYES) - H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/beret/marine/mp/cmp(H), WEAR_HEAD) + H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/MP(H), WEAR_HEAD) H.equip_to_slot_or_del(new backItem(H), WEAR_BACK) H.equip_to_slot_or_del(new /obj/item/device/taperecorder(H), WEAR_L_STORE) H.equip_to_slot_or_del(new /obj/item/storage/pouch/general/large(H), WEAR_R_STORE) //*****************************************************************************************************/ -/datum/equipment_preset/uscm_ship/uscm_police/riot_mp +/datum/equipment_preset/uscm_ship/mp/riot_mp name = "USCM Riot MP (RMP)" flags = EQUIPMENT_PRESET_EXTRA|EQUIPMENT_PRESET_MARINE @@ -242,19 +134,19 @@ role_comm_title = "RMP" skills = /datum/skills/CMP - utility_under = list(/obj/item/clothing/under/marine/officer/warrant) + utility_under = list(/obj/item/clothing/under/marine/officer/cmp) utility_hat = list(/obj/item/clothing/head/helmet/beret/marine/mp/cmp) utility_extra = list(/obj/item/clothing/head/cmcap, /obj/item/clothing/head/beret/cm, /obj/item/clothing/head/beret/cm/tan) -/datum/equipment_preset/uscm_ship/uscm_police/riot_mp/New() +/datum/equipment_preset/uscm_ship/mp/riot_mp/New() . = ..() access = get_all_accesses() + get_all_centcom_access() -/datum/equipment_preset/uscm_ship/uscm_police/riot_mp/load_gear(mob/living/carbon/human/H) +/datum/equipment_preset/uscm_ship/mp/riot_mp/load_gear(mob/living/carbon/human/H) //TODO: add backpacks and satchels - H.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/cmpcom(H), WEAR_L_EAR) - H.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/warrant(H), WEAR_BODY) + H.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/cmp(H), WEAR_L_EAR) + H.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/cmp(H), WEAR_BODY) H.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/riot/marine(H), WEAR_JACKET) H.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/riot(H), WEAR_HEAD) H.equip_to_slot_or_del(new /obj/item/storage/belt/security/MP/full(H), WEAR_WAIST) @@ -280,7 +172,7 @@ //*****************************************************************************************************/ -/datum/equipment_preset/uscm_ship/uscm_police/riot_mp/riot_cmp +/datum/equipment_preset/uscm_ship/mp/riot_mp/riot_cmp name = "USCM Riot Chief MP (RCMP)" flags = EQUIPMENT_PRESET_EXTRA diff --git a/code/modules/gear_presets/uscm_ship.dm b/code/modules/gear_presets/uscm_ship.dm index 6e78bfd6edf4..3578731b0dae 100644 --- a/code/modules/gear_presets/uscm_ship.dm +++ b/code/modules/gear_presets/uscm_ship.dm @@ -12,7 +12,7 @@ utility_extra = list(/obj/item/clothing/head/beret/cm, /obj/item/clothing/head/beret/cm/tan) service_under = list(/obj/item/clothing/under/marine/officer/bridge) - service_over = list(/obj/item/clothing/suit/storage/jacket/marine/service, /obj/item/clothing/suit/storage/jacket/marine/service/mp) + service_over = list(/obj/item/clothing/suit/storage/jacket/marine/service) service_hat = list(/obj/item/clothing/head/cmcap) service_shoes = list(/obj/item/clothing/shoes/dress) diff --git a/code/modules/gear_presets/wo.dm b/code/modules/gear_presets/wo.dm index 5a00ef1a7955..337b6c2e1778 100644 --- a/code/modules/gear_presets/wo.dm +++ b/code/modules/gear_presets/wo.dm @@ -246,7 +246,7 @@ //*****************************************************************************************************/ /datum/equipment_preset/wo/hg - name = "WO Honor Guard" //MP + name = "WO Honor Guard" // MP flags = EQUIPMENT_PRESET_START_OF_ROUND_WO access = list(ACCESS_MARINE_BRIG, ACCESS_MARINE_BRIDGE, ACCESS_MARINE_DROPSHIP, ACCESS_MARINE_LOGISTICS, ACCESS_MARINE_PREP, ACCESS_MARINE_MEDBAY) diff --git a/code/modules/law/laws/major_crime.dm b/code/modules/law/laws/major_crime.dm index 3280004c1ba7..2405839b73ed 100644 --- a/code/modules/law/laws/major_crime.dm +++ b/code/modules/law/laws/major_crime.dm @@ -9,7 +9,7 @@ /datum/law/major_law/disorderly_conduct name = "Disorderly Conduct" - desc = "Directly and intentionally disrupting primary operations of the ship. Fighting in the RO line, disrupting the briefing." + desc = "Directly and intentionally disrupting primary operations of the ship. Fighting in the RO line, extensively or repeatedly disrupting the briefing." brig_time = 10 /datum/law/major_law/assault @@ -78,4 +78,4 @@ /datum/law/major_law/misuse_of_authority name = "Misuse of Authority" desc = "The exercising of power to a malicious extent by Military Police or deputized personnel acting as an MP; examples include beating a downed prisoner, excessive use of harmful or non-lethal force, or other abusive actions that led to the harm of a person in custody. Detained suspects should not have more force used on them than necessary in order to pacify them. Force may be used against retaliating or escaping parties only to the point where they are sufficiently pacified." - brig_time = 20 \ No newline at end of file + brig_time = 20 diff --git a/code/modules/law/laws/optional.dm b/code/modules/law/laws/optional.dm index 8bec39c72257..16bfe436b333 100644 --- a/code/modules/law/laws/optional.dm +++ b/code/modules/law/laws/optional.dm @@ -19,4 +19,4 @@ /datum/law/optional_law/major_unruly name = "Major Disordely Conduct in Confinement" desc = "To cause disruption in a major manner while in Brig and under arrest. Disruption is considered breaking Major Law. This can be added on to any charge." - brig_time = 15 \ No newline at end of file + brig_time = 15 diff --git a/code/modules/maptext_alerts/text_blurbs.dm b/code/modules/maptext_alerts/text_blurbs.dm index 4eaa9a0d2188..c92141c7e6b8 100644 --- a/code/modules/maptext_alerts/text_blurbs.dm +++ b/code/modules/maptext_alerts/text_blurbs.dm @@ -50,7 +50,7 @@ base = the base the marines are staging from. The ship, Whiskey Outpost etc. Non mobarray["combat"] += H if(BLURB_USCM_FLIGHT) mobarray["po"] += H - if(BLURB_USCM_MP) + if(BLURB_USCM_POLICE) mobarray["mp"] += H if(BLURB_USCM_ENGI) mobarray["eng"] += H diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index f87dfb9d52ed..50217bba5931 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -260,14 +260,10 @@ datum/preferences/proc/randomize_skin_color() return /datum/equipment_preset/synth/uscm if(JOB_WORKING_JOE) return /datum/equipment_preset/synth/working_joe - if(JOB_POLICE_CADET) - return /datum/equipment_preset/uscm_ship/uscm_police/mp_cadet - if(JOB_POLICE) - return /datum/equipment_preset/uscm_ship/uscm_police/mp if(JOB_CHIEF_POLICE) - return /datum/equipment_preset/uscm_ship/uscm_police/cmp - if(JOB_WARDEN) - return /datum/equipment_preset/uscm_ship/uscm_police/warden + return /datum/equipment_preset/uscm_ship/mp/cmp + if(JOB_POLICE) + return /datum/equipment_preset/uscm_ship/mp/standard if(JOB_CREWMAN) return /datum/equipment_preset/uscm/tank/full if(JOB_SEA) diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index af5e98ed84f6..8d48d82e689d 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -832,7 +832,7 @@ . = ..() var/template = {"\[center\]\[logo\]\[/center\] \[center\]\[b\]\[i\]Encoded USCM Incident Report\[/b\]\[/i\]\[hr\] - \[small\]FOR USE BY MP'S ONLY\[/small\]\[br\] + \[small\]FOR USE BY MPS ONLY\[/small\]\[br\] \[barcode\]\[/center\]"} info = parsepencode(template, null, null, FALSE) update_icon() diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 36726cd90af8..8521eae51fa2 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -260,6 +260,14 @@ if(auto_retrieval_slot) AddElement(/datum/element/drop_retrieval/gun, auto_retrieval_slot) +/obj/item/weapon/gun/get_examine_line(mob/user) + . = ..() + if(HAS_FLAG(flags_gun_features, GUN_TRIGGER_SAFETY)) + var/atom/holder = recursive_holder_check(src) + var/distance = get_dist(holder, user) + if(distance <= 1) + . += " (S)" + /obj/item/weapon/gun/proc/set_gun_attachment_offsets() attachable_offset = null diff --git a/code/stylesheet.dm b/code/stylesheet.dm index 1c1143d6079a..406df563afe4 100644 --- a/code/stylesheet.dm +++ b/code/stylesheet.dm @@ -40,7 +40,7 @@ em {font-style: normal; font-weight: bold;} .centradio {color: #5C5C8A;} .airadio {color: #FF00FF;} -.secradio {color: #A30000;} +.secradio {color: #8DCAA4;} .engradio {color: #A66300;} .medradio {color: #008160;} .sciradio {color: #993399;} diff --git a/html/browser/common.css b/html/browser/common.css index ffacff734d10..a1500ee0eb1c 100644 --- a/html/browser/common.css +++ b/html/browser/common.css @@ -458,11 +458,11 @@ a.purple:hover { } .job_mp { - background-color: #e83030; + background-color: #30e85e; } .job_cmp { - background-color: #ff4d4d; + background-color: #6fbe83; } .job_ce { diff --git a/html/browser/legacy.css b/html/browser/legacy.css index 47d0f2bb46cd..a20bf6e8a59f 100644 --- a/html/browser/legacy.css +++ b/html/browser/legacy.css @@ -170,11 +170,11 @@ a.purple { } .job_mp { - background-color: #ffdddd; + background-color: #30e85e; } .job_cmp { - background-color: #ffaaaa; + background-color: #6fbe83; } .job_ce { diff --git a/icons/mob/hud/marine_hud.dmi b/icons/mob/hud/marine_hud.dmi index de7e298b39f8..188e681894b9 100644 Binary files a/icons/mob/hud/marine_hud.dmi and b/icons/mob/hud/marine_hud.dmi differ diff --git a/icons/mob/hud/sec_hud.dmi b/icons/mob/hud/sec_hud.dmi index b3376137a0f8..d259d47b22a9 100644 Binary files a/icons/mob/hud/sec_hud.dmi and b/icons/mob/hud/sec_hud.dmi differ diff --git a/icons/mob/humans/onmob/eyes.dmi b/icons/mob/humans/onmob/eyes.dmi index 2be8eb8d6fad..48dde45b66b2 100644 Binary files a/icons/mob/humans/onmob/eyes.dmi and b/icons/mob/humans/onmob/eyes.dmi differ diff --git a/icons/mob/humans/onmob/head_1.dmi b/icons/mob/humans/onmob/head_1.dmi index c298ba90fcf8..f8aec9e01bbf 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/suit_1.dmi b/icons/mob/humans/onmob/suit_1.dmi index 36b943819669..3fe58bc105d9 100644 Binary files a/icons/mob/humans/onmob/suit_1.dmi and b/icons/mob/humans/onmob/suit_1.dmi differ diff --git a/icons/mob/humans/onmob/uniform_0.dmi b/icons/mob/humans/onmob/uniform_0.dmi index 250b04f4e482..88e32a23dba3 100644 Binary files a/icons/mob/humans/onmob/uniform_0.dmi and b/icons/mob/humans/onmob/uniform_0.dmi differ diff --git a/icons/mob/humans/onmob/uniform_overlays.dmi b/icons/mob/humans/onmob/uniform_overlays.dmi new file mode 100644 index 000000000000..652b00c12e11 Binary files /dev/null and b/icons/mob/humans/onmob/uniform_overlays.dmi differ diff --git a/icons/obj/items/clothing/cm_hats.dmi b/icons/obj/items/clothing/cm_hats.dmi index c3434425436e..ca88124c25b1 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/clothing/cm_suits.dmi b/icons/obj/items/clothing/cm_suits.dmi index edc10d636fab..4bc7c01dbf60 100644 Binary files a/icons/obj/items/clothing/cm_suits.dmi and b/icons/obj/items/clothing/cm_suits.dmi differ diff --git a/icons/obj/items/clothing/uniform_overlays.dmi b/icons/obj/items/clothing/uniform_overlays.dmi new file mode 100644 index 000000000000..7dc85f7996de Binary files /dev/null and b/icons/obj/items/clothing/uniform_overlays.dmi differ diff --git a/icons/obj/items/clothing/uniforms.dmi b/icons/obj/items/clothing/uniforms.dmi index f4c65fc80191..f9086747b000 100644 Binary files a/icons/obj/items/clothing/uniforms.dmi and b/icons/obj/items/clothing/uniforms.dmi differ diff --git a/icons/rebase_icons.dmi b/icons/rebase_icons.dmi index aaf92453b29a..a3823ea85172 100644 Binary files a/icons/rebase_icons.dmi and b/icons/rebase_icons.dmi differ diff --git a/maps/map_files/USS_Almayer/USS_Almayer.dmm b/maps/map_files/USS_Almayer/USS_Almayer.dmm index 2d400319f9d7..5cf0989ec78b 100644 --- a/maps/map_files/USS_Almayer/USS_Almayer.dmm +++ b/maps/map_files/USS_Almayer/USS_Almayer.dmm @@ -28390,7 +28390,6 @@ /turf/open/floor/plating/plating_catwalk, /area/almayer/hull/lower_hull/l_f_p) "bRH" = ( -/obj/effect/landmark/start/cadet_police, /turf/open/floor/plating/plating_catwalk, /area/almayer/shipboard/brig/cryo) "bRK" = ( @@ -39364,7 +39363,6 @@ pixel_x = 2; tag = "icon-E" }, -/obj/effect/landmark/start/cadet_police, /obj/effect/decal/warning_stripes{ icon_state = "N"; pixel_y = 1; @@ -39645,16 +39643,6 @@ tag = "icon-sterile" }, /area/almayer/hull/upper_hull/u_f_p) -"eyg" = ( -/obj/structure/machinery/cryopod/right{ - pixel_y = 6 - }, -/obj/effect/landmark/start/cadet_police, -/turf/open/floor/almayer{ - icon_state = "cargo"; - tag = "icon-bluecorner (NORTH)" - }, -/area/almayer/shipboard/brig/cryo) "eyG" = ( /obj/structure/platform, /turf/open/floor/almayer{ @@ -43606,7 +43594,6 @@ pixel_y = 1; tag = "icon-N" }, -/obj/effect/landmark/start/warden, /turf/open/floor/almayer{ icon_state = "plate"; tag = "icon-sterile" @@ -46964,9 +46951,9 @@ /obj/structure/machinery/recharger, /obj/structure/transmitter{ dir = 4; - name = "Brig Warden's Office Telephone"; + name = "Yard Office Telephone"; phone_category = "Offices"; - phone_id = "Brig Warden's Office"; + phone_id = "Yard Office"; pixel_x = -16 }, /turf/open/floor/almayer{ @@ -48687,7 +48674,7 @@ /obj/structure/pipes/standard/simple/hidden/supply, /obj/structure/machinery/door/airlock/almayer/security/glass/reinforced{ dir = 1; - name = "\improper Warden Office" + name = "\improper Yard Office" }, /turf/open/floor/almayer{ icon_state = "test_floor4"; @@ -57867,7 +57854,7 @@ /turf/open/floor/almayer, /area/almayer/command/cichallway) "mGn" = ( -/obj/structure/machinery/cm_vending/clothing/military_police_warden, +/obj/structure/machinery/cm_vending/clothing/military_police, /turf/open/floor/almayer{ icon_state = "plate"; tag = "icon-sterile" @@ -101210,7 +101197,7 @@ akC tRX uzm vxM -eyg +vAI vAI oWI vxM diff --git a/maps/map_files/USS_Runtime/USS_Runtime.dmm b/maps/map_files/USS_Runtime/USS_Runtime.dmm index d3c904e6f391..52a1ea5f8b81 100644 --- a/maps/map_files/USS_Runtime/USS_Runtime.dmm +++ b/maps/map_files/USS_Runtime/USS_Runtime.dmm @@ -55,12 +55,6 @@ icon_state = "plating" }, /area/event) -"q" = ( -/obj/effect/landmark/start/warden, -/turf/open/floor/almayer{ - icon_state = "plating" - }, -/area/event) "r" = ( /obj/effect/landmark/start/maint, /turf/open/floor/almayer{ @@ -217,7 +211,7 @@ a s k z -q +g g g g diff --git a/tgui/packages/tgui-panel/styles/goon/chat-dark.scss b/tgui/packages/tgui-panel/styles/goon/chat-dark.scss index 0d72b490fe1b..c0df3512ea87 100644 --- a/tgui/packages/tgui-panel/styles/goon/chat-dark.scss +++ b/tgui/packages/tgui-panel/styles/goon/chat-dark.scss @@ -334,7 +334,7 @@ em { } .secradio { - color: #dd3535; + color: #a52929; } .medradio { @@ -937,10 +937,6 @@ em { color: #ff00ff; } -.secradio { - color: #a52929; -} - .engradio { color: #a66300; }