From: TsjipTsjip <19798667+TsjipTsjip@users.noreply.github.com> Date: Sun, 19 May 2024 23:04:16 +0000 (+0200) Subject: Admin access configurator (#28107) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=daac3037835aba088c5c346e9e9d09d5e9402648;p=space-station-14.git Admin access configurator (#28107) * Port spritework and initial prototypes by @Arimah Co-authored-by: Alice 'Arimah' Heurlin <30327355+arimah@users.noreply.github.com> * Make Admin PDA's spawn with a universal ID card * Add universal access configurator to aghost satchel of holding * Add Admin suffixes to adminonly items: AdminPDA, UniversalIDCard, AccessConfiguratorUniversal * Admin jobicon --------- Co-authored-by: Alice 'Arimah' Heurlin <30327355+arimah@users.noreply.github.com> --- diff --git a/Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/satchel.yml b/Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/satchel.yml index 140b1c2968..fe41168829 100644 --- a/Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/satchel.yml +++ b/Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/satchel.yml @@ -214,7 +214,7 @@ - id: BoxSurvival - id: Bible - id: RubberStampChaplain - + - type: entity noSpawn: true parent: ClothingBackpackSatchel @@ -296,4 +296,5 @@ contents: - id: GasAnalyzer - id: trayScanner + - id: AccessConfiguratorUniversal - type: Unremoveable diff --git a/Resources/Prototypes/Entities/Objects/Devices/pda.yml b/Resources/Prototypes/Entities/Objects/Devices/pda.yml index 472d0ecbe1..b76ca6a14a 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/pda.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/pda.yml @@ -658,10 +658,11 @@ parent: CentcomPDA id: AdminPDA name: Admin PDA + suffix: Admin description: If you are not an admin please return this PDA to the nearest admin. components: - type: Pda - id: PassengerIDCard + id: UniversalIDCard - type: HealthAnalyzer scanDelay: 0 - type: CartridgeLoader diff --git a/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml b/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml index 3de1afe8b8..98ae7df9b3 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml @@ -840,3 +840,30 @@ layers: - state: default - state: idseniorofficer + +- type: entity + parent: IDCardStandard + id: UniversalIDCard + name: universal ID card + suffix: Admin + description: An ID card that gives you access beyond your wildest dreams. + components: + - type: Sprite + sprite: Objects/Misc/id_cards.rsi + layers: + - state: admin + - state: idadmin + - type: Clothing + sprite: Objects/Misc/id_cards.rsi + - type: Item + heldPrefix: green + - type: IdCard + jobTitle: Universal + jobIcon: JobIconAdmin + - type: Access + groups: + - AllAccess + tags: + - CentralCommand + - NuclearOperative + - SyndicateAgent diff --git a/Resources/Prototypes/Entities/Objects/Tools/access_configurator.yml b/Resources/Prototypes/Entities/Objects/Tools/access_configurator.yml index d63e1f0aa9..3c5bc93b42 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/access_configurator.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/access_configurator.yml @@ -73,3 +73,61 @@ - type: ContainerContainer containers: AccessOverrider-privilegedId: !type:ContainerSlot + +- type: entity + parent: AccessConfigurator + id: AccessConfiguratorUniversal + name: universal access configurator + suffix: Admin + description: A modified access configurator used only by the mythical Administrator. + components: + - type: Sprite + sprite: Objects/Tools/universal_access_configurator.rsi + - type: Clothing + sprite: Objects/Tools/universal_access_configurator.rsi + - type: AccessOverrider + accessLevels: + - Armory + - Atmospherics + - Bar + - Brig + - Detective + - Captain + - Cargo + - Chapel + - Chemistry + - ChiefEngineer + - ChiefMedicalOfficer + - Command + - Engineering + - External + - HeadOfPersonnel + - HeadOfSecurity + - Hydroponics + - Janitor + - Kitchen + - Lawyer + - Maintenance + - Medical + - Quartermaster + - Research + - ResearchDirector + - Salvage + - Security + - Service + - Theatre + - CentralCommand + - NuclearOperative + - SyndicateAgent + privilegedIdSlot: + name: id-card-console-privileged-id + ejectSound: /Audio/Machines/id_swipe.ogg + insertSound: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg + ejectOnBreak: true + swap: false + whitelist: + components: + - IdCard + denialSound: + path: /Audio/Machines/custom_deny.ogg + doAfter: 0.5 diff --git a/Resources/Prototypes/StatusEffects/job.yml b/Resources/Prototypes/StatusEffects/job.yml index aec3f5e69d..6275f0bc07 100644 --- a/Resources/Prototypes/StatusEffects/job.yml +++ b/Resources/Prototypes/StatusEffects/job.yml @@ -375,3 +375,10 @@ icon: sprite: /Textures/Interface/Misc/job_icons.rsi state: Visitor + +- type: statusIcon + parent: JobIcon + id: JobIconAdmin + icon: + sprite: /Textures/Interface/Misc/job_icons.rsi + state: Admin diff --git a/Resources/Textures/Interface/Misc/job_icons.rsi/Admin.png b/Resources/Textures/Interface/Misc/job_icons.rsi/Admin.png new file mode 100644 index 0000000000..38a76df8d8 Binary files /dev/null and b/Resources/Textures/Interface/Misc/job_icons.rsi/Admin.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 745cc43b84..fff9f78288 100644 --- a/Resources/Textures/Interface/Misc/job_icons.rsi/meta.json +++ b/Resources/Textures/Interface/Misc/job_icons.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/blob/e71d6c4fba5a51f99b81c295dcaec4fc2f58fb19/icons/mob/screen1.dmi | Brigmedic icon made by PuroSlavKing (Github) | Zombie icon made by RamZ | Zookeper by netwy (discort) | Rev and Head Rev icon taken from https://tgstation13.org/wiki/HUD and edited by coolmankid12345 (Discord) | Mindshield icon taken from https://github.com/tgstation/tgstation/blob/master/icons/mob/huds/hud.dmi", + "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/blob/e71d6c4fba5a51f99b81c295dcaec4fc2f58fb19/icons/mob/screen1.dmi | Brigmedic icon made by PuroSlavKing (Github) | Zombie icon made by RamZ | Zookeper by netwy (discort) | Rev and Head Rev icon taken from https://tgstation13.org/wiki/HUD and edited by coolmankid12345 (Discord) | Mindshield icon taken from https://github.com/tgstation/tgstation/blob/master/icons/mob/huds/hud.dmi | Admin recolored from MedicalIntern by TsjipTsjip", "size": { "x": 8, @@ -185,6 +185,9 @@ }, { "name": "InitialInfected" + }, + { + "name": "Admin" } ] } diff --git a/Resources/Textures/Objects/Misc/id_cards.rsi/admin.png b/Resources/Textures/Objects/Misc/id_cards.rsi/admin.png new file mode 100644 index 0000000000..99ca993b0b Binary files /dev/null and b/Resources/Textures/Objects/Misc/id_cards.rsi/admin.png differ diff --git a/Resources/Textures/Objects/Misc/id_cards.rsi/green-inhand-left.png b/Resources/Textures/Objects/Misc/id_cards.rsi/green-inhand-left.png new file mode 100644 index 0000000000..958c3ba056 Binary files /dev/null and b/Resources/Textures/Objects/Misc/id_cards.rsi/green-inhand-left.png differ diff --git a/Resources/Textures/Objects/Misc/id_cards.rsi/green-inhand-right.png b/Resources/Textures/Objects/Misc/id_cards.rsi/green-inhand-right.png new file mode 100644 index 0000000000..218d68ef5f Binary files /dev/null and b/Resources/Textures/Objects/Misc/id_cards.rsi/green-inhand-right.png differ diff --git a/Resources/Textures/Objects/Misc/id_cards.rsi/idadmin.png b/Resources/Textures/Objects/Misc/id_cards.rsi/idadmin.png new file mode 100644 index 0000000000..3705c6bf4e Binary files /dev/null and b/Resources/Textures/Objects/Misc/id_cards.rsi/idadmin.png differ diff --git a/Resources/Textures/Objects/Misc/id_cards.rsi/meta.json b/Resources/Textures/Objects/Misc/id_cards.rsi/meta.json index a84c76a46c..bf76784bb9 100644 --- a/Resources/Textures/Objects/Misc/id_cards.rsi/meta.json +++ b/Resources/Textures/Objects/Misc/id_cards.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/d917f4c2a088419d5c3aec7656b7ff8cebd1822e idcluwne made by brainfood1183 (github) for ss14, idbrigmedic made by PuroSlavKing (Github), pirate made by brainfood1183 (github)", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/d917f4c2a088419d5c3aec7656b7ff8cebd1822e idcluwne made by brainfood1183 (github) for ss14, idbrigmedic made by PuroSlavKing (Github), pirate made by brainfood1183 (github), idadmin made by Arimah (github)", "size": { "x": 32, "y": 32 @@ -13,6 +13,9 @@ { "name": "centcom" }, + { + "name": "admin" + }, { "name": "ert_chaplain" }, @@ -169,6 +172,9 @@ { "name": "idintern-tech" }, + { + "name": "idadmin" + }, { "name": "orange" }, @@ -256,6 +262,14 @@ { "name": "blue-inhand-right", "directions": 4 + }, + { + "name": "green-inhand-left", + "directions": 4 + }, + { + "name": "green-inhand-right", + "directions": 4 } ] } diff --git a/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/equipped-BELT.png b/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/equipped-BELT.png new file mode 100644 index 0000000000..b80e5e0055 Binary files /dev/null and b/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/equipped-BELT.png differ diff --git a/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/icon.png b/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/icon.png new file mode 100644 index 0000000000..4b0331deab Binary files /dev/null and b/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/icon.png differ diff --git a/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/inhand-left.png b/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/inhand-left.png new file mode 100644 index 0000000000..5fe2029ac5 Binary files /dev/null and b/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/inhand-left.png differ diff --git a/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/inhand-right.png b/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/inhand-right.png new file mode 100644 index 0000000000..17951b1407 Binary files /dev/null and b/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/inhand-right.png differ diff --git a/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/meta.json b/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/meta.json new file mode 100644 index 0000000000..b2332c597a --- /dev/null +++ b/Resources/Textures/Objects/Tools/universal_access_configurator.rsi/meta.json @@ -0,0 +1,62 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Recoloured by Arimah from the access configurator at https://github.com/space-wizards/space-station-14/commit/fd7db8004e6d5cf442168152a0ca6af1051263eb", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon", + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + }, + { + "name": "equipped-BELT", + "directions": 4 + } + ] +}