From: Maxtone <124747282+MagnusCrowe@users.noreply.github.com> Date: Mon, 1 May 2023 07:13:56 +0000 (-0500) Subject: Paramedic role, redone (#15439) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=332510df3b60261061e900b3e98af4d9b40fd13f;p=space-station-14.git Paramedic role, redone (#15439) Co-authored-by: MagnusCrowe --- diff --git a/Resources/Locale/en-US/job/job-description.ftl b/Resources/Locale/en-US/job/job-description.ftl index f2db8e4931..d0a68b5aad 100644 --- a/Resources/Locale/en-US/job/job-description.ftl +++ b/Resources/Locale/en-US/job/job-description.ftl @@ -14,6 +14,7 @@ job-description-chef = Keep the station fed with a variety of food items, butche job-description-chemist = Produce medicinal drugs for the doctors to use, research ethically dubious rare chemicals, and produce weapons of war when enemies of the station arrive. job-description-clown = Entertain the crew through elaborate slapstick routines or terrible jokes. job-description-cmo = Manage the resources and personnel of the medical department to keep the crew alive and disease-free. +job-description-paramedic = Rescue critically injured patients all over the station, sometimes outside too. Stablize them, give them a ride to medbay, and get back out there! job-description-detective = Investigate crime scenes using forensic tools, ensure that the guilty party is found, and have a couple smokes. job-description-doctor = Diagnose and heal crewmembers through medicinal chemicals, vaccinations, and disease cures, along with cloning the dead. job-description-engineer = Keep the station's main engine & solars active, optimize the power network, and make emergency repairs using your hardsuit. diff --git a/Resources/Locale/en-US/job/job-names.ftl b/Resources/Locale/en-US/job/job-names.ftl index 7c09d82bb3..104c0c5448 100644 --- a/Resources/Locale/en-US/job/job-names.ftl +++ b/Resources/Locale/en-US/job/job-names.ftl @@ -10,6 +10,7 @@ job-name-rd = Research Director job-name-psychologist = Psychologist job-name-intern = Medical Intern job-name-doctor = Medical Doctor +job-name-paramedic = Paramedic job-name-cmo = Chief Medical Officer job-name-chemist = Chemist job-name-technical-assistant = Technical Assistant @@ -73,6 +74,7 @@ JobMedicalDoctor = Medical doctor JobMedicalIntern = Medical intern JobMime = Mime JobMusician = Musician +JobParamedic = Paramedic JobPassenger = Passenger JobPsychologist = Psychologist JobQuartermaster = Quartermaster diff --git a/Resources/Locale/en-US/prototypes/access/accesses.ftl b/Resources/Locale/en-US/prototypes/access/accesses.ftl index 6eaf374da7..29b6b4d64a 100644 --- a/Resources/Locale/en-US/prototypes/access/accesses.ftl +++ b/Resources/Locale/en-US/prototypes/access/accesses.ftl @@ -18,6 +18,7 @@ id-card-access-level-research = Research id-card-access-level-chief-medical-officer = Chief Medical Officer id-card-access-level-medical = Medical id-card-access-level-chemistry = Chemistry +id-card-access-level-paramedic = Paramedic id-card-access-level-quartermaster = Quartermaster id-card-access-level-cargo = Cargo diff --git a/Resources/Prototypes/Access/medical.yml b/Resources/Prototypes/Access/medical.yml index 5b9623c155..eeba43b5dd 100644 --- a/Resources/Prototypes/Access/medical.yml +++ b/Resources/Prototypes/Access/medical.yml @@ -9,6 +9,10 @@ - type: accessLevel id: Chemistry name: id-card-access-level-chemistry + +- type: accessLevel + id: Paramedic + name: id-card-access-level-paramedic - type: accessGroup id: Medical diff --git a/Resources/Prototypes/Catalog/Fills/Items/belt.yml b/Resources/Prototypes/Catalog/Fills/Items/belt.yml index 9b4703f906..c68f9fe8ab 100644 --- a/Resources/Prototypes/Catalog/Fills/Items/belt.yml +++ b/Resources/Prototypes/Catalog/Fills/Items/belt.yml @@ -66,6 +66,23 @@ amount: 2 - id: Gauze - id: EmergencyMedipen #You never know what people are going to latejoin into + +- type: entity + id: ClothingBeltParamedicFilled + parent: ClothingBeltMedical + suffix: Filled + components: + - type: StorageFill + contents: + - id: Brutepack + amount: 1 + - id: Ointment + amount: 1 + - id: Bloodpack + amount: 1 + - id: Gauze + - id: EmergencyMedipen #You never know what people are going to latejoin into + amount: 6 - type: entity id: ClothingBeltPlantFilled diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/medical.yml b/Resources/Prototypes/Catalog/Fills/Lockers/medical.yml index 10fd6c09ca..0f721a0bda 100644 --- a/Resources/Prototypes/Catalog/Fills/Lockers/medical.yml +++ b/Resources/Prototypes/Catalog/Fills/Lockers/medical.yml @@ -89,3 +89,19 @@ - id: BoxPillCanister - id: BoxBottle amount: 2 + +- type: entity + id: LockerParamedicFilled + suffix: Filled + parent: LockerParamedic + components: + - type: StorageFill + contents: + - id: ClothingHeadHelmetVoidParamed + - id: ClothingOuterHardsuitVoidParamed + - id: ClothingOuterCoatParamedicWB + - id: ClothingHeadHatParamedicsoft + - id: ClothingUniformJumpsuitParamedic + - id: ClothingUniformJumpskirtParamedic + - id: ClothingEyesHudMedical + \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Markers/Spawners/jobs.yml b/Resources/Prototypes/Entities/Markers/Spawners/jobs.yml index 06f9bb37db..c22129a29c 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/jobs.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/jobs.yml @@ -354,6 +354,18 @@ layers: - state: green - state: doctor + +- type: entity + id: SpawnPointParamedic + parent: SpawnPointJobBase + name: paramedic + components: + - type: SpawnPoint + job_id: Paramedic + - type: Sprite + layers: + - state: green + - state: paramedic - type: entity id: SpawnPointChemist diff --git a/Resources/Prototypes/Entities/Objects/Devices/pda.yml b/Resources/Prototypes/Entities/Objects/Devices/pda.yml index af011f5c67..3bb9672910 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/pda.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/pda.yml @@ -473,7 +473,26 @@ scanDelay: 1.2 scanningEndSound: path: "/Audio/Items/Medical/healthscanner.ogg" - + +- type: entity + parent: BasePDA + id: ParamedicPDA + name: paramedic PDA + description: Shiny and sterile. Has a built-in rapid health analyzer. + components: + - type: PDA + id: ParamedicIDCard + state: pda-paramedic + - type: PDABorderColor + borderColor: "#d7d7d0" + accentVColor: "#2a4b5b" + - type: Icon + state: pda-paramedic + - type: HealthAnalyzer + scanDelay: 0.5 + scanningEndSound: + path: "/Audio/Items/Medical/healthscanner.ogg" + - type: entity parent: BasePDA id: ChemistryPDA diff --git a/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml b/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml index 41235c8aba..2b65784393 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml @@ -159,6 +159,18 @@ - state: idmedicaldoctor - type: PresetIdCard job: MedicalDoctor + +- type: entity + parent: IDCardStandard + id: ParamedicIDCard + name: paramedic ID card + components: + - type: Sprite + layers: + - state: default + - state: idparamedic + - type: PresetIdCard + job: Paramedic - type: entity parent: IDCardStandard diff --git a/Resources/Prototypes/Entities/Structures/Storage/Closets/Lockers/lockers.yml b/Resources/Prototypes/Entities/Structures/Storage/Closets/Lockers/lockers.yml index 1276d5e189..a7e1457975 100644 --- a/Resources/Prototypes/Entities/Structures/Storage/Closets/Lockers/lockers.yml +++ b/Resources/Prototypes/Entities/Structures/Storage/Closets/Lockers/lockers.yml @@ -217,6 +217,22 @@ - type: AccessReader access: [ [ "Medical" ] ] +# Paramedic +- type: entity + id: LockerParamedic + parent: LockerBase + name: paramedic's locker + components: + - type: Appearance + visuals: + - type: StorageVisualizer + state: paramed + state_open: paramed_open + state_closed: paramed_door + - type: AccessReader + access: [ [ "Medical" ] ] + + # Chemical - type: entity id: LockerChemistry diff --git a/Resources/Prototypes/Roles/Jobs/Medical/paramedic.yml b/Resources/Prototypes/Roles/Jobs/Medical/paramedic.yml new file mode 100644 index 0000000000..327b605802 --- /dev/null +++ b/Resources/Prototypes/Roles/Jobs/Medical/paramedic.yml @@ -0,0 +1,33 @@ +- type: job + id: Paramedic + name: job-name-paramedic + description: job-description-paramedic + playTimeTracker: JobParamedic + requirements: + - !type:DepartmentTimeRequirement + department: Medical + time: 9000 + - !type:OverallPlaytimeRequirement + time: 54000 + startingGear: ParamedicGear + icon: "Paramedic" + supervisors: job-supervisors-cmo + access: + - Medical + - Maintenance + - External + extendedAccess: + - Chemistry + +- type: startingGear + id: ParamedicGear + equipment: + jumpsuit: ClothingUniformJumpsuitParamedic + back: ClothingBackpackMedicalFilled + shoes: ClothingShoesColorWhite + id: ParamedicPDA + ears: ClothingHeadsetMedical + belt: ClothingBeltParamedicFilled + innerclothingskirt: ClothingUniformJumpskirtParamedic + satchel: ClothingBackpackSatchelMedicalFilled + duffelbag: ClothingBackpackDuffelMedicalFilled diff --git a/Resources/Prototypes/Roles/Jobs/departments.yml b/Resources/Prototypes/Roles/Jobs/departments.yml index d6fcb7ed40..891f6c5195 100644 --- a/Resources/Prototypes/Roles/Jobs/departments.yml +++ b/Resources/Prototypes/Roles/Jobs/departments.yml @@ -67,6 +67,7 @@ - MedicalDoctor - MedicalIntern - Psychologist + - Paramedic - type: department id: Security diff --git a/Resources/Prototypes/Roles/play_time_trackers.yml b/Resources/Prototypes/Roles/play_time_trackers.yml index 909d57b500..87be771f89 100644 --- a/Resources/Prototypes/Roles/play_time_trackers.yml +++ b/Resources/Prototypes/Roles/play_time_trackers.yml @@ -90,6 +90,9 @@ - type: playTimeTracker id: JobPassenger + +- type: playTimeTracker + id: JobParamedic - type: playTimeTracker id: JobPsychologist diff --git a/Resources/Textures/Interface/Misc/job_icons.rsi/Paramedic.png b/Resources/Textures/Interface/Misc/job_icons.rsi/Paramedic.png new file mode 100644 index 0000000000..34fe62eb84 Binary files /dev/null and b/Resources/Textures/Interface/Misc/job_icons.rsi/Paramedic.png differ diff --git a/Resources/Textures/Interface/Misc/job_icons.rsi/meta.json b/Resources/Textures/Interface/Misc/job_icons.rsi/meta.json index fec30daa28..0ee395cb37 100644 --- a/Resources/Textures/Interface/Misc/job_icons.rsi/meta.json +++ b/Resources/Textures/Interface/Misc/job_icons.rsi/meta.json @@ -106,6 +106,9 @@ { "name": "MedicalDoctor" }, + { + "name": "Paramedic" + }, { "name": "Chef" }, diff --git a/Resources/Textures/Objects/Devices/pda.rsi/meta.json b/Resources/Textures/Objects/Devices/pda.rsi/meta.json index 050843326e..f3f9974068 100644 --- a/Resources/Textures/Objects/Devices/pda.rsi/meta.json +++ b/Resources/Textures/Objects/Devices/pda.rsi/meta.json @@ -97,6 +97,9 @@ { "name": "pda-medical" }, + { + "name": "pda-paramedic" + }, { "name": "pda-mime" }, diff --git a/Resources/Textures/Objects/Devices/pda.rsi/pda-paramedic.png b/Resources/Textures/Objects/Devices/pda.rsi/pda-paramedic.png new file mode 100644 index 0000000000..eed26c66a4 Binary files /dev/null and b/Resources/Textures/Objects/Devices/pda.rsi/pda-paramedic.png differ diff --git a/Resources/Textures/Structures/Storage/closet.rsi/meta.json b/Resources/Textures/Structures/Storage/closet.rsi/meta.json index 536cfe27eb..5bd2127340 100644 --- a/Resources/Textures/Structures/Storage/closet.rsi/meta.json +++ b/Resources/Textures/Structures/Storage/closet.rsi/meta.json @@ -392,6 +392,15 @@ { "name": "orange_door" }, + { + "name": "paramed" + }, + { + "name": "paramed_door" + }, + { + "name": "paramed_open" + }, { "name": "pink_door" }, diff --git a/Resources/Textures/Structures/Storage/closet.rsi/paramed.png b/Resources/Textures/Structures/Storage/closet.rsi/paramed.png new file mode 100644 index 0000000000..245fa9cea1 Binary files /dev/null and b/Resources/Textures/Structures/Storage/closet.rsi/paramed.png differ diff --git a/Resources/Textures/Structures/Storage/closet.rsi/paramed_door.png b/Resources/Textures/Structures/Storage/closet.rsi/paramed_door.png new file mode 100644 index 0000000000..5588ffcd11 Binary files /dev/null and b/Resources/Textures/Structures/Storage/closet.rsi/paramed_door.png differ diff --git a/Resources/Textures/Structures/Storage/closet.rsi/paramed_open.png b/Resources/Textures/Structures/Storage/closet.rsi/paramed_open.png new file mode 100644 index 0000000000..d365ba2f83 Binary files /dev/null and b/Resources/Textures/Structures/Storage/closet.rsi/paramed_open.png differ