From 9fc147a6f1fec0056abcd55eca31bbe26203b385 Mon Sep 17 00:00:00 2001 From: CrudeWax <75271456+CrudeWax@users.noreply.github.com> Date: Thu, 17 Mar 2022 21:46:11 +0300 Subject: [PATCH] Guardian brushup and bullet passthrough (#7035) --- Resources/Locale/en-US/guardian/guardian.ftl | 2 +- .../Entities/Mobs/Player/guardian.yml | 51 +++++++++++++++--- .../Syndicate_Gadgets/guardian_activators.yml | 15 +++++- .../Textures/Interface/Actions/manifest.png | Bin 1922 -> 1935 bytes 4 files changed, 58 insertions(+), 10 deletions(-) diff --git a/Resources/Locale/en-US/guardian/guardian.ftl b/Resources/Locale/en-US/guardian/guardian.ftl index 48c14dc0e1..64d2f1a805 100644 --- a/Resources/Locale/en-US/guardian/guardian.ftl +++ b/Resources/Locale/en-US/guardian/guardian.ftl @@ -12,7 +12,7 @@ guardian-available = Your guardian now has a soul. # Guardian action -action-name-guardian = Toggle guardian manifestation +action-name-guardian = Toggle Guardian action-description-guardian = Either manifests the guardian or recalls it back into your body ## Guardian entity specific diff --git a/Resources/Prototypes/Entities/Mobs/Player/guardian.yml b/Resources/Prototypes/Entities/Mobs/Player/guardian.yml index 37989cecb1..29086dade3 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/guardian.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/guardian.yml @@ -1,12 +1,13 @@ # Does not inherit from simplemob - type: entity - name: Holoparasite - id: MobHoloparasite - description: A mesmerising whirl of hard-light patterns weaves a marvelous, yet oddly familiar visage. It stands proud, tuning into its owner's life to sustain itself. + abstract: true + name: GuardianBase + id: MobGuardianBase + description: guardian components: - type: GhostTakeoverAvailable makeSentient: true - name: Holoparasite + name: Guardian description: Listen to your owner. Don't tank damage. Punch people hard. - type: Input context: "human" @@ -42,9 +43,7 @@ radius: 0.35 mass: 10 mask: - - Impassable - - SmallImpassable - - MobImpassable + - VaultImpassable layer: - Opaque - type: Damageable @@ -73,5 +72,41 @@ interactSuccessString: petting-success-holo interactFailureString: petting-failure-holo successChance: 0.7 + +# From the uplink injector +- type: entity + name: Holoparasite + id: MobHoloparasiteGuardian + parent: MobGuardianBase + description: A mesmerising whirl of hard-light patterns weaves a marvelous, yet oddly familiar visage. It stands proud, tuning into its owner's life to sustain itself. + components: + - type: GhostTakeoverAvailable + makeSentient: true + name: Holoparasite + description: Listen to your owner. Don't tank damage. Punch people hard. - type: NameIdentifier - group: Holoparasite \ No newline at end of file + group: Holoparasite + - type: Sprite + layers: + - state: tech_base + - state: tech_flare + color: "#40a7d7" + shader: unshaded + +# From Wizard deck of cards +- type: entity + name: Ifrit + parent: MobGuardianBase + id: MobIfritGuardian + description: A corrupted jinn, ripped from fitra to serve the wizard's petty needs. It stands wicked, tuning into it's owner's life to sustain itself. + components: + - type: GhostTakeoverAvailable + makeSentient: true + name: Ifrit + description: Listen to your owner. Don't tank damage. Punch people hard. + - type: Sprite + layers: + - state: magic_base + - state: magic_flare + color: "#d14730" + shader: unshaded \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Objects/Devices/Syndicate_Gadgets/guardian_activators.yml b/Resources/Prototypes/Entities/Objects/Devices/Syndicate_Gadgets/guardian_activators.yml index 03d03ab041..6a8ceb04f5 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/Syndicate_Gadgets/guardian_activators.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/Syndicate_Gadgets/guardian_activators.yml @@ -9,7 +9,20 @@ state: combat_hypo netsync: false - type: GuardianCreator - guardianProto: MobHoloparasite + guardianProto: MobHoloparasiteGuardian + +- type: entity + name: magical lamp + id: MagicalLamp + parent: BaseItem + description: The wizard federation had to cut costs after the jinn merchandise scandal somehow. + components: + - type: Sprite + sprite: Objects/Misc/Lights/lamp.rsi + layers: + - state: lamp + - type: GuardianCreator + guardianProto: MobIfritGuardian - type: entity name: holoparasite box diff --git a/Resources/Textures/Interface/Actions/manifest.png b/Resources/Textures/Interface/Actions/manifest.png index 7db153e9f276d7680aeb5fc7a907d6de4484ce84..cd021d087ce575ebc8cfc361849d87c7c2af3d5f 100644 GIT binary patch delta 1907 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