From 64cc97711eda61d1e966b5f28ae480baafb20522 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sun, 24 Nov 2024 04:43:00 +0800 Subject: [PATCH 01/68] feat: start work on Plasmaman species --- .../Components/IgniteFromGasComponent.cs | 44 +++++ .../IgniteFromGasImmunityComponent.cs | 10 ++ .../EntitySystems/IgniteFromGasSystem.cs | 109 ++++++++++++ Resources/Locale/en-US/alerts/alerts.ftl | 6 + .../en-US/chat/managers/chat-language.ftl | 1 + Resources/Locale/en-US/language/languages.ftl | 3 + .../en-US/metabolism/metabolizer-types.ftl | 1 + Resources/Locale/en-US/species/species.ftl | 5 +- Resources/Locale/en-US/traits/traits.ftl | 5 +- Resources/Prototypes/Alerts/alerts.yml | 18 ++ .../Prototypes/Body/Organs/plasmaman.yml | 75 +++++++++ Resources/Prototypes/Body/Parts/plasmaman.yml | 119 +++++++++++++ .../Prototypes/Body/Prototypes/plasmaman.yml | 50 ++++++ .../Catalog/Fills/Crates/emergency.yml | 4 + .../Catalog/Fills/Items/gas_tanks.yml | 53 +++++- .../Inventories/tankdispenser.yml | 1 + .../Chemistry/metabolizer_types.yml | 4 + Resources/Prototypes/Damage/modifier_sets.yml | 10 ++ .../Prototypes/Datasets/Names/plasmaman.yml | 121 ++++++++++++++ .../Datasets/Names/plasmaman_last.yml | 102 ++++++++++++ .../Entities/Clothing/Hands/envirogloves.yml | 25 +++ .../Clothing/Head/base_clothinghead.yml | 66 ++++++++ .../Entities/Clothing/Head/envirohelms.yml | 14 ++ .../Entities/Clothing/Neck/cloaks.yml | 3 +- .../OuterClothing/base_clothingouter.yml | 4 +- .../Uniforms/base_clothinguniforms.yml | 19 +++ .../Clothing/Uniforms/envirosuits.yml | 15 ++ .../Entities/Mobs/Player/plasmaman.yml | 5 + .../Entities/Mobs/Species/plasmaman.yml | 66 ++++++++ .../Entities/Mobs/Species/skeleton.yml | 7 + .../Entities/Objects/Tools/gas_tanks.yml | 41 ++++- .../Language/Species-Specific/plasmaman.yml | 58 +++++++ .../Prototypes/Loadouts/Generic/species.yml | 39 +++++ Resources/Prototypes/Reagents/gases.yml | 50 +++++- Resources/Prototypes/Species/plasmaman.yml | 157 ++++++++++++++++++ Resources/Prototypes/Traits/neutral.yml | 14 ++ .../Gloves/Envirogloves/plasma.rsi/icon.png | Bin 0 -> 347 bytes .../Gloves/Envirogloves/plasma.rsi/meta.json | 14 ++ .../Head/Envirohelms/plain.rsi/icon-flash.png | Bin 0 -> 426 bytes .../Head/Envirohelms/plain.rsi/icon.png | Bin 0 -> 438 bytes .../Head/Envirohelms/plain.rsi/meta.json | 25 +++ .../plain.rsi/off-equipped-HELMET.png | Bin 0 -> 815 bytes .../plain.rsi/on-equipped-HELMET.png | Bin 0 -> 867 bytes .../plain.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1690 bytes .../Uniforms/Envirosuits/plain.rsi/icon.png | Bin 0 -> 473 bytes .../Uniforms/Envirosuits/plain.rsi/meta.json | 18 ++ .../Species/Plasmaman/organs.rsi/brain.png | Bin 0 -> 1132 bytes .../Plasmaman/organs.rsi/heart-off.png | Bin 0 -> 274 bytes .../Species/Plasmaman/organs.rsi/heart-on.png | Bin 0 -> 1257 bytes .../Species/Plasmaman/organs.rsi/kidneys.png | Bin 0 -> 333 bytes .../Species/Plasmaman/organs.rsi/liver.png | Bin 0 -> 359 bytes .../Species/Plasmaman/organs.rsi/lungs.png | Bin 0 -> 372 bytes .../Species/Plasmaman/organs.rsi/meta.json | 62 +++++++ .../Species/Plasmaman/organs.rsi/stomach.png | Bin 0 -> 424 bytes .../Species/Plasmaman/organs.rsi/tongue.png | Bin 0 -> 344 bytes .../Mobs/Species/Plasmaman/parts.rsi/full.png | Bin 0 -> 1777 bytes .../Species/Plasmaman/parts.rsi/head_f.png | Bin 0 -> 649 bytes .../Species/Plasmaman/parts.rsi/head_m.png | Bin 0 -> 649 bytes .../Species/Plasmaman/parts.rsi/l_arm.png | Bin 0 -> 512 bytes .../Species/Plasmaman/parts.rsi/l_foot.png | Bin 0 -> 309 bytes .../Species/Plasmaman/parts.rsi/l_hand.png | Bin 0 -> 381 bytes .../Species/Plasmaman/parts.rsi/l_leg.png | Bin 0 -> 298 bytes .../Species/Plasmaman/parts.rsi/meta.json | 62 +++++++ .../Species/Plasmaman/parts.rsi/r_arm.png | Bin 0 -> 533 bytes .../Species/Plasmaman/parts.rsi/r_foot.png | Bin 0 -> 313 bytes .../Species/Plasmaman/parts.rsi/r_hand.png | Bin 0 -> 374 bytes .../Species/Plasmaman/parts.rsi/r_leg.png | Bin 0 -> 280 bytes .../Species/Plasmaman/parts.rsi/torso_f.png | Bin 0 -> 889 bytes .../Species/Plasmaman/parts.rsi/torso_m.png | Bin 0 -> 889 bytes 69 files changed, 1495 insertions(+), 10 deletions(-) create mode 100644 Content.Server/Atmos/Components/IgniteFromGasComponent.cs create mode 100644 Content.Server/Atmos/Components/IgniteFromGasImmunityComponent.cs create mode 100644 Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs create mode 100644 Resources/Prototypes/Body/Organs/plasmaman.yml create mode 100644 Resources/Prototypes/Body/Parts/plasmaman.yml create mode 100644 Resources/Prototypes/Body/Prototypes/plasmaman.yml create mode 100644 Resources/Prototypes/Datasets/Names/plasmaman.yml create mode 100644 Resources/Prototypes/Datasets/Names/plasmaman_last.yml create mode 100644 Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml create mode 100644 Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml create mode 100644 Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml create mode 100644 Resources/Prototypes/Entities/Mobs/Player/plasmaman.yml create mode 100644 Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml create mode 100644 Resources/Prototypes/Language/Species-Specific/plasmaman.yml create mode 100644 Resources/Prototypes/Species/plasmaman.yml create mode 100644 Resources/Textures/Clothing/Hands/Gloves/Envirogloves/plasma.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Hands/Gloves/Envirogloves/plasma.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/plain.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/plain.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/plain.rsi/meta.json create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/brain.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/heart-off.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/heart-on.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/kidneys.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/liver.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/lungs.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/meta.json create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/stomach.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/tongue.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/full.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/head_f.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/head_m.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/l_arm.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/l_foot.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/l_hand.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/l_leg.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/meta.json create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/r_arm.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/r_foot.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/r_hand.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/r_leg.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/torso_f.png create mode 100644 Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/torso_m.png diff --git a/Content.Server/Atmos/Components/IgniteFromGasComponent.cs b/Content.Server/Atmos/Components/IgniteFromGasComponent.cs new file mode 100644 index 00000000000..f6a0b68e658 --- /dev/null +++ b/Content.Server/Atmos/Components/IgniteFromGasComponent.cs @@ -0,0 +1,44 @@ +using Content.Shared.Atmos; + +namespace Content.Server.Atmos.Components; + +/// +/// Component that can be used to add (or remove) fire stacks when exposed to a type of gas, unless wearing ignition immunity. +/// +[RegisterComponent] +public sealed partial class IgniteFromGasComponent : Component +{ + /// + /// These are the inventory slot groups that are checked for ignition immunity. + /// If no slot in a group has IgniteFromGasImmunityComponent, no immunity is applied. + /// + [DataField] + public List> ImmunitySlotGroups = new() { + new () { "head" }, + new () { "jumpsuit", "outerClothing" } + }; + + /// + /// What type of gas triggers ignition. + /// + [DataField(required: true)] + public Gas Gas; + + /// + /// How many firestacks to apply every second without immunity. + /// + [DataField(required: true)] + public float FireStacks; + + /// + /// How many moles of the gas is needed to trigger ignition. + /// + [DataField(required: true)] + public float MolesToIgnite; + + /// + /// Whether the entity is immune to ignition. + /// + [ViewVariables(VVAccess.ReadWrite)] + public bool HasImmunity = false; +} diff --git a/Content.Server/Atmos/Components/IgniteFromGasImmunityComponent.cs b/Content.Server/Atmos/Components/IgniteFromGasImmunityComponent.cs new file mode 100644 index 00000000000..1da498d9257 --- /dev/null +++ b/Content.Server/Atmos/Components/IgniteFromGasImmunityComponent.cs @@ -0,0 +1,10 @@ + +namespace Content.Server.Atmos.Components; + +/// +/// Component that is used to prevent ignition when exposed to a certain gas. +/// +[RegisterComponent] +public sealed partial class IgniteFromGasImmunityComponent : Component +{ +} diff --git a/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs new file mode 100644 index 00000000000..48ee55cc5b2 --- /dev/null +++ b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs @@ -0,0 +1,109 @@ +using System.Diagnostics.CodeAnalysis; +using System.Linq; +using Content.Server.Administration.Logs; +using Content.Server.Atmos.Components; +using Content.Shared.Alert; +using Content.Shared.Atmos; +using Content.Shared.Damage; +using Content.Shared.Database; +using Content.Shared.FixedPoint; +using Content.Shared.Inventory; +using Content.Shared.Inventory.Events; +using Content.Shared.Mood; +using Robust.Shared.Containers; + +namespace Content.Server.Atmos.EntitySystems +{ + public sealed class IgniteFromGasSystem : EntitySystem + { + [Dependency] private readonly AtmosphereSystem _atmos = default!; + [Dependency] private readonly FlammableSystem _flammable = default!; + [Dependency] private readonly AlertsSystem _alerts = default!; + [Dependency] private readonly IAdminLogManager _adminLogger= default!; + [Dependency] private readonly InventorySystem _inventory = default!; + + private const float UpdateTimer = 1f; + private float _timer; + + public override void Initialize() + { + SubscribeLocalEvent(OnIgniteFromGasImmunityEquipped); + SubscribeLocalEvent(OnIgniteFromGasImmunityUnequipped); + } + + private void OnIgniteFromGasImmunityEquipped(EntityUid uid, IgniteFromGasImmunityComponent igniteImmunity, GotEquippedEvent args) + { + if (TryComp(args.Equipee, out var ignite) && ignite.ImmunitySlotGroups.Any(group => group.Contains(args.Slot))) + { + UpdateImmunity(args.Equipee, ignite); + } + } + + private void OnIgniteFromGasImmunityUnequipped(EntityUid uid, IgniteFromGasImmunityComponent igniteImmunity, GotUnequippedEvent args) + { + if (TryComp(args.Equipee, out var ignite) && ignite.ImmunitySlotGroups.Any(group => group.Contains(args.Slot))) + { + UpdateImmunity(args.Equipee, ignite); + } + } + + private void UpdateImmunity(EntityUid uid, IgniteFromGasComponent ignite) + { + if (ignite.ImmunitySlotGroups.Count == 0 || + !TryComp(uid, out InventoryComponent? inv) || + !TryComp(uid, out ContainerManagerComponent? contMan)) + return; + + ignite.HasImmunity = true; + + foreach (var group in ignite.ImmunitySlotGroups) + { + var groupHasImmunity = false; + + foreach (var slot in group) + { + if (_inventory.TryGetSlotEntity(uid, slot, out var equipment, inv, contMan) && + HasComp(equipment)) + { + groupHasImmunity = true; + break; + } + } + + if (!groupHasImmunity) + { + ignite.HasImmunity = false; + return; + } + } + } + + public override void Update(float frameTime) + { + _timer += frameTime; + + if (_timer < UpdateTimer) + return; + + _timer -= UpdateTimer; + + var enumerator = EntityQueryEnumerator(); + while (enumerator.MoveNext(out var uid, out var ignite, out var flammable)) + { + if (ignite.HasImmunity) + continue; + + var gas = _atmos.GetContainingMixture(uid, excite: true); + + if (gas is null) + continue; + + if (gas[(int) ignite.Gas] > ignite.MolesToIgnite) + { + _flammable.AdjustFireStacks(uid, ignite.FireStacks, flammable); + _flammable.Ignite(uid, uid, flammable); + } + } + } + } +} diff --git a/Resources/Locale/en-US/alerts/alerts.ftl b/Resources/Locale/en-US/alerts/alerts.ftl index ad61ae89674..a7744b5595a 100644 --- a/Resources/Locale/en-US/alerts/alerts.ftl +++ b/Resources/Locale/en-US/alerts/alerts.ftl @@ -4,6 +4,12 @@ alerts-low-oxygen-desc = There is [color=red]not enough oxygen[/color] in the ai alerts-low-nitrogen-name = [color=red]Low Nitrogen[/color] alerts-low-nitrogen-desc = There is [color=red]not enough nitrogen[/color] in the air you are breathing. Put on [color=green]internals[/color]. +alerts-low-plasma-name = [color=red]Low Plasma[/color] +alerts-low-plasma-desc = There is [color=red]not enough plasma[/color] in the air you are breathing. Put on [color=green]internals[/color]. + +alerts-high-oxygen-name = [color=red]High Oxygen[/color] +alerts-high-oxygen-desc = There is [color=red]too much oxygen[/color] in the air you are breathing. Put on [color=green]internals[/color]. + alerts-high-toxin-name = [color=red]High Toxin Level[/color] alerts-high-toxin-desc = There are [color=red]too many toxins[/color] in the air you are breathing. Put on [color=green]internals[/color] or get away. diff --git a/Resources/Locale/en-US/chat/managers/chat-language.ftl b/Resources/Locale/en-US/chat/managers/chat-language.ftl index f9751606745..15b7f431e0d 100644 --- a/Resources/Locale/en-US/chat/managers/chat-language.ftl +++ b/Resources/Locale/en-US/chat/managers/chat-language.ftl @@ -12,4 +12,5 @@ chat-language-Elyran-name = Elyran chat-language-Canilunzt-name = Canilunzt chat-language-Moffic-name = Moffic chat-language-RobotTalk-name = Binary +chat-language-Calcic-name = Calcic chat-language-ValyrianStandard-name = Valyrian diff --git a/Resources/Locale/en-US/language/languages.ftl b/Resources/Locale/en-US/language/languages.ftl index 935eef896a0..3c26c7efb16 100644 --- a/Resources/Locale/en-US/language/languages.ftl +++ b/Resources/Locale/en-US/language/languages.ftl @@ -58,6 +58,9 @@ language-Moffic-description = The language of the mothpeople borders on complete language-RobotTalk-name = RobotTalk language-RobotTalk-description = A language consisting of harsh binary chirps, whistles, hisses, and whines. Organic tongues cannot speak it without aid from special translators. +language-Calcic-name = Calcic +language-Calcic-description = The disjointed and staccato language of plasmamen. Also understood by skeletons. + language-Sign-name = Tau-Ceti Basic Sign Language language-Sign-description = TCB-SL for short, this sign language is prevalent among mute and deaf people. diff --git a/Resources/Locale/en-US/metabolism/metabolizer-types.ftl b/Resources/Locale/en-US/metabolism/metabolizer-types.ftl index d0f57e2bc0b..97d5c068c41 100644 --- a/Resources/Locale/en-US/metabolism/metabolizer-types.ftl +++ b/Resources/Locale/en-US/metabolism/metabolizer-types.ftl @@ -12,3 +12,4 @@ metabolizer-type-arachnid = Arachnid metabolizer-type-vampiric = Vampiric metabolizer-type-liquorlifeline = Liquor Lifeline metabolizer-type-shadowkin = Shadowkin +metabolizer-type-plasmaman = Plasmaman diff --git a/Resources/Locale/en-US/species/species.ftl b/Resources/Locale/en-US/species/species.ftl index 9278267cc44..869b42ae3b6 100644 --- a/Resources/Locale/en-US/species/species.ftl +++ b/Resources/Locale/en-US/species/species.ftl @@ -1,4 +1,4 @@ -## Species Names +## Species Names species-name-human = Human species-name-dwarf = Dwarf @@ -11,4 +11,5 @@ species-name-moth = Moth Person species-name-skeleton = Skeleton species-name-vox = Vox species-name-ipc = IPC -species-name-shadowkin = Shadowkin \ No newline at end of file +species-name-shadowkin = Shadowkin +species-name-plasmaman = Plasmaman diff --git a/Resources/Locale/en-US/traits/traits.ftl b/Resources/Locale/en-US/traits/traits.ftl index 921546d466c..54c3f7b4e88 100644 --- a/Resources/Locale/en-US/traits/traits.ftl +++ b/Resources/Locale/en-US/traits/traits.ftl @@ -71,6 +71,9 @@ trait-description-NormalVisionHarpy = Your eyes have been modified by means of a trait-name-Southern = Southern Drawl trait-description-Southern = You have a different way of speakin'. +trait-name-SkeletonAccent = Skeleton Accent +trait-description-SkeletonAccent = You have a humerus skeleton accent that will rattle others to the bone! + trait-name-NormalVision = Trichromat Modification trait-description-NormalVision = Your eyes have been modified by means of advanced medicine to see in the standard colors of Red, Green, and Blue. @@ -321,7 +324,7 @@ trait-description-AddictionNicotine = trait-name-AnimalFriend = Animal Friend trait-description-AnimalFriend = You have a way with animals. You will never be attacked by animals, unless you attack them first. - + trait-name-Liar = Pathological liar trait-description-Liar = You can hardly bring yourself to tell the truth. Sometimes you lie anyway. diff --git a/Resources/Prototypes/Alerts/alerts.yml b/Resources/Prototypes/Alerts/alerts.yml index dffebf4b1dd..a3f2076e885 100644 --- a/Resources/Prototypes/Alerts/alerts.yml +++ b/Resources/Prototypes/Alerts/alerts.yml @@ -55,6 +55,24 @@ name: alerts-low-nitrogen-name description: alerts-low-nitrogen-desc +- type: alert + id: LowPlasma + category: Breathing + icons: + - sprite: /Textures/Interface/Alerts/breathing.rsi + state: not_enough_tox + name: alerts-low-plasma-name + description: alerts-low-plasma-desc + +- type: alert + id: HighOxygen + category: Breathing + icons: + - sprite: /Textures/Interface/Alerts/breathing.rsi + state: too_much_oxy + name: alerts-high-oxygen-name + description: alerts-high-oxygen-desc + - type: alert id: Toxins category: Toxins diff --git a/Resources/Prototypes/Body/Organs/plasmaman.yml b/Resources/Prototypes/Body/Organs/plasmaman.yml new file mode 100644 index 00000000000..e4ba8e70fb7 --- /dev/null +++ b/Resources/Prototypes/Body/Organs/plasmaman.yml @@ -0,0 +1,75 @@ +- type: entity + id: OrganPlasmamanLungs + parent: OrganHumanLungs + name: plasmaman lungs + description: "The lungs of a plasmaman, who breathe plasma. Any form of gaseous oxygen is lethally toxic if breathed in." + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/organs.rsi + state: lungs + layers: [] + - type: Metabolizer + metabolizerTypes: [ Plasmaman ] + - type: Lung + alert: LowPlasma + - type: Item + size: Small + heldPrefix: lungs + +- type: entity + id: OrganPlasmamanStomach + parent: OrganHumanStomach + name: plasmaman stomach + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/organs.rsi + - type: Metabolizer + metabolizerTypes: [ Plasmaman ] + +- type: entity + id: OrganPlasmamanLiver + parent: OrganHumanLiver + name: plasmaman liver + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/organs.rsi + - type: Metabolizer + metabolizerTypes: [ Plasmaman ] + +- type: entity + id: OrganPlasmamanTongue + parent: OrganHumanTongue + name: plasmaman tongue + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/organs.rsi + +- type: entity + id: OrganPlasmamanKidneys + parent: OrganHumanKidneys + name: plasmaman kidneys + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/organs.rsi + state: kidneys + layers: [] + - type: Metabolizer + metabolizerTypes: [ Plasmaman ] + +- type: entity + id: OrganPlasmamanHeart + parent: OrganHumanHeart + name: plasmaman heart + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/organs.rsi + - type: Metabolizer + metabolizerTypes: [ Plasmaman ] + +- type: entity + id: OrganPlasmamanBrain + parent: OrganHumanBrain + name: plasmaman brain + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/organs.rsi diff --git a/Resources/Prototypes/Body/Parts/plasmaman.yml b/Resources/Prototypes/Body/Parts/plasmaman.yml new file mode 100644 index 00000000000..7f8e1b804be --- /dev/null +++ b/Resources/Prototypes/Body/Parts/plasmaman.yml @@ -0,0 +1,119 @@ +# TODO: Add descriptions (many) +# TODO BODY: Part damage +- type: entity + id: PartPlasmaman + parent: [BaseItem, BasePart] + name: "plasmaman body part" + abstract: true + components: + - type: Extractable + juiceSolution: + reagents: + - ReagentId: Fat + Quantity: 3 + - ReagentId: Blood + Quantity: 10 + +- type: entity + id: TorsoPlasmaman + name: "plasmaman torso" + parent: [PartPlasmaman, BaseTorso] + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/parts.rsi + state: "torso_m" + - type: Extractable + juiceSolution: + reagents: + - ReagentId: Fat + Quantity: 10 + - ReagentId: Blood + Quantity: 20 + +- type: entity + id: HeadPlasmaman + name: "plasmaman head" + parent: [PartPlasmaman, BaseHead] + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/parts.rsi + state: "head_m" + - type: Extractable + juiceSolution: + reagents: + - ReagentId: Fat + Quantity: 5 + - ReagentId: Blood + Quantity: 10 + +- type: entity + id: LeftArmPlasmaman + name: "left plasmaman arm" + parent: [PartPlasmaman, BaseLeftArm] + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/parts.rsi + state: "l_arm" + +- type: entity + id: RightArmPlasmaman + name: "right plasmaman arm" + parent: [PartPlasmaman, BaseRightArm] + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/parts.rsi + state: "r_arm" + +- type: entity + id: LeftHandPlasmaman + name: "left plasmaman hand" + parent: [PartPlasmaman, BaseLeftHand] + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/parts.rsi + state: "l_hand" + +- type: entity + id: RightHandPlasmaman + name: "right plasmaman hand" + parent: [PartPlasmaman, BaseRightHand] + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/parts.rsi + state: "r_hand" + +- type: entity + id: LeftLegPlasmaman + name: "left plasmaman leg" + parent: [PartPlasmaman, BaseLeftLeg] + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/parts.rsi + state: "l_leg" + +- type: entity + id: RightLegPlasmaman + name: "right plasmaman leg" + parent: [PartPlasmaman, BaseRightLeg] + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/parts.rsi + state: "r_leg" + +- type: entity + id: LeftFootPlasmaman + name: "left plasmaman foot" + parent: [PartPlasmaman, BaseLeftFoot] + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/parts.rsi + state: "l_foot" + +- type: entity + id: RightFootPlasmaman + name: "right plasmaman foot" + parent: [PartPlasmaman, BaseRightFoot] + components: + - type: Sprite + sprite: Mobs/Species/Plasmaman/parts.rsi + state: "r_foot" diff --git a/Resources/Prototypes/Body/Prototypes/plasmaman.yml b/Resources/Prototypes/Body/Prototypes/plasmaman.yml new file mode 100644 index 00000000000..cbcdddaa4e3 --- /dev/null +++ b/Resources/Prototypes/Body/Prototypes/plasmaman.yml @@ -0,0 +1,50 @@ +- type: body + id: Plasmaman + name: "plasmaman" + root: torso + slots: + head: + part: HeadPlasmaman + connections: + - torso + organs: + brain: OrganPlasmamanBrain + eyes: OrganHumanEyes + torso: + part: TorsoPlasmaman + connections: + - right arm + - left arm + - right leg + - left leg + - head + organs: + heart: OrganPlasmamanHeart + lungs: OrganPlasmamanLungs + stomach: OrganPlasmamanStomach + liver: OrganPlasmamanLiver + kidneys: OrganPlasmamanKidneys + right arm: + part: RightArmPlasmaman + connections: + - right hand + left arm: + part: LeftArmPlasmaman + connections: + - left hand + right hand: + part: RightHandPlasmaman + left hand: + part: LeftHandPlasmaman + right leg: + part: RightLegPlasmaman + connections: + - right foot + left leg: + part: LeftLegPlasmaman + connections: + - left foot + right foot: + part: RightFootPlasmaman + left foot: + part: LeftFootPlasmaman diff --git a/Resources/Prototypes/Catalog/Fills/Crates/emergency.yml b/Resources/Prototypes/Catalog/Fills/Crates/emergency.yml index 9532fbf74e6..c519a19c841 100644 --- a/Resources/Prototypes/Catalog/Fills/Crates/emergency.yml +++ b/Resources/Prototypes/Catalog/Fills/Crates/emergency.yml @@ -50,6 +50,8 @@ amount: 3 - id: NitrogenTankFilled amount: 3 + - id: PlasmaTankFilled + amount: 3 - id: ClothingOuterSuitEmergency amount: 3 @@ -69,6 +71,8 @@ amount: 6 - id: NitrogenTankFilled amount: 6 + - id: PlasmaTankFilled + amount: 6 - id: ClothingOuterSuitEmergency amount: 6 diff --git a/Resources/Prototypes/Catalog/Fills/Items/gas_tanks.yml b/Resources/Prototypes/Catalog/Fills/Items/gas_tanks.yml index 2cf1354c143..8827f534fd6 100644 --- a/Resources/Prototypes/Catalog/Fills/Items/gas_tanks.yml +++ b/Resources/Prototypes/Catalog/Fills/Items/gas_tanks.yml @@ -63,6 +63,22 @@ - 0.270782035 # nitrogen temperature: 293.15 +- type: entity + id: EmergencyPlasmaTankFilled + parent: EmergencyPlasmaTank + suffix: Filled + components: + - type: GasTank + outputPressure: 21.3 + air: + # 4 minutes + volume: 0.66 + moles: + - 0 # oxygen + - 0 # nitrogen + - 0 # CO2 + - 0.270782035 # nitrogen + temperature: 293.15 - type: entity id: ExtendedEmergencyOxygenTankFilled @@ -93,6 +109,22 @@ - 0.615413715 # nitrogen temperature: 293.15 +- type: entity + id: ExtendedEmergencyPlasmaTankFilled + parent: ExtendedEmergencyPlasmaTank + suffix: Filled + components: + - type: GasTank + outputPressure: 21.3 + air: + # 9 minutes + volume: 1.5 + moles: + - 0 # oxygen + - 0 # nitrogen + - 0 # CO2 + - 0.615413715 # plasma + temperature: 293.15 - type: entity id: DoubleEmergencyOxygenTankFilled @@ -123,6 +155,23 @@ - 1.025689525 # nitrogen temperature: 293.15 +- type: entity + id: DoubleEmergencyPlasmaTankFilled + parent: DoubleEmergencyPlasmaTank + suffix: Filled + components: + - type: GasTank + outputPressure: 21.3 + air: + # 15 minutes + volume: 1.5 + moles: + - 0 # oxygen + - 0 # nitrogen + - 0 # CO2 + - 1.025689525 # plasma + temperature: 293.15 + - type: entity id: EmergencyFunnyOxygenTankFilled parent: EmergencyFunnyOxygenTank @@ -142,7 +191,7 @@ - 0 # water vapor - 0 # ammonia - 0.014251686 # 5% N2O - # 0.285033721 total + # 0.285033721 total temperature: 293.15 - type: entity @@ -211,7 +260,7 @@ suffix: Filled components: - type: GasTank - outputPressure: 101.3 + outputPressure: 21.3 air: # 6 minutes of agony volume: 5 diff --git a/Resources/Prototypes/Catalog/VendingMachines/Inventories/tankdispenser.yml b/Resources/Prototypes/Catalog/VendingMachines/Inventories/tankdispenser.yml index fce18024a7e..7dbcce131b0 100644 --- a/Resources/Prototypes/Catalog/VendingMachines/Inventories/tankdispenser.yml +++ b/Resources/Prototypes/Catalog/VendingMachines/Inventories/tankdispenser.yml @@ -3,6 +3,7 @@ startingInventory: OxygenTankFilled: 10 NitrogenTankFilled: 10 + PlasmaTankFilled: 10 - type: vendingMachineInventory id: TankDispenserEngineeringInventory diff --git a/Resources/Prototypes/Chemistry/metabolizer_types.yml b/Resources/Prototypes/Chemistry/metabolizer_types.yml index 80f69893c6e..38126135849 100644 --- a/Resources/Prototypes/Chemistry/metabolizer_types.yml +++ b/Resources/Prototypes/Chemistry/metabolizer_types.yml @@ -56,3 +56,7 @@ - type: metabolizerType id: Shadowkin name: metabolizer-type-shadowkin + +- type: metabolizerType + id: Plasmaman + name: metabolizer-type-plasmaman diff --git a/Resources/Prototypes/Damage/modifier_sets.yml b/Resources/Prototypes/Damage/modifier_sets.yml index 8366453e587..4bc575285ca 100644 --- a/Resources/Prototypes/Damage/modifier_sets.yml +++ b/Resources/Prototypes/Damage/modifier_sets.yml @@ -372,6 +372,16 @@ Shock: 1.25 Radiation: 1.3 +- type: damageModifierSet + id: Plasmaman + coefficients: + Blunt: 1.5 + Slash: 0.8 + Piercing: 0.7 + Cold: 0 + Heat: 1.5 + Radiation: 0 + - type: damageModifierSet id: DermalArmor coefficients: diff --git a/Resources/Prototypes/Datasets/Names/plasmaman.yml b/Resources/Prototypes/Datasets/Names/plasmaman.yml new file mode 100644 index 00000000000..3ced9a3f0d2 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/plasmaman.yml @@ -0,0 +1,121 @@ +- type: dataset + id: names_plasmaman + values: + - Actinium + - Aluminium + - Americium + - Antimony + - Argon + - Arsenic + - Astatine + - Barium + - Berkelium + - Beryllium + - Bismuth + - Bohrium + - Boron + - Bromine + - Cadmium + - Caesium + - Calcium + - Californium + - Carbon + - Cerium + - Chlorine + - Chromium + - Cobalt + - Copernicium + - Copper + - Curium + - Darmstadtium + - Dubnium + - Dysprosium + - Einsteinium + - Erbium + - Europium + - Fermium + - Flerovium + - Fluorine + - Francium + - Gadolinium + - Gallium + - Germanium + - Gold + - Hafnium + - Hassium + - Helium + - Holmium + - Hydrogen + - Indium + - Iodine + - Iridium + - Iron + - Krypton + - Lanthanum + - Lawrencium + - Lead + - Lithium + - Livermorium + - Lutetium + - Magnesium + - Manganese + - Meitnerium + - Mendelevium + - Mercury + - Molybdenum + - Moscovium + - Neodymium + - Neon + - Neptunium + - Nickel + - Nihonium + - Niobium + - Nitrogen + - Nobelium + - Oganesson + - Osmium + - Oxygen + - Palladium + - Phosphorus + - Platinum + - Plutonium + - Polonium + - Potassium + - Praseodymium + - Promethium + - Protactinium + - Radium + - Radon + - Rhenium + - Rhodium + - Roentgenium + - Rubidium + - Ruthenium + - Rutherfordium + - Samarium + - Scandium + - Seaborgium + - Selenium + - Silicon + - Silver + - Sodium + - Strontium + - Sulfur + - Tantalum + - Technetium + - Tellurium + - Tennessine + - Terbium + - Thallium + - Thorium + - Thulium + - Tin + - Titanium + - Tungsten + - Uranium + - Vanadium + - Xenon + - Ytterbium + - Yttrium + - Zinc + - Zirconium diff --git a/Resources/Prototypes/Datasets/Names/plasmaman_last.yml b/Resources/Prototypes/Datasets/Names/plasmaman_last.yml new file mode 100644 index 00000000000..f62a0b921cd --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/plasmaman_last.yml @@ -0,0 +1,102 @@ +- type: dataset + id: names_plasmaman_last + values: + - I + - II + - III + - IV=IIII + - V + - VI + - VII + - VIII=IIX + - IX=VIIII + - X + - XI + - XII + - XIII + - XIV + - XV + - XVI + - XVII + - XVIII + - XIX + - XX + - XXI + - XXII + - XXIII + - XXIV + - XXV + - XXVI + - XXVII + - XXVIII + - XXIX + - XXX + - XXXI + - XXXII + - XXXIII + - XXXIV + - XXXV + - XXXVI + - XXXVII + - XXXVIII + - XXXIX + - XL + - XLI + - XLII + - XLIII + - XLIV + - XLV + - XLVI + - XLVII + - XLVIII + - XLIX + - L + - LI + - LII + - LIII + - LIV + - LV + - LVI + - LVII + - LVIII + - LIX + - LX + - LXI + - LXII + - LXIII + - LXIV + - LXV + - LXVI + - LXVII + - LXVIII + - LXIX + - LXX + - LXXI + - LXXII + - LXXIII + - LXXIV + - LXXV + - LXXVI + - LXXVII + - LXXVIII + - LXXIX + - LXXX + - LXXXI + - LXXXII + - LXXXIII + - LXXXIV + - LXXXV + - LXXXVI + - LXXXVII + - LXXXVIII + - LXXXIX + - XC + - XCI + - XCII + - XCIII + - XCIV + - XCV + - XCVI + - XCVII + - XCVIII + - XCIX diff --git a/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml b/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml new file mode 100644 index 00000000000..36334c52c39 --- /dev/null +++ b/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml @@ -0,0 +1,25 @@ +- type: entity + parent: ClothingHandsGlovesSyntheticBase + id: ClothingHandsEnvirogloves + name: plasma envirogloves + description: Covers up those scandalous boney hands. + components: + - type: Sprite # TODO fix error sprite on worn sprite related to this + sprite: Clothing/Hands/Gloves/Envirogloves/plasma.rsi + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#913b00" + right: + - state: inhand-right + color: "#913b00" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#913b00" + - type: Fiber + fiberColor: fibers-orange diff --git a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml index 08a3eb568fe..c1b98a4017a 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml @@ -126,6 +126,7 @@ lowPressureMultiplier: 1000 - type: TemperatureProtection coefficient: 0.2 + - type: IgniteFromGasImmunity - type: IngestionBlocker - type: Clothing #Copies ClothingHeadHardsuitBase behavior @@ -165,6 +166,7 @@ coefficient: 0.1 - type: FireProtection reduction: 0.2 + - type: IgniteFromGasImmunity - type: Armor modifiers: coefficients: @@ -184,6 +186,70 @@ - Hair - Snout +- type: entity + abstract: true + id: ClothingHeadEnvirohelmBase + name: base envirohelm + categories: [ HideSpawnMenu ] + components: + - type: Sprite + state: icon + - type: Clickable + - type: InteractionOutline + - type: Clothing + equipSound: /Audio/Mecha/mechmove03.ogg + unequipSound: /Audio/Mecha/mechmove03.ogg + quickEquip: false + slots: [ HEAD ] + - type: BreathMask + - type: IgniteFromGasImmunity + - type: EyeProtection + - type: GroupExamine + - type: IngestionBlocker + - type: Tag + tags: + - WhitelistChameleon + - type: HideLayerClothing + slots: + - Hair + - Snout + - type: ToggleableLightVisuals + - type: PointLight + enabled: false + radius: 3 + energy: 2 + mask: /Textures/Effects/LightMasks/cone.png + autoRot: true + netsync: false + - type: Appearance + - type: HandheldLight + addPrefix: true + blinkingBehaviourId: blinking + radiatingBehaviourId: radiating + - type: LightBehaviour + behaviours: + - !type:FadeBehaviour + id: radiating + interpolate: Linear + maxDuration: 2.0 + startValue: 3.0 + endValue: 2.0 + isLooped: true + reverseWhenFinished: true + - !type:PulseBehaviour + id: blinking + interpolate: Nearest + maxDuration: 1.0 + minValue: 0.1 + maxValue: 2.0 + isLooped: true + - type: Battery + maxCharge: 300 #lights drain 3/s but recharge of 2 makes this 1/s. Therefore 300 is 5 minutes of light. + startingCharge: 300 + - type: BatterySelfRecharger + autoRecharge: true + autoRechargeRate: 2 #recharge of 2 makes total drain 1w / s so max charge is 1:1 with time. Time to fully charge should be 2.5 minutes. Having recharge gives light an extended flicker period which gives you some warning to return to light area. + - type: entity abstract: true parent: ClothingHeadHardsuitBase diff --git a/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml b/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml new file mode 100644 index 00000000000..a646b945e1e --- /dev/null +++ b/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml @@ -0,0 +1,14 @@ +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelm + name: plasma envirosuit helmet + description: A special containment helmet that allows plasma-based lifeforms to exist safely in an oxygenated environment. + components: + - type: BreathMask + - type: Sprite + sprite: Clothing/Head/Envirohelms/plain.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/plain.rsi + - type: Tag + tags: + - WhitelistChameleon diff --git a/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml b/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml index f31b38c20c7..8eb32b135c2 100644 --- a/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml +++ b/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml @@ -8,7 +8,7 @@ sprite: Clothing/Neck/Cloaks/centcomcloakformal.rsi - type: StealTarget stealGroup: HeadCloak # leaving this here because I suppose it might be interesting? - + - type: entity parent: ClothingNeckBase id: ClothingNeckCloakCap @@ -271,4 +271,3 @@ components: - type: Sprite sprite: Clothing/Neck/Cloaks/pan.rsi - diff --git a/Resources/Prototypes/Entities/Clothing/OuterClothing/base_clothingouter.yml b/Resources/Prototypes/Entities/Clothing/OuterClothing/base_clothingouter.yml index c18e5d6ab60..b476e7383b1 100644 --- a/Resources/Prototypes/Entities/Clothing/OuterClothing/base_clothingouter.yml +++ b/Resources/Prototypes/Entities/Clothing/OuterClothing/base_clothingouter.yml @@ -115,6 +115,7 @@ coefficient: 0.01 - type: FireProtection reduction: 0.75 # almost perfectly sealed, atmos firesuit is better + - type: IgniteFromGasImmunity - type: ClothingSpeedModifier walkModifier: 0.4 sprintModifier: 0.6 @@ -163,6 +164,7 @@ lowPressureMultiplier: 1000 - type: TemperatureProtection coefficient: 0.01 # Not complete protection from fire + - type: IgniteFromGasImmunity - type: ClothingSpeedModifier walkModifier: 0.8 sprintModifier: 0.8 @@ -199,4 +201,4 @@ id: ClothingOuterBaseMedium components: - type: Item - size: Huge \ No newline at end of file + size: Huge diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml index 0a8e440e5b3..5b5cf81b9f6 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml @@ -152,3 +152,22 @@ - state: icon_flipped map: ["foldedLayer"] visible: true + +- type: entity + abstract: true + parent: ClothingUniformBase + id: ClothingUniformEnvirosuitBase + components: + - type: IgniteFromGasImmunity + - type: Item + size: Huge + - type: Clothing + equipDelay: 1 + unequipDelay: 0.75 + - type: ToggleableClothing + requiredSlot: + - innerclothing + slot: head + - type: ContainerContainer + containers: + toggleable-clothing: !type:ContainerSlot {} diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml new file mode 100644 index 00000000000..ef2bd77ff17 --- /dev/null +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml @@ -0,0 +1,15 @@ +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuit + name: plasma envirosuit + description: A special containment suit that allows plasma-based lifeforms to exist safely in an oxygenated environment. Despite being airtight, it's not spaceworthy. + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/plain.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/plain.rsi + - type: Tag + tags: + - WhitelistChameleon + - type: ToggleableClothing + clothingPrototype: ClothingHeadEnvirohelm diff --git a/Resources/Prototypes/Entities/Mobs/Player/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Player/plasmaman.yml new file mode 100644 index 00000000000..7fa3bf2f869 --- /dev/null +++ b/Resources/Prototypes/Entities/Mobs/Player/plasmaman.yml @@ -0,0 +1,5 @@ +- type: entity + save: false + name: Urist McPlasma + parent: BaseMobPlasmaman + id: MobPlasmaman diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml new file mode 100644 index 00000000000..5d58a0af408 --- /dev/null +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -0,0 +1,66 @@ +- type: entity + parent: BaseMobSpeciesOrganic + id: BaseMobPlasmaman + name: Urist McPlasma + abstract: true + components: + - type: Icon + sprite: Mobs/Species/Skeleton/parts.rsi + state: full + - type: Carriable + - type: Body + prototype: Plasmaman + requiredLegs: 2 + # - type: Bloodstream # Need to figure out having no blood + # bloodMaxVolume: 0 + # bloodlossThreshold: 0 + # maxBleedAmount: 0 + # bloodRefreshAmount: 0 + # bloodRegenerationHunger: 0 + - type: Damageable + damageModifierSet: Plasmaman + - type: TemperatureProtection + coefficient: 0.1 # Since plasmaman are immune to cold this just prevents the Too Cold alert from showing up + - type: DamageVisuals + damageOverlayGroups: + Brute: + sprite: Mobs/Effects/brute_damage.rsi + color: "#555555AA" + Burn: + sprite: Mobs/Effects/burn_damage.rsi + - type: Speech + speechVerb: Skeleton + - type: Vocal + sounds: + Male: Skeleton + Female: Skeleton + Unsexed: Skeleton + - type: IgniteFromGas + gas: Oxygen + fireStacks: 0.24 # 0.24 * 1.25 fire stack multiplier = 0.30 + molesToIgnite: 0.5 + - type: Flammable + fireStackIncreaseMultiplier: 1.25 + - type: Butcherable + butcheringType: Spike + spawned: + - id: SheetPlasma1 + amount: 5 + - type: HumanoidAppearance + species: Plasmaman + hideLayersOnEquip: + - Hair + - Snout + - type: LanguageKnowledge + speaks: + - TauCetiBasic + - Calcic + understands: + - TauCetiBasic + - Calcic + - type: FootPrints + +- type: entity + parent: BaseSpeciesDummy + id: MobPlasmamanDummy + categories: [ HideSpawnMenu ] diff --git a/Resources/Prototypes/Entities/Mobs/Species/skeleton.yml b/Resources/Prototypes/Entities/Mobs/Species/skeleton.yml index 96c61856936..2989ca96c6b 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/skeleton.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/skeleton.yml @@ -103,6 +103,13 @@ probability: 0.5 - type: FireVisuals alternateState: Standing + - type: LanguageKnowledge + speaks: + - TauCetiBasic + - Calcic + understands: + - TauCetiBasic + - Calcic - type: FootPrints - type: entity diff --git a/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml b/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml index 8590a32a6a6..72eddffb797 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml @@ -128,6 +128,19 @@ - type: Clothing sprite: Objects/Tanks/emergency_red.rsi +- type: entity + parent: EmergencyOxygenTank + id: EmergencyPlasmaTank + name: emergency plasma tank + description: An easily portable tank for emergencies. Contains very little plasma, rated for survival use only. + components: + - type: Sprite + sprite: Objects/Tanks/emergency_red.rsi + - type: Item + sprite: Objects/Tanks/emergency_red.rsi + - type: Clothing + sprite: Objects/Tanks/emergency_red.rsi + - type: entity parent: EmergencyOxygenTank id: ExtendedEmergencyOxygenTank @@ -158,6 +171,19 @@ - type: Clothing sprite: Objects/Tanks/emergency_extended_red.rsi +- type: entity + parent: ExtendedEmergencyOxygenTank + id: ExtendedEmergencyPlasmaTank + name: extended-capacity emergency plasma tank + description: An emergency tank with extended capacity. Technically rated for prolonged use. + components: + - type: Sprite + sprite: Objects/Tanks/emergency_extended_red.rsi + - type: Item + sprite: Objects/Tanks/emergency_extended_red.rsi + - type: Clothing + sprite: Objects/Tanks/emergency_extended_red.rsi + - type: entity parent: ExtendedEmergencyOxygenTank id: DoubleEmergencyOxygenTank @@ -193,6 +219,19 @@ - type: Clothing sprite: Objects/Tanks/emergency_double_red.rsi +- type: entity + parent: DoubleEmergencyOxygenTank + id: DoubleEmergencyPlasmaTank + name: double emergency plasma tank + description: A high-grade dual-tank emergency life support container. It holds a decent amount of plasma for its small size. + components: + - type: Sprite + sprite: Objects/Tanks/emergency_double_red.rsi + - type: Item + sprite: Objects/Tanks/emergency_double_red.rsi + - type: Clothing + sprite: Objects/Tanks/emergency_double_red.rsi + - type: entity parent: EmergencyOxygenTank id: EmergencyFunnyOxygenTank @@ -235,7 +274,7 @@ parent: GasTankBase id: PlasmaTank name: plasma tank - description: Contains dangerous plasma. Do not inhale. Extremely flammable. + description: Contains dangerous plasma. Do not inhale, unless you're a plasmaman. Extremely flammable. components: - type: Sprite sprite: Objects/Tanks/plasma.rsi diff --git a/Resources/Prototypes/Language/Species-Specific/plasmaman.yml b/Resources/Prototypes/Language/Species-Specific/plasmaman.yml new file mode 100644 index 00000000000..43ff89c8541 --- /dev/null +++ b/Resources/Prototypes/Language/Species-Specific/plasmaman.yml @@ -0,0 +1,58 @@ +- type: language + id: Calcic + isVisibleLanguage: true + speech: + color: "#bbbbbb" + obfuscation: + !type:SyllableObfuscation + minSyllables: 1 + maxSyllables: 4 + replacement: + - k + - ck + - ack + - ick + - cl + - tk + - sk + - isk + - tak + - kl + - hs + - ss + - ks + - lk + - dk + - gk + - ka + - ska + - la + - pk + - wk + - ak + - ik + - ip + - ski + - bk + - kb + - ta + - is + - it + - li + - di + - ds + - ya + - sck + - crk + - hs + - ws + - mk + - aaa + - skraa + - skee + - hss + - raa + - klk + - tk + - stk + - clk diff --git a/Resources/Prototypes/Loadouts/Generic/species.yml b/Resources/Prototypes/Loadouts/Generic/species.yml index e7455a00fbe..a9f71b9f513 100644 --- a/Resources/Prototypes/Loadouts/Generic/species.yml +++ b/Resources/Prototypes/Loadouts/Generic/species.yml @@ -39,3 +39,42 @@ group: LoadoutAirTank items: - DoubleEmergencyNitrogenTankFilled + +- type: loadout + id: LoadoutSpeciesEmergencyPlasmaTank + category: Species + cost: 0 + requirements: + - !type:CharacterSpeciesRequirement + species: + - Plasmaman + - !type:CharacterItemGroupRequirement + group: LoadoutAirTank + items: + - EmergencyPlasmaTankFilled + +- type: loadout + id: LoadoutSpeciesExtendedEmergencyPlasmaTank + category: Species + cost: 1 + requirements: + - !type:CharacterSpeciesRequirement + species: + - Plasmaman + - !type:CharacterItemGroupRequirement + group: LoadoutAirTank + items: + - ExtendedEmergencyPlasmaTankFilled + +- type: loadout + id: LoadoutSpeciesDoubleEmergencyPlasmaTank + category: Species + cost: 2 + requirements: + - !type:CharacterSpeciesRequirement + species: + - Plasmaman + - !type:CharacterItemGroupRequirement + group: LoadoutAirTank + items: + - DoubleEmergencyPlasmaTankFilled diff --git a/Resources/Prototypes/Reagents/gases.yml b/Resources/Prototypes/Reagents/gases.yml index 298bcb923eb..68e8c304246 100644 --- a/Resources/Prototypes/Reagents/gases.yml +++ b/Resources/Prototypes/Reagents/gases.yml @@ -32,6 +32,9 @@ - !type:OrganType type: Vox shouldHave: false + - !type:OrganType + type: Plasmaman + shouldHave: false ratios: CarbonDioxide: 1.0 Oxygen: -1.0 @@ -46,7 +49,7 @@ Poison: 7 - !type:AdjustAlert - alertType: Toxins + alertType: HighOxygen conditions: - !type:ReagentThreshold min: 0.5 @@ -54,6 +57,25 @@ type: Vox clear: true time: 5 + - !type:HealthChange + conditions: + - !type:OrganType + type: Plasmaman + scaleByQuantity: true + ignoreResistances: true + damage: + types: + Poison: + 7 + - !type:AdjustAlert + alertType: HighOxygen + conditions: + - !type:ReagentThreshold + min: 0.5 + - !type:OrganType + type: Plasmaman + clear: true + time: 5 - type: reagent id: Plasma @@ -72,15 +94,27 @@ Poison: effects: - !type:HealthChange + conditions: + - !type:OrganType + type: Plasmaman + shouldHave: false damage: types: Poison: 3 - !type:AdjustReagent + conditions: + - !type:OrganType + type: Plasmaman + shouldHave: false reagent: Inaprovaline amount: -2.0 Gas: effects: - !type:HealthChange + conditions: + - !type:OrganType + type: Plasmaman + shouldHave: false scaleByQuantity: true ignoreResistances: true damage: @@ -91,10 +125,24 @@ - !type:AdjustAlert alertType: Toxins conditions: + - !type:OrganType + type: Plasmaman + shouldHave: false - !type:ReagentThreshold min: 1.5 clear: True time: 5 + - !type:Oxygenate + conditions: + - !type:OrganType + type: Plasmaman + - !type:ModifyLungGas + conditions: + - !type:OrganType + type: Plasmaman + ratios: + CarbonDioxide: 1.0 # TODO: evaluate gas type for plasmaman exhale + Plasma: -1.0 reactiveEffects: Flammable: methods: [ Touch ] diff --git a/Resources/Prototypes/Species/plasmaman.yml b/Resources/Prototypes/Species/plasmaman.yml new file mode 100644 index 00000000000..3cdbaface91 --- /dev/null +++ b/Resources/Prototypes/Species/plasmaman.yml @@ -0,0 +1,157 @@ +- type: species + id: Plasmaman + name: species-name-plasmaman + roundStart: true + prototype: MobPlasmaman + sprites: MobPlasmamanSprites + markingLimits: MobPlasmamanMarkingLimits + dollPrototype: MobPlasmamanDummy + skinColoration: Hues + maleFirstNames: names_plasmaman + femaleFirstNames: names_plasmaman + lastNames: names_plasmaman_last + +- type: speciesBaseSprites + id: MobPlasmamanSprites + sprites: + Head: MobPlasmamanHead + Chest: MobPlasmamanTorso + Eyes: MobHumanoidEyes + LArm: MobPlasmamanLArm + RArm: MobPlasmamanRArm + LHand: MobPlasmamanLHand + RHand: MobPlasmamanRHand + LLeg: MobPlasmamanLLeg + RLeg: MobPlasmamanRLeg + LFoot: MobPlasmamanLFoot + RFoot: MobPlasmamanRFoot + +- type: markingPoints + id: MobPlasmamanMarkingLimits + points: + Hair: + points: 0 + required: false + FacialHair: + points: 0 + required: false + Snout: + points: 0 + required: false + Tail: + points: 0 + required: false + HeadTop: + points: 1 + required: false + Chest: + points: 1 + required: false + RightLeg: + points: 2 + required: false + RightFoot: + points: 2 + required: false + LeftLeg: + points: 2 + required: false + LeftFoot: + points: 2 + required: false + RightArm: + points: 2 + required: false + RightHand: + points: 2 + required: false + LeftArm: + points: 2 + required: false + LeftHand: + points: 2 + required: false + +- type: humanoidBaseSprite + id: MobPlasmamanHead + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: head_m + +- type: humanoidBaseSprite + id: MobPlasmamanHeadMale + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: head_m + +- type: humanoidBaseSprite + id: MobPlasmamanHeadFemale + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: head_f + +- type: humanoidBaseSprite + id: MobPlasmamanTorso + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: torso_m + +- type: humanoidBaseSprite + id: MobPlasmamanTorsoMale + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: torso_m + +- type: humanoidBaseSprite + id: MobPlasmamanTorsoFemale + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: torso_f + +- type: humanoidBaseSprite + id: MobPlasmamanLLeg + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: l_leg + +- type: humanoidBaseSprite + id: MobPlasmamanLArm + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: l_arm + +- type: humanoidBaseSprite + id: MobPlasmamanLHand + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: l_hand + +- type: humanoidBaseSprite + id: MobPlasmamanLFoot + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: l_foot + +- type: humanoidBaseSprite + id: MobPlasmamanRLeg + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: r_leg + +- type: humanoidBaseSprite + id: MobPlasmamanRArm + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: r_arm + +- type: humanoidBaseSprite + id: MobPlasmamanRHand + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: r_hand + +- type: humanoidBaseSprite + id: MobPlasmamanRFoot + baseSprite: + sprite: Mobs/Species/Plasmaman/parts.rsi + state: r_foot diff --git a/Resources/Prototypes/Traits/neutral.yml b/Resources/Prototypes/Traits/neutral.yml index 8ea7006c0c8..a13e8ee10e5 100644 --- a/Resources/Prototypes/Traits/neutral.yml +++ b/Resources/Prototypes/Traits/neutral.yml @@ -42,6 +42,20 @@ components: - type: SouthernAccent +- type: trait + id: SkeletonAccent + category: TraitsSpeechAccents + requirements: + - !type:CharacterItemGroupRequirement + group: TraitsAccents + - !type:CharacterSpeciesRequirement + species: + - Plasmaman + functions: + - !type:TraitAddComponent + components: + - type: SkeletonAccent + - type: trait id: NormalVision category: Visual diff --git a/Resources/Textures/Clothing/Hands/Gloves/Envirogloves/plasma.rsi/icon.png b/Resources/Textures/Clothing/Hands/Gloves/Envirogloves/plasma.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..829245180bd712cbce8e85f3c3c4df5a10082c7e GIT binary patch literal 347 zcmV-h0i^zkP)VQ!Pj5=V{0c1H~q9w!s$G=NZ#AI1}81j!Z zFw)!sAj@-f7#Nm4F<`I}hyjZo`LKi`N(RjQPpTtGasbG3KLrGT(*p=CBmkkIawIu| z*}qSSWmZ^9>pW7r<&@iIeIM02$nA z*uzkM9^nWOfLRWbn{tJLBtVh_K#B0t7lb1~mcjr?3?v6qLz57IrfP6b0QnM>7|%U{ z6huZcOTc0<%V|~)JOKJ|640VN9Z>1Vz!0hg5x@HjV)-NzgP&vv^k0Vi?7xu=svO92 zBzf960NEiW>=*u@`w8JQvtJ;~aXp7DK_pU_3_{T^MGyy*Y(F1t4E7LQc!?(>2U%jz@YLa+c}ey~0n zUw8DoRMhX0#)4pX0H!xRM}9Tr<20NRTR<1YM;@FP@n;?4Qz09g2H&!^h$ zGz83{oj(&RSOD0BuU`|0WFQ9(b8_jxXjiL~fGW{}@4ir4!SZCzADicP4|HUOb!qNa zar@b{v8?ki1Kf&Q;|2@hv^}mY+A60tm?!jn0Foe{6-1AHJuX;5CiBby2=O2ih9c`S gWPV5tfB`T7Ke_CApnT_yVE_OC07*qoM6N<$f)_8q0RR91 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/meta.json new file mode 100644 index 00000000000..1e27d48c21a --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "TODO", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..59f1e4f8ea892fac760dbc92dd07de0fe22dd777 GIT binary patch literal 815 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V1T zPZ!6KiaBp*9n2PX6gjp(Xz2o57JjddUV`5GVph@BT*Aqd$7ugn1|K_n#yxlEJ67-S3Z5#pF8s^l zH9Ued>K_Vy_;j1+U2k~knw2l+-CxNhw{L!M{p(kYlUDb&b(x=2(dd3YJKzxWZT7tz zwZoVK{(ikC^Umk4Yw1h7EN}f?8z+9Me6*Fz=WFeM&ONv8UYPp5GM{<-Ii_UwFZ&~& zm#=DYTUA%PHB+tqUX5((r-$qxz7+Kw^`F?chJovG(^dxU>q50GU!FDQJ^Axmw<7hm z!vC+5k^gFb8j3y7-6(WGWmkofGke*k2@WK%dBVp^O^F*KL?!WBS;Mer# z8|%D-nty(ZCReBgr5hZK+Wh;D_OqV<+P9KwS$a4QEAQR8$?QGz^63ftZtgJd`e-k_ z?hrVXIGG$Q92q#&IT#+YFe=PZU}zC$X((u7fJ>fZy0Bu2Y2JcRznbVLXHHjGlxH66 zh-8r#d8QpYNB-<{vF}PYGp@)rnz!HBad>sSvQE$QrpwYXp*yFiKQ8*keCAoEkCgG0 zX_gbpezA4Tk7IlmneX^~*Ux3wCm+~a;H#$;!R^32W!sIbmv^e4_Z9!mS`+>B@6Mv| zS;yX-%j0}!uuw9~rn1Z7*DqF^;vMRZv-Q7m--s%`#&kjOo}R{8qa^|*-KU$BY-aj> zImR0!d_Apuvvtm~XBtc1iliod>hXQHQece&8q&q-y<2sIgGPU=Zf84z|HKwGF?c!vE39}RO75`PUKI;GIz{(e% jh$onUVd%bxp`Ou<$%pyYeB~Zs4q)(f^>bP0l+XkKoV#g; literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..7f99154fde18be3515fe4d7aebb87a0ad9cd3e52 GIT binary patch literal 867 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|T?D zr;B4q#hkaZE_#bN${gRHq!wd$BCstpapfEDiH`0Zw%=B{1UTNQUm$X@sor@*K-YJ9 z5B@IOEeW-?tMV z{I+I0UC4BxXbZ~>IoHM8-phYEU&d1Lfi3q$N7%7&v4(@k*&D9!R=#mlSLwcO`|G=p z!j!oMCF(yZefV;k~QkC1;g7tV!O*qh8^HTu2pT4Q>&w$kUY#o`64`Cpvv z+^=!``Y8rBSId3R9=X~(pSs`Z9?s-b`@!`z&jJH04Q_*CU6;(ehi87?dt&aHh5r`o zu{`+knO7n;S-VEwjV0~gukF-+Cm(#tJ8jX8%ZnY&zA_elG*MeB z>2>EptS!#QTG6it|OYoGeMd_8qj&N=vy`@}GB9=w%h7P}o@x z2jg#_R!(#_hwn^gIOl66F<>Z;>#pHf1P;1)>l(l7bx$U88j<1 z;sxi&&H0g6xYy{-)SdR=cDnDO2OpJA$)2=$eq`s$MQ`~|@B1U-^**knZV&s6#`AG8 zQ6krc4;SX_t6lc*%&d9NwJhZl6&0MkZ0UO&?sUu$OcZr{uz4q^kyvp3!m0{8E18!H zQ@C`Dnr1IPSM2bF- SNdaaW1_n=8KbLh*2~7YSw0nF2 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/plain.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/plain.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..f9a9cf1854895495c62110f3399e8231ea679159 GIT binary patch literal 1690 zcmV;L24(q)P)HnF2(%3iVrfM|(Bj)x z5v5qS;8PxITNPG{e}PCB)LIqxNoW)_KB)5=1;LVp3QbufgwU9z)if$4P1=x1(s8~! zdvf=0(|^5 zxtVQmU7;G2XK4xW;vRCJ+nG(s2L1FW(f5;PhNu8Mhg*nR>xp(hM)cB;5&G_Vho7J!{Uvp?OG?ggn$wA&B?&L7`R^ux4&J}?uZuI4UJ1fpZDj%dSm@au@6 zBtY!Rn7gYk&IEMn_bjJn1E{kl=Ei@GmrMlkpV=QzpM!f~hUn1aJv4S_Oq|0ej0*gJ zb6K6gr~n{u+S)|T4Sn8OG-w|piXYAXeRE?Ujo%&;_mx5f=KtzeA3f6)@T2#Gqdx*L z6@HoPqo%Es%KSwIK+nVZVb7^=#v*j_h)aI^dvzYxmIFEK*$K33!zhpEYRrq|9nAhcezz|~F78_|z{}5Jek_74!u5Yf#1S39izEMz?JkCb0^k97 zcrM7!=NlC&1{4DpH~Beu4YIQgoTDADK>)wUeJUs@z=uhy@&0lmm(wcu=>X5kY=e_< zc5>dK)n$jg(YD6r;{_nGtZOIRqF(rmK!mKp2EWk=c(XGu<{!xX@YLS0&xMzF#_4KZ zz<;>KoPWb*gogjtYcB>Z0g&;*-}ysp+p!S6JxJEU`~YXBfDf*lKT|6s#KbZo8-;cp z@jDwCA(i=$!D<6L{>3@NR50Emyk^qTBqQ>M} zsbG_T!@UJcjj8}t;iw8g6^^O^RN<%!U~&_0hp%VXr<7QaJz4@_!;y0V$Ok@bA()?Y zlYhKMF0w^Bo3hFR@D@2fd-2hMJRFePCNHZH>^Ntl*%sfnxYo|Jc0S;vr-IBZkWnk( z+7M;kK45TUb0{dwAJ0Gvk#7Te$41NmwNYyzC}J_YI$kQda2vH-}!cD2Ol z{528<2<;x>^gW-j+|Dy69LGq6^HU3xo^3JF`@ChY0<95%2e)r)r@5s$zW||$9tmJH z&Mn7iX?2OF?oMglt0h3~14k4pyw~lBRhKs>^3@910($-8Z~hcu8;~h}KN%4=KB$c- zKTCTJ;1U@b<#b-=l=lMhCV*|a$ysFq_JtgwI1_Mk6vslf0yZG?u?@0as2xy+Q6!j| zpyXPCQdEQ#12_=)fD;`e+r*h-9T*7!Bbc0>?zgxlmI>yP1veF6SpbxsAPB*x2! z)<@ID66O3L;*Q`^aN|F}kkXF2Y)S9k;?V8I3-l;p@0O@2move-GD5HHcvlSnRomrZIe@riSDi!0clhgp z{7Te;@oVs5EPRDv{WT~9uRwW=oOg%I4Y^*x6vk74qd^z|L7r{fD k;?yZoiy+!4s29-1|Bk}@?w6|hX8-^I07*qoM6N<$f@S?0$p8QV literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/plain.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/plain.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..7cbe2a556d9c6492bbf4a19c88a34a66cde5fdac GIT binary patch literal 473 zcmV;~0Ve*5P)&~7dmNIakLh7YPUjY6%3Bz4+_uk{apS**2WB6w&00p1` zqyhF8;cHXLc<&Y1Z=;Yaz=p=m$&BQ_0QxjrQ=IZ=Jvj(r06P4@1kQWR?9z)M*5=rn z@`0ovgaOFpr~}xm$=tTVz9$`47XS!L2*6sl{EB9W0NjY1{#Hc;9zHDJzO{wAAOujH zDB`qh1uGl(!~3_ce|Ce%sgCMJB?QoVY@sw$!gwr}b`_+-=OC=l6rkZY3T3_Q&rbs0 zdooXd&*S~)epsI=0EeI%!1r_oJ4SjPBsB6QjGL!*C3Ap76Fwh6f0x!D1ce!FPA~k$BPD&!Cf@45kuk|K(DHDGm)Y|xM_khj`{!Eg7eB9!xl^3p_FL|} z@$&`KKi>^?S`fe>!NuUrn4rPH!`iTr!9awejp+bFuxDe#wYzJ%yW_K8=SM5D9?Ji@ zj`c~C^J}L`GyFU%k|Tbp{ra+Vb8sAQTm0u(&H%=fK0$ofWv?w<6)U+yWTrr;@3AKl zj}3Q@xaTi^Dyf68|6qN47tHP?+5%zxZB-`=?=d*Z{3iGQn{ zeVdm|&b%8omusohJRYaK57)29PtNzBt@tzR!}hnYrhU01mko4A&+=nmH)ib#UE=h` zBxFVMy0!aQ;}(8;e#voWRi%^G^XAIW)o$xvpRbtuzj9IB_Tc2NlO`?w`SFYEPn+2M zlGt!2w*7psQq=oZ!EsNo>sEwoxp61&&}G>s?#E8$;a3) zPj@f)v*%95#n+MlX024d`R&r5x3`afd9z~ms;R5L+wa`BO`CBd|3p#u*L`|5Cu=Us z25NAgE53U2l~1?JX8Uc0lmBad^mW>NR%pIl%M<&mxMkCqUEE&mcD-ybi>39$BbEDp z*v{T@(%)y5z1yCb&9ndfYiuaockw^tDq)~03tx4;s+SGSEsgnO8U4fX|Nei%=W4a* z%+*k-JMsU0wBSxZi}OnxM5^~qt#)kvxAgCn^Ro+aMJU!-h6t|VXL!EZj$uxIjQj+i zE#9AQirx74=ghOR&aaO?nZLEy->7YE@Rc#^!(sN_s;Pzbdp!3^{c%2f^UwU7e5MRor36Prv`)`R#Y(pP#`` z?>+l|H{;UVjPT%le^$*+R}suN+O@8*_Q08pe}6wdJZ5NXowYjaY0#0s|0*v3S?~Pw zGyfau%bT5_&VT($@BhuYk1Id>Z`*TibMoO^QkGYr{kwJT6|<6UYE@>}@iX6!-#)ef zW-Ks_m-`$1OxM4D;^mu5S8lE}d$sHSlI*Q^4-O`O{`=AF^J4yuKgDlt=X%X-w1!_p zLhu?p$7|*Yd4)Cn3a8tVa{-<}L*$p>lCO+)i!)v^|LH2MZFu|q`E)C{uZ(dv_WQ3G zuHygj=;zO+eJ}~2W2gQ8^C#$dR_%eJdGq66iG&SjJ{UY*{an^LB{Ts5wd^2N literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/heart-off.png b/Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/heart-off.png new file mode 100644 index 0000000000000000000000000000000000000000..5205aa6474306592cc800af8ca8837d4cb4071af GIT binary patch literal 274 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5D0sxv z#WAE}&f6=xe1{waSRW`JO!&?*W8NZm2a^~E7SHn=7m2TAV6+H2$T(|(L z?)>1ft*(9(i_!U#nEjQL-%Qyj!)DOH$n$|MN8Eb1-Fmfmvt=Jl;u2(8@oef+myc{R zR~xwkdy2yt%+{NiHvcTFJXI8Fc4gArcd;KN_ej6+-)qvWXegZW%`GTp591A~+sXT0 zYQJ=R&RnyqF1*ip0cS$U>P1l>@(w5(JbrHYou8?v!{z7RmdKI;Vst0F~8eKL7v# literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/heart-on.png b/Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/heart-on.png new file mode 100644 index 0000000000000000000000000000000000000000..99c5641d5b1fef794841c74bcb54ef9e7e2c43ca GIT binary patch literal 1257 zcmeAS@N?(olHy`uVBq!ia0vp^2|(Py!3HG1+{xJmq&N#aB8wRq_>O=u<5X=vX$A(C z*`6+rAr*7p&hhn_TqtwA{vy||&aEk1yklGRdKdBSp7KDEGg?HpNse=&T8Ou81;?hF zw+}YYRLf{|;jUVo;SrMX#p&b%@oNhc1TH12EW7kh(*OVcZKwLq&-+ndTx&1h-d_9R zr_KI$!+-Y7P74eeB-j`ZGbBhb@Gv(dG8phMv@ss2;G2-O>zNh*H~pVKgLQ&)|8=P| zR0^&-86Vj2tn}Er z`WM3wB@yb5$t7w>Zi(o8SY9Gz()Q81?%w6kEPr|ytpEDxcGbUs5B*;(pOAU6oBx}2 z-CxmKo~?h~!#B^5cZCNI))2!Z_?KbB{NIcT_TQNg)V*VG_&e`A^Dnknm!5w9xUpi> z1hzTn=WG04e9WHlL;C4|9Us%zzGv@I$xh;}_J002`~GgjjXfXT%Vjiv9-eovHuH|44%i^%~-krM9yXDP5iTO*@8`f8}2`Uoc!SP&%h1#hyFIWzIz@nh?*Sm zcn&S$6xcJod0xkG<2=;U^{T%ae}4M;qrfKe1oOG)=coT=d_4cZ{CDO zhKOT7nA!cO{E6PT`lB66giSckB!jkLwtIMicL56qOH=91o7M^S>FD zSEepjn*8aRymABt-ymq}k-};WX zmVxu9@on5Kf1x}l_Vu;BKOg=4F-!b(wClc3U$)!frMWq?bbn2^o20k#%-qX6Z!EKQ zd^~^Rf%XOO|I56$Y`FKe>ig@TKhn2rk%M9-m} zLahB=Agzd`Qb=V;+7x0XD6_gT1~pj|5oMw~W#~Qw0o5;Qrfdu^E*nOu_c`6oKz#Wg^ zg+#`w;rhZ>AuS}M7kJbi?mOmQI7%r|3wYsDHAlcW1u)?b-d?t%JA@ag=)ftsJD!7a zw8)xaTg>pl0<^u1niz* z8U)B096^vEaH!I=v`aHWa=V|*^d`++*JbCs=PVmi&*cF;fCumZjR3autxRv}pcep$ z@4`JU8$mR3;QG8!({cvDZE$C z+z?bF4mLoviX?>f7Gib;0%vNG0+h))VMDM1PLGojLXXWgVlaCE>F3zR0;o)n$px~9 zpzfsuSnKJU?E(v+GCgS+f%{6V+-o=|7gzw62x*Z*JiBL@QfjzZ!xgaVtUZ8#4nU+g z2TaE3_BYbG1DLS-fmsmUIAF52a{nnn;E!lM-yQ(>r7ptG09};_@Bkj5cYrVGYrLnl Shk)?_0000`xCO~n{($bo1q&k1xNu*0L`aX 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 Jvd$@?2>>%z7(@U7 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/head_m.png b/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/head_m.png new file mode 100644 index 0000000000000000000000000000000000000000..8f3536d29f298d839baa47617c648eb695e411d6 GIT binary patch literal 649 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|S$_ zr;B4q#hkaZ_IfcpinRJW9mwN8=v2ed-C*D9p`}~H#I61Iic_}Y($oV{+*`Y+w)!tf z&=TbKoq6bxlMYLFNmI@p%9Bhlw!_3Z*G2?dSi8VKp$sA(H>Tl*=M_C zwnwdHR0qHIX{TmqC^nLUa%97qaU+T!infhE@=s>Fb zXP)@`_YdBCXU50Z-}qO#eDB7KD_Uw~KK-nGaz}mt2d*8}JB#1n&G``SAMVHW;elO# z%K8f)|5lu@{lv|=;BJoCs+&4X@}9}|`#GiUm#Q+J@@Mup-&sAXGvwyGyNoGQpTKa{3!VO!d)Th;)2^O!5b%MDKt6A#4v2SoWHY;(;tpz-F z#cA1Bo<6W;TKtQ-qUM&JXRS)b+J--8xYvknPLSG_b|NQjZtYi zkC%_x&+w3obE~{ZbITVMk8O8?ZL39(dOOsveV6s6=v?}TUyts|hKv0^Xy)7{dq?eE zMP=zf>)9LZ4?M50`pRCQCgH)kb!wEUrGL=5Qy%g?d;OXk; Jvd$@?2>>%z7(@U7 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/l_arm.png b/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/l_arm.png new file mode 100644 index 0000000000000000000000000000000000000000..04dc37a6b096aae6fc6f5503f5e758b9b355698f GIT binary patch literal 512 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|VnG zPZ!6KiaBp*8Rj)R2)OPSRPUI=y=0-nq~IqUc`-ZAdd3v6aNSp0c_(PeLk`WJ6mgTC z4l45xG<}%Z5#t(VtjwJj$IQFsF>)1gM|xjU(enB`&K9Kl#j29*D8h8a4*TvEYZ~Gb@kw>h^RcK`-$n& ziaCrQwfZI*Wm+*VPFCgjl;`(a!Qrv``LiunZnHn{(0TBx_*3nkr-80bI~r`x-~Rs9 z{r|bE(vw;L{Ik*%2{_sC>iGrMY20TkqB^)wY|6Q~RA<$v3m=}yG4FpKxv8e+<>RcB z##3T1ydHCwHRhu=NO!@2idx+;?4JPzN_NBm;5Ou`0rLn>~)y``JSycjy!+1{l*GHbem$uUU#m?*}Oy|DpFHe1S-!|lws>SPt|FSAqN2&d6SblD^ y$kcsKLg9N`3e#&cj!jd^tlu4eM=x~shGT-ixILx!ulkSxGS<`8&t;ucLK6TPSb|Id literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/l_hand.png b/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/l_hand.png new file mode 100644 index 0000000000000000000000000000000000000000..0b425344431d939f1ecbdbcfe2ffead0c37826f7 GIT binary patch literal 381 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|TSJ zr;B4q#hkad7Wy3ykZ5~2y+vEW@l4XIgrvP3M|32f9g}@yRL1_`Ku%dwl^o-aS(aCX z@)q8{zl1X_$#!{1?fuz0!GCw##r9b~7y8K4P{HP4!>llmQQ$m7M>@k1V}?hP3?Si~ zjQ8H%f4%;$diizdX;+)BmX%&Cz4jw5#$KfV?3^F-*37p$ZxvS7aQ(gbvhC+toC-r( z9G*uO*8curxW0cAb55Pv$7!#M0*wC8P~W?8N1fR$)Bh{3L>_;Y%FEGmSpD>xeR6xw zb}K;b!r=s%u)ej!n`htlF8sOu8;|1~h4B4XPd*pi#C)Xx$NQjjd@1Z6mV%QC_V0SV m_k0qshoe1r!xSWM>nJZKgMx4k>SN5ldiRlH+ieCz9!5h{;O@ zaqcPq**?sDyZe=&CeR2FI8b+YFL!v);-!4E;)18NPwQK(T6aWLFC}x?p6@61_22LH z-((WJuE24X(7rl`%M!WKtCP3Q&RuKPdvSSI)`vih2ay|2Kdk)sT+iYDcg3_v(SM%qTyuNH9}hmI%?Cdkt_xqwaO`ooZ_KKv jda;Z`)tqnG8UDZJeRbD(&-4wc79j1Ou6{1-oD!Ms_0o<46%7j}U#?qojWGbzZ3GCW+tz;QhCz_-fV zpZ5OHN|Vs6KlwsMA$IxOpG9(Cj|x9q%<}B6Y`I_LS|+R2C!>w@KQSe@Th4Y)o^ktW zTO{j|Zi$O(vy>HPnA;tBrgfk$?|%E16Z+n##Dn!$C#c-{l(*{Vx1{w=ag2L@%T~_Y z&cX1krvC2^S>yd{x#pN1{PeqJLc+ZhANkjP*Ln9R#{2Yg(M>wDTLW0nRK_xC@T(vG zV^+ml@Ylxcg|K76e$T^p>^_nZ7rV1MSZFaE3S`9e3`pu8(~XK1-?u(AwBA^$pu740 z2cZkGHr080vC{=UtZQ)JUBlnZ`9QUynf;CMruSy8pVaS(9oc1 zXnSV&-uT6_)&5N!Jqz1Sn}rQbP+X`ScYyz+{W7abR_W%zcxLc)^>bP0l+XkKB4peN literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/r_foot.png b/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/r_foot.png new file mode 100644 index 0000000000000000000000000000000000000000..b6b4ffa19398a2f6e9e0d1b21965d996d1649e19 GIT binary patch literal 313 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7T#lEU}W%gaSW-r_4bybACsfVv5)!Y zDrF)i^AfsmW-zm=KVT~hdBxiDNH+1kLReS`a^&3svId0k=t(`h+Jih#2 zy==yrJ>S!IeOCdR3k5&eC)JwIid6E{ds6u6(~5r^=8L(0{CAskM&zcNxMRClSMQD8 zzid*7`noNCpC*Zzt=?RH^qXt+=C5B)SM0xhD?NDYibrK{z1QDMeZPilLaEWuOYa|j zS-Sq~Zbp~|3=hs*uW0^N8J4hZ-l@AgCZFS)5ouIE>-fR93D@u0fBCoNc!Fo#*;9HYQ z76kchmTZ5|@5bM+bMKk0Ri5!ZvGqT>4a@($vnxM2b28&5$FjITp9|00c2u4|di>9R z#!1iBnb+J4-~06PrjDcU_kWwa|M$Wy6cNHJs?=ao|WB=-T4co-) jyz4lX;9fb&{)18KgimDTO(9ueKr(o``njxgN@xNA{Pmn~ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/r_leg.png b/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/r_leg.png new file mode 100644 index 0000000000000000000000000000000000000000..d9539fbbc19b2952cf1a56b9df200e8f700db19e GIT binary patch literal 280 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=_dQ)4Ln>~)y|t0I*+9VI;^9p$ z?t-0Nj2a6UEL@bxyKTV-4xNdtHyAXf1FG9}8Wlu+Rk)&AEKk<|o%y+N-8&bc5nyoq z*Q)zXEPCL>mk-VtCyrIM6?p3et zQLO^kxPwE#-q zD%vGKiWO;il3b70P+eyJUW1R#r!fIkiU+Qy<}Ss@HGi4KO?QK zGv@$xfVW9dp$=f)z5RTXh=>aUJ0QFBfXd%s$u49dykECXTw-)n<}3GEPJpMciu5CFoJwKo+Z z7g!5m7AILAVOA%+FaSYogC@)#A@&N`l&5WZ*`A|)N-n(i4q%JQ;SwLg0WQ^{ z|H1(-g;{F>v@PW$IDlhmTHcDa01|b!tmTl|-!&KOK)Lud;4%A_Y&+DP96(4k0zLu> zZIjWKxxF~ReE!;YXxYH*7Bk0U>%Q96;oa4sOoW!*8LoJ55#+s1PDN15>pQ`CFb-Ba z=NPK>zx-{co{a;oQecN@FK>h6A7kOIgm?O#v>$-Tkpw{GNCF^oL@&TE7_&RK!h2{0 P00000NkvXXu0mjfJ(rq* literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/torso_m.png b/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/torso_m.png new file mode 100644 index 0000000000000000000000000000000000000000..37c67806390c1280746f64c0b141aa32f7c6a189 GIT binary patch literal 889 zcmV-<1BU#GP)^kxPwE#-q zD%vGKiWO;il3b70P+eyJUW1R#r!fIkiU+Qy<}Ss@HGi4KO?QK zGv@$xfVW9dp$=f)z5RTXh=>aUJ0QFBfXd%s$u49dykECXTw-)n<}3GEPJpMciu5CFoJwKo+Z z7g!5m7AILAVOA%+FaSYogC@)#A@&N`l&5WZ*`A|)N-n(i4q%JQ;SwLg0WQ^{ z|H1(-g;{F>v@PW$IDlhmTHcDa01|b!tmTl|-!&KOK)Lud;4%A_Y&+DP96(4k0zLu> zZIjWKxxF~ReE!;YXxYH*7Bk0U>%Q96;oa4sOoW!*8LoJ55#+s1PDN15>pQ`CFb-Ba z=NPK>zx-{co{a;oQecN@FK>h6A7kOIgm?O#v>$-Tkpw{GNCF^oL@&TE7_&RK!h2{0 P00000NkvXXu0mjfJ(rq* literal 0 HcmV?d00001 From 29127b53f62ce40f725bb9e426ec78f3c141a182 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sun, 24 Nov 2024 17:23:15 +0800 Subject: [PATCH 02/68] update --- .../Damage/Components/DamageOnHitComponent.cs | 14 +++- .../Damage/Systems/DamageOnHitSystem.cs | 13 ++-- Resources/Locale/en-US/language/languages.ftl | 2 +- Resources/Locale/en-US/traits/traits.ftl | 14 +++- .../Clothing/Head/base_clothinghead.yml | 3 +- .../Entities/Mobs/Species/plasmaman.yml | 14 ++-- .../Entities/Mobs/Species/skeleton.yml | 2 + .../Language/Species-Specific/plasmaman.yml | 1 + .../Prototypes/Loadouts/Generic/species.yml | 3 + Resources/Prototypes/Species/plasmaman.yml | 9 ++- Resources/Prototypes/Traits/disabilities.yml | 2 + Resources/Prototypes/Traits/physical.yml | 68 ++++++++++++++++++ Resources/Prototypes/typing_indicator.yml | 4 ++ .../Textures/Effects/speech.rsi/meta.json | 22 +++++- .../Textures/Effects/speech.rsi/skeleton0.png | Bin 0 -> 368 bytes .../Mobs/Customization/plasmaman.rsi/eyes.png | Bin 0 -> 132 bytes .../Customization/plasmaman.rsi/meta.json | 15 ++++ 17 files changed, 167 insertions(+), 19 deletions(-) create mode 100644 Resources/Textures/Effects/speech.rsi/skeleton0.png create mode 100644 Resources/Textures/Mobs/Customization/plasmaman.rsi/eyes.png create mode 100644 Resources/Textures/Mobs/Customization/plasmaman.rsi/meta.json diff --git a/Content.Server/Damage/Components/DamageOnHitComponent.cs b/Content.Server/Damage/Components/DamageOnHitComponent.cs index 3580e9a8d54..d2562a6a3ce 100644 --- a/Content.Server/Damage/Components/DamageOnHitComponent.cs +++ b/Content.Server/Damage/Components/DamageOnHitComponent.cs @@ -1,7 +1,9 @@ using Content.Shared.Damage; +using Content.Shared.Targeting; -// Damages the held item by a set amount when it hits someone. Can be used to make melee items limited-use. +// Damages the entity by a set amount when it hits someone. +// Can be used to make melee items limited-use or make an entity deal self-damage with unarmed attacks. namespace Content.Server.Damage.Components; [RegisterComponent] @@ -14,5 +16,13 @@ public sealed partial class DamageOnHitComponent : Component [DataField("damage", required: true)] [ViewVariables(VVAccess.ReadWrite)] public DamageSpecifier Damage = default!; -} + // + // The body parts to deal damage to. + // When there is more than one listed element, + // randomly selects between one of the elements. + // + [DataField] + [ViewVariables(VVAccess.ReadWrite)] + public List? TargetParts = null; +} diff --git a/Content.Server/Damage/Systems/DamageOnHitSystem.cs b/Content.Server/Damage/Systems/DamageOnHitSystem.cs index f129a14f799..3626796dcda 100644 --- a/Content.Server/Damage/Systems/DamageOnHitSystem.cs +++ b/Content.Server/Damage/Systems/DamageOnHitSystem.cs @@ -9,17 +9,22 @@ namespace Content.Server.Damage.Systems; public sealed class DamageOnHitSystem : EntitySystem { [Dependency] private readonly DamageableSystem _damageableSystem = default!; + private readonly Random _random = new Random(); public override void Initialize() { base.Initialize(); - SubscribeLocalEvent(DamageItem); + SubscribeLocalEvent(DamageSelf); } - // Looks for a hit, then damages the held item an appropriate amount. - private void DamageItem(EntityUid uid, DamageOnHitComponent component, MeleeHitEvent args) + + // Looks for a hit, then damages the entity an appropriate amount. + private void DamageSelf(EntityUid uid, DamageOnHitComponent component, MeleeHitEvent args) { if (args.HitEntities.Any()) { - _damageableSystem.TryChangeDamage(uid, component.Damage, component.IgnoreResistances); + _damageableSystem.TryChangeDamage(uid, component.Damage, component.IgnoreResistances, + targetPart: component.TargetParts is not null + ? component.TargetParts[_random.Next(component.TargetParts.Count)] + : null); } } } diff --git a/Resources/Locale/en-US/language/languages.ftl b/Resources/Locale/en-US/language/languages.ftl index 3c26c7efb16..b70e88962b7 100644 --- a/Resources/Locale/en-US/language/languages.ftl +++ b/Resources/Locale/en-US/language/languages.ftl @@ -59,7 +59,7 @@ language-RobotTalk-name = RobotTalk language-RobotTalk-description = A language consisting of harsh binary chirps, whistles, hisses, and whines. Organic tongues cannot speak it without aid from special translators. language-Calcic-name = Calcic -language-Calcic-description = The disjointed and staccato language of plasmamen. Also understood by skeletons. +language-Calcic-description = The disjointed and staccato language of skeletons and plasmamen. language-Sign-name = Tau-Ceti Basic Sign Language language-Sign-description = TCB-SL for short, this sign language is prevalent among mute and deaf people. diff --git a/Resources/Locale/en-US/traits/traits.ftl b/Resources/Locale/en-US/traits/traits.ftl index 54c3f7b4e88..da134556af5 100644 --- a/Resources/Locale/en-US/traits/traits.ftl +++ b/Resources/Locale/en-US/traits/traits.ftl @@ -143,7 +143,7 @@ trait-description-LowPainTolerance = trait-name-MartialArtist = Martial Artist trait-description-MartialArtist = You have received formal training in unarmed combat, whether with Fists, Feet, or Claws. - Your unarmed melee attacks have a small range increase, and deal 50% more damage. + Your unarmed melee attacks have a small range increase, and deal 50% more [color=red]Brute[/color] damage. This does not apply to any form of armed melee, only the weapons you were naturally born with. trait-name-Vigor = Vigor @@ -161,6 +161,18 @@ trait-description-SignLanguage = You can understand and use Tau-Ceti Basic Sign Language (TCB-SL). If you are mute for any reason, you can still communicate with sign language. +trait-name-PlasmafirePunch = Plasmafire Punch +trait-description-PlasmafirePunch = + Infuse your fists with plasma dust that combusts upon a burst of force. + Your unarmed attack deals [color=gray]6[/color] [color=orange]Heat[/color] and [color=gray]1.5[/color] [color=red]Blunt[/color] damage. + However, each combustion deals [color=gray]1.2[/color] [color=orange]Heat[/color] damage to your hands. + +trait-name-ToxoplasmicPunch = Toxoplasmic Punch +trait-description-ToxoplasmicPunch = + Infuse your fists with sharp plasma shards that poison on contact. + Your unarmed attack deals [color=gray]6.5[/color] [color=green]Poison[/color] and [color=gray]1.5[/color] [color=red]Slash[/color] damage. + However, the shards cut into your hands and each attack deals [color=gray]1.5[/color] [color=red]Slash[/color] damage to your hands. + trait-name-SolCommon = Sol Common trait-description-SolCommon = With its roots in Mandarin Chinese - Common evolved as the official language of the Sol Alliance - with officials working to tie it together with a common tongue. diff --git a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml index c1b98a4017a..cb13ebcf6e3 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml @@ -189,7 +189,7 @@ - type: entity abstract: true id: ClothingHeadEnvirohelmBase - name: base envirohelm + name: base envirosuit helmet categories: [ HideSpawnMenu ] components: - type: Sprite @@ -201,7 +201,6 @@ unequipSound: /Audio/Mecha/mechmove03.ogg quickEquip: false slots: [ HEAD ] - - type: BreathMask - type: IgniteFromGasImmunity - type: EyeProtection - type: GroupExamine diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml index 5d58a0af408..5fc585085ec 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -11,12 +11,12 @@ - type: Body prototype: Plasmaman requiredLegs: 2 - # - type: Bloodstream # Need to figure out having no blood - # bloodMaxVolume: 0 - # bloodlossThreshold: 0 - # maxBleedAmount: 0 - # bloodRefreshAmount: 0 - # bloodRegenerationHunger: 0 + - type: Bloodstream # Need to figure out having no blood + # bloodMaxVolume: 0 + bloodlossThreshold: 0 + maxBleedAmount: 0 + bloodRefreshAmount: 0 + bloodRegenerationHunger: 0 - type: Damageable damageModifierSet: Plasmaman - type: TemperatureProtection @@ -51,6 +51,8 @@ hideLayersOnEquip: - Hair - Snout + - type: TypingIndicator + proto: skeleton - type: LanguageKnowledge speaks: - TauCetiBasic diff --git a/Resources/Prototypes/Entities/Mobs/Species/skeleton.yml b/Resources/Prototypes/Entities/Mobs/Species/skeleton.yml index 2989ca96c6b..586e20b539c 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/skeleton.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/skeleton.yml @@ -103,6 +103,8 @@ probability: 0.5 - type: FireVisuals alternateState: Standing + - type: TypingIndicator + proto: skeleton - type: LanguageKnowledge speaks: - TauCetiBasic diff --git a/Resources/Prototypes/Language/Species-Specific/plasmaman.yml b/Resources/Prototypes/Language/Species-Specific/plasmaman.yml index 43ff89c8541..88fa9794e83 100644 --- a/Resources/Prototypes/Language/Species-Specific/plasmaman.yml +++ b/Resources/Prototypes/Language/Species-Specific/plasmaman.yml @@ -2,6 +2,7 @@ id: Calcic isVisibleLanguage: true speech: + fontId: Papyrus color: "#bbbbbb" obfuscation: !type:SyllableObfuscation diff --git a/Resources/Prototypes/Loadouts/Generic/species.yml b/Resources/Prototypes/Loadouts/Generic/species.yml index a9f71b9f513..0439403e451 100644 --- a/Resources/Prototypes/Loadouts/Generic/species.yml +++ b/Resources/Prototypes/Loadouts/Generic/species.yml @@ -52,6 +52,9 @@ group: LoadoutAirTank items: - EmergencyPlasmaTankFilled + # TEMPORARY + - ClothingMaskBreath + - ClothingUniformEnvirosuit - type: loadout id: LoadoutSpeciesExtendedEmergencyPlasmaTank diff --git a/Resources/Prototypes/Species/plasmaman.yml b/Resources/Prototypes/Species/plasmaman.yml index 3cdbaface91..36d5837f8f0 100644 --- a/Resources/Prototypes/Species/plasmaman.yml +++ b/Resources/Prototypes/Species/plasmaman.yml @@ -4,6 +4,7 @@ roundStart: true prototype: MobPlasmaman sprites: MobPlasmamanSprites + defaultSkinTone: "#ffffff" markingLimits: MobPlasmamanMarkingLimits dollPrototype: MobPlasmamanDummy skinColoration: Hues @@ -16,7 +17,7 @@ sprites: Head: MobPlasmamanHead Chest: MobPlasmamanTorso - Eyes: MobHumanoidEyes + Eyes: MobPlasmamanEyes LArm: MobPlasmamanLArm RArm: MobPlasmamanRArm LHand: MobPlasmamanLHand @@ -90,6 +91,12 @@ sprite: Mobs/Species/Plasmaman/parts.rsi state: head_f +- type: humanoidBaseSprite + id: MobPlasmamanEyes + baseSprite: + sprite: Mobs/Customization/plasmaman.rsi + state: eyes + - type: humanoidBaseSprite id: MobPlasmamanTorso baseSprite: diff --git a/Resources/Prototypes/Traits/disabilities.yml b/Resources/Prototypes/Traits/disabilities.yml index efa77391013..d4dfa30f420 100644 --- a/Resources/Prototypes/Traits/disabilities.yml +++ b/Resources/Prototypes/Traits/disabilities.yml @@ -205,6 +205,7 @@ inverted: true species: - IPC + - Plasmaman functions: - !type:TraitAddComponent components: @@ -225,6 +226,7 @@ inverted: true species: - IPC + - Plasmaman functions: - !type:TraitAddComponent components: diff --git a/Resources/Prototypes/Traits/physical.yml b/Resources/Prototypes/Traits/physical.yml index 083a91382f9..4d48465a280 100644 --- a/Resources/Prototypes/Traits/physical.yml +++ b/Resources/Prototypes/Traits/physical.yml @@ -416,6 +416,74 @@ types: Blunt: 6 +- type: trait + id: PlasmafirePunch + category: Physical + points: -3 + requirements: + - !type:CharacterSpeciesRequirement + species: + - Plasmaman + - !type:CharacterTraitRequirement + inverted: true + traits: + - Claws + - Talons + - ToxoplasmicPunch + functions: + - !type:TraitReplaceComponent + components: + - type: MeleeWeapon + soundHit: + collection: Punch + angle: 30 + animation: WeaponArcFist + damage: + types: + Heat: 6 + Blunt: 1.5 + - !type:TraitAddComponent + components: + - type: DamageOnHit + damage: + types: + Heat: 1.2 + targetParts: [ RightHand, LeftHand ] + +- type: trait + id: ToxoplasmicPunch + category: Physical + points: -5 + requirements: + - !type:CharacterSpeciesRequirement + species: + - Plasmaman + - !type:CharacterTraitRequirement + inverted: true + traits: + - Claws + - Talons + - PlasmafirePunch + functions: + - !type:TraitReplaceComponent + components: + - type: MeleeWeapon + soundHit: + collection: Punch + angle: 30 + animation: WeaponArcFist + damage: + types: + Poison: 6.5 + Slash: 1.5 + - !type:TraitAddComponent + components: + - type: DamageOnHit + damage: + types: + Slash: 1.5 + targetParts: [ RightHand, LeftHand ] + - type: trait id: Spinarette category: Physical diff --git a/Resources/Prototypes/typing_indicator.yml b/Resources/Prototypes/typing_indicator.yml index 7e8c92787fe..f9c74213e06 100644 --- a/Resources/Prototypes/typing_indicator.yml +++ b/Resources/Prototypes/typing_indicator.yml @@ -53,3 +53,7 @@ id: oni typingState: oni0 offset: 0, 0.0625 + +- type: typingIndicator + id: skeleton + typingState: skeleton0 diff --git a/Resources/Textures/Effects/speech.rsi/meta.json b/Resources/Textures/Effects/speech.rsi/meta.json index 1ec1219b0f8..c5cab23d8f1 100644 --- a/Resources/Textures/Effects/speech.rsi/meta.json +++ b/Resources/Textures/Effects/speech.rsi/meta.json @@ -28,7 +28,6 @@ }, { "name": "alienroyal0", - "delays": [ [ 0.2, @@ -412,7 +411,7 @@ { "name": "spider2" }, - { + { "name": "vox0", "delays": [ [ @@ -439,6 +438,25 @@ }, { "name": "oni2" + }, + { + "name": "skeleton0", + "delays": [ + [ + 0.15, + 0.25, + 0.25, + 0.8, + 0.1, + 0.2, + 0.1, + 0.8, + 0.1, + 0.2, + 0.1, + 1 + ] + ] } ] } diff --git a/Resources/Textures/Effects/speech.rsi/skeleton0.png b/Resources/Textures/Effects/speech.rsi/skeleton0.png new file mode 100644 index 0000000000000000000000000000000000000000..f0360a1cc0c8fadeb875c241447cd175dd4362c2 GIT binary patch literal 368 zcmeAS@N?(olHy`uVBq!ia0vp^4nTZ>gAGV-xtR*27|lIh978H@y}jeu*K8o*>R4{_ zeZSFWFELr4uo~qRQGFLoHf|8@Tz=)pwzq%Qy7`sV{Xc$tTkZMvtF9;=d47HU!-K97 zM*mIqmaV!cZ}zB&d&0N!talLd|6A4q_nB`$*c_gC@=w*T??9`8 zpkl)D{o)tc|47Njv}Au_eEI#e`)A?ri}-I;^4YJRUl+bVsqX9L?+*m5{_;c^#>;>B z@}3c_?}Ngx2D=z}gWVV2v$uSE^2$!3mU;C{=3g&Y^Gp0%Lv{Trk{*^KES3}*eSIlj84)PEKzAxc_ zari6aX6~Z!579~5cwU;>z5Wike_sTGAl^H)78&qol`;+0F&aJ AcK`qY literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Customization/plasmaman.rsi/eyes.png b/Resources/Textures/Mobs/Customization/plasmaman.rsi/eyes.png new file mode 100644 index 0000000000000000000000000000000000000000..28ce6d9e9e960260bfdfbf7960fa9cf6e8542d01 GIT binary patch literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=-kvUwAr-gY-m>O8z`((L;mN=D zZQ0j@Ce+=FmSH_RgM~qF_DoCvxK-uC6I60vPXX!xf%*+Mg)ewkWHFi9ZQjZb7P5Q6 Xa41aqQEbxJ=^(zRtDnm{r-UW|-_$8j literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Customization/plasmaman.rsi/meta.json b/Resources/Textures/Mobs/Customization/plasmaman.rsi/meta.json new file mode 100644 index 00000000000..f0bed207c09 --- /dev/null +++ b/Resources/Textures/Mobs/Customization/plasmaman.rsi/meta.json @@ -0,0 +1,15 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Skubman (github: angelofallars)", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "eyes", + "directions": 4 + } + ] +} From 39394c54b17ced349f18c0bf9a58e344941c77ae Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sun, 24 Nov 2024 19:55:27 +0800 Subject: [PATCH 03/68] feat: improve skeleton/plasmaman speech --- .../EntitySystems/SkeletonAccentSystem.cs | 3 +- .../en-US/chat/managers/chat-manager.ftl | 8 ++-- .../Prototypes/Body/Organs/plasmaman.yml | 43 +++++++++++++++-- .../Entities/Mobs/Species/plasmaman.yml | 4 +- Resources/Prototypes/Voice/speech_verbs.yml | 2 + Resources/Prototypes/typing_indicator.yml | 4 ++ .../Textures/Effects/speech.rsi/meta.json | 45 +++++++++++++++--- .../Effects/speech.rsi/plasmaman0.png | Bin 0 -> 478 bytes .../Effects/speech.rsi/plasmaman1.png | Bin 0 -> 252 bytes .../Effects/speech.rsi/plasmaman2.png | Bin 0 -> 224 bytes .../Textures/Effects/speech.rsi/skeleton0.png | Bin 368 -> 410 bytes .../Textures/Effects/speech.rsi/skeleton1.png | Bin 0 -> 160 bytes .../Textures/Effects/speech.rsi/skeleton2.png | Bin 0 -> 155 bytes 13 files changed, 92 insertions(+), 17 deletions(-) create mode 100644 Resources/Textures/Effects/speech.rsi/plasmaman0.png create mode 100644 Resources/Textures/Effects/speech.rsi/plasmaman1.png create mode 100644 Resources/Textures/Effects/speech.rsi/plasmaman2.png create mode 100644 Resources/Textures/Effects/speech.rsi/skeleton1.png create mode 100644 Resources/Textures/Effects/speech.rsi/skeleton2.png diff --git a/Content.Server/Speech/EntitySystems/SkeletonAccentSystem.cs b/Content.Server/Speech/EntitySystems/SkeletonAccentSystem.cs index d143c25fdba..edb67c954b1 100644 --- a/Content.Server/Speech/EntitySystems/SkeletonAccentSystem.cs +++ b/Content.Server/Speech/EntitySystems/SkeletonAccentSystem.cs @@ -1,4 +1,4 @@ -using System.Text.RegularExpressions; +using System.Text.RegularExpressions; using Content.Server.Speech.Components; using Robust.Shared.Random; @@ -28,6 +28,7 @@ public sealed partial class SkeletonAccentSystem : EntitySystem { "humorous", "humerus"}, { "to be a", "tibia"}, { "under", "ulna"} + { "narrow", "marrow"}, }; public override void Initialize() diff --git a/Resources/Locale/en-US/chat/managers/chat-manager.ftl b/Resources/Locale/en-US/chat/managers/chat-manager.ftl index f2b70e72a83..75c2a97942e 100644 --- a/Resources/Locale/en-US/chat/managers/chat-manager.ftl +++ b/Resources/Locale/en-US/chat/managers/chat-manager.ftl @@ -104,10 +104,12 @@ chat-speech-verb-reptilian-1 = hisses chat-speech-verb-reptilian-2 = snorts chat-speech-verb-reptilian-3 = huffs -chat-speech-verb-name-skeleton = Skeleton +chat-speech-verb-name-skeleton = Skeleton / Plasmaman chat-speech-verb-skeleton-1 = rattles -chat-speech-verb-skeleton-2 = clacks -chat-speech-verb-skeleton-3 = gnashes +chat-speech-verb-skeleton-2 = ribs +chat-speech-verb-skeleton-3 = bones +chat-speech-verb-skeleton-4 = clacks +chat-speech-verb-skeleton-5 = cracks chat-speech-verb-name-vox = Vox chat-speech-verb-vox-1 = screeches diff --git a/Resources/Prototypes/Body/Organs/plasmaman.yml b/Resources/Prototypes/Body/Organs/plasmaman.yml index e4ba8e70fb7..124097f1889 100644 --- a/Resources/Prototypes/Body/Organs/plasmaman.yml +++ b/Resources/Prototypes/Body/Organs/plasmaman.yml @@ -2,7 +2,7 @@ id: OrganPlasmamanLungs parent: OrganHumanLungs name: plasmaman lungs - description: "The lungs of a plasmaman, who breathe plasma. Any form of gaseous oxygen is lethally toxic if breathed in." + description: "The lungs yearn for the plasma. Only plasma gas can satiate these lungs, and oxygen is lethally toxic." components: - type: Sprite sprite: Mobs/Species/Plasmaman/organs.rsi @@ -12,19 +12,29 @@ metabolizerTypes: [ Plasmaman ] - type: Lung alert: LowPlasma - - type: Item - size: Small - heldPrefix: lungs + - type: Butcherable + butcheringType: Knife + butcherDelay: 5.0 + spawned: + - id: SheetPlasma1 + amount: 1 - type: entity id: OrganPlasmamanStomach parent: OrganHumanStomach name: plasmaman stomach + description: "Why do plasmamen have stomachs if they don't need to eat?" components: - type: Sprite sprite: Mobs/Species/Plasmaman/organs.rsi - type: Metabolizer metabolizerTypes: [ Plasmaman ] + - type: Butcherable + butcheringType: Knife + butcherDelay: 5.0 + spawned: + - id: SheetPlasma1 + amount: 1 - type: entity id: OrganPlasmamanLiver @@ -35,6 +45,12 @@ sprite: Mobs/Species/Plasmaman/organs.rsi - type: Metabolizer metabolizerTypes: [ Plasmaman ] + - type: Butcherable + butcheringType: Knife + butcherDelay: 5.0 + spawned: + - id: SheetPlasma1 + amount: 1 - type: entity id: OrganPlasmamanTongue @@ -43,6 +59,12 @@ components: - type: Sprite sprite: Mobs/Species/Plasmaman/organs.rsi + - type: Butcherable + butcheringType: Knife + butcherDelay: 5.0 + spawned: + - id: SheetPlasma1 + amount: 1 - type: entity id: OrganPlasmamanKidneys @@ -55,16 +77,29 @@ layers: [] - type: Metabolizer metabolizerTypes: [ Plasmaman ] + - type: Butcherable + butcheringType: Knife + butcherDelay: 5.0 + spawned: + - id: SheetPlasma1 + amount: 1 - type: entity id: OrganPlasmamanHeart parent: OrganHumanHeart name: plasmaman heart + description: "It pulses with plasma even outside the body." components: - type: Sprite sprite: Mobs/Species/Plasmaman/organs.rsi - type: Metabolizer metabolizerTypes: [ Plasmaman ] + - type: Butcherable + butcheringType: Knife + butcherDelay: 5.0 + spawned: + - id: SheetPlasma1 + amount: 1 - type: entity id: OrganPlasmamanBrain diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml index 5fc585085ec..73cf3e623b9 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -45,14 +45,14 @@ butcheringType: Spike spawned: - id: SheetPlasma1 - amount: 5 + amount: 4 - type: HumanoidAppearance species: Plasmaman hideLayersOnEquip: - Hair - Snout - type: TypingIndicator - proto: skeleton + proto: plasmaman - type: LanguageKnowledge speaks: - TauCetiBasic diff --git a/Resources/Prototypes/Voice/speech_verbs.yml b/Resources/Prototypes/Voice/speech_verbs.yml index 3f0a4c10fce..6f9db71a5f1 100644 --- a/Resources/Prototypes/Voice/speech_verbs.yml +++ b/Resources/Prototypes/Voice/speech_verbs.yml @@ -77,6 +77,8 @@ - chat-speech-verb-skeleton-1 - chat-speech-verb-skeleton-2 - chat-speech-verb-skeleton-3 + - chat-speech-verb-skeleton-4 + - chat-speech-verb-skeleton-5 - type: speechVerb id: Slime diff --git a/Resources/Prototypes/typing_indicator.yml b/Resources/Prototypes/typing_indicator.yml index f9c74213e06..11f339454f2 100644 --- a/Resources/Prototypes/typing_indicator.yml +++ b/Resources/Prototypes/typing_indicator.yml @@ -54,6 +54,10 @@ typingState: oni0 offset: 0, 0.0625 +- type: typingIndicator + id: plasmaman + typingState: plasmaman0 + - type: typingIndicator id: skeleton typingState: skeleton0 diff --git a/Resources/Textures/Effects/speech.rsi/meta.json b/Resources/Textures/Effects/speech.rsi/meta.json index c5cab23d8f1..15780ddceac 100644 --- a/Resources/Textures/Effects/speech.rsi/meta.json +++ b/Resources/Textures/Effects/speech.rsi/meta.json @@ -5,7 +5,7 @@ "y": 32 }, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/c6e3401f2e7e1e55c57060cdf956a98ef1fefc24 | Moth sprites made by PuroSlavKing (Github) | Spider sprites made by PixelTheKermit (Github) | Lizard sprites made by AmalgoMyte (Github) | Oni sprites made by angelofallars and leonardo-dabepis (Github)", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/c6e3401f2e7e1e55c57060cdf956a98ef1fefc24 | Moth sprites made by PuroSlavKing (Github) | Spider sprites made by PixelTheKermit (Github) | Lizard sprites made by AmalgoMyte (Github) | Oni sprites made by angelofallars and leonardo-dabepis (Github) | Skeleton/Plasmaman sprites made by Skubman (github: angelofallars)", "states": [ { "name": "alien0", @@ -440,23 +440,54 @@ "name": "oni2" }, { - "name": "skeleton0", + "name": "plasmaman0", "delays": [ [ 0.15, 0.25, 0.25, - 0.8, + 0.6, 0.1, - 0.2, + 0.15, 0.1, - 0.8, + 0.6, + 0.25, + 0.25, 0.1, - 0.2, + 0 + ] + ] + }, + { + "name": "plasmaman1" + }, + { + "name": "plasmaman2" + }, + { + "name": "skeleton0", + "delays": [ + [ + 0.15, + 0.25, + 0.25, + 0.6, + 0.1, + 0.15, 0.1, - 1 + 0.6, + 0.25, + 0.25, + 0.1, + 0 ] ] + }, + { + "name": "skeleton1" + }, + { + "name": "skeleton2" } ] } diff --git a/Resources/Textures/Effects/speech.rsi/plasmaman0.png b/Resources/Textures/Effects/speech.rsi/plasmaman0.png new file mode 100644 index 0000000000000000000000000000000000000000..1d81bc10b77d6862068910e17d4f006da81bb082 GIT binary patch literal 478 zcmeAS@N?(olHy`uVBq!ia0vp^4nTZ>gAGV-xtR*27?*mwIEGZ*dVAN;jheYFW6Ns@^@U|KXK+dzr?Pq zFW61C@PSn{w7p=T^6(d<@~k)PXI{oK2mjowV7R=T*XOVFh49t#7p|AsKbY~j-iq-T zWA8eccYZOZ?x;J!ai0Ija-RlHjdhzhzSd7R_{Avt=_^!;Y`nj<)$wOiynjHpc)I$z JtaD0e0sz(K(;WZ+ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Effects/speech.rsi/plasmaman1.png b/Resources/Textures/Effects/speech.rsi/plasmaman1.png new file mode 100644 index 0000000000000000000000000000000000000000..4a3cb354ff539a3255d60f7dcfb50482130f7f86 GIT binary patch literal 252 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJ!=5gVArXg@QyiGD1zkIT;b@ID%^G=tz+G|$?~DtqYG2JGe4>tLHhMFg*7jdz1WEDmpBC(UneR}@W2$@HgBc`J z*~+Uf0R(>cViOsYFYB_LvyIT^PoAyqKIed%-&=tMr}J4S#FV0Ybo_k}cz9VFaJe1S lkYHV$Akxzm2;od)U@*6FkA4w+AO+|h22WQ%mvv4FO#tQjRTlsN literal 0 HcmV?d00001 diff --git a/Resources/Textures/Effects/speech.rsi/plasmaman2.png b/Resources/Textures/Effects/speech.rsi/plasmaman2.png new file mode 100644 index 0000000000000000000000000000000000000000..cee7470fb48c68f600684fa91171ba7e0550b42b GIT binary patch literal 224 zcmeAS@N?(olHy`uVBq!ia0vp^@<6P>!3HE>H7#}oQp-JE978;gC#N_tUkkc+{=(5d zJ8Lc0EK4<9ailcTX9tS0%0B{MU#b6nzKPBu2Sw#nt;5eIIZXqd&xcl7yl zxiwSUH=doU?3W?P4{AuTE=~~XX$mypaszQn*cp{|(RGJ~h9pUXO@geCxhl2P~o literal 0 HcmV?d00001 diff --git a/Resources/Textures/Effects/speech.rsi/skeleton0.png b/Resources/Textures/Effects/speech.rsi/skeleton0.png index f0360a1cc0c8fadeb875c241447cd175dd4362c2..83e2947f8560a99a80347e2263e9ec2f5d37bb3f 100644 GIT binary patch delta 383 zcmeysG>dtHN`0cIi(^Q|t+#g_vkn^wum<$MoO|c@`dh&(S34+0dy0KLQF1Su>!A3d zLrnFPBEHq}9oskEX64U|?c1+?o2<0SOwrapu2ntn(3C%=J7;v5TuHIqV{b2Kbrr=MDf7vpCK|Pn||5yk62cZ>@)M6IP zPxxE=FS71f)EDMojkmx5?6|RM|JCy++B!YZ(=k{s6XfS{QaNsNp%i&`|2QSu6$&l;d@iD+GX`&kbtMFpUXO@geCxPbh*+1 delta 341 zcmbQm{DEnLO1-(Ki(^Q|t+#g^`?J1a6IP?VBC79#$;J($oy)KM z*!K3%S~tIvy8p*-Z>v4Oe$^GFBhRm|e|XR}!sx%L-m+Eq~%_9>DkdD?FMfgjPrZ~}OiT6`#+TneyMGq` zzKH)uC7=E3`E}v@lj^=+{{BF~>Mu`(VZ8i@FYg(_8b2ufYOsruH`smQJ$uWyC$H=j zYMEERWd8MXHNV6!hFXZ}cP85{;J?m(M(+wx%@R8WZ}|)U@wEpou)kmiD|j&P3uEmL zyM(fZes&65)W0%D{%WZE^@_R8&Oshx!uKWoFAjfY+|2!zaiQ%>{u7tjzg!NNH~7N% d3nIT`dHvF&2lA5+Pi6%Pc)I$ztaD0e0svjvnj!!I diff --git a/Resources/Textures/Effects/speech.rsi/skeleton1.png b/Resources/Textures/Effects/speech.rsi/skeleton1.png new file mode 100644 index 0000000000000000000000000000000000000000..3943f59767114ea0b7619dc6b94ef515c9f922f8 GIT binary patch literal 160 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJbWaz@kch)?uUPXPP~c$>nC*S= z@A4w8@>L;@62fBp4V^X}?Z07rFh_y&dV%L}C8M=0iwh>nGN_z=BcvoCtpnl~cya4V^F5y*m$0VM`@@Qgwx|CaW`aQMcP38(Ir08Ah3Y^n89ZJ6T-G@y GGywq4r#Qv{ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Effects/speech.rsi/skeleton2.png b/Resources/Textures/Effects/speech.rsi/skeleton2.png new file mode 100644 index 0000000000000000000000000000000000000000..64bb33c7137d3f6d27454c96d52eff04c8678288 GIT binary patch literal 155 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJBu^K|kch)?uNd+jP~c&9xZ`j7 zfBuWrcUrwPG?OPCHD9=5lCDOA%jfhoWzHIllRpF}ggvrqW!|y>>#Xx{m~{JCJ?z%9 zepA-a-cYw~1M_d2%?&>t#B)TiZ}=lCAP58#%k)pEi;3y}D|!O7jlt8^&t;ucLK6T) CUpG_$ literal 0 HcmV?d00001 From c144946aa24073d7fdbd628d43eeef226ee7aec1 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sun, 24 Nov 2024 20:38:21 +0800 Subject: [PATCH 04/68] feat: add plasmaman screams --- .../Audio/Voice/Plasmaman/attributions.yml | 7 +++++++ .../Voice/Plasmaman/plasmaman_scream_1.ogg | Bin 0 -> 12670 bytes .../Voice/Plasmaman/plasmaman_scream_2.ogg | Bin 0 -> 14027 bytes .../Voice/Plasmaman/plasmaman_scream_3.ogg | Bin 0 -> 12849 bytes .../Entities/Mobs/Species/plasmaman.yml | 6 +++--- .../Prototypes/SoundCollections/screams.yml | 7 +++++++ .../Prototypes/Voice/speech_emote_sounds.yml | 10 ++++++++++ .../Textures/Effects/speech.rsi/plasmaman2.png | Bin 224 -> 225 bytes 8 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 Resources/Audio/Voice/Plasmaman/attributions.yml create mode 100644 Resources/Audio/Voice/Plasmaman/plasmaman_scream_1.ogg create mode 100644 Resources/Audio/Voice/Plasmaman/plasmaman_scream_2.ogg create mode 100644 Resources/Audio/Voice/Plasmaman/plasmaman_scream_3.ogg diff --git a/Resources/Audio/Voice/Plasmaman/attributions.yml b/Resources/Audio/Voice/Plasmaman/attributions.yml new file mode 100644 index 00000000000..b61d31b2408 --- /dev/null +++ b/Resources/Audio/Voice/Plasmaman/attributions.yml @@ -0,0 +1,7 @@ +- files: + - plasmaman_scream_1.ogg + - plasmaman_scream_2.ogg + - plasmaman_scream_3.ogg + license: "CC-BY-SA-3.0" + copyright: "Taken from https://github.com/tgstation/tgstation/commit/436ba869ebcd0b60b63973fb7562f447ee655205" + source: "https://github.com/tgstation/tgstation" diff --git a/Resources/Audio/Voice/Plasmaman/plasmaman_scream_1.ogg b/Resources/Audio/Voice/Plasmaman/plasmaman_scream_1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..b75804be84d7448578e8ab4cb19f74b6f9532643 GIT binary patch literal 12670 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 YG?;gIP6GEkRZ8*?zb}3$BmkWLA34&>H~;_u literal 0 HcmV?d00001 diff --git a/Resources/Audio/Voice/Plasmaman/plasmaman_scream_2.ogg b/Resources/Audio/Voice/Plasmaman/plasmaman_scream_2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..bf546030d4fea474095961d84b64fad59a37e238 GIT binary patch literal 14027 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 AzW@LL delta 208 zcmaFJ_<&KnGr-TCmrII^fq{Y7)59eQNXrAU0tXwAeATqr5lAifba4#vI6hHZs$P_V zd)HAnu7ms=S5&vXVaQ@sQ_@K@2;!*g&~;gnX366dbv)B><^F?AbA7oR5-krOE_#!r zu^_A_`G_SmGqZDC;$coUHnz6O<>3(rZk%YC#mRT{`E$87Q`gQu&X%Q~lo FCIA+ Date: Sun, 24 Nov 2024 21:00:11 +0800 Subject: [PATCH 05/68] refactor: remove skele/plasma unused talk sprite frame --- Resources/Textures/Effects/speech.rsi/meta.json | 6 ++---- .../Textures/Effects/speech.rsi/plasmaman0.png | Bin 478 -> 486 bytes .../Textures/Effects/speech.rsi/skeleton0.png | Bin 410 -> 416 bytes 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/Resources/Textures/Effects/speech.rsi/meta.json b/Resources/Textures/Effects/speech.rsi/meta.json index 15780ddceac..4abf77bbe11 100644 --- a/Resources/Textures/Effects/speech.rsi/meta.json +++ b/Resources/Textures/Effects/speech.rsi/meta.json @@ -453,8 +453,7 @@ 0.6, 0.25, 0.25, - 0.1, - 0 + 0.1 ] ] }, @@ -478,8 +477,7 @@ 0.6, 0.25, 0.25, - 0.1, - 0 + 0.1 ] ] }, diff --git a/Resources/Textures/Effects/speech.rsi/plasmaman0.png b/Resources/Textures/Effects/speech.rsi/plasmaman0.png index 1d81bc10b77d6862068910e17d4f006da81bb082..fb6cf1ad2528b5109d10f33501d72b238860f099 100644 GIT binary patch delta 362 zcmcb|{ET^m3gg;|s@5@15AMqv?PmV0zPsbl*_&tg)#UHKKhJg2n?I9{{=9nht@uIl z?;gh$6Zcyv*(fR9vzvE*xlBvc&(kwzo~^o?8|Sxs&7PaQ4lXV=cFSDno_Txcy?og2 zGka1k&mVghe{A9&-Fk~@59=Hr{rj{2r?C9#?R5td>;HZIyK?uwJ-1WmSKHe!);74s z|6+bkZ=FNfzB-53uNlA~qodA2a-F=vq5teEEAR2&SQCCXZSSj7*H=Ef#DC(SZhddf z--dKxMc)g8F7)~(Kd!NO9AnI??1Wd@4)JU29O5tkZAiZN|1#qR{)`e?h!)bP0l+XkK-*l+A delta 354 zcmaFHe2;m83ggm=s@5^n4%l07xY_t~^X`sAXK$X}XS3~Y{&^+OvVWeEb)|*BEkEq7 zJ*INyM7)fkoSeokxuq@FpGw)d5p{_@zcdvDYfl$7k`FE8?YR`%{Y|LWMZ zdz<#0JGO3r&%`~t^%AEG>=g>@|6TvndHmB_`GOns>uc*@t#Eyp!ef70UXA(1c=P|$^%K|2 z8%PkzeERS7x^t>?#-eJ1+2_ICGs}V%OCdW$Y$f_`pgU+Fr0vdH9P_ zdDa{DGcRMAgMaQ-FkD{F>+@IoLilR=3)f5RAIx}MZ^ihFv3DIaSjz&%UyP|c>JD(6 v=l`+Xr-4&r-R6z2^^*;LF^Ycr3RNN-?{95&{FxN*ACMMLS3j3^P6D9eJK6# zAoFL>q?^C3c6{6U#Pe*wVa@Gre|-fbojuO?mp|-u);PIeS6o;y+ht8;<#cI>ZT+il zFKo-bKeKXsbE#Q$z2y4(s()`^1Q+wmG@bv)HRXx>_gV%JsAn*_^e@K2{y}WTBY|}n z`A^u*ub(>qqs}kJ$F0AA*0`*>nf_Ju=jFNs$rY~l3fl4Z3x3;yH8MzD}4zyRu^nJzt z!A3d zLrnFPBEHq}9oskEX64U|?c1+?o2<0SOwrapu2ntn(3C%=J7;v5TuHIqV{b2Kbrr=MDf7vpCK|Pn||5yk62cZ>@)M6IP zPxxE=FS71f)EDMojkmx5?6|RM|JCy++B!YZ(=k{s6XfS{QaNsNp%i&`|2QSu6$&l;d@iD+GX`&kbtMFpUXO@geCy^Gr5BR From de63fded0e52ad1f2ff837ab4dcbb086cee77a90 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Mon, 25 Nov 2024 00:51:13 +0800 Subject: [PATCH 06/68] feat: add envirosuit self-extinguish --- .../Components/IgniteFromGasComponent.cs | 10 --- .../EntitySystems/IgniteFromGasSystem.cs | 35 ++++++---- .../Extinguisher/SelfExtinguisherComponent.cs | 49 +++++++++++++ .../Extinguisher/SelfExtinguisherSystem.cs | 68 +++++++++++++++++++ .../EntitySystems/SkeletonAccentSystem.cs | 2 +- .../Locale/en-US/envirosuit/envirosuit.ftl | 1 + .../Uniforms/base_clothinguniforms.yml | 7 ++ 7 files changed, 147 insertions(+), 25 deletions(-) create mode 100644 Content.Server/Extinguisher/SelfExtinguisherComponent.cs create mode 100644 Content.Server/Extinguisher/SelfExtinguisherSystem.cs create mode 100644 Resources/Locale/en-US/envirosuit/envirosuit.ftl diff --git a/Content.Server/Atmos/Components/IgniteFromGasComponent.cs b/Content.Server/Atmos/Components/IgniteFromGasComponent.cs index f6a0b68e658..5b36c770a97 100644 --- a/Content.Server/Atmos/Components/IgniteFromGasComponent.cs +++ b/Content.Server/Atmos/Components/IgniteFromGasComponent.cs @@ -8,16 +8,6 @@ namespace Content.Server.Atmos.Components; [RegisterComponent] public sealed partial class IgniteFromGasComponent : Component { - /// - /// These are the inventory slot groups that are checked for ignition immunity. - /// If no slot in a group has IgniteFromGasImmunityComponent, no immunity is applied. - /// - [DataField] - public List> ImmunitySlotGroups = new() { - new () { "head" }, - new () { "jumpsuit", "outerClothing" } - }; - /// /// What type of gas triggers ignition. /// diff --git a/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs index 48ee55cc5b2..34607f2ec43 100644 --- a/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs +++ b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs @@ -25,6 +25,16 @@ public sealed class IgniteFromGasSystem : EntitySystem private const float UpdateTimer = 1f; private float _timer; + /// + /// These are the inventory slot groups that are checked for ignition immunity. + /// If no slot in a group has IgniteFromGasImmunityComponent, no immunity is applied. + /// + [DataField] + private List> ImmunitySlotGroups = new() { + new () { "head" }, + new () { "jumpsuit", "outerClothing" } + }; + public override void Initialize() { SubscribeLocalEvent(OnIgniteFromGasImmunityEquipped); @@ -33,30 +43,26 @@ public override void Initialize() private void OnIgniteFromGasImmunityEquipped(EntityUid uid, IgniteFromGasImmunityComponent igniteImmunity, GotEquippedEvent args) { - if (TryComp(args.Equipee, out var ignite) && ignite.ImmunitySlotGroups.Any(group => group.Contains(args.Slot))) + if (TryComp(args.Equipee, out var ignite) && ImmunitySlotGroups.Any(group => group.Contains(args.Slot))) { - UpdateImmunity(args.Equipee, ignite); + ignite.HasImmunity = HasIgniteImmunity(args.Equipee); } } private void OnIgniteFromGasImmunityUnequipped(EntityUid uid, IgniteFromGasImmunityComponent igniteImmunity, GotUnequippedEvent args) { - if (TryComp(args.Equipee, out var ignite) && ignite.ImmunitySlotGroups.Any(group => group.Contains(args.Slot))) + if (TryComp(args.Equipee, out var ignite) && ImmunitySlotGroups.Any(group => group.Contains(args.Slot))) { - UpdateImmunity(args.Equipee, ignite); + ignite.HasImmunity = HasIgniteImmunity(args.Equipee); } } - private void UpdateImmunity(EntityUid uid, IgniteFromGasComponent ignite) + public bool HasIgniteImmunity(EntityUid uid, InventoryComponent? inv = null, ContainerManagerComponent? contMan = null) { - if (ignite.ImmunitySlotGroups.Count == 0 || - !TryComp(uid, out InventoryComponent? inv) || - !TryComp(uid, out ContainerManagerComponent? contMan)) - return; + if (!Resolve(uid, ref inv, ref contMan)) + return false; - ignite.HasImmunity = true; - - foreach (var group in ignite.ImmunitySlotGroups) + foreach (var group in ImmunitySlotGroups) { var groupHasImmunity = false; @@ -72,10 +78,11 @@ private void UpdateImmunity(EntityUid uid, IgniteFromGasComponent ignite) if (!groupHasImmunity) { - ignite.HasImmunity = false; - return; + return false; } } + + return true; } public override void Update(float frameTime) diff --git a/Content.Server/Extinguisher/SelfExtinguisherComponent.cs b/Content.Server/Extinguisher/SelfExtinguisherComponent.cs new file mode 100644 index 00000000000..d890e4f0ec7 --- /dev/null +++ b/Content.Server/Extinguisher/SelfExtinguisherComponent.cs @@ -0,0 +1,49 @@ +using Robust.Shared.Audio; +using Robust.Shared.GameStates; +using Robust.Shared.Serialization; +using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom; + +namespace Content.Server.Extinguisher; + +/// +/// When equipped, the SelfExtinguisherComponent will try to automatically extinguish its wearer when on fire. +/// +[RegisterComponent] +public partial class SelfExtinguisherComponent : Component +{ + /// + /// The number of charges left. + /// + [DataField] + public int Charges = 5; + + /// + /// The maximum possible charges of self-extinguishes. + /// + [DataField(required: true)] + public int MaxCharges = 5; + + /// + /// Cooldown before the self-extinguisher can be used again. + /// + [DataField(required: true)] + public TimeSpan Cooldown; + + /// + /// Time before the self-extinguisher can be used again. + /// + [DataField(customTypeSerializer: typeof(TimeOffsetSerializer))] + public TimeSpan NextExtinguish = TimeSpan.Zero; + + /// + /// If true, requires the wearer to be immune to gas ignition. + /// + [DataField] + public bool RequiresIgniteFromGasImmune = false; + + /// + /// The sound effect that plays upon an extinguish. + /// + [DataField(required: true)] + public SoundSpecifier Sound { get; private set; } = default!; +} diff --git a/Content.Server/Extinguisher/SelfExtinguisherSystem.cs b/Content.Server/Extinguisher/SelfExtinguisherSystem.cs new file mode 100644 index 00000000000..8921e78127e --- /dev/null +++ b/Content.Server/Extinguisher/SelfExtinguisherSystem.cs @@ -0,0 +1,68 @@ +using Content.Server.Atmos.Components; +using Content.Server.Atmos.EntitySystems; +using Content.Server.Popups; +using Robust.Shared.Audio.Systems; +using Robust.Shared.Containers; +using Robust.Shared.Timing; + +namespace Content.Server.Extinguisher; + +public sealed partial class SelfExtinguisherSystem : EntitySystem +{ + [Dependency] private readonly FlammableSystem _flammable = default!; + [Dependency] private readonly SharedContainerSystem _container = default!; + [Dependency] private readonly IgniteFromGasSystem _ignite = default!; + [Dependency] private readonly IGameTiming _timing = default!; + [Dependency] private readonly PopupSystem _popup = default!; + [Dependency] private readonly SharedAudioSystem _audio = default!; + + private const float UpdateTimer = 1f; + private float _timer; + + public override void Initialize() + { + base.Initialize(); + } + + private void TryExtinguish(EntityUid uid, EntityUid wearer, SelfExtinguisherComponent component, FlammableComponent flammable) + { + var curTime = _timing.CurTime; + if (component.NextExtinguish > curTime || + component.Charges == 0) + return; + + _flammable.Extinguish(wearer, flammable); + _popup.PopupEntity(Loc.GetString("self-extinguisher-extinguish", ("item", uid)), wearer, wearer); + component.Charges -= 1; + component.NextExtinguish += curTime + component.Cooldown; + + _audio.PlayPvs(component.Sound, uid, component.Sound.Params.WithVariation(0.125f)); + } + + public override void Update(float frameTime) + { + _timer += frameTime; + + if (_timer < UpdateTimer) + return; + + _timer -= UpdateTimer; + + var enumerator = EntityQueryEnumerator(); + while (enumerator.MoveNext(out var uid, out var extinguisher)) + { + if (!_container.TryGetContainingContainer(uid, out var container) || + !TryComp(container.Owner, out var flammable) || + !flammable.OnFire) + continue; + var wearer = container.Owner; + + if (extinguisher.RequiresIgniteFromGasImmune && + ((TryComp(wearer, out var ignite) && !ignite.HasImmunity) || + !_ignite.HasIgniteImmunity(wearer)) ) + continue; + + TryExtinguish(uid, wearer, extinguisher, flammable); + } + } +} diff --git a/Content.Server/Speech/EntitySystems/SkeletonAccentSystem.cs b/Content.Server/Speech/EntitySystems/SkeletonAccentSystem.cs index edb67c954b1..d8326295304 100644 --- a/Content.Server/Speech/EntitySystems/SkeletonAccentSystem.cs +++ b/Content.Server/Speech/EntitySystems/SkeletonAccentSystem.cs @@ -27,7 +27,7 @@ public sealed partial class SkeletonAccentSystem : EntitySystem { "killed", "skeletonized"}, { "humorous", "humerus"}, { "to be a", "tibia"}, - { "under", "ulna"} + { "under", "ulna"}, { "narrow", "marrow"}, }; diff --git a/Resources/Locale/en-US/envirosuit/envirosuit.ftl b/Resources/Locale/en-US/envirosuit/envirosuit.ftl new file mode 100644 index 00000000000..ee5f9d2721c --- /dev/null +++ b/Resources/Locale/en-US/envirosuit/envirosuit.ftl @@ -0,0 +1 @@ +self-extinguisher-extinguish = The {$item} automatically extinguishes you! diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml index 5b5cf81b9f6..36d5a05702e 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml @@ -171,3 +171,10 @@ - type: ContainerContainer containers: toggleable-clothing: !type:ContainerSlot {} + - type: SelfExtinguisher + maxCharges: 5 + charges: 5 + cooldown: 8 + requiresIgniteFromGasImmune: true + sound: + path: /Audio/Effects/extinguish.ogg From 4db3113b4ed589196abcf16fca40658ab8d56aa5 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Mon, 25 Nov 2024 02:04:50 +0800 Subject: [PATCH 07/68] tweak: increase volume of plasmaman screams --- .../Voice/Plasmaman/plasmaman_scream_1.ogg | Bin 12670 -> 27179 bytes .../Voice/Plasmaman/plasmaman_scream_2.ogg | Bin 14027 -> 27900 bytes .../Voice/Plasmaman/plasmaman_scream_3.ogg | Bin 12849 -> 26663 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Resources/Audio/Voice/Plasmaman/plasmaman_scream_1.ogg b/Resources/Audio/Voice/Plasmaman/plasmaman_scream_1.ogg index b75804be84d7448578e8ab4cb19f74b6f9532643..af5cbbf3c60f909246f667c85ae21c9a07fe41d3 100644 GIT binary patch delta 25868 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 Topals$4|eUJJC6}?fobKW%V9? delta 11229 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 diff --git a/Resources/Audio/Voice/Plasmaman/plasmaman_scream_2.ogg b/Resources/Audio/Voice/Plasmaman/plasmaman_scream_2.ogg index bf546030d4fea474095961d84b64fad59a37e238..5824166d9f4bba4755e81b0aac169ac9bc9089de 100644 GIT binary patch delta 26595 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 LzYtA%e@YAhSKtia delta 12597 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 WX}U`Aju!gj)2PV-ZEbCS;Qs*9$I99O From 772c2f9105dcc7f22aa74897f6dcc33a11296033 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Mon, 25 Nov 2024 02:05:45 +0800 Subject: [PATCH 08/68] feat: make plasmaman have zero blood volume --- Content.Server/HeightAdjust/BloodstreamAdjustSystem.cs | 1 + Content.Server/Medical/HealthAnalyzerSystem.cs | 2 +- Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml | 4 ++-- Resources/Prototypes/Species/plasmaman.yml | 3 +++ Resources/Prototypes/Traits/physical.yml | 1 + 5 files changed, 8 insertions(+), 3 deletions(-) diff --git a/Content.Server/HeightAdjust/BloodstreamAdjustSystem.cs b/Content.Server/HeightAdjust/BloodstreamAdjustSystem.cs index 9ba0ee4b00a..2a494ca2115 100644 --- a/Content.Server/HeightAdjust/BloodstreamAdjustSystem.cs +++ b/Content.Server/HeightAdjust/BloodstreamAdjustSystem.cs @@ -29,6 +29,7 @@ public bool TryAdjustBloodstream(Entity ent) { if (!TryComp(ent, out var bloodstream) || !_solutionContainer.TryGetSolution(ent.Owner, bloodstream.BloodSolutionName, out var bloodSolutionEnt) + || bloodstream.BloodMaxVolume == 0 || !_config.GetCVar(CCVars.HeightAdjustModifiesBloodstream)) return false; diff --git a/Content.Server/Medical/HealthAnalyzerSystem.cs b/Content.Server/Medical/HealthAnalyzerSystem.cs index 11d2758cdd8..9484ebae511 100644 --- a/Content.Server/Medical/HealthAnalyzerSystem.cs +++ b/Content.Server/Medical/HealthAnalyzerSystem.cs @@ -242,7 +242,7 @@ public void UpdateScannedUser(EntityUid healthAnalyzer, EntityUid target, bool s _solutionContainerSystem.ResolveSolution(target, bloodstream.BloodSolutionName, ref bloodstream.BloodSolution, out var bloodSolution)) { - bloodAmount = bloodSolution.FillFraction; + bloodAmount = bloodSolution.MaxVolume != 0 ? bloodSolution.FillFraction : 0; bleeding = bloodstream.BleedAmount > 0; } diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml index 92381c0ba39..1444d307779 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -11,8 +11,8 @@ - type: Body prototype: Plasmaman requiredLegs: 2 - - type: Bloodstream # Need to figure out having no blood - # bloodMaxVolume: 0 + - type: Bloodstream + bloodMaxVolume: 0 bloodlossThreshold: 0 maxBleedAmount: 0 bloodRefreshAmount: 0 diff --git a/Resources/Prototypes/Species/plasmaman.yml b/Resources/Prototypes/Species/plasmaman.yml index 36d5837f8f0..be21c73e04e 100644 --- a/Resources/Prototypes/Species/plasmaman.yml +++ b/Resources/Prototypes/Species/plasmaman.yml @@ -8,6 +8,9 @@ markingLimits: MobPlasmamanMarkingLimits dollPrototype: MobPlasmamanDummy skinColoration: Hues + youngAge: 60 + oldAge: 120 + maxAge: 180 maleFirstNames: names_plasmaman femaleFirstNames: names_plasmaman lastNames: names_plasmaman_last diff --git a/Resources/Prototypes/Traits/physical.yml b/Resources/Prototypes/Traits/physical.yml index 4d48465a280..233b9c88ec7 100644 --- a/Resources/Prototypes/Traits/physical.yml +++ b/Resources/Prototypes/Traits/physical.yml @@ -361,6 +361,7 @@ - Human - Oni - SlimePerson + - Plasmaman - !type:CharacterTraitRequirement inverted: true traits: From b3d15008f48994115f7b260ec98be9297705fda8 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Mon, 25 Nov 2024 02:43:50 +0800 Subject: [PATCH 09/68] feat: add plasmaman eyes prototype TODO: add plasmaman eyes sprite --- Resources/Prototypes/Body/Organs/plasmaman.yml | 12 ++++++++++++ Resources/Prototypes/Body/Prototypes/plasmaman.yml | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/Resources/Prototypes/Body/Organs/plasmaman.yml b/Resources/Prototypes/Body/Organs/plasmaman.yml index 124097f1889..5965c615ca5 100644 --- a/Resources/Prototypes/Body/Organs/plasmaman.yml +++ b/Resources/Prototypes/Body/Organs/plasmaman.yml @@ -36,6 +36,18 @@ - id: SheetPlasma1 amount: 1 +- type: entity + id: OrganPlasmamanEyes + parent: OrganHumanEyes + name: plasmaman eyes + components: # TODO: add plasmaman eyes sprite + - type: Butcherable + butcheringType: Knife + butcherDelay: 5.0 + spawned: + - id: SheetPlasma1 + amount: 1 + - type: entity id: OrganPlasmamanLiver parent: OrganHumanLiver diff --git a/Resources/Prototypes/Body/Prototypes/plasmaman.yml b/Resources/Prototypes/Body/Prototypes/plasmaman.yml index cbcdddaa4e3..a41ad0802a9 100644 --- a/Resources/Prototypes/Body/Prototypes/plasmaman.yml +++ b/Resources/Prototypes/Body/Prototypes/plasmaman.yml @@ -9,7 +9,7 @@ - torso organs: brain: OrganPlasmamanBrain - eyes: OrganHumanEyes + eyes: OrganPlasmamanEyes torso: part: TorsoPlasmaman connections: From bffafe900c8f78fb79b03b0cb3b1cdd69c05794c Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Mon, 25 Nov 2024 02:47:50 +0800 Subject: [PATCH 10/68] feat: make plasmamen a cold species --- .../Prototypes/Entities/Mobs/Species/plasmaman.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml index 1444d307779..37a917f4b17 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -46,6 +46,19 @@ spawned: - id: SheetPlasma1 amount: 4 + - type: Temperature + heatDamageThreshold: 313 # 40 celsius + coldDamageThreshold: 195 # -78.5 celsius + currentTemperature: 270.15 # -3 celsius + specificHeat: 46 + coldDamage: + types: + Cold: 0.00 + heatDamage: + types: + Heat: 3 + - type: ThermalRegulator + normalBodyTemperature: 270.15 - type: HumanoidAppearance species: Plasmaman hideLayersOnEquip: From 498943915cedbe8a886d6b94b8c066aac9e73c47 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Thu, 28 Nov 2024 13:49:05 +0800 Subject: [PATCH 11/68] feat: add body part-based ignition --- .../Components/IgniteFromGasComponent.cs | 31 +++- .../IgniteFromGasImmunityComponent.cs | 2 +- .../Components/IgniteFromGasPartComponent.cs | 23 +++ .../EntitySystems/IgniteFromGasSystem.cs | 145 ++++++++++++++---- .../Extinguisher/SelfExtinguisherSystem.cs | 2 +- .../Body/Systems/SharedBodySystem.Parts.cs | 1 + Resources/Prototypes/Body/Parts/plasmaman.yml | 39 +++-- .../Entities/Mobs/Species/plasmaman.yml | 6 - .../Textures/Effects/speech.rsi/meta.json | 8 +- 9 files changed, 195 insertions(+), 62 deletions(-) create mode 100644 Content.Server/Atmos/Components/IgniteFromGasPartComponent.cs diff --git a/Content.Server/Atmos/Components/IgniteFromGasComponent.cs b/Content.Server/Atmos/Components/IgniteFromGasComponent.cs index 5b36c770a97..08fbe8ab837 100644 --- a/Content.Server/Atmos/Components/IgniteFromGasComponent.cs +++ b/Content.Server/Atmos/Components/IgniteFromGasComponent.cs @@ -1,4 +1,5 @@ using Content.Shared.Atmos; +using Content.Shared.Body.Part; namespace Content.Server.Atmos.Components; @@ -11,23 +12,37 @@ public sealed partial class IgniteFromGasComponent : Component ///

/// What type of gas triggers ignition. /// - [DataField(required: true)] - public Gas Gas; + [DataField] + public Gas Gas = Gas.Plasma; /// - /// How many firestacks to apply every second without immunity. + /// The total calculated fire stacks to apply every second without immunity. + /// This is calculated from BaseFireStacks + the exposed body parts' fire stacks + /// from IgnitableBodyParts. /// - [DataField(required: true)] - public float FireStacks; + [DataField] + public float FireStacks = 0f; + + /// + /// The base amount of fire stacks to apply every second without immunity. + /// + [DataField] + public float BaseFireStacks = 0.10f; + + /// + /// The body parts that are vulnerable to ignition when exposed, and their fire stack values. + /// + [ViewVariables(VVAccess.ReadWrite)] + public Dictionary<(BodyPartType, BodyPartSymmetry), float> IgnitableBodyParts = default!; /// /// How many moles of the gas is needed to trigger ignition. /// - [DataField(required: true)] - public float MolesToIgnite; + [DataField] + public float MolesToIgnite = 0.5f; /// - /// Whether the entity is immune to ignition. + /// Whether the entity is currently immune to ignition. /// [ViewVariables(VVAccess.ReadWrite)] public bool HasImmunity = false; diff --git a/Content.Server/Atmos/Components/IgniteFromGasImmunityComponent.cs b/Content.Server/Atmos/Components/IgniteFromGasImmunityComponent.cs index 1da498d9257..e2f35f409d5 100644 --- a/Content.Server/Atmos/Components/IgniteFromGasImmunityComponent.cs +++ b/Content.Server/Atmos/Components/IgniteFromGasImmunityComponent.cs @@ -2,7 +2,7 @@ namespace Content.Server.Atmos.Components; /// -/// Component that is used to prevent ignition when exposed to a certain gas. +/// Component that is used on clothing to prevent ignition when exposed to a specific gas. /// [RegisterComponent] public sealed partial class IgniteFromGasImmunityComponent : Component diff --git a/Content.Server/Atmos/Components/IgniteFromGasPartComponent.cs b/Content.Server/Atmos/Components/IgniteFromGasPartComponent.cs new file mode 100644 index 00000000000..099322b5a5e --- /dev/null +++ b/Content.Server/Atmos/Components/IgniteFromGasPartComponent.cs @@ -0,0 +1,23 @@ +using Content.Shared.Atmos; + +namespace Content.Server.Atmos.Components; + +/// +/// Component that can be used on body parts to add fire stacks and trigger ignition +/// when the body part is exposed to a type of gas, unless wearing ignition immunity. +/// +[RegisterComponent] +public sealed partial class IgniteFromGasPartComponent : Component +{ + /// + /// What type of gas triggers ignition. + /// + [DataField(required: true)] + public Gas Gas; + + /// + /// How many fire stacks this body part applies when exposed. + /// + [DataField] + public float FireStacks = 0.02f; +} diff --git a/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs index 34607f2ec43..7609ad2e93c 100644 --- a/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs +++ b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs @@ -4,6 +4,8 @@ using Content.Server.Atmos.Components; using Content.Shared.Alert; using Content.Shared.Atmos; +using Content.Shared.Body.Components; +using Content.Shared.Body.Part; using Content.Shared.Damage; using Content.Shared.Database; using Content.Shared.FixedPoint; @@ -26,63 +28,150 @@ public sealed class IgniteFromGasSystem : EntitySystem private float _timer; /// - /// These are the inventory slot groups that are checked for ignition immunity. - /// If no slot in a group has IgniteFromGasImmunityComponent, no immunity is applied. + /// Which clothing slots, when they have an item with IgniteFromGasImmunityComponent, + /// grant immunity to body parts. /// - [DataField] - private List> ImmunitySlotGroups = new() { - new () { "head" }, - new () { "jumpsuit", "outerClothing" } + private readonly Dictionary> ImmunitySlots = new() { + ["head"] = new HashSet { BodyPartType.Head }, + ["jumpsuit"] = new HashSet { + BodyPartType.Other, + BodyPartType.Torso, + BodyPartType.Arm, + BodyPartType.Hand, + BodyPartType.Leg, + BodyPartType.Foot, + BodyPartType.Tail, + }, + ["outerClothing"] = new HashSet { + BodyPartType.Other, + BodyPartType.Torso, + BodyPartType.Arm, + BodyPartType.Hand, + BodyPartType.Leg, + BodyPartType.Foot, + BodyPartType.Tail, + }, + ["gloves"] = new HashSet { BodyPartType.Hand, }, + ["shoes"] = new HashSet { BodyPartType.Foot, }, }; public override void Initialize() { + SubscribeLocalEvent(OnBodyPartAdded); + SubscribeLocalEvent(OnBodyPartAttached); + + SubscribeLocalEvent(OnBodyPartRemoved); + SubscribeLocalEvent(OnBodyPartDropped); + SubscribeLocalEvent(OnIgniteFromGasImmunityEquipped); SubscribeLocalEvent(OnIgniteFromGasImmunityUnequipped); } - private void OnIgniteFromGasImmunityEquipped(EntityUid uid, IgniteFromGasImmunityComponent igniteImmunity, GotEquippedEvent args) + private void OnBodyPartAdded(EntityUid uid, FlammableComponent component, BodyPartAddedEvent args) + { + HandleAddBodyPart(uid, args.Part.Owner, args.Part.Comp); + } + + private void OnBodyPartAttached(EntityUid uid, FlammableComponent component, BodyPartAttachedEvent args) { - if (TryComp(args.Equipee, out var ignite) && ImmunitySlotGroups.Any(group => group.Contains(args.Slot))) + HandleAddBodyPart(component.Owner, args.Part.Owner, args.Part.Comp); + } + + private void HandleAddBodyPart(EntityUid uid, EntityUid partUid, BodyPartComponent comp) + { + if (!TryComp(partUid, out var ignitePart)) + return; + + if (!TryComp(uid, out var ignite)) { - ignite.HasImmunity = HasIgniteImmunity(args.Equipee); + ignite = new IgniteFromGasComponent{ + Gas = ignitePart.Gas, + IgnitableBodyParts = new Dictionary<(BodyPartType, BodyPartSymmetry), float>() + { + [(comp.PartType, comp.Symmetry)] = ignitePart.FireStacks + } + }; + + AddComp(uid, ignite); } + else + ignite.IgnitableBodyParts[(comp.PartType, comp.Symmetry)] = ignitePart.FireStacks; + + UpdateIgniteImmunity(uid, ignite); } - private void OnIgniteFromGasImmunityUnequipped(EntityUid uid, IgniteFromGasImmunityComponent igniteImmunity, GotUnequippedEvent args) + private void OnBodyPartRemoved(EntityUid uid, IgniteFromGasComponent component, BodyPartRemovedEvent args) + { + HandleRemoveBodyPart(uid, args.Part.Owner, args.Part.Comp, component); + } + + private void OnBodyPartDropped(EntityUid uid, IgniteFromGasComponent component, BodyPartDroppedEvent args) + { + HandleRemoveBodyPart(component.Owner, args.Part.Owner, args.Part.Comp, component); + } + + private void HandleRemoveBodyPart(EntityUid uid, EntityUid partUid, BodyPartComponent part, IgniteFromGasComponent ignite) { - if (TryComp(args.Equipee, out var ignite) && ImmunitySlotGroups.Any(group => group.Contains(args.Slot))) + if (!TryComp(partUid, out var ignitePart)) + return; + + ignite.IgnitableBodyParts.Remove((part.PartType, part.Symmetry)); + + if (ignite.IgnitableBodyParts.Count == 0) { - ignite.HasImmunity = HasIgniteImmunity(args.Equipee); + RemCompDeferred(uid); + return; } + + UpdateIgniteImmunity(uid, ignite); } - public bool HasIgniteImmunity(EntityUid uid, InventoryComponent? inv = null, ContainerManagerComponent? contMan = null) + private void OnIgniteFromGasImmunityEquipped(EntityUid uid, IgniteFromGasImmunityComponent igniteImmunity, GotEquippedEvent args) { - if (!Resolve(uid, ref inv, ref contMan)) - return false; + if (TryComp(args.Equipee, out var ignite) && ImmunitySlots.ContainsKey(args.Slot)) + UpdateIgniteImmunity(args.Equipee, ignite); + } - foreach (var group in ImmunitySlotGroups) - { - var groupHasImmunity = false; + private void OnIgniteFromGasImmunityUnequipped(EntityUid uid, IgniteFromGasImmunityComponent igniteImmunity, GotUnequippedEvent args) + { + if (TryComp(args.Equipee, out var ignite) && ImmunitySlots.ContainsKey(args.Slot)) + UpdateIgniteImmunity(args.Equipee, ignite); + } - foreach (var slot in group) + public void UpdateIgniteImmunity(EntityUid uid, IgniteFromGasComponent? ignite = null, InventoryComponent? inv = null, ContainerManagerComponent? contMan = null) + { + if (!Resolve(uid, ref ignite, ref inv, ref contMan)) + return; + + var exposedBodyParts = new Dictionary<(BodyPartType, BodyPartSymmetry), float>(ignite.IgnitableBodyParts); + + // This is O(n^2) but I don't think it matters + foreach (var (slot, protectedBodyParts) in ImmunitySlots.Select(s => (s.Key, s.Value))) + { + if (_inventory.TryGetSlotEntity(uid, slot, out var equipment, inv, contMan) && + HasComp(equipment)) { - if (_inventory.TryGetSlotEntity(uid, slot, out var equipment, inv, contMan) && - HasComp(equipment)) + foreach (var protectedBodyPart in protectedBodyParts) { - groupHasImmunity = true; - break; + exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.Left)); + exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.Right)); + exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.None)); } } + } - if (!groupHasImmunity) - { - return false; - } + if (exposedBodyParts.Count() == 0) + { + ignite.HasImmunity = true; + ignite.FireStacks = 0; + return; } - return true; + ignite.HasImmunity = false; + var exposedFireStacks = 0f; + foreach (var fireStacks in exposedBodyParts.Values) + exposedFireStacks += fireStacks; + ignite.FireStacks = ignite.BaseFireStacks + exposedFireStacks; } public override void Update(float frameTime) diff --git a/Content.Server/Extinguisher/SelfExtinguisherSystem.cs b/Content.Server/Extinguisher/SelfExtinguisherSystem.cs index 8921e78127e..e3a23a02337 100644 --- a/Content.Server/Extinguisher/SelfExtinguisherSystem.cs +++ b/Content.Server/Extinguisher/SelfExtinguisherSystem.cs @@ -59,7 +59,7 @@ public override void Update(float frameTime) if (extinguisher.RequiresIgniteFromGasImmune && ((TryComp(wearer, out var ignite) && !ignite.HasImmunity) || - !_ignite.HasIgniteImmunity(wearer)) ) + false) ) // TODO check for ignite immunity using another way continue; TryExtinguish(uid, wearer, extinguisher, flammable); diff --git a/Content.Shared/Body/Systems/SharedBodySystem.Parts.cs b/Content.Shared/Body/Systems/SharedBodySystem.Parts.cs index 2c6d128f63a..ff57c8f1007 100644 --- a/Content.Shared/Body/Systems/SharedBodySystem.Parts.cs +++ b/Content.Shared/Body/Systems/SharedBodySystem.Parts.cs @@ -142,6 +142,7 @@ protected virtual void AddPart( { Dirty(partEnt, partEnt.Comp); partEnt.Comp.Body = bodyEnt; + Log.Warning($"Added part for {bodyEnt.ToString()}"); var ev = new BodyPartAddedEvent(slotId, partEnt); RaiseLocalEvent(bodyEnt, ref ev); diff --git a/Resources/Prototypes/Body/Parts/plasmaman.yml b/Resources/Prototypes/Body/Parts/plasmaman.yml index 7f8e1b804be..08a4e802ad3 100644 --- a/Resources/Prototypes/Body/Parts/plasmaman.yml +++ b/Resources/Prototypes/Body/Parts/plasmaman.yml @@ -9,10 +9,10 @@ - type: Extractable juiceSolution: reagents: - - ReagentId: Fat + - ReagentId: Plasma Quantity: 3 - - ReagentId: Blood - Quantity: 10 + - type: IgniteFromGasPart + gas: Oxygen - type: entity id: TorsoPlasmaman @@ -25,10 +25,10 @@ - type: Extractable juiceSolution: reagents: - - ReagentId: Fat - Quantity: 10 - - ReagentId: Blood - Quantity: 20 + - ReagentId: Plasma + Quantity: 6 + - type: IgniteFromGasPart + fireStacks: 0.06 - type: entity id: HeadPlasmaman @@ -38,13 +38,8 @@ - type: Sprite sprite: Mobs/Species/Plasmaman/parts.rsi state: "head_m" - - type: Extractable - juiceSolution: - reagents: - - ReagentId: Fat - Quantity: 5 - - ReagentId: Blood - Quantity: 10 + - type: IgniteFromGasPart + fireStacks: 0.02 - type: entity id: LeftArmPlasmaman @@ -54,6 +49,8 @@ - type: Sprite sprite: Mobs/Species/Plasmaman/parts.rsi state: "l_arm" + - type: IgniteFromGasPart + fireStacks: 0.02 - type: entity id: RightArmPlasmaman @@ -63,6 +60,8 @@ - type: Sprite sprite: Mobs/Species/Plasmaman/parts.rsi state: "r_arm" + - type: IgniteFromGasPart + fireStacks: 0.02 - type: entity id: LeftHandPlasmaman @@ -72,6 +71,8 @@ - type: Sprite sprite: Mobs/Species/Plasmaman/parts.rsi state: "l_hand" + - type: IgniteFromGasPart + fireStacks: 0.01 - type: entity id: RightHandPlasmaman @@ -81,6 +82,8 @@ - type: Sprite sprite: Mobs/Species/Plasmaman/parts.rsi state: "r_hand" + - type: IgniteFromGasPart + fireStacks: 0.01 - type: entity id: LeftLegPlasmaman @@ -90,6 +93,8 @@ - type: Sprite sprite: Mobs/Species/Plasmaman/parts.rsi state: "l_leg" + - type: IgniteFromGasPart + fireStacks: 0.02 - type: entity id: RightLegPlasmaman @@ -99,6 +104,8 @@ - type: Sprite sprite: Mobs/Species/Plasmaman/parts.rsi state: "r_leg" + - type: IgniteFromGasPart + fireStacks: 0.02 - type: entity id: LeftFootPlasmaman @@ -108,6 +115,8 @@ - type: Sprite sprite: Mobs/Species/Plasmaman/parts.rsi state: "l_foot" + - type: IgniteFromGasPart + fireStacks: 0.01 - type: entity id: RightFootPlasmaman @@ -117,3 +126,5 @@ - type: Sprite sprite: Mobs/Species/Plasmaman/parts.rsi state: "r_foot" + - type: IgniteFromGasPart + fireStacks: 0.01 diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml index 37a917f4b17..a329a04402b 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -35,12 +35,6 @@ Male: UnisexPlasmaman Female: UnisexPlasmaman Unsexed: UnisexPlasmaman - - type: IgniteFromGas - gas: Oxygen - fireStacks: 0.24 # 0.24 * 1.25 fire stack multiplier = 0.30 - molesToIgnite: 0.5 - - type: Flammable - fireStackIncreaseMultiplier: 1.25 - type: Butcherable butcheringType: Spike spawned: diff --git a/Resources/Textures/Effects/speech.rsi/meta.json b/Resources/Textures/Effects/speech.rsi/meta.json index 4abf77bbe11..e3644f147b0 100644 --- a/Resources/Textures/Effects/speech.rsi/meta.json +++ b/Resources/Textures/Effects/speech.rsi/meta.json @@ -446,11 +446,11 @@ 0.15, 0.25, 0.25, - 0.6, + 0.5, 0.1, 0.15, 0.1, - 0.6, + 0.7, 0.25, 0.25, 0.1 @@ -470,11 +470,11 @@ 0.15, 0.25, 0.25, - 0.6, + 0.5, 0.1, 0.15, 0.1, - 0.6, + 0.7, 0.25, 0.25, 0.1 From 699d595c1c08845a4336d4ae3a240e71a469d192 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Fri, 29 Nov 2024 11:25:59 +0800 Subject: [PATCH 12/68] feat: add minimum/maximum count for item groups When there are not enough items in a group, the loadout system will load the default items. When the selected items in a group exceeds the maximum amount allowed, the system will just reduce the amount of items to the max amount instead of not loading anything at all. TODO: Backend is fine, need to handle the client UI stuff of this --- .../UI/LoadoutPreferenceSelector.xaml.cs | 22 ++ .../Body/Systems/SharedBodySystem.Parts.cs | 1 - .../Loadouts/Prototypes/LoadoutPrototype.cs | 4 + .../Loadouts/Systems/SharedLoadoutSystem.cs | 205 ++++++++++++++++-- .../Prototypes/CharacterItemGroupPrototype.cs | 14 ++ .../Species/Plasmaman/envirosuit.yml | 12 + .../Species/Plasmaman/mask.yml | 15 ++ .../Species/Plasmaman/plasmatank.yml | 18 ++ .../Datasets/Names/plasmaman_last.yml | 6 +- .../Prototypes/Loadouts/Generic/mask.yml | 4 +- .../Prototypes/Loadouts/Generic/species.yml | 43 ++-- 11 files changed, 303 insertions(+), 41 deletions(-) create mode 100644 Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirosuit.yml create mode 100644 Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/mask.yml create mode 100644 Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml diff --git a/Content.Client/Lobby/UI/LoadoutPreferenceSelector.xaml.cs b/Content.Client/Lobby/UI/LoadoutPreferenceSelector.xaml.cs index 659fbbbfa3c..6c8bfa272b7 100644 --- a/Content.Client/Lobby/UI/LoadoutPreferenceSelector.xaml.cs +++ b/Content.Client/Lobby/UI/LoadoutPreferenceSelector.xaml.cs @@ -11,6 +11,7 @@ using Content.Shared.Customization.Systems; using Content.Shared.Paint; using Content.Shared.Preferences; +using Content.Shared.Prototypes; using Content.Shared.Roles; using Robust.Client.AutoGenerated; using Robust.Client.Graphics; @@ -233,6 +234,27 @@ void UpdateGuidebook() => GuidebookButton.Visible = if (!string.IsNullOrEmpty(loadoutDesc)) tooltip.Append($"{Loc.GetString(loadoutDesc)}"); + // Get group requirement reasons + foreach (var groupID in loadout.Groups) + { + if (!prototypeManager.TryIndex(groupID, out var group)) + continue; + + characterRequirementsSystem.CheckRequirementsValid( + group.Requirements, highJob, profile, new Dictionary(), + jobRequirementsManager.IsWhitelisted(), group, + entityManager, prototypeManager, configManager, + out var groupReasons); + + if (groupReasons.Count != 0) + { + foreach (var groupReason in groupReasons) + { + tooltip.Append($"\n{groupReason}"); + } + } + } + // Get requirement reasons characterRequirementsSystem.CheckRequirementsValid( loadout.Requirements, highJob, profile, new Dictionary(), diff --git a/Content.Shared/Body/Systems/SharedBodySystem.Parts.cs b/Content.Shared/Body/Systems/SharedBodySystem.Parts.cs index ff57c8f1007..2c6d128f63a 100644 --- a/Content.Shared/Body/Systems/SharedBodySystem.Parts.cs +++ b/Content.Shared/Body/Systems/SharedBodySystem.Parts.cs @@ -142,7 +142,6 @@ protected virtual void AddPart( { Dirty(partEnt, partEnt.Comp); partEnt.Comp.Body = bodyEnt; - Log.Warning($"Added part for {bodyEnt.ToString()}"); var ev = new BodyPartAddedEvent(slotId, partEnt); RaiseLocalEvent(bodyEnt, ref ev); diff --git a/Content.Shared/Clothing/Loadouts/Prototypes/LoadoutPrototype.cs b/Content.Shared/Clothing/Loadouts/Prototypes/LoadoutPrototype.cs index bebef3ae253..ae63fe0bf49 100644 --- a/Content.Shared/Clothing/Loadouts/Prototypes/LoadoutPrototype.cs +++ b/Content.Shared/Clothing/Loadouts/Prototypes/LoadoutPrototype.cs @@ -1,5 +1,6 @@ using Content.Shared.Clothing.Loadouts.Systems; using Content.Shared.Customization.Systems; +using Content.Shared.Prototypes; using Robust.Shared.Prototypes; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.List; @@ -17,6 +18,9 @@ public sealed partial class LoadoutPrototype : IPrototype [DataField] public ProtoId Category = "Uncategorized"; + [DataField] + public List> Groups = new(); + [DataField(required: true)] public List> Items = new(); diff --git a/Content.Shared/Clothing/Loadouts/Systems/SharedLoadoutSystem.cs b/Content.Shared/Clothing/Loadouts/Systems/SharedLoadoutSystem.cs index 97e92d9228a..0cb6d1fda16 100644 --- a/Content.Shared/Clothing/Loadouts/Systems/SharedLoadoutSystem.cs +++ b/Content.Shared/Clothing/Loadouts/Systems/SharedLoadoutSystem.cs @@ -6,10 +6,12 @@ using Content.Shared.Inventory; using Content.Shared.Paint; using Content.Shared.Preferences; +using Content.Shared.Prototypes; using Content.Shared.Roles; using Content.Shared.Station; using Content.Shared.Traits.Assorted.Components; using Robust.Shared.Configuration; +using Robust.Shared.Log; using Robust.Shared.Network; using Robust.Shared.Prototypes; using Robust.Shared.Random; @@ -31,11 +33,16 @@ public sealed class SharedLoadoutSystem : EntitySystem [Dependency] private readonly SharedTransformSystem _sharedTransformSystem = default!; + private List _groupProtosWithMinItems = new(); + public override void Initialize() { base.Initialize(); SubscribeLocalEvent(OnMapInit); + + _groupProtosWithMinItems = _prototype.EnumeratePrototypes() + .Where(g => g.MinItems > 0).ToList(); } private void OnMapInit(EntityUid uid, LoadoutComponent component, MapInitEvent args) @@ -83,22 +90,12 @@ private void OnMapInit(EntityUid uid, LoadoutComponent component, MapInitEvent a var allLoadouts = new List<(EntityUid, LoadoutPreference, int)>(); heirlooms = new(); - foreach (var loadout in profile.LoadoutPreferences) + var preferencesAndPrototypes = DetermineItems(uid, job, profile, playTimes, whitelisted); + + foreach (var (loadout, loadoutProto) in preferencesAndPrototypes) { var slot = ""; - // Ignore loadouts that don't exist - if (!_prototype.TryIndex(loadout.LoadoutName, out var loadoutProto)) - continue; - - - if (!_characterRequirements.CheckRequirementsValid( - loadoutProto.Requirements, job, profile, playTimes, whitelisted, loadoutProto, - EntityManager, _prototype, _configuration, - out _)) - continue; - - // Spawn the loadout items var spawned = EntityManager.SpawnEntities( _sharedTransformSystem.GetMapCoordinates(uid), @@ -162,6 +159,188 @@ private void OnMapInit(EntityUid uid, LoadoutComponent component, MapInitEvent a // The server has more information about the inventory system than the client does and the client doesn't need to put loadouts in backpacks return (failedLoadouts, allLoadouts); } + + /// + /// Returns a list with all items validated using the user's profile, + /// adding items based on MinItems and removing items based on MaxItems from . + /// + private List<(LoadoutPreference, LoadoutPrototype)> DetermineItems( + EntityUid uid, + JobPrototype job, + HumanoidCharacterProfile profile, + Dictionary playTimes, + bool whitelisted) + { + var groupIDToGroup = new Dictionary(); + var groupIDToLoadoutIDToItem = new Dictionary>(); + var groupIDToGroupItems = new Dictionary>(); + + var loadoutIDToPreferenceAndProto = new Dictionary(); + + foreach (var (loadoutID, loadout) in profile.LoadoutPreferences.ToDictionary(l => l.LoadoutName, l => l)) + { + if (!_prototype.TryIndex(loadout.LoadoutName, out var loadoutProto) || + !_characterRequirements.CheckRequirementsValid( + loadoutProto.Requirements, job, profile, playTimes, whitelisted, loadoutProto, + EntityManager, _prototype, _configuration, + out _)) + continue; + + var skip = false; + var requirementsSucceeded = loadoutProto.Groups.Count == 0; + + foreach (var groupID in loadoutProto.Groups) + { + if (!_prototype.TryIndex(groupID, out var groupProto)) + continue; + + // Right now you only need one group requirement to pass to be eligible for the item + if (groupIDToGroup.ContainsKey(groupID)) + { + requirementsSucceeded = true; + } + else + { + if (_characterRequirements.CheckRequirementsValid( + groupProto.Requirements, job, profile, playTimes, whitelisted, groupProto, + EntityManager, _prototype, _configuration, + out _)) + requirementsSucceeded = true; + + groupIDToGroup[groupID] = groupProto; + groupIDToLoadoutIDToItem[groupID] = groupProto.Items.ToDictionary(i => i.ID, i => i); + groupIDToGroupItems[groupID] = new HashSet(); + } + + if (!groupIDToLoadoutIDToItem[groupID].TryGetValue(loadoutProto.ID, out var groupItem)) + { + Log.Error($"Expected loadout item '{loadoutProto.ID}' to be part of the items in the prototype of group '{groupID}'"); + skip = true; + } + else + { + groupIDToGroupItems[groupID].Add(groupItem); + } + } + + if (!requirementsSucceeded || skip) + continue; + + loadoutIDToPreferenceAndProto[loadoutID] = (loadout, loadoutProto); + } + + // Add groups with minimum items + foreach (var groupProto in _groupProtosWithMinItems) + { + if (groupIDToGroup.ContainsKey(groupProto.ID) || + !_characterRequirements.CheckRequirementsValid( + groupProto.Requirements, job, profile, playTimes, whitelisted, groupProto, + EntityManager, _prototype, _configuration, out _)) + continue; + + groupIDToGroup[groupProto.ID] = groupProto; + groupIDToLoadoutIDToItem[groupProto.ID] = groupProto.Items.ToDictionary(i => i.ID, i => i); + groupIDToGroupItems[groupProto.ID] = new HashSet(); + } + + if (groupIDToGroup.Count == 0) + return loadoutIDToPreferenceAndProto.Values.ToList(); + + // Use a clone for the foreach loop since we are modifying the original + var originalGroupIDToGroupItems = new Dictionary>(groupIDToGroupItems); + + // Start modifying the loadout preferences based on MinItems/MaxItems + foreach (var (groupID, items) in originalGroupIDToGroupItems) + { + if (!groupIDToGroup.TryGetValue(groupID, out var groupProto)) + continue; + + var count = items.Count; + // Remove items, prioritizing removing the higher priority items first + if (count > groupProto.MaxItems) + { + var sortedItems = items.OrderByDescending(i => i.Priority).ThenBy(i => i.ID); + + foreach (var itemToRemove in sortedItems) + { + loadoutIDToPreferenceAndProto.Remove(itemToRemove.ID); + count--; + + if (count <= groupProto.MaxItems) + break; + } + } + // For each loadout group that doesn't have enough items, add until MinItems is satisfied + else if (count < groupProto.MinItems) + { + foreach (var itemToAdd in groupProto.Items) + { + if (!_prototype.TryIndex(itemToAdd.ID, out var loadoutProto)) + continue; + + if (!_characterRequirements.CheckRequirementsValid( + loadoutProto.Requirements, job, profile, playTimes, whitelisted, loadoutProto, + EntityManager, _prototype, _configuration, + out _)) + continue; + + var skip = false; + var requirementsSucceeded = false; + + foreach (var otherGroupID in loadoutProto.Groups) + { + if (groupIDToGroup.ContainsKey(otherGroupID)) + { + requirementsSucceeded = true; + } + else + { + if (!_prototype.TryIndex(otherGroupID, out var otherGroupProto)) + continue; + + if (_characterRequirements.CheckRequirementsValid( + otherGroupProto.Requirements, job, profile, playTimes, whitelisted, otherGroupProto, + EntityManager, _prototype, _configuration, + out _)) + requirementsSucceeded = true; + + groupIDToGroup[otherGroupID] = otherGroupProto; + groupIDToLoadoutIDToItem[otherGroupID] = otherGroupProto.Items.ToDictionary(i => i.ID, i => i); + groupIDToGroupItems[otherGroupID] = new HashSet(); + } + + if (!groupIDToLoadoutIDToItem[otherGroupID].TryGetValue(loadoutProto.ID, out var _)) + { + Log.Error($"Expected loadout item '{loadoutProto.ID}' to be part of the items in the prototype of group '{otherGroupID}'"); + skip = true; + continue; + } + + // If adding this item would make other groups have more than the maximum items, don't add it + if (groupIDToGroupItems[otherGroupID].Count + 1 > groupIDToGroup[otherGroupID].MaxItems) + skip = true; + } + + if (!requirementsSucceeded || skip) + continue; + + // Add this item to other groups for the sake of counting + foreach (var otherGroupID in loadoutProto.Groups) + { + groupIDToGroupItems[otherGroupID].Add(groupIDToLoadoutIDToItem[otherGroupID][loadoutProto.ID]); + } + + loadoutIDToPreferenceAndProto[itemToAdd.ID] = (new LoadoutPreference(itemToAdd.ID), loadoutProto); + count++; + + if (count >= groupProto.MaxItems) + break; + } + } + } + + return loadoutIDToPreferenceAndProto.Values.ToList(); + } } diff --git a/Content.Shared/Prototypes/CharacterItemGroupPrototype.cs b/Content.Shared/Prototypes/CharacterItemGroupPrototype.cs index 995ffa7ac05..a424582ea11 100644 --- a/Content.Shared/Prototypes/CharacterItemGroupPrototype.cs +++ b/Content.Shared/Prototypes/CharacterItemGroupPrototype.cs @@ -19,6 +19,14 @@ public sealed partial class CharacterItemGroupPrototype : IPrototype [DataField] public int MaxItems = 1; + /// The minimum amount of items required from this group. + [DataField] + public int MinItems = 0; + + /// The character requirements applied to all items in this group. + [DataField] + public List Requirements = new(); + /// An arbitrary list of traits, loadouts, etc [DataField] public List Items = new(); @@ -33,6 +41,12 @@ public sealed partial class CharacterItemGroupItem [DataField("id", required: true)] public string ID; + /// The priority for this item to be selected as the default item. + /// The higher priority items will always be selected first over + /// lower-priority items. + [DataField] + public int Priority = 0; + /// Tries to get Value from whatever Type maps to on a character profile //TODO: Make a test for this public bool TryGetValue(HumanoidCharacterProfile profile, IPrototypeManager protoMan, [NotNullWhen(true)] out object? value) diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirosuit.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirosuit.yml new file mode 100644 index 00000000000..e9b00a03168 --- /dev/null +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirosuit.yml @@ -0,0 +1,12 @@ +- type: characterItemGroup + id: LoadoutPlasmamanEnvirosuit + minItems: 1 + maxItems: 1 + requirements: + - !type:CharacterSpeciesRequirement + species: + - Plasmaman + items: + - type: loadout + id: LoadoutSpeciesUniformEnvirosuit + priority: 0 diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/mask.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/mask.yml new file mode 100644 index 00000000000..a9561a96940 --- /dev/null +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/mask.yml @@ -0,0 +1,15 @@ +- type: characterItemGroup + id: LoadoutPlasmamanMask + minItems: 1 + maxItems: 1 + requirements: + - !type:CharacterSpeciesRequirement + species: + - Plasmaman + items: + - type: loadout + id: LoadoutMaskBreath + priority: 5 + - type: loadout + id: LoadoutMaskGas + priority: 0 diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml new file mode 100644 index 00000000000..a6389d791be --- /dev/null +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml @@ -0,0 +1,18 @@ +- type: characterItemGroup + id: LoadoutPlasmamanPlasmaTank + minItems: 1 + maxItems: 1 + requirements: + - !type:CharacterSpeciesRequirement + species: + - Plasmaman + items: + - type: loadout + id: LoadoutSpeciesEmergencyPlasmaTank + priority: 10 + - type: loadout + id: LoadoutSpeciesExtendedEmergencyPlasmaTank + priority: 0 + - type: loadout + id: LoadoutSpeciesDoubleEmergencyPlasmaTank + priority: 5 diff --git a/Resources/Prototypes/Datasets/Names/plasmaman_last.yml b/Resources/Prototypes/Datasets/Names/plasmaman_last.yml index f62a0b921cd..10f51974aaf 100644 --- a/Resources/Prototypes/Datasets/Names/plasmaman_last.yml +++ b/Resources/Prototypes/Datasets/Names/plasmaman_last.yml @@ -4,12 +4,12 @@ - I - II - III - - IV=IIII + - IV - V - VI - VII - - VIII=IIX - - IX=VIIII + - VIII + - IX - X - XI - XII diff --git a/Resources/Prototypes/Loadouts/Generic/mask.yml b/Resources/Prototypes/Loadouts/Generic/mask.yml index 3d3754c6f7d..4c5b60e072a 100644 --- a/Resources/Prototypes/Loadouts/Generic/mask.yml +++ b/Resources/Prototypes/Loadouts/Generic/mask.yml @@ -23,14 +23,12 @@ - type: loadout id: LoadoutMaskGas category: Mask + groups: [ LoadoutMasks, LoadoutPlasmamanMask ] cost: 1 exclusive: true canBeHeirloom: true items: - ClothingMaskGas - requirements: - - !type:CharacterItemGroupRequirement - group: LoadoutMasks # Maskbands - type: loadout diff --git a/Resources/Prototypes/Loadouts/Generic/species.yml b/Resources/Prototypes/Loadouts/Generic/species.yml index 0439403e451..96c3dce7246 100644 --- a/Resources/Prototypes/Loadouts/Generic/species.yml +++ b/Resources/Prototypes/Loadouts/Generic/species.yml @@ -43,41 +43,42 @@ - type: loadout id: LoadoutSpeciesEmergencyPlasmaTank category: Species + groups: [ LoadoutPlasmamanPlasmaTank ] cost: 0 - requirements: - - !type:CharacterSpeciesRequirement - species: - - Plasmaman - - !type:CharacterItemGroupRequirement - group: LoadoutAirTank items: - EmergencyPlasmaTankFilled - # TEMPORARY - - ClothingMaskBreath - - ClothingUniformEnvirosuit - type: loadout id: LoadoutSpeciesExtendedEmergencyPlasmaTank category: Species + groups: [ LoadoutPlasmamanPlasmaTank ] cost: 1 - requirements: - - !type:CharacterSpeciesRequirement - species: - - Plasmaman - - !type:CharacterItemGroupRequirement - group: LoadoutAirTank items: - ExtendedEmergencyPlasmaTankFilled - type: loadout id: LoadoutSpeciesDoubleEmergencyPlasmaTank category: Species + groups: [ LoadoutPlasmamanPlasmaTank ] cost: 2 - requirements: - - !type:CharacterSpeciesRequirement - species: - - Plasmaman - - !type:CharacterItemGroupRequirement - group: LoadoutAirTank items: - DoubleEmergencyPlasmaTankFilled + +- type: loadout + id: LoadoutSpeciesUniformEnvirosuit + category: Species + groups: [ LoadoutPlasmamanEnvirosuit ] + cost: 0 + exclusive: true + items: + - ClothingUniformEnvirosuit + +- type: loadout + id: LoadoutMaskBreath + category: Mask + groups: [ LoadoutPlasmamanMask ] + cost: 1 + exclusive: true + canBeHeirloom: true + items: + - ClothingMaskBreath From e1935d35c7a4bd969217c8b0cc913867aefcf946 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Fri, 29 Nov 2024 13:24:37 +0800 Subject: [PATCH 13/68] feat: toggle internals and envirosuit Internals are still turned off by toggling the envirosuit tho so might need to cherry pick #28595 from wizden --- Content.Server/Body/Systems/InternalsSystem.cs | 14 ++++++++++---- .../Components/ToggleStartingGearComponent.cs | 16 ++++++++++++++++ .../EntitySystems/ToggleableClothingSystem.cs | 10 ++++++++++ .../Loadouts/Systems/SharedLoadoutSystem.cs | 3 +++ .../Entities/Clothing/Head/base_clothinghead.yml | 1 + .../Entities/Clothing/Head/envirohelms.yml | 1 - .../Entities/Mobs/Species/plasmaman.yml | 2 ++ 7 files changed, 42 insertions(+), 5 deletions(-) create mode 100644 Content.Shared/Clothing/Components/ToggleStartingGearComponent.cs diff --git a/Content.Server/Body/Systems/InternalsSystem.cs b/Content.Server/Body/Systems/InternalsSystem.cs index fdcc76718cf..07a46c4c2f1 100644 --- a/Content.Server/Body/Systems/InternalsSystem.cs +++ b/Content.Server/Body/Systems/InternalsSystem.cs @@ -38,15 +38,15 @@ public override void Initialize() SubscribeLocalEvent>(OnGetInteractionVerbs); SubscribeLocalEvent(OnDoAfter); - SubscribeLocalEvent(OnStartingGear); + SubscribeLocalEvent(OnStartingGear); } - private void OnStartingGear(ref StartingGearEquippedEvent ev) + private void OnStartingGear(EntityUid uid, InternalsComponent component, ref StartingGearEquippedEvent ev) { - if (!_internalsQuery.TryComp(ev.Entity, out var internals) || internals.BreathToolEntity == null) + if (component.BreathToolEntity == null) return; - ToggleInternals(ev.Entity, ev.Entity, force: false, internals); + ToggleInternals(uid, uid, force: false, component); } private void OnGetInteractionVerbs( @@ -173,6 +173,7 @@ public void DisconnectBreathTool(Entity ent) _atmos.DisconnectInternals(breathTool); DisconnectTank(ent); } + Log.Error("DisconnectBreathTool"); _alerts.ShowAlert(ent, ent.Comp.InternalsAlert, GetSeverity(ent)); } @@ -183,6 +184,7 @@ public void ConnectBreathTool(Entity ent, EntityUid toolEnti { _atmos.DisconnectInternals(tool); } + Log.Error("ConnectBreathTool"); ent.Comp.BreathToolEntity = toolEntity; _alerts.ShowAlert(ent, ent.Comp.InternalsAlert, GetSeverity(ent)); @@ -196,6 +198,8 @@ public void DisconnectTank(InternalsComponent? component) if (TryComp(component.GasTankEntity, out GasTankComponent? tank)) _gasTank.DisconnectFromInternals((component.GasTankEntity.Value, tank)); + Log.Error("DisconnectTank"); + component.GasTankEntity = null; _alerts.ShowAlert(component.Owner, component.InternalsAlert, GetSeverity(component)); } @@ -208,6 +212,8 @@ public bool TryConnectTank(Entity ent, EntityUid tankEntity) if (TryComp(ent.Comp.GasTankEntity, out GasTankComponent? tank)) _gasTank.DisconnectFromInternals((ent.Comp.GasTankEntity.Value, tank)); + Log.Error("TryConnectTank"); + ent.Comp.GasTankEntity = tankEntity; _alerts.ShowAlert(ent, ent.Comp.InternalsAlert, GetSeverity(ent)); return true; diff --git a/Content.Shared/Clothing/Components/ToggleStartingGearComponent.cs b/Content.Shared/Clothing/Components/ToggleStartingGearComponent.cs new file mode 100644 index 00000000000..827531da3bd --- /dev/null +++ b/Content.Shared/Clothing/Components/ToggleStartingGearComponent.cs @@ -0,0 +1,16 @@ +using Robust.Shared.GameStates; + +namespace Content.Shared.Clothing.Components; + +/// +/// Tries to toggle clothing after spawning with equipment. +/// +[RegisterComponent, NetworkedComponent, AutoGenerateComponentState] +public sealed partial class ToggleStartingGearComponent : Component +{ + /// + /// The inventory slot to toggle. + /// + [DataField(required: true), AutoNetworkedField] + public string Slot; +} diff --git a/Content.Shared/Clothing/EntitySystems/ToggleableClothingSystem.cs b/Content.Shared/Clothing/EntitySystems/ToggleableClothingSystem.cs index 4abe7bc876a..1a78dacf3ba 100644 --- a/Content.Shared/Clothing/EntitySystems/ToggleableClothingSystem.cs +++ b/Content.Shared/Clothing/EntitySystems/ToggleableClothingSystem.cs @@ -6,6 +6,7 @@ using Content.Shared.Inventory; using Content.Shared.Inventory.Events; using Content.Shared.Popups; +using Content.Shared.Roles; using Content.Shared.Strip; using Content.Shared.Verbs; using Robust.Shared.Containers; @@ -49,6 +50,8 @@ public override void Initialize() SubscribeLocalEvent>(OnGetVerbs); SubscribeLocalEvent>(OnGetAttachedStripVerbsEvent); SubscribeLocalEvent(OnDoAfterComplete); + + SubscribeLocalEvent(OnStartingGearEquipped); } private void GetRelayedVerbs(EntityUid uid, ToggleableClothingComponent component, InventoryRelayedEvent> args) @@ -298,6 +301,13 @@ private void OnMapInit(EntityUid uid, ToggleableClothingComponent component, Map if (_actionContainer.EnsureAction(uid, ref component.ActionEntity, out var action, component.Action)) _actionsSystem.SetEntityIcon(component.ActionEntity.Value, component.ClothingUid, action); } + + private void OnStartingGearEquipped(EntityUid uid, ToggleStartingGearComponent component, ref StartingGearEquippedEvent ev) + { + if (_inventorySystem.TryGetSlotEntity(uid, component.Slot, out var clothing) && + TryComp(clothing, out var toggleable)) + ToggleClothing(uid, (EntityUid) clothing, toggleable); + } } public sealed partial class ToggleClothingEvent : InstantActionEvent diff --git a/Content.Shared/Clothing/Loadouts/Systems/SharedLoadoutSystem.cs b/Content.Shared/Clothing/Loadouts/Systems/SharedLoadoutSystem.cs index 0cb6d1fda16..f8421d25648 100644 --- a/Content.Shared/Clothing/Loadouts/Systems/SharedLoadoutSystem.cs +++ b/Content.Shared/Clothing/Loadouts/Systems/SharedLoadoutSystem.cs @@ -155,6 +155,9 @@ private void OnMapInit(EntityUid uid, LoadoutComponent component, MapInitEvent a } } + var ev = new StartingGearEquippedEvent(uid); + RaiseLocalEvent(uid, ref ev); + // Return a list of items that couldn't be equipped so the server can handle it if it wants // The server has more information about the inventory system than the client does and the client doesn't need to put loadouts in backpacks return (failedLoadouts, allLoadouts); diff --git a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml index cb13ebcf6e3..0cc37726bf9 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml @@ -203,6 +203,7 @@ slots: [ HEAD ] - type: IgniteFromGasImmunity - type: EyeProtection + - type: BreathMask - type: GroupExamine - type: IngestionBlocker - type: Tag diff --git a/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml b/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml index a646b945e1e..968219cdb86 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml @@ -4,7 +4,6 @@ name: plasma envirosuit helmet description: A special containment helmet that allows plasma-based lifeforms to exist safely in an oxygenated environment. components: - - type: BreathMask - type: Sprite sprite: Clothing/Head/Envirohelms/plain.rsi - type: Clothing diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml index a329a04402b..94bee36d934 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -68,6 +68,8 @@ - TauCetiBasic - Calcic - type: FootPrints + - type: ToggleStartingGear + slot: jumpsuit - type: entity parent: BaseSpeciesDummy From 75f668ee037cdeeea4b70bd66f4518a9eceaac66 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Fri, 29 Nov 2024 13:27:39 +0800 Subject: [PATCH 14/68] remove stray log lines --- Content.Server/Body/Systems/InternalsSystem.cs | 6 ------ 1 file changed, 6 deletions(-) diff --git a/Content.Server/Body/Systems/InternalsSystem.cs b/Content.Server/Body/Systems/InternalsSystem.cs index 07a46c4c2f1..a5bfdb2621e 100644 --- a/Content.Server/Body/Systems/InternalsSystem.cs +++ b/Content.Server/Body/Systems/InternalsSystem.cs @@ -173,7 +173,6 @@ public void DisconnectBreathTool(Entity ent) _atmos.DisconnectInternals(breathTool); DisconnectTank(ent); } - Log.Error("DisconnectBreathTool"); _alerts.ShowAlert(ent, ent.Comp.InternalsAlert, GetSeverity(ent)); } @@ -184,7 +183,6 @@ public void ConnectBreathTool(Entity ent, EntityUid toolEnti { _atmos.DisconnectInternals(tool); } - Log.Error("ConnectBreathTool"); ent.Comp.BreathToolEntity = toolEntity; _alerts.ShowAlert(ent, ent.Comp.InternalsAlert, GetSeverity(ent)); @@ -198,8 +196,6 @@ public void DisconnectTank(InternalsComponent? component) if (TryComp(component.GasTankEntity, out GasTankComponent? tank)) _gasTank.DisconnectFromInternals((component.GasTankEntity.Value, tank)); - Log.Error("DisconnectTank"); - component.GasTankEntity = null; _alerts.ShowAlert(component.Owner, component.InternalsAlert, GetSeverity(component)); } @@ -212,8 +208,6 @@ public bool TryConnectTank(Entity ent, EntityUid tankEntity) if (TryComp(ent.Comp.GasTankEntity, out GasTankComponent? tank)) _gasTank.DisconnectFromInternals((ent.Comp.GasTankEntity.Value, tank)); - Log.Error("TryConnectTank"); - ent.Comp.GasTankEntity = tankEntity; _alerts.ShowAlert(ent, ent.Comp.InternalsAlert, GetSeverity(ent)); return true; From 30d778f23754f8a351a32bc2b19fcaf412fc8671 Mon Sep 17 00:00:00 2001 From: Plykiya <58439124+Plykiya@users.noreply.github.com> Date: Thu, 6 Jun 2024 00:01:45 -0700 Subject: [PATCH 15/68] Internals are kept on as long as any breathing tool is on (#28595) --- .../AtmosphereSystem.BreathTool.cs | 14 ++++----- .../Atmos/EntitySystems/GasTankSystem.cs | 2 +- .../Body/Components/InternalsComponent.cs | 2 +- .../Body/Systems/InternalsSystem.cs | 30 ++++++++----------- Content.Server/Body/Systems/LungSystem.cs | 2 +- 5 files changed, 23 insertions(+), 27 deletions(-) diff --git a/Content.Server/Atmos/EntitySystems/AtmosphereSystem.BreathTool.cs b/Content.Server/Atmos/EntitySystems/AtmosphereSystem.BreathTool.cs index 741a9341e79..327804f39a4 100644 --- a/Content.Server/Atmos/EntitySystems/AtmosphereSystem.BreathTool.cs +++ b/Content.Server/Atmos/EntitySystems/AtmosphereSystem.BreathTool.cs @@ -10,21 +10,21 @@ private void InitializeBreathTool() SubscribeLocalEvent(OnBreathToolShutdown); } - private void OnBreathToolShutdown(EntityUid uid, BreathToolComponent component, ComponentShutdown args) + private void OnBreathToolShutdown(Entity entity, ref ComponentShutdown args) { - DisconnectInternals(component); + DisconnectInternals(entity); } - public void DisconnectInternals(BreathToolComponent component) + public void DisconnectInternals(Entity entity) { - var old = component.ConnectedInternalsEntity; - component.ConnectedInternalsEntity = null; + var old = entity.Comp.ConnectedInternalsEntity; + entity.Comp.ConnectedInternalsEntity = null; if (TryComp(old, out var internalsComponent)) { - _internals.DisconnectBreathTool((old.Value, internalsComponent)); + _internals.DisconnectBreathTool((old.Value, internalsComponent), entity.Owner); } - component.IsFunctional = false; + entity.Comp.IsFunctional = false; } } diff --git a/Content.Server/Atmos/EntitySystems/GasTankSystem.cs b/Content.Server/Atmos/EntitySystems/GasTankSystem.cs index 07594820fcc..baad739804b 100644 --- a/Content.Server/Atmos/EntitySystems/GasTankSystem.cs +++ b/Content.Server/Atmos/EntitySystems/GasTankSystem.cs @@ -220,7 +220,7 @@ public GasMixture RemoveAirVolume(Entity gasTank, float volume public bool CanConnectToInternals(GasTankComponent component) { var internals = GetInternalsComponent(component, component.User); - return internals != null && internals.BreathToolEntity != null && !component.IsValveOpen; + return internals != null && internals.BreathTools.Count != 0 && !component.IsValveOpen; } public void ConnectToInternals(Entity ent) diff --git a/Content.Server/Body/Components/InternalsComponent.cs b/Content.Server/Body/Components/InternalsComponent.cs index 098f1789218..ef908f96553 100644 --- a/Content.Server/Body/Components/InternalsComponent.cs +++ b/Content.Server/Body/Components/InternalsComponent.cs @@ -13,7 +13,7 @@ public sealed partial class InternalsComponent : Component public EntityUid? GasTankEntity; [ViewVariables] - public EntityUid? BreathToolEntity; + public HashSet BreathTools { get; set; } = new(); /// /// Toggle Internals delay when the target is not you. diff --git a/Content.Server/Body/Systems/InternalsSystem.cs b/Content.Server/Body/Systems/InternalsSystem.cs index a5bfdb2621e..ba495703ca2 100644 --- a/Content.Server/Body/Systems/InternalsSystem.cs +++ b/Content.Server/Body/Systems/InternalsSystem.cs @@ -43,7 +43,7 @@ public override void Initialize() private void OnStartingGear(EntityUid uid, InternalsComponent component, ref StartingGearEquippedEvent ev) { - if (component.BreathToolEntity == null) + if (component.BreathTools.Count == 0) return; ToggleInternals(uid, uid, force: false, component); @@ -95,7 +95,7 @@ public void ToggleInternals( } // If they're not on then check if we have a mask to use - if (internals.BreathToolEntity is null) + if (internals.BreathTools.Count == 0) { _popupSystem.PopupEntity(Loc.GetString("internals-no-breath-tool"), uid, user); return; @@ -163,28 +163,24 @@ private void OnInhaleLocation(Entity ent, ref InhaleLocation _alerts.ShowAlert(ent, ent.Comp.InternalsAlert, GetSeverity(ent)); } } - public void DisconnectBreathTool(Entity ent) + public void DisconnectBreathTool(Entity ent, EntityUid toolEntity) { - var old = ent.Comp.BreathToolEntity; - ent.Comp.BreathToolEntity = null; + ent.Comp.BreathTools.Remove(toolEntity); - if (TryComp(old, out BreathToolComponent? breathTool)) - { - _atmos.DisconnectInternals(breathTool); + if (TryComp(toolEntity, out BreathToolComponent? breathTool)) + _atmos.DisconnectInternals((toolEntity, breathTool)); + + if (ent.Comp.BreathTools.Count == 0) DisconnectTank(ent); - } _alerts.ShowAlert(ent, ent.Comp.InternalsAlert, GetSeverity(ent)); } public void ConnectBreathTool(Entity ent, EntityUid toolEntity) { - if (TryComp(ent.Comp.BreathToolEntity, out BreathToolComponent? tool)) - { - _atmos.DisconnectInternals(tool); - } + if (!ent.Comp.BreathTools.Add(toolEntity)) + return; - ent.Comp.BreathToolEntity = toolEntity; _alerts.ShowAlert(ent, ent.Comp.InternalsAlert, GetSeverity(ent)); } @@ -202,7 +198,7 @@ public void DisconnectTank(InternalsComponent? component) public bool TryConnectTank(Entity ent, EntityUid tankEntity) { - if (ent.Comp.BreathToolEntity is null) + if (ent.Comp.BreathTools.Count == 0) return false; if (TryComp(ent.Comp.GasTankEntity, out GasTankComponent? tank)) @@ -221,14 +217,14 @@ public bool AreInternalsWorking(EntityUid uid, InternalsComponent? component = n public bool AreInternalsWorking(InternalsComponent component) { - return TryComp(component.BreathToolEntity, out BreathToolComponent? breathTool) + return TryComp(component.BreathTools.FirstOrNull(), out BreathToolComponent? breathTool) && breathTool.IsFunctional && HasComp(component.GasTankEntity); } private short GetSeverity(InternalsComponent component) { - if (component.BreathToolEntity is null || !AreInternalsWorking(component)) + if (component.BreathTools.Count == 0 || !AreInternalsWorking(component)) return 2; // If pressure in the tank is below low pressure threshold, flash warning on internals UI diff --git a/Content.Server/Body/Systems/LungSystem.cs b/Content.Server/Body/Systems/LungSystem.cs index e83d3c32a25..4765504dc39 100644 --- a/Content.Server/Body/Systems/LungSystem.cs +++ b/Content.Server/Body/Systems/LungSystem.cs @@ -58,7 +58,7 @@ private void OnMaskToggled(Entity ent, ref ItemMaskToggledE { if (args.IsToggled || args.IsEquip) { - _atmos.DisconnectInternals(ent.Comp); + _atmos.DisconnectInternals(ent); } else { From 3a78e485e0c1976aa729934f24303c57c59ea84b Mon Sep 17 00:00:00 2001 From: Skubman Date: Fri, 29 Nov 2024 16:28:46 +0800 Subject: [PATCH 16/68] revert change on cloaks.yml plasmillions must endure 3 leading spaces on an empty lline Signed-off-by: Skubman --- Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml b/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml index 8eb32b135c2..6ea57503d32 100644 --- a/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml +++ b/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml @@ -8,7 +8,7 @@ sprite: Clothing/Neck/Cloaks/centcomcloakformal.rsi - type: StealTarget stealGroup: HeadCloak # leaving this here because I suppose it might be interesting? - + - type: entity parent: ClothingNeckBase id: ClothingNeckCloakCap From da2ebdf51267a6b8ed35f7ac79cccbe2b01a7055 Mon Sep 17 00:00:00 2001 From: Skubman Date: Fri, 29 Nov 2024 16:30:13 +0800 Subject: [PATCH 17/68] Update cloaks.yml Signed-off-by: Skubman --- Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml b/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml index 6ea57503d32..f867314e897 100644 --- a/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml +++ b/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml @@ -8,7 +8,7 @@ sprite: Clothing/Neck/Cloaks/centcomcloakformal.rsi - type: StealTarget stealGroup: HeadCloak # leaving this here because I suppose it might be interesting? - + - type: entity parent: ClothingNeckBase id: ClothingNeckCloakCap From 5cf1991fc3b1a1e967e965f29079277f71ad0fd0 Mon Sep 17 00:00:00 2001 From: Skubman Date: Fri, 29 Nov 2024 16:31:10 +0800 Subject: [PATCH 18/68] Update cloaks.yml Signed-off-by: Skubman --- Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml b/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml index f867314e897..f31b38c20c7 100644 --- a/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml +++ b/Resources/Prototypes/Entities/Clothing/Neck/cloaks.yml @@ -271,3 +271,4 @@ components: - type: Sprite sprite: Clothing/Neck/Cloaks/pan.rsi + From 6d2e865cc66504df5a7b40eee2560726005e2bda Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sat, 30 Nov 2024 03:06:03 +0800 Subject: [PATCH 19/68] feat: add Patrick Hand font for skeleton language --- Resources/Fonts/PatrickHand/LICENSE.txt | 93 ++++++++++++++++++ .../Fonts/PatrickHand/PatrickHand-Regular.ttf | Bin 0 -> 212112 bytes Resources/Locale/en-US/language/languages.ftl | 2 +- .../Language/Species-Specific/plasmaman.yml | 4 +- Resources/Prototypes/fonts.yml | 4 + 5 files changed, 100 insertions(+), 3 deletions(-) create mode 100644 Resources/Fonts/PatrickHand/LICENSE.txt create mode 100644 Resources/Fonts/PatrickHand/PatrickHand-Regular.ttf diff --git a/Resources/Fonts/PatrickHand/LICENSE.txt b/Resources/Fonts/PatrickHand/LICENSE.txt new file mode 100644 index 00000000000..ab67251a164 --- /dev/null +++ b/Resources/Fonts/PatrickHand/LICENSE.txt @@ -0,0 +1,93 @@ +Copyright (c) 2010-2012 Patrick Wagesreiter (mail@patrickwagesreiter.at) + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +https://openfontlicense.org + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/Resources/Fonts/PatrickHand/PatrickHand-Regular.ttf b/Resources/Fonts/PatrickHand/PatrickHand-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..a1b90baea72502a3cdaba26c2c27a8a667aad45c GIT binary patch literal 212112 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
4=L=yOya+FxmcRmi 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 _j5 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 literal 0 HcmV?d00001 diff --git a/Resources/Locale/en-US/language/languages.ftl b/Resources/Locale/en-US/language/languages.ftl index 7a73f944f0e..c4378d0143d 100644 --- a/Resources/Locale/en-US/language/languages.ftl +++ b/Resources/Locale/en-US/language/languages.ftl @@ -59,7 +59,7 @@ language-RobotTalk-name = RobotTalk language-RobotTalk-description = A language consisting of harsh binary chirps, whistles, hisses, and whines. Organic tongues cannot speak it without aid from special translators. language-Calcic-name = Calcic -language-Calcic-description = The disjointed and staccato language of skeletons and plasmamen. +language-Calcic-description = The bone-rattling language of skeletons and plasmamen. It sounds like a harmonic trousle of bones with a mildly humerus tone, sans any off-tune ribbing. language-Sign-name = Tau-Ceti Basic Sign Language language-Sign-description = TCB-SL for short, this sign language is prevalent among mute and deaf people. diff --git a/Resources/Prototypes/Language/Species-Specific/plasmaman.yml b/Resources/Prototypes/Language/Species-Specific/plasmaman.yml index 88fa9794e83..d9e6d4182ea 100644 --- a/Resources/Prototypes/Language/Species-Specific/plasmaman.yml +++ b/Resources/Prototypes/Language/Species-Specific/plasmaman.yml @@ -2,8 +2,8 @@ id: Calcic isVisibleLanguage: true speech: - fontId: Papyrus - color: "#bbbbbb" + fontId: PatrickHand + color: "#ebddcc" obfuscation: !type:SyllableObfuscation minSyllables: 1 diff --git a/Resources/Prototypes/fonts.yml b/Resources/Prototypes/fonts.yml index c61a5fb8041..3823ac46d41 100644 --- a/Resources/Prototypes/fonts.yml +++ b/Resources/Prototypes/fonts.yml @@ -69,3 +69,7 @@ - type: font id: Cambria path: /Fonts/Cambria.ttf + +- type: font + id: PatrickHand + path: /Fonts/PatrickHand/PatrickHand-Regular.ttf From 3d7533e415b2881b9976ac76953b2944fde5c071 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sat, 30 Nov 2024 07:58:54 +0800 Subject: [PATCH 20/68] remove unneeded breath masks from plasmaman gear --- .../ToggleFirstBreathToolComponent.cs | 13 +++++++ .../Body/Systems/InternalsSystem.cs | 38 +++++++++++++++++++ .../Species/Plasmaman/mask.yml | 15 -------- .../Entities/Mobs/Species/plasmaman.yml | 1 + .../Language/Species-Specific/plasmaman.yml | 2 +- .../Prototypes/Loadouts/Generic/mask.yml | 4 +- .../Prototypes/Loadouts/Generic/species.yml | 10 ----- 7 files changed, 56 insertions(+), 27 deletions(-) create mode 100644 Content.Server/Body/Components/ToggleFirstBreathToolComponent.cs delete mode 100644 Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/mask.yml diff --git a/Content.Server/Body/Components/ToggleFirstBreathToolComponent.cs b/Content.Server/Body/Components/ToggleFirstBreathToolComponent.cs new file mode 100644 index 00000000000..d427102591e --- /dev/null +++ b/Content.Server/Body/Components/ToggleFirstBreathToolComponent.cs @@ -0,0 +1,13 @@ +using Content.Shared.Alert; +using Robust.Shared.Prototypes; + +namespace Content.Server.Body.Components +{ + /// + /// Toggles the internals of the first breath mask the entity wears then deletes itself. + /// + [RegisterComponent] + public sealed partial class ToggleFirstBreathToolComponent : Component + { + } +} diff --git a/Content.Server/Body/Systems/InternalsSystem.cs b/Content.Server/Body/Systems/InternalsSystem.cs index ba495703ca2..1d3fc58f936 100644 --- a/Content.Server/Body/Systems/InternalsSystem.cs +++ b/Content.Server/Body/Systems/InternalsSystem.cs @@ -39,6 +39,7 @@ public override void Initialize() SubscribeLocalEvent(OnDoAfter); SubscribeLocalEvent(OnStartingGear); + SubscribeLocalEvent(OnEquip); } private void OnStartingGear(EntityUid uid, InternalsComponent component, ref StartingGearEquippedEvent ev) @@ -49,6 +50,25 @@ private void OnStartingGear(EntityUid uid, InternalsComponent component, ref Sta ToggleInternals(uid, uid, force: false, component); } + private void OnEquip(EntityUid uid, ToggleFirstBreathToolComponent component, ref BreathToolConnectedEvent ev) + { + if (!HasComp(ev.BreathTool) || + !TryComp(uid, out var internals)) + return; + + // Internals are already on so no more use for this component + if (AreInternalsWorking(internals)) + { + RemComp(uid); + return; + } + + ToggleInternals(uid, uid, force: false, internals); + + if (AreInternalsWorking(internals)) + RemComp(uid); + } + private void OnGetInteractionVerbs( Entity ent, ref GetVerbsEvent args) @@ -182,6 +202,9 @@ public void ConnectBreathTool(Entity ent, EntityUid toolEnti return; _alerts.ShowAlert(ent, ent.Comp.InternalsAlert, GetSeverity(ent)); + + var ev = new BreathToolConnectedEvent(ent.Owner, toolEntity); + RaiseLocalEvent(ent.Owner, ev); } public void DisconnectTank(InternalsComponent? component) @@ -272,3 +295,18 @@ private short GetSeverity(InternalsComponent component) return null; } } + +/// +/// Raised on an equipee when it has breath tools connected. +/// +public sealed class BreathToolConnectedEvent : EntityEventArgs +{ + public readonly EntityUid Equipee; + public readonly EntityUid BreathTool; + + public BreathToolConnectedEvent(EntityUid equipee, EntityUid breathTool) + { + Equipee = equipee; + BreathTool = breathTool; + } +} diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/mask.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/mask.yml deleted file mode 100644 index a9561a96940..00000000000 --- a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/mask.yml +++ /dev/null @@ -1,15 +0,0 @@ -- type: characterItemGroup - id: LoadoutPlasmamanMask - minItems: 1 - maxItems: 1 - requirements: - - !type:CharacterSpeciesRequirement - species: - - Plasmaman - items: - - type: loadout - id: LoadoutMaskBreath - priority: 5 - - type: loadout - id: LoadoutMaskGas - priority: 0 diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml index 94bee36d934..179992382ae 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -70,6 +70,7 @@ - type: FootPrints - type: ToggleStartingGear slot: jumpsuit + - type: ToggleFirstBreathTool - type: entity parent: BaseSpeciesDummy diff --git a/Resources/Prototypes/Language/Species-Specific/plasmaman.yml b/Resources/Prototypes/Language/Species-Specific/plasmaman.yml index d9e6d4182ea..15eeeccf9c1 100644 --- a/Resources/Prototypes/Language/Species-Specific/plasmaman.yml +++ b/Resources/Prototypes/Language/Species-Specific/plasmaman.yml @@ -3,7 +3,7 @@ isVisibleLanguage: true speech: fontId: PatrickHand - color: "#ebddcc" + color: "#ede4d8" obfuscation: !type:SyllableObfuscation minSyllables: 1 diff --git a/Resources/Prototypes/Loadouts/Generic/mask.yml b/Resources/Prototypes/Loadouts/Generic/mask.yml index 4c5b60e072a..3d3754c6f7d 100644 --- a/Resources/Prototypes/Loadouts/Generic/mask.yml +++ b/Resources/Prototypes/Loadouts/Generic/mask.yml @@ -23,12 +23,14 @@ - type: loadout id: LoadoutMaskGas category: Mask - groups: [ LoadoutMasks, LoadoutPlasmamanMask ] cost: 1 exclusive: true canBeHeirloom: true items: - ClothingMaskGas + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutMasks # Maskbands - type: loadout diff --git a/Resources/Prototypes/Loadouts/Generic/species.yml b/Resources/Prototypes/Loadouts/Generic/species.yml index 96c3dce7246..ebef5d5877a 100644 --- a/Resources/Prototypes/Loadouts/Generic/species.yml +++ b/Resources/Prototypes/Loadouts/Generic/species.yml @@ -72,13 +72,3 @@ exclusive: true items: - ClothingUniformEnvirosuit - -- type: loadout - id: LoadoutMaskBreath - category: Mask - groups: [ LoadoutPlasmamanMask ] - cost: 1 - exclusive: true - canBeHeirloom: true - items: - - ClothingMaskBreath From ad648c08fc4782a80c72f4fc28d0e34042394bf0 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sat, 30 Nov 2024 08:02:35 +0800 Subject: [PATCH 21/68] rename file for Calcic from `plasmaman.yml` to `skeleton.yml` Its skellies first! --- .../Language/Species-Specific/{plasmaman.yml => skeleton.yml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename Resources/Prototypes/Language/Species-Specific/{plasmaman.yml => skeleton.yml} (100%) diff --git a/Resources/Prototypes/Language/Species-Specific/plasmaman.yml b/Resources/Prototypes/Language/Species-Specific/skeleton.yml similarity index 100% rename from Resources/Prototypes/Language/Species-Specific/plasmaman.yml rename to Resources/Prototypes/Language/Species-Specific/skeleton.yml From 711e48071b50c0a45112c725dbdf009882222937 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sat, 30 Nov 2024 08:31:34 +0800 Subject: [PATCH 22/68] feat: change skeleton language to Chilanka --- Resources/Fonts/Chilanka/Chilanka-Regular.ttf | Bin 0 -> 351984 bytes Resources/Fonts/Chilanka/LICENSE.txt | 93 ++++++++++++++++++ .../Language/Species-Specific/skeleton.yml | 4 +- Resources/Prototypes/fonts.yml | 4 + 4 files changed, 99 insertions(+), 2 deletions(-) create mode 100644 Resources/Fonts/Chilanka/Chilanka-Regular.ttf create mode 100644 Resources/Fonts/Chilanka/LICENSE.txt diff --git a/Resources/Fonts/Chilanka/Chilanka-Regular.ttf b/Resources/Fonts/Chilanka/Chilanka-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..a26bd0336c4dbfd047e4fe64e330a6daef3c7398 GIT binary patch literal 351984 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%0DmEPM^HYG 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
B%^g3Z$ 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

l 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 Bw|xKr literal 0 HcmV?d00001 diff --git a/Resources/Fonts/Chilanka/LICENSE.txt b/Resources/Fonts/Chilanka/LICENSE.txt new file mode 100644 index 00000000000..479a6b72caf --- /dev/null +++ b/Resources/Fonts/Chilanka/LICENSE.txt @@ -0,0 +1,93 @@ +Copyright 2023 The Chilanka Project Authors (https://gitlab.com/smc/fonts/chilanka/) + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +https://openfontlicense.org + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/Resources/Prototypes/Language/Species-Specific/skeleton.yml b/Resources/Prototypes/Language/Species-Specific/skeleton.yml index 15eeeccf9c1..3cc6f1be250 100644 --- a/Resources/Prototypes/Language/Species-Specific/skeleton.yml +++ b/Resources/Prototypes/Language/Species-Specific/skeleton.yml @@ -2,8 +2,8 @@ id: Calcic isVisibleLanguage: true speech: - fontId: PatrickHand - color: "#ede4d8" + fontId: Chilanka + color: "#e3dac9" obfuscation: !type:SyllableObfuscation minSyllables: 1 diff --git a/Resources/Prototypes/fonts.yml b/Resources/Prototypes/fonts.yml index 3823ac46d41..ecaa973c416 100644 --- a/Resources/Prototypes/fonts.yml +++ b/Resources/Prototypes/fonts.yml @@ -73,3 +73,7 @@ - type: font id: PatrickHand path: /Fonts/PatrickHand/PatrickHand-Regular.ttf + +- type: font + id: Chilanka + path: /Fonts/Chilanka/Chilanka-Regular.ttf From 1a9840de9b48925699e18f2979fc780f21eacfcb Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sat, 30 Nov 2024 08:51:34 +0800 Subject: [PATCH 23/68] use LDF Comic Sans font for skeleton language --- Resources/Fonts/Chilanka/Chilanka-Regular.ttf | Bin 351984 -> 0 bytes Resources/Fonts/Chilanka/LICENSE.txt | 93 ------------------ .../Fonts/LDFComicSans/LDFComicSans-Bold.ttf | Bin 0 -> 18596 bytes .../LDFComicSans-HairlineMedium.ttf | Bin 0 -> 19920 bytes .../Fonts/LDFComicSans/LDFComicSans-Light.ttf | Bin 0 -> 19152 bytes .../LDFComicSans/LDFComicSans-Medium.ttf | Bin 0 -> 18892 bytes Resources/Fonts/LDFComicSans/LICENSE.txt | 2 + Resources/Fonts/PatrickHand/LICENSE.txt | 93 ------------------ .../Fonts/PatrickHand/PatrickHand-Regular.ttf | Bin 212112 -> 0 bytes .../Language/Species-Specific/skeleton.yml | 2 +- Resources/Prototypes/fonts.yml | 4 + 11 files changed, 7 insertions(+), 187 deletions(-) delete mode 100644 Resources/Fonts/Chilanka/Chilanka-Regular.ttf delete mode 100644 Resources/Fonts/Chilanka/LICENSE.txt create mode 100644 Resources/Fonts/LDFComicSans/LDFComicSans-Bold.ttf create mode 100644 Resources/Fonts/LDFComicSans/LDFComicSans-HairlineMedium.ttf create mode 100644 Resources/Fonts/LDFComicSans/LDFComicSans-Light.ttf create mode 100644 Resources/Fonts/LDFComicSans/LDFComicSans-Medium.ttf create mode 100644 Resources/Fonts/LDFComicSans/LICENSE.txt delete mode 100644 Resources/Fonts/PatrickHand/LICENSE.txt delete mode 100644 Resources/Fonts/PatrickHand/PatrickHand-Regular.ttf diff --git a/Resources/Fonts/Chilanka/Chilanka-Regular.ttf b/Resources/Fonts/Chilanka/Chilanka-Regular.ttf deleted file mode 100644 index a26bd0336c4dbfd047e4fe64e330a6daef3c7398..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 351984 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%0DmEPM^HYG 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

B%^g3Z$ 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

l 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 Bw|xKr diff --git a/Resources/Fonts/Chilanka/LICENSE.txt b/Resources/Fonts/Chilanka/LICENSE.txt deleted file mode 100644 index 479a6b72caf..00000000000 --- a/Resources/Fonts/Chilanka/LICENSE.txt +++ /dev/null @@ -1,93 +0,0 @@ -Copyright 2023 The Chilanka Project Authors (https://gitlab.com/smc/fonts/chilanka/) - -This Font Software is licensed under the SIL Open Font License, Version 1.1. -This license is copied below, and is also available with a FAQ at: -https://openfontlicense.org - - ------------------------------------------------------------ -SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 ------------------------------------------------------------ - -PREAMBLE -The goals of the Open Font License (OFL) are to stimulate worldwide -development of collaborative font projects, to support the font creation -efforts of academic and linguistic communities, and to provide a free and -open framework in which fonts may be shared and improved in partnership -with others. - -The OFL allows the licensed fonts to be used, studied, modified and -redistributed freely as long as they are not sold by themselves. The -fonts, including any derivative works, can be bundled, embedded, -redistributed and/or sold with any software provided that any reserved -names are not used by derivative works. The fonts and derivatives, -however, cannot be released under any other type of license. The -requirement for fonts to remain under this license does not apply -to any document created using the fonts or their derivatives. - -DEFINITIONS -"Font Software" refers to the set of files released by the Copyright -Holder(s) under this license and clearly marked as such. This may -include source files, build scripts and documentation. - -"Reserved Font Name" refers to any names specified as such after the -copyright statement(s). - -"Original Version" refers to the collection of Font Software components as -distributed by the Copyright Holder(s). - -"Modified Version" refers to any derivative made by adding to, deleting, -or substituting -- in part or in whole -- any of the components of the -Original Version, by changing formats or by porting the Font Software to a -new environment. - -"Author" refers to any designer, engineer, programmer, technical -writer or other person who contributed to the Font Software. - -PERMISSION & CONDITIONS -Permission is hereby granted, free of charge, to any person obtaining -a copy of the Font Software, to use, study, copy, merge, embed, modify, -redistribute, and sell modified and unmodified copies of the Font -Software, subject to the following conditions: - -1) Neither the Font Software nor any of its individual components, -in Original or Modified Versions, may be sold by itself. - -2) Original or Modified Versions of the Font Software may be bundled, -redistributed and/or sold with any software, provided that each copy -contains the above copyright notice and this license. These can be -included either as stand-alone text files, human-readable headers or -in the appropriate machine-readable metadata fields within text or -binary files as long as those fields can be easily viewed by the user. - -3) No Modified Version of the Font Software may use the Reserved Font -Name(s) unless explicit written permission is granted by the corresponding -Copyright Holder. This restriction only applies to the primary font name as -presented to the users. - -4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font -Software shall not be used to promote, endorse or advertise any -Modified Version, except to acknowledge the contribution(s) of the -Copyright Holder(s) and the Author(s) or with their explicit written -permission. - -5) The Font Software, modified or unmodified, in part or in whole, -must be distributed entirely under this license, and must not be -distributed under any other license. The requirement for fonts to -remain under this license does not apply to any document created -using the Font Software. - -TERMINATION -This license becomes null and void if any of the above conditions are -not met. - -DISCLAIMER -THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT -OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE -COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL -DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM -OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/Resources/Fonts/LDFComicSans/LDFComicSans-Bold.ttf b/Resources/Fonts/LDFComicSans/LDFComicSans-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..5bd2ad387d6cd18e7db53768475065c535809e22 GIT binary patch literal 18596 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 literal 0 HcmV?d00001 diff --git a/Resources/Fonts/LDFComicSans/LDFComicSans-HairlineMedium.ttf b/Resources/Fonts/LDFComicSans/LDFComicSans-HairlineMedium.ttf new file mode 100644 index 0000000000000000000000000000000000000000..4da200d1541b7eb32e821aa051638ebc3f71354d GIT binary patch literal 19920 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 QJ$Ul!(iFRA|HtWn0oNdVFaQ7m literal 0 HcmV?d00001 diff --git a/Resources/Fonts/LDFComicSans/LDFComicSans-Medium.ttf b/Resources/Fonts/LDFComicSans/LDFComicSans-Medium.ttf new file mode 100644 index 0000000000000000000000000000000000000000..38b3abf939e0b51ed2699a35c774acb258560e30 GIT binary patch literal 18892 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 literal 0 HcmV?d00001 diff --git a/Resources/Fonts/LDFComicSans/LICENSE.txt b/Resources/Fonts/LDFComicSans/LICENSE.txt new file mode 100644 index 00000000000..f979389d95e --- /dev/null +++ b/Resources/Fonts/LDFComicSans/LICENSE.txt @@ -0,0 +1,2 @@ +license: Freeware +link: https://www.fontspace.com/ldfcomicsans-font-f16951 \ No newline at end of file diff --git a/Resources/Fonts/PatrickHand/LICENSE.txt b/Resources/Fonts/PatrickHand/LICENSE.txt deleted file mode 100644 index ab67251a164..00000000000 --- a/Resources/Fonts/PatrickHand/LICENSE.txt +++ /dev/null @@ -1,93 +0,0 @@ -Copyright (c) 2010-2012 Patrick Wagesreiter (mail@patrickwagesreiter.at) - -This Font Software is licensed under the SIL Open Font License, Version 1.1. -This license is copied below, and is also available with a FAQ at: -https://openfontlicense.org - - ------------------------------------------------------------ -SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 ------------------------------------------------------------ - -PREAMBLE -The goals of the Open Font License (OFL) are to stimulate worldwide -development of collaborative font projects, to support the font creation -efforts of academic and linguistic communities, and to provide a free and -open framework in which fonts may be shared and improved in partnership -with others. - -The OFL allows the licensed fonts to be used, studied, modified and -redistributed freely as long as they are not sold by themselves. The -fonts, including any derivative works, can be bundled, embedded, -redistributed and/or sold with any software provided that any reserved -names are not used by derivative works. The fonts and derivatives, -however, cannot be released under any other type of license. The -requirement for fonts to remain under this license does not apply -to any document created using the fonts or their derivatives. - -DEFINITIONS -"Font Software" refers to the set of files released by the Copyright -Holder(s) under this license and clearly marked as such. This may -include source files, build scripts and documentation. - -"Reserved Font Name" refers to any names specified as such after the -copyright statement(s). - -"Original Version" refers to the collection of Font Software components as -distributed by the Copyright Holder(s). - -"Modified Version" refers to any derivative made by adding to, deleting, -or substituting -- in part or in whole -- any of the components of the -Original Version, by changing formats or by porting the Font Software to a -new environment. - -"Author" refers to any designer, engineer, programmer, technical -writer or other person who contributed to the Font Software. - -PERMISSION & CONDITIONS -Permission is hereby granted, free of charge, to any person obtaining -a copy of the Font Software, to use, study, copy, merge, embed, modify, -redistribute, and sell modified and unmodified copies of the Font -Software, subject to the following conditions: - -1) Neither the Font Software nor any of its individual components, -in Original or Modified Versions, may be sold by itself. - -2) Original or Modified Versions of the Font Software may be bundled, -redistributed and/or sold with any software, provided that each copy -contains the above copyright notice and this license. These can be -included either as stand-alone text files, human-readable headers or -in the appropriate machine-readable metadata fields within text or -binary files as long as those fields can be easily viewed by the user. - -3) No Modified Version of the Font Software may use the Reserved Font -Name(s) unless explicit written permission is granted by the corresponding -Copyright Holder. This restriction only applies to the primary font name as -presented to the users. - -4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font -Software shall not be used to promote, endorse or advertise any -Modified Version, except to acknowledge the contribution(s) of the -Copyright Holder(s) and the Author(s) or with their explicit written -permission. - -5) The Font Software, modified or unmodified, in part or in whole, -must be distributed entirely under this license, and must not be -distributed under any other license. The requirement for fonts to -remain under this license does not apply to any document created -using the Font Software. - -TERMINATION -This license becomes null and void if any of the above conditions are -not met. - -DISCLAIMER -THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT -OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE -COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL -DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM -OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/Resources/Fonts/PatrickHand/PatrickHand-Regular.ttf b/Resources/Fonts/PatrickHand/PatrickHand-Regular.ttf deleted file mode 100644 index a1b90baea72502a3cdaba26c2c27a8a667aad45c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 212112 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

4=L=yOya+FxmcRmi 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 _j5 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 diff --git a/Resources/Prototypes/Language/Species-Specific/skeleton.yml b/Resources/Prototypes/Language/Species-Specific/skeleton.yml index 3cc6f1be250..840f00850e8 100644 --- a/Resources/Prototypes/Language/Species-Specific/skeleton.yml +++ b/Resources/Prototypes/Language/Species-Specific/skeleton.yml @@ -2,7 +2,7 @@ id: Calcic isVisibleLanguage: true speech: - fontId: Chilanka + fontId: LDFComicSans color: "#e3dac9" obfuscation: !type:SyllableObfuscation diff --git a/Resources/Prototypes/fonts.yml b/Resources/Prototypes/fonts.yml index ecaa973c416..2b85a4afe95 100644 --- a/Resources/Prototypes/fonts.yml +++ b/Resources/Prototypes/fonts.yml @@ -77,3 +77,7 @@ - type: font id: Chilanka path: /Fonts/Chilanka/Chilanka-Regular.ttf + +- type: font + id: LDFComicSans + path: /Fonts/LDFComicSans/LDFComicSans-Medium.ttf From eca369e44b0685fe0f46b42b3ee7be09bd4dac0d Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sat, 30 Nov 2024 09:21:59 +0800 Subject: [PATCH 24/68] set default plasmatank to extended-capacity --- .../Species/Plasmaman/plasmatank.yml | 5 +---- Resources/Prototypes/Loadouts/Generic/species.yml | 10 +--------- 2 files changed, 2 insertions(+), 13 deletions(-) diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml index a6389d791be..38726ce6011 100644 --- a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml @@ -7,12 +7,9 @@ species: - Plasmaman items: - - type: loadout - id: LoadoutSpeciesEmergencyPlasmaTank - priority: 10 - type: loadout id: LoadoutSpeciesExtendedEmergencyPlasmaTank - priority: 0 + priority: 10 - type: loadout id: LoadoutSpeciesDoubleEmergencyPlasmaTank priority: 5 diff --git a/Resources/Prototypes/Loadouts/Generic/species.yml b/Resources/Prototypes/Loadouts/Generic/species.yml index ebef5d5877a..d1e53f093bd 100644 --- a/Resources/Prototypes/Loadouts/Generic/species.yml +++ b/Resources/Prototypes/Loadouts/Generic/species.yml @@ -40,19 +40,11 @@ items: - DoubleEmergencyNitrogenTankFilled -- type: loadout - id: LoadoutSpeciesEmergencyPlasmaTank - category: Species - groups: [ LoadoutPlasmamanPlasmaTank ] - cost: 0 - items: - - EmergencyPlasmaTankFilled - - type: loadout id: LoadoutSpeciesExtendedEmergencyPlasmaTank category: Species groups: [ LoadoutPlasmamanPlasmaTank ] - cost: 1 + cost: 0 items: - ExtendedEmergencyPlasmaTankFilled From d412b68d4810743d9132cdf830a2c6acab8b594f Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sat, 30 Nov 2024 09:22:26 +0800 Subject: [PATCH 25/68] remove ToggleStartingGearComponent after spawning --- .../Clothing/EntitySystems/ToggleableClothingSystem.cs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Content.Shared/Clothing/EntitySystems/ToggleableClothingSystem.cs b/Content.Shared/Clothing/EntitySystems/ToggleableClothingSystem.cs index 1a78dacf3ba..a19655eee34 100644 --- a/Content.Shared/Clothing/EntitySystems/ToggleableClothingSystem.cs +++ b/Content.Shared/Clothing/EntitySystems/ToggleableClothingSystem.cs @@ -304,9 +304,12 @@ private void OnMapInit(EntityUid uid, ToggleableClothingComponent component, Map private void OnStartingGearEquipped(EntityUid uid, ToggleStartingGearComponent component, ref StartingGearEquippedEvent ev) { - if (_inventorySystem.TryGetSlotEntity(uid, component.Slot, out var clothing) && - TryComp(clothing, out var toggleable)) - ToggleClothing(uid, (EntityUid) clothing, toggleable); + if (!_inventorySystem.TryGetSlotEntity(uid, component.Slot, out var clothing) || + !TryComp(clothing, out var toggleable)) + return; + + ToggleClothing(uid, (EntityUid) clothing, toggleable); + RemComp(uid); } } From 3a9616cf904d5c95b57685f624c8620741bada5a Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sun, 1 Dec 2024 04:58:26 +0800 Subject: [PATCH 26/68] rename skelly language --- Resources/Locale/en-US/chat/managers/chat-language.ftl | 2 +- Resources/Locale/en-US/language/languages.ftl | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Resources/Locale/en-US/chat/managers/chat-language.ftl b/Resources/Locale/en-US/chat/managers/chat-language.ftl index 15b7f431e0d..f52de3ed55a 100644 --- a/Resources/Locale/en-US/chat/managers/chat-language.ftl +++ b/Resources/Locale/en-US/chat/managers/chat-language.ftl @@ -12,5 +12,5 @@ chat-language-Elyran-name = Elyran chat-language-Canilunzt-name = Canilunzt chat-language-Moffic-name = Moffic chat-language-RobotTalk-name = Binary -chat-language-Calcic-name = Calcic +chat-language-Calcic-name = Scapulan chat-language-ValyrianStandard-name = Valyrian diff --git a/Resources/Locale/en-US/language/languages.ftl b/Resources/Locale/en-US/language/languages.ftl index c4378d0143d..0079b0f1d9c 100644 --- a/Resources/Locale/en-US/language/languages.ftl +++ b/Resources/Locale/en-US/language/languages.ftl @@ -58,8 +58,8 @@ language-Moffic-description = The language of the mothpeople borders on complete language-RobotTalk-name = RobotTalk language-RobotTalk-description = A language consisting of harsh binary chirps, whistles, hisses, and whines. Organic tongues cannot speak it without aid from special translators. -language-Calcic-name = Calcic -language-Calcic-description = The bone-rattling language of skeletons and plasmamen. It sounds like a harmonic trousle of bones with a mildly humerus tone, sans any off-tune ribbing. +language-Calcic-name = Scapulan +language-Calcic-description = The bone-rattling language of skeletons and plasmamen. It sounds like a harmonic trousle of bones with a humerus tone, sans any off-tune ribbing. language-Sign-name = Tau-Ceti Basic Sign Language language-Sign-description = TCB-SL for short, this sign language is prevalent among mute and deaf people. From f24b105d6635c1c96df2cb7af3ac8832b6961680 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sun, 1 Dec 2024 18:54:44 +0800 Subject: [PATCH 27/68] add plasmamen healing from milk/plasma --- .../Reagents/Consumable/Drink/drinks.yml | 11 +++++++++++ Resources/Prototypes/Reagents/gases.yml | 15 +++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml b/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml index 52a01d973f6..18f97d7c91c 100644 --- a/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml +++ b/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml @@ -244,6 +244,17 @@ effects: - !type:SatiateThirst factor: 4 + - !type:HealthChange + conditions: + - !type:OrganType + type: Plasmaman + damage: + groups: + Brute: -0.90 + types: + Heat: -0.30 + Shock: -0.30 + Caustic: -0.30 - type: reagent id: MilkGoat diff --git a/Resources/Prototypes/Reagents/gases.yml b/Resources/Prototypes/Reagents/gases.yml index 68e8c304246..416b166e53c 100644 --- a/Resources/Prototypes/Reagents/gases.yml +++ b/Resources/Prototypes/Reagents/gases.yml @@ -143,6 +143,21 @@ ratios: CarbonDioxide: 1.0 # TODO: evaluate gas type for plasmaman exhale Plasma: -1.0 + Medicine: + effects: + - !type:HealthChange + conditions: + - !type:OrganType + type: Plasmaman + damage: + groups: + Brute: -2 + types: + Heat: -0.66 + Shock: -0.66 + Caustic: -0.66 + Asphyxiation: -0.66 + Poison: -0.66 reactiveEffects: Flammable: methods: [ Touch ] From 5142155b9539b8672b1922144428c498f30520b2 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Tue, 3 Dec 2024 12:03:50 +0800 Subject: [PATCH 28/68] add positive moodlet for ingesting milk/plasma --- Resources/Locale/en-US/mood/mood.ftl | 9 ++++++++- Resources/Prototypes/Mood/genericPositiveEffects.yml | 12 +++++++++++- .../Prototypes/Reagents/Consumable/Drink/drinks.yml | 8 ++++++++ Resources/Prototypes/Reagents/gases.yml | 8 ++++++++ 4 files changed, 35 insertions(+), 2 deletions(-) diff --git a/Resources/Locale/en-US/mood/mood.ftl b/Resources/Locale/en-US/mood/mood.ftl index aa348ce6274..213fbb74431 100644 --- a/Resources/Locale/en-US/mood/mood.ftl +++ b/Resources/Locale/en-US/mood/mood.ftl @@ -1,4 +1,4 @@ -mood-show-effects-start = [font size=12]Mood:[/font] +mood-show-effects-start = [font size=12]Mood:[/font] mood-effect-HungerOverfed = I ate so much, I feel as though I'm about to burst! mood-effect-HungerOkay = I am feeling full. @@ -78,3 +78,10 @@ mood-effect-EthanolBenefit = I feel so relaxed from drinking. mood-effect-SpaceDrugsBenefit = Woaaaah, such pretty colors maaaaan. It's like I can hear color and taste sound maaan. + +# Plasmaman +mood-effect-PlasmamanIngestPlasma = + My body is rejuvenated by the fresh plasma coursing through my body. + +mood-effect-PlasmamanIngestMilk = + I can feel the milk's calcium repairing my bones. This is dairy-lightful! diff --git a/Resources/Prototypes/Mood/genericPositiveEffects.yml b/Resources/Prototypes/Mood/genericPositiveEffects.yml index 3af8ec052a6..21e8e0c62b7 100644 --- a/Resources/Prototypes/Mood/genericPositiveEffects.yml +++ b/Resources/Prototypes/Mood/genericPositiveEffects.yml @@ -1,4 +1,4 @@ -- type: moodEffect +- type: moodEffect id: BeingHugged moodChange: 3 timeout: 120 @@ -52,3 +52,13 @@ moodChange: 5 timeout: 60 # A bit of time before they realize it's gone moodletOnEnd: HeirloomLost + +- type: moodEffect + id: PlasmamanIngestMilk + moodChange: 6 + timeout: 60 + +- type: moodEffect + id: PlasmamanIngestPlasma + moodChange: 12 + timeout: 60 diff --git a/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml b/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml index 18f97d7c91c..eb051130dc8 100644 --- a/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml +++ b/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml @@ -255,6 +255,14 @@ Heat: -0.30 Shock: -0.30 Caustic: -0.30 + - !type:ChemAddMoodlet + conditions: + - !type:OrganType + type: Plasmaman + - !type:ReagentThreshold + reagent: Milk + min: 1 + moodPrototype: PlasmamanIngestMilk - type: reagent id: MilkGoat diff --git a/Resources/Prototypes/Reagents/gases.yml b/Resources/Prototypes/Reagents/gases.yml index 416b166e53c..598e6098f72 100644 --- a/Resources/Prototypes/Reagents/gases.yml +++ b/Resources/Prototypes/Reagents/gases.yml @@ -158,6 +158,14 @@ Caustic: -0.66 Asphyxiation: -0.66 Poison: -0.66 + - !type:ChemAddMoodlet + conditions: + - !type:OrganType + type: Plasmaman + - !type:ReagentThreshold + reagent: Plasma + min: 1 + moodPrototype: PlasmamanIngestPlasma reactiveEffects: Flammable: methods: [ Touch ] From f19ec98cd7453ea52f79af0e417e77693f3be89f Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Tue, 3 Dec 2024 12:23:07 +0800 Subject: [PATCH 29/68] nerf plasmaman piercing/slash resist --- Resources/Prototypes/Damage/modifier_sets.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Resources/Prototypes/Damage/modifier_sets.yml b/Resources/Prototypes/Damage/modifier_sets.yml index 4bc575285ca..91e76aff33f 100644 --- a/Resources/Prototypes/Damage/modifier_sets.yml +++ b/Resources/Prototypes/Damage/modifier_sets.yml @@ -376,8 +376,8 @@ id: Plasmaman coefficients: Blunt: 1.5 - Slash: 0.8 - Piercing: 0.7 + Slash: 0.85 + Piercing: 0.75 Cold: 0 Heat: 1.5 Radiation: 0 From d658b7af639e183af76660407316bb7d3aeebd22 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sat, 7 Dec 2024 21:39:36 +0800 Subject: [PATCH 30/68] make plasmamen self-ignite ignore fire protection note fire protection != fire resist armor fire protection is from specific items like fire suits --- .../Atmos/Components/FlammableComponent.cs | 7 +++++ .../Atmos/EntitySystems/FlammableSystem.cs | 26 +++++++++++++------ .../EntitySystems/IgniteFromGasSystem.cs | 2 +- 3 files changed, 26 insertions(+), 9 deletions(-) diff --git a/Content.Server/Atmos/Components/FlammableComponent.cs b/Content.Server/Atmos/Components/FlammableComponent.cs index e1c7974307b..1ca436d165e 100644 --- a/Content.Server/Atmos/Components/FlammableComponent.cs +++ b/Content.Server/Atmos/Components/FlammableComponent.cs @@ -67,6 +67,13 @@ public sealed partial class FlammableComponent : Component [DataField] public bool CanExtinguish = true; + /// + /// Should the component ignore fire protection when on fire? + /// + [ViewVariables(VVAccess.ReadWrite)] + [DataField] + public bool IgnoreFireProtection = false; + /// /// How many firestacks should be applied to component when being set on fire? /// diff --git a/Content.Server/Atmos/EntitySystems/FlammableSystem.cs b/Content.Server/Atmos/EntitySystems/FlammableSystem.cs index 0f6ce0780e4..b16faafc09c 100644 --- a/Content.Server/Atmos/EntitySystems/FlammableSystem.cs +++ b/Content.Server/Atmos/EntitySystems/FlammableSystem.cs @@ -310,6 +310,7 @@ public void Extinguish(EntityUid uid, FlammableComponent? flammable = null) _adminLogger.Add(LogType.Flammable, $"{ToPrettyString(uid):entity} stopped being on fire damage"); flammable.OnFire = false; flammable.FireStacks = 0; + flammable.IgnoreFireProtection = false; _ignitionSourceSystem.SetIgnited(uid, false); @@ -317,7 +318,7 @@ public void Extinguish(EntityUid uid, FlammableComponent? flammable = null) } public void Ignite(EntityUid uid, EntityUid ignitionSource, FlammableComponent? flammable = null, - EntityUid? ignitionSourceUser = null) + EntityUid? ignitionSourceUser = null, bool ignoreFireProtection = false) { if (!Resolve(uid, ref flammable)) return; @@ -336,6 +337,9 @@ public void Ignite(EntityUid uid, EntityUid ignitionSource, FlammableComponent? flammable.OnFire = true; } + if (ignoreFireProtection) + flammable.IgnoreFireProtection = ignoreFireProtection; + UpdateAppearance(uid, flammable); } @@ -448,14 +452,20 @@ public override void Update(float frameTime) if (TryComp(uid, out TemperatureComponent? temp)) _temperatureSystem.ChangeHeat(uid, 12500 * flammable.FireStacks, false, temp); - var ev = new GetFireProtectionEvent(); - // let the thing on fire handle it - RaiseLocalEvent(uid, ref ev); - // and whatever it's wearing - if (_inventoryQuery.TryComp(uid, out var inv)) - _inventory.RelayEvent((uid, inv), ref ev); + var multiplier = 1f; + if (!flammable.IgnoreFireProtection) + { + var ev = new GetFireProtectionEvent(); + // let the thing on fire handle it + RaiseLocalEvent(uid, ref ev); + // and whatever it's wearing + if (_inventoryQuery.TryComp(uid, out var inv)) + _inventory.RelayEvent((uid, inv), ref ev); + + multiplier = ev.Multiplier; + } - _damageableSystem.TryChangeDamage(uid, flammable.Damage * flammable.FireStacks * ev.Multiplier, interruptsDoAfters: false); + _damageableSystem.TryChangeDamage(uid, flammable.Damage * flammable.FireStacks * multiplier, interruptsDoAfters: false); AdjustFireStacks(uid, flammable.FirestackFade * (flammable.Resisting ? 10f : 1f), flammable); } diff --git a/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs index 7609ad2e93c..8562b4d1253 100644 --- a/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs +++ b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs @@ -197,7 +197,7 @@ public override void Update(float frameTime) if (gas[(int) ignite.Gas] > ignite.MolesToIgnite) { _flammable.AdjustFireStacks(uid, ignite.FireStacks, flammable); - _flammable.Ignite(uid, uid, flammable); + _flammable.Ignite(uid, uid, flammable, ignoreFireProtection: true); } } } From 6221d1b4be98548a8b83a655272564715c71138e Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sat, 7 Dec 2024 23:17:31 +0800 Subject: [PATCH 31/68] add envirosuit examine charges left --- Content.Server/Extinguisher/SelfExtinguisherSystem.cs | 8 ++++++++ Resources/Locale/en-US/self-extinguisher/examine.ftl | 7 +++++++ 2 files changed, 15 insertions(+) create mode 100644 Resources/Locale/en-US/self-extinguisher/examine.ftl diff --git a/Content.Server/Extinguisher/SelfExtinguisherSystem.cs b/Content.Server/Extinguisher/SelfExtinguisherSystem.cs index e3a23a02337..84c157af4a1 100644 --- a/Content.Server/Extinguisher/SelfExtinguisherSystem.cs +++ b/Content.Server/Extinguisher/SelfExtinguisherSystem.cs @@ -1,3 +1,4 @@ +using Content.Shared.Examine; using Content.Server.Atmos.Components; using Content.Server.Atmos.EntitySystems; using Content.Server.Popups; @@ -22,6 +23,13 @@ public sealed partial class SelfExtinguisherSystem : EntitySystem public override void Initialize() { base.Initialize(); + + SubscribeLocalEvent(OnExamined); + } + + private void OnExamined(EntityUid uid, SelfExtinguisherComponent component, ExaminedEvent args) + { + args.PushMarkup(Loc.GetString("self-extinguisher-examine-charges", ("charges", component.Charges))); } private void TryExtinguish(EntityUid uid, EntityUid wearer, SelfExtinguisherComponent component, FlammableComponent flammable) diff --git a/Resources/Locale/en-US/self-extinguisher/examine.ftl b/Resources/Locale/en-US/self-extinguisher/examine.ftl new file mode 100644 index 00000000000..844734f67ba --- /dev/null +++ b/Resources/Locale/en-US/self-extinguisher/examine.ftl @@ -0,0 +1,7 @@ +self-extinguisher-examine-charges = There { $charges -> + [1] is + *[other] are +} [color=magenta]{$charges}[/color] extinguisher { $charges -> + [1] charge + *[other] charges +} left. From 5f821e5bb5d3b68e4ee9823387dd3cd3494c045a Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sat, 7 Dec 2024 23:31:09 +0800 Subject: [PATCH 32/68] improve yml for SelfExtinguisherComponent --- Content.Server/Extinguisher/SelfExtinguisherComponent.cs | 4 ++-- Content.Server/Extinguisher/SelfExtinguisherSystem.cs | 8 ++++++++ .../Entities/Clothing/Uniforms/base_clothinguniforms.yml | 3 +-- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/Content.Server/Extinguisher/SelfExtinguisherComponent.cs b/Content.Server/Extinguisher/SelfExtinguisherComponent.cs index d890e4f0ec7..d2ed246a77c 100644 --- a/Content.Server/Extinguisher/SelfExtinguisherComponent.cs +++ b/Content.Server/Extinguisher/SelfExtinguisherComponent.cs @@ -15,13 +15,13 @@ public partial class SelfExtinguisherComponent : Component /// The number of charges left. ///
[DataField] - public int Charges = 5; + public int Charges = -1; /// /// The maximum possible charges of self-extinguishes. /// [DataField(required: true)] - public int MaxCharges = 5; + public int MaxCharges; /// /// Cooldown before the self-extinguisher can be used again. diff --git a/Content.Server/Extinguisher/SelfExtinguisherSystem.cs b/Content.Server/Extinguisher/SelfExtinguisherSystem.cs index 84c157af4a1..b75d812ce98 100644 --- a/Content.Server/Extinguisher/SelfExtinguisherSystem.cs +++ b/Content.Server/Extinguisher/SelfExtinguisherSystem.cs @@ -24,9 +24,17 @@ public override void Initialize() { base.Initialize(); + SubscribeLocalEvent(OnMapInit); SubscribeLocalEvent(OnExamined); } + private void OnMapInit(EntityUid uid, SelfExtinguisherComponent component, MapInitEvent args) + { + // Start out with this envirosuit filled out by default + if (component.Charges == -1) + component.Charges = component.MaxCharges; + } + private void OnExamined(EntityUid uid, SelfExtinguisherComponent component, ExaminedEvent args) { args.PushMarkup(Loc.GetString("self-extinguisher-examine-charges", ("charges", component.Charges))); diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml index 36d5a05702e..3e76cad43c9 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml @@ -173,8 +173,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: SelfExtinguisher maxCharges: 5 - charges: 5 - cooldown: 8 + cooldown: 100 requiresIgniteFromGasImmune: true sound: path: /Audio/Effects/extinguish.ogg From 127d24a1e400494483d69ec845d8129c7334b4a3 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sat, 7 Dec 2024 23:31:23 +0800 Subject: [PATCH 33/68] fix cooldown for self extinguisher --- Content.Server/Extinguisher/SelfExtinguisherSystem.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Content.Server/Extinguisher/SelfExtinguisherSystem.cs b/Content.Server/Extinguisher/SelfExtinguisherSystem.cs index b75d812ce98..f120bb0a729 100644 --- a/Content.Server/Extinguisher/SelfExtinguisherSystem.cs +++ b/Content.Server/Extinguisher/SelfExtinguisherSystem.cs @@ -50,7 +50,7 @@ private void TryExtinguish(EntityUid uid, EntityUid wearer, SelfExtinguisherComp _flammable.Extinguish(wearer, flammable); _popup.PopupEntity(Loc.GetString("self-extinguisher-extinguish", ("item", uid)), wearer, wearer); component.Charges -= 1; - component.NextExtinguish += curTime + component.Cooldown; + component.NextExtinguish = curTime + component.Cooldown; _audio.PlayPvs(component.Sound, uid, component.Sound.Params.WithVariation(0.125f)); } From 688b4235783a9c5e4ed025405b50970ce44f2ec4 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sat, 7 Dec 2024 23:32:11 +0800 Subject: [PATCH 34/68] start work on plasmaman guidebook --- Resources/Prototypes/Guidebook/species.yml | 8 ++++- .../ServerInfo/Guidebook/Mobs/Plasmaman.xml | 29 +++++++++++++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 Resources/ServerInfo/Guidebook/Mobs/Plasmaman.xml diff --git a/Resources/Prototypes/Guidebook/species.yml b/Resources/Prototypes/Guidebook/species.yml index f7b77b7ec6f..c463783fcfa 100644 --- a/Resources/Prototypes/Guidebook/species.yml +++ b/Resources/Prototypes/Guidebook/species.yml @@ -13,6 +13,7 @@ - IPCs - Harpy - Shadowkin + - Plasmaman - type: guideEntry id: Arachnid @@ -58,8 +59,13 @@ id: Harpy name: species-name-harpy text: "/ServerInfo/Guidebook/Mobs/Harpy.xml" - + - type: guideEntry id: Shadowkin name: species-name-shadowkin text: "/ServerInfo/Guidebook/Mobs/Shadowkin.xml" + +- type: guideEntry + id: Plasmaman + name: species-name-plasmaman + text: "/ServerInfo/Guidebook/Mobs/Plasmaman.xml" diff --git a/Resources/ServerInfo/Guidebook/Mobs/Plasmaman.xml b/Resources/ServerInfo/Guidebook/Mobs/Plasmaman.xml new file mode 100644 index 00000000000..18096c16d7c --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Mobs/Plasmaman.xml @@ -0,0 +1,29 @@ + + # Plasmamen + + + + + + They take 15% less Slash and 25% less Piercing damage, + but take 50% more Blunt and 50% more Heat damage. + + They are immune to Radiation and Cold Damage. + + They don't have blood and cannot bleed out. + + They don't experience hunger or thirst. + + They come with an envirosuit helmet that provides a flashlight and welding protection. + + Due to being skeletons, they can consume Milk to gain a positive moodlet and slowly heal Brute, Heat, Shock, and Caustic damage. + + They can consume Plasma to gain a bigger positive moodlet and heal every damage type faster than Milk, except Cellular. + + They can only breathe plasma, and oxygen is highly toxic when inhaled. + + Being exposed to oxygen sets them on fire, forcing them to wear envirosuits, EVA suits or hardsuits. + + They cannot eat, drink, or consume pills without taking off their envirosuit helmet. + + From 16bf480e95c2b452a67ddb068dfe407cd8a9a8ea Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sat, 7 Dec 2024 23:34:02 +0800 Subject: [PATCH 35/68] increase mood bonus and minimum reagent thresholds for consuming plasma/milk --- Resources/Prototypes/Mood/genericPositiveEffects.yml | 4 ++-- Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml | 2 +- Resources/Prototypes/Reagents/gases.yml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Resources/Prototypes/Mood/genericPositiveEffects.yml b/Resources/Prototypes/Mood/genericPositiveEffects.yml index 21e8e0c62b7..3f71622bcd1 100644 --- a/Resources/Prototypes/Mood/genericPositiveEffects.yml +++ b/Resources/Prototypes/Mood/genericPositiveEffects.yml @@ -55,10 +55,10 @@ - type: moodEffect id: PlasmamanIngestMilk - moodChange: 6 + moodChange: 7 timeout: 60 - type: moodEffect id: PlasmamanIngestPlasma - moodChange: 12 + moodChange: 14 timeout: 60 diff --git a/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml b/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml index eb051130dc8..5919203458b 100644 --- a/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml +++ b/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml @@ -261,7 +261,7 @@ type: Plasmaman - !type:ReagentThreshold reagent: Milk - min: 1 + min: 4 moodPrototype: PlasmamanIngestMilk - type: reagent diff --git a/Resources/Prototypes/Reagents/gases.yml b/Resources/Prototypes/Reagents/gases.yml index 598e6098f72..8cf143c170c 100644 --- a/Resources/Prototypes/Reagents/gases.yml +++ b/Resources/Prototypes/Reagents/gases.yml @@ -164,7 +164,7 @@ type: Plasmaman - !type:ReagentThreshold reagent: Plasma - min: 1 + min: 5 moodPrototype: PlasmamanIngestPlasma reactiveEffects: Flammable: From 701298e5c3a23601443353f9e8e68d4434637eb3 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sun, 8 Dec 2024 14:44:39 +0800 Subject: [PATCH 36/68] add caustic protection to plasmaman cllothes --- .../Entities/Clothing/Hands/base_clothinghands.yml | 10 ++++++++++ .../Entities/Clothing/Hands/envirogloves.yml | 8 ++++++-- .../Entities/Clothing/Head/base_clothinghead.yml | 4 ++++ .../Clothing/Uniforms/base_clothinguniforms.yml | 4 ++++ 4 files changed, 24 insertions(+), 2 deletions(-) diff --git a/Resources/Prototypes/Entities/Clothing/Hands/base_clothinghands.yml b/Resources/Prototypes/Entities/Clothing/Hands/base_clothinghands.yml index 02cf0ab6f67..1cd074e88cd 100644 --- a/Resources/Prototypes/Entities/Clothing/Hands/base_clothinghands.yml +++ b/Resources/Prototypes/Entities/Clothing/Hands/base_clothinghands.yml @@ -44,3 +44,13 @@ - type: Fiber fiberMaterial: fibers-synthetic - type: FingerprintMask + +- type: entity + parent: ClothingHandsGlovesSyntheticBase + abstract: true + id: ClothingHandsGlovesEnviroglovesBase + components: + - type: Armor + modifiers: + coefficients: + Caustic: 0.95 diff --git a/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml b/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml index 36334c52c39..6501b1c420d 100644 --- a/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml +++ b/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml @@ -1,6 +1,6 @@ - type: entity - parent: ClothingHandsGlovesSyntheticBase - id: ClothingHandsEnvirogloves + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnvirogloves name: plasma envirogloves description: Covers up those scandalous boney hands. components: @@ -23,3 +23,7 @@ color: "#913b00" - type: Fiber fiberColor: fibers-orange + - type: Armor + modifiers: + coefficients: + Caustic: 0.95 diff --git a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml index 0cc37726bf9..16ec6d3b817 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml @@ -249,6 +249,10 @@ - type: BatterySelfRecharger autoRecharge: true autoRechargeRate: 2 #recharge of 2 makes total drain 1w / s so max charge is 1:1 with time. Time to fully charge should be 2.5 minutes. Having recharge gives light an extended flicker period which gives you some warning to return to light area. + - type: Armor + modifiers: + coefficients: + Caustic: 0.90 - type: entity abstract: true diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml index 3e76cad43c9..dfcc2f7f1f6 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml @@ -177,3 +177,7 @@ requiresIgniteFromGasImmune: true sound: path: /Audio/Effects/extinguish.ogg + - type: Armor + modifiers: + coefficients: + Caustic: 0.85 From 4810b57c07538d71118b551bc16870e4a8df8982 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sun, 8 Dec 2024 16:48:50 +0800 Subject: [PATCH 37/68] turn envirosuit extinguish into action TODO: - move self-extinguish verb stuff to shared for prediction - move self-extinguisher stuff away from extinguisher namespace - unique sprite for self-extinguish icon - unique sprite for self-extinguish verb - check for pressure immunity OR ignite from gas immunity properly --- .../Extinguisher/SelfExtinguisherComponent.cs | 10 ++ .../Extinguisher/SelfExtinguisherSystem.cs | 132 +++++++++++++----- .../Extinguisher/SelfExtinguisherEvents.cs | 5 + .../Locale/en-US/envirosuit/envirosuit.ftl | 1 - .../en-US/self-extinguisher/examine.ftl | 2 + .../self-extinguisher/self-extinguisher.ftl | 13 ++ Resources/Prototypes/Actions/types.yml | 13 +- 7 files changed, 142 insertions(+), 34 deletions(-) create mode 100644 Content.Shared/Extinguisher/SelfExtinguisherEvents.cs create mode 100644 Resources/Locale/en-US/self-extinguisher/self-extinguisher.ftl diff --git a/Content.Server/Extinguisher/SelfExtinguisherComponent.cs b/Content.Server/Extinguisher/SelfExtinguisherComponent.cs index d2ed246a77c..54bf7413175 100644 --- a/Content.Server/Extinguisher/SelfExtinguisherComponent.cs +++ b/Content.Server/Extinguisher/SelfExtinguisherComponent.cs @@ -1,5 +1,6 @@ using Robust.Shared.Audio; using Robust.Shared.GameStates; +using Robust.Shared.Prototypes; using Robust.Shared.Serialization; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom; @@ -11,6 +12,15 @@ namespace Content.Server.Extinguisher; [RegisterComponent] public partial class SelfExtinguisherComponent : Component { + /// + /// Action used to self-extinguish. + /// + [DataField, AutoNetworkedField] + public EntProtoId Action = "ActionSelfExtinguish"; + + [DataField, AutoNetworkedField] + public EntityUid? ActionEntity; + /// /// The number of charges left. /// diff --git a/Content.Server/Extinguisher/SelfExtinguisherSystem.cs b/Content.Server/Extinguisher/SelfExtinguisherSystem.cs index f120bb0a729..e9838df9415 100644 --- a/Content.Server/Extinguisher/SelfExtinguisherSystem.cs +++ b/Content.Server/Extinguisher/SelfExtinguisherSystem.cs @@ -1,10 +1,17 @@ +using Content.Shared.Actions; using Content.Shared.Examine; +using Content.Shared.Extinguisher; +using Content.Shared.IdentityManagement; +using Content.Shared.Inventory; +using Content.Shared.Inventory.Events; +using Content.Shared.Verbs; using Content.Server.Atmos.Components; using Content.Server.Atmos.EntitySystems; using Content.Server.Popups; using Robust.Shared.Audio.Systems; using Robust.Shared.Containers; using Robust.Shared.Timing; +using Robust.Shared.Utility; namespace Content.Server.Extinguisher; @@ -16,6 +23,9 @@ public sealed partial class SelfExtinguisherSystem : EntitySystem [Dependency] private readonly IGameTiming _timing = default!; [Dependency] private readonly PopupSystem _popup = default!; [Dependency] private readonly SharedAudioSystem _audio = default!; + [Dependency] private readonly SharedActionsSystem _actions = default!; + [Dependency] private readonly ActionContainerSystem _actionContainer = default!; + [Dependency] private readonly InventorySystem _inventory = default!; private const float UpdateTimer = 1f; private float _timer; @@ -26,6 +36,40 @@ public override void Initialize() SubscribeLocalEvent(OnMapInit); SubscribeLocalEvent(OnExamined); + + SubscribeLocalEvent>>(GetRelayedVerbs); + SubscribeLocalEvent(OnGetActions); + SubscribeLocalEvent>(OnGetVerbs); + + SubscribeLocalEvent(OnSelfExtinguish); + } + + private void GetRelayedVerbs(EntityUid uid, SelfExtinguisherComponent component, InventoryRelayedEvent> args) + { + OnGetVerbs(uid, component, args.Args); + } + + private void OnGetVerbs(EntityUid uid, SelfExtinguisherComponent component, GetVerbsEvent args) + { + if (!_inventory.TryGetContainingSlot(uid, out var _)) + return; + + var verb = new EquipmentVerb() + { + Icon = new SpriteSpecifier.Texture(new("/Textures/Interface/VerbIcons/snow.svg.192dpi.png")), + Text = Loc.GetString("self-extinguisher-verb"), + }; + + verb.EventTarget = uid; + verb.ExecutionEventArgs = new SelfExtinguishEvent() { Performer = args.User }; + + args.Verbs.Add(verb); + } + + private void OnGetActions(EntityUid uid, SelfExtinguisherComponent component, GetItemActionsEvent args) + { + if (component.ActionEntity != null && !args.InHands) + args.AddAction(component.ActionEntity.Value); } private void OnMapInit(EntityUid uid, SelfExtinguisherComponent component, MapInitEvent args) @@ -33,52 +77,76 @@ private void OnMapInit(EntityUid uid, SelfExtinguisherComponent component, MapIn // Start out with this envirosuit filled out by default if (component.Charges == -1) component.Charges = component.MaxCharges; + + _actionContainer.EnsureAction(uid, ref component.ActionEntity, out var action, component.Action); } - private void OnExamined(EntityUid uid, SelfExtinguisherComponent component, ExaminedEvent args) + private void OnSelfExtinguish(EntityUid uid, SelfExtinguisherComponent component, SelfExtinguishEvent args) { - args.PushMarkup(Loc.GetString("self-extinguisher-examine-charges", ("charges", component.Charges))); + TryExtinguish(args.Performer, uid, component); } - private void TryExtinguish(EntityUid uid, EntityUid wearer, SelfExtinguisherComponent component, FlammableComponent flammable) + private void TryExtinguish(EntityUid user, EntityUid uid, SelfExtinguisherComponent? selfExtinguisher = null, FlammableComponent? flammable = null) { - var curTime = _timing.CurTime; - if (component.NextExtinguish > curTime || - component.Charges == 0) + if (!_container.TryGetContainingContainer(uid, out var container) || + !Resolve(container.Owner, ref flammable) || + !Resolve(uid, ref selfExtinguisher)) return; + var target = container.Owner; + var targetIdentity = Identity.Entity(target, EntityManager); + var suffix = user == target ? "self" : "other"; - _flammable.Extinguish(wearer, flammable); - _popup.PopupEntity(Loc.GetString("self-extinguisher-extinguish", ("item", uid)), wearer, wearer); - component.Charges -= 1; - component.NextExtinguish = curTime + component.Cooldown; - - _audio.PlayPvs(component.Sound, uid, component.Sound.Params.WithVariation(0.125f)); - } + if (!flammable.OnFire) + { + _popup.PopupEntity(Loc.GetString($"self-extinguisher-not-on-fire-{suffix}", ("item", uid), ("target", targetIdentity)), target, user); + return; + } - public override void Update(float frameTime) - { - _timer += frameTime; + if (selfExtinguisher.Charges == 0) + { + _popup.PopupEntity(Loc.GetString("self-extinguisher-no-charges", ("item", uid)), target, user); + return; + } - if (_timer < UpdateTimer) + var curTime = _timing.CurTime; + if (selfExtinguisher.NextExtinguish > curTime) + { + _popup.PopupEntity(Loc.GetString($"self-extinguisher-on-cooldown", ("item", uid)), target, user); return; + } - _timer -= UpdateTimer; - var enumerator = EntityQueryEnumerator(); - while (enumerator.MoveNext(out var uid, out var extinguisher)) + if (selfExtinguisher.RequiresIgniteFromGasImmune && + ((TryComp(target, out var ignite) && !ignite.HasImmunity) || + false) ) // TODO check for ignite immunity using another way { - if (!_container.TryGetContainingContainer(uid, out var container) || - !TryComp(container.Owner, out var flammable) || - !flammable.OnFire) - continue; - var wearer = container.Owner; - - if (extinguisher.RequiresIgniteFromGasImmune && - ((TryComp(wearer, out var ignite) && !ignite.HasImmunity) || - false) ) // TODO check for ignite immunity using another way - continue; - - TryExtinguish(uid, wearer, extinguisher, flammable); + _popup.PopupEntity(Loc.GetString($"self-extinguisher-not-immune-to-fire-{suffix}", ("item", uid), ("target", targetIdentity)), target, user); + return; } + + _flammable.Extinguish(target, flammable); + + _popup.PopupPredicted( + Loc.GetString("self-extinguisher-extinguish-other", ("item", uid), ("target", targetIdentity)), + target, target + ); + _popup.PopupEntity( + Loc.GetString("self-extinguisher-extinguish-self", ("item", uid)), + target, target + ); + + selfExtinguisher.Charges -= 1; + selfExtinguisher.NextExtinguish = curTime + selfExtinguisher.Cooldown; + + _audio.PlayPvs(selfExtinguisher.Sound, uid, selfExtinguisher.Sound.Params.WithVariation(0.125f)); + } + + private void OnExamined(EntityUid uid, SelfExtinguisherComponent component, ExaminedEvent args) + { + args.PushMarkup(Loc.GetString("self-extinguisher-examine-charges", ("charges", component.Charges))); + + var curTime = _timing.CurTime; + if (component.NextExtinguish > curTime) + args.PushMarkup(Loc.GetString("self-extinguisher-examine-cooldown", ("cooldown", (component.NextExtinguish - curTime).Seconds))); } } diff --git a/Content.Shared/Extinguisher/SelfExtinguisherEvents.cs b/Content.Shared/Extinguisher/SelfExtinguisherEvents.cs new file mode 100644 index 00000000000..30065ef9bf4 --- /dev/null +++ b/Content.Shared/Extinguisher/SelfExtinguisherEvents.cs @@ -0,0 +1,5 @@ +using Content.Shared.Actions; + +namespace Content.Shared.Extinguisher; + +public sealed partial class SelfExtinguishEvent : InstantActionEvent {} diff --git a/Resources/Locale/en-US/envirosuit/envirosuit.ftl b/Resources/Locale/en-US/envirosuit/envirosuit.ftl index ee5f9d2721c..e69de29bb2d 100644 --- a/Resources/Locale/en-US/envirosuit/envirosuit.ftl +++ b/Resources/Locale/en-US/envirosuit/envirosuit.ftl @@ -1 +0,0 @@ -self-extinguisher-extinguish = The {$item} automatically extinguishes you! diff --git a/Resources/Locale/en-US/self-extinguisher/examine.ftl b/Resources/Locale/en-US/self-extinguisher/examine.ftl index 844734f67ba..032ac10f801 100644 --- a/Resources/Locale/en-US/self-extinguisher/examine.ftl +++ b/Resources/Locale/en-US/self-extinguisher/examine.ftl @@ -5,3 +5,5 @@ self-extinguisher-examine-charges = There { $charges -> [1] charge *[other] charges } left. + +self-extinguisher-examine-cooldown = The extinguisher is recharging for [color=teal]{$cooldown}[/color] seconds. diff --git a/Resources/Locale/en-US/self-extinguisher/self-extinguisher.ftl b/Resources/Locale/en-US/self-extinguisher/self-extinguisher.ftl new file mode 100644 index 00000000000..36ac1b0140e --- /dev/null +++ b/Resources/Locale/en-US/self-extinguisher/self-extinguisher.ftl @@ -0,0 +1,13 @@ +self-extinguisher-verb = Self-Extinguish + +self-extinguisher-no-charges = The {$item} has no charges left! +self-extinguisher-on-cooldown = The {$item}'s extinguisher is recharging! + +self-extinguisher-not-on-fire-self = You are not on fire! +self-extinguisher-not-immune-to-fire-self = You are not insulated against fire! + +self-extinguisher-not-on-fire-other = {$target} {CONJUGATE-BE($target)} not on fire! +self-extinguisher-not-immune-to-fire-other = {$target} {CONJUGATE-BE($target)} not insulated against fire! + +self-extinguisher-extinguish-self = The {$item} extinguishes you! +self-extinguisher-extinguish-other = The {$item} extinguishes {$target}! diff --git a/Resources/Prototypes/Actions/types.yml b/Resources/Prototypes/Actions/types.yml index f69d6a794a3..cf19f55bfe6 100644 --- a/Resources/Prototypes/Actions/types.yml +++ b/Resources/Prototypes/Actions/types.yml @@ -197,6 +197,17 @@ useDelay: 1 # equip noise spam. event: !type:ToggleClothingEvent +- type: entity + id: ActionSelfExtinguish + name: Self-Extinguish + description: Puts out the fire in you. + categories: [ HideSpawnMenu ] + components: + - type: InstantAction + itemIconStyle: BigItem + useDelay: 1 + event: !type:SelfExtinguishEvent + - type: entity id: ActionCombatModeToggle name: "[color=red]Combat Mode[/color]" @@ -402,4 +413,4 @@ useDelay: 40 event: !type:FabricateActionEvent - fabrication: FoodGumball \ No newline at end of file + fabrication: FoodGumball From eb33bcb357b8cfaf1db13ddf3d745c4ab7f6f280 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sun, 8 Dec 2024 23:28:11 +0800 Subject: [PATCH 38/68] make stasis beds prevent self-ignition --- .../EntitySystems/IgniteFromGasSystem.cs | 29 +++++++++---------- Content.Server/Bed/BedSystem.cs | 4 +++ .../Bed/Components/InStasisComponent.cs | 4 +++ 3 files changed, 22 insertions(+), 15 deletions(-) create mode 100644 Content.Server/Bed/Components/InStasisComponent.cs diff --git a/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs index 8562b4d1253..293d0d6d0c3 100644 --- a/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs +++ b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs @@ -2,6 +2,7 @@ using System.Linq; using Content.Server.Administration.Logs; using Content.Server.Atmos.Components; +using Content.Server.Bed.Components; using Content.Shared.Alert; using Content.Shared.Atmos; using Content.Shared.Body.Components; @@ -146,17 +147,18 @@ public void UpdateIgniteImmunity(EntityUid uid, IgniteFromGasComponent? ignite = var exposedBodyParts = new Dictionary<(BodyPartType, BodyPartSymmetry), float>(ignite.IgnitableBodyParts); // This is O(n^2) but I don't think it matters + // TODO: use TargetBodyPart instead of a tuple for these foreach (var (slot, protectedBodyParts) in ImmunitySlots.Select(s => (s.Key, s.Value))) { - if (_inventory.TryGetSlotEntity(uid, slot, out var equipment, inv, contMan) && - HasComp(equipment)) + if (!_inventory.TryGetSlotEntity(uid, slot, out var equipment, inv, contMan) || + !HasComp(equipment)) + continue; + + foreach (var protectedBodyPart in protectedBodyParts) { - foreach (var protectedBodyPart in protectedBodyParts) - { - exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.Left)); - exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.Right)); - exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.None)); - } + exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.Left)); + exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.Right)); + exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.None)); } } @@ -186,19 +188,16 @@ public override void Update(float frameTime) var enumerator = EntityQueryEnumerator(); while (enumerator.MoveNext(out var uid, out var ignite, out var flammable)) { - if (ignite.HasImmunity) + if (ignite.HasImmunity || HasComp(uid)) continue; var gas = _atmos.GetContainingMixture(uid, excite: true); - if (gas is null) + if (gas is null || gas[(int) ignite.Gas] < ignite.MolesToIgnite) continue; - if (gas[(int) ignite.Gas] > ignite.MolesToIgnite) - { - _flammable.AdjustFireStacks(uid, ignite.FireStacks, flammable); - _flammable.Ignite(uid, uid, flammable, ignoreFireProtection: true); - } + _flammable.AdjustFireStacks(uid, ignite.FireStacks, flammable); + _flammable.Ignite(uid, uid, flammable, ignoreFireProtection: true); } } } diff --git a/Content.Server/Bed/BedSystem.cs b/Content.Server/Bed/BedSystem.cs index 089ce322366..a7032399bae 100644 --- a/Content.Server/Bed/BedSystem.cs +++ b/Content.Server/Bed/BedSystem.cs @@ -101,6 +101,8 @@ private void OnStasisStrapped(Entity bed, ref StrappedEvent var metabolicEvent = new ApplyMetabolicMultiplierEvent(args.Buckle, bed.Comp.Multiplier, true); RaiseLocalEvent(args.Buckle, ref metabolicEvent); + + EnsureComp(args.Buckle); } private void OnStasisUnstrapped(Entity bed, ref UnstrappedEvent args) @@ -110,6 +112,8 @@ private void OnStasisUnstrapped(Entity bed, ref UnstrappedEv var metabolicEvent = new ApplyMetabolicMultiplierEvent(args.Buckle, bed.Comp.Multiplier, false); RaiseLocalEvent(args.Buckle, ref metabolicEvent); + + RemComp(args.Buckle); } private void OnPowerChanged(EntityUid uid, StasisBedComponent component, ref PowerChangedEvent args) diff --git a/Content.Server/Bed/Components/InStasisComponent.cs b/Content.Server/Bed/Components/InStasisComponent.cs new file mode 100644 index 00000000000..34bb50e66d3 --- /dev/null +++ b/Content.Server/Bed/Components/InStasisComponent.cs @@ -0,0 +1,4 @@ +namespace Content.Server.Bed.Components; + +[RegisterComponent] +public sealed partial class InStasisComponent : Component {} From 7650410d4b43f771672d09dbf5d0228ea823aea6 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Sun, 8 Dec 2024 23:28:33 +0800 Subject: [PATCH 39/68] refactor: remove one indent from IgniteFromGasSystem.cs --- .../EntitySystems/IgniteFromGasSystem.cs | 297 +++++++++--------- 1 file changed, 148 insertions(+), 149 deletions(-) diff --git a/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs index 293d0d6d0c3..99ee489516f 100644 --- a/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs +++ b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs @@ -15,190 +15,189 @@ using Content.Shared.Mood; using Robust.Shared.Containers; -namespace Content.Server.Atmos.EntitySystems +namespace Content.Server.Atmos.EntitySystems; + +public sealed class IgniteFromGasSystem : EntitySystem { - public sealed class IgniteFromGasSystem : EntitySystem + [Dependency] private readonly AtmosphereSystem _atmos = default!; + [Dependency] private readonly FlammableSystem _flammable = default!; + [Dependency] private readonly AlertsSystem _alerts = default!; + [Dependency] private readonly IAdminLogManager _adminLogger= default!; + [Dependency] private readonly InventorySystem _inventory = default!; + + private const float UpdateTimer = 1f; + private float _timer; + + /// + /// Which clothing slots, when they have an item with IgniteFromGasImmunityComponent, + /// grant immunity to body parts. + /// + private readonly Dictionary> ImmunitySlots = new() { + ["head"] = new HashSet { BodyPartType.Head }, + ["jumpsuit"] = new HashSet { + BodyPartType.Other, + BodyPartType.Torso, + BodyPartType.Arm, + BodyPartType.Hand, + BodyPartType.Leg, + BodyPartType.Foot, + BodyPartType.Tail, + }, + ["outerClothing"] = new HashSet { + BodyPartType.Other, + BodyPartType.Torso, + BodyPartType.Arm, + BodyPartType.Hand, + BodyPartType.Leg, + BodyPartType.Foot, + BodyPartType.Tail, + }, + ["gloves"] = new HashSet { BodyPartType.Hand, }, + ["shoes"] = new HashSet { BodyPartType.Foot, }, + }; + + public override void Initialize() { - [Dependency] private readonly AtmosphereSystem _atmos = default!; - [Dependency] private readonly FlammableSystem _flammable = default!; - [Dependency] private readonly AlertsSystem _alerts = default!; - [Dependency] private readonly IAdminLogManager _adminLogger= default!; - [Dependency] private readonly InventorySystem _inventory = default!; - - private const float UpdateTimer = 1f; - private float _timer; - - /// - /// Which clothing slots, when they have an item with IgniteFromGasImmunityComponent, - /// grant immunity to body parts. - /// - private readonly Dictionary> ImmunitySlots = new() { - ["head"] = new HashSet { BodyPartType.Head }, - ["jumpsuit"] = new HashSet { - BodyPartType.Other, - BodyPartType.Torso, - BodyPartType.Arm, - BodyPartType.Hand, - BodyPartType.Leg, - BodyPartType.Foot, - BodyPartType.Tail, - }, - ["outerClothing"] = new HashSet { - BodyPartType.Other, - BodyPartType.Torso, - BodyPartType.Arm, - BodyPartType.Hand, - BodyPartType.Leg, - BodyPartType.Foot, - BodyPartType.Tail, - }, - ["gloves"] = new HashSet { BodyPartType.Hand, }, - ["shoes"] = new HashSet { BodyPartType.Foot, }, - }; - - public override void Initialize() - { - SubscribeLocalEvent(OnBodyPartAdded); - SubscribeLocalEvent(OnBodyPartAttached); - - SubscribeLocalEvent(OnBodyPartRemoved); - SubscribeLocalEvent(OnBodyPartDropped); - - SubscribeLocalEvent(OnIgniteFromGasImmunityEquipped); - SubscribeLocalEvent(OnIgniteFromGasImmunityUnequipped); - } + SubscribeLocalEvent(OnBodyPartAdded); + SubscribeLocalEvent(OnBodyPartAttached); - private void OnBodyPartAdded(EntityUid uid, FlammableComponent component, BodyPartAddedEvent args) - { - HandleAddBodyPart(uid, args.Part.Owner, args.Part.Comp); - } + SubscribeLocalEvent(OnBodyPartRemoved); + SubscribeLocalEvent(OnBodyPartDropped); - private void OnBodyPartAttached(EntityUid uid, FlammableComponent component, BodyPartAttachedEvent args) - { - HandleAddBodyPart(component.Owner, args.Part.Owner, args.Part.Comp); - } + SubscribeLocalEvent(OnIgniteFromGasImmunityEquipped); + SubscribeLocalEvent(OnIgniteFromGasImmunityUnequipped); + } - private void HandleAddBodyPart(EntityUid uid, EntityUid partUid, BodyPartComponent comp) - { - if (!TryComp(partUid, out var ignitePart)) - return; + private void OnBodyPartAdded(EntityUid uid, FlammableComponent component, BodyPartAddedEvent args) + { + HandleAddBodyPart(uid, args.Part.Owner, args.Part.Comp); + } - if (!TryComp(uid, out var ignite)) - { - ignite = new IgniteFromGasComponent{ - Gas = ignitePart.Gas, - IgnitableBodyParts = new Dictionary<(BodyPartType, BodyPartSymmetry), float>() - { - [(comp.PartType, comp.Symmetry)] = ignitePart.FireStacks - } - }; - - AddComp(uid, ignite); - } - else - ignite.IgnitableBodyParts[(comp.PartType, comp.Symmetry)] = ignitePart.FireStacks; + private void OnBodyPartAttached(EntityUid uid, FlammableComponent component, BodyPartAttachedEvent args) + { + HandleAddBodyPart(component.Owner, args.Part.Owner, args.Part.Comp); + } - UpdateIgniteImmunity(uid, ignite); - } + private void HandleAddBodyPart(EntityUid uid, EntityUid partUid, BodyPartComponent comp) + { + if (!TryComp(partUid, out var ignitePart)) + return; - private void OnBodyPartRemoved(EntityUid uid, IgniteFromGasComponent component, BodyPartRemovedEvent args) + if (!TryComp(uid, out var ignite)) { - HandleRemoveBodyPart(uid, args.Part.Owner, args.Part.Comp, component); - } + ignite = new IgniteFromGasComponent{ + Gas = ignitePart.Gas, + IgnitableBodyParts = new Dictionary<(BodyPartType, BodyPartSymmetry), float>() + { + [(comp.PartType, comp.Symmetry)] = ignitePart.FireStacks + } + }; - private void OnBodyPartDropped(EntityUid uid, IgniteFromGasComponent component, BodyPartDroppedEvent args) - { - HandleRemoveBodyPart(component.Owner, args.Part.Owner, args.Part.Comp, component); + AddComp(uid, ignite); } + else + ignite.IgnitableBodyParts[(comp.PartType, comp.Symmetry)] = ignitePart.FireStacks; - private void HandleRemoveBodyPart(EntityUid uid, EntityUid partUid, BodyPartComponent part, IgniteFromGasComponent ignite) - { - if (!TryComp(partUid, out var ignitePart)) - return; + UpdateIgniteImmunity(uid, ignite); + } - ignite.IgnitableBodyParts.Remove((part.PartType, part.Symmetry)); + private void OnBodyPartRemoved(EntityUid uid, IgniteFromGasComponent component, BodyPartRemovedEvent args) + { + HandleRemoveBodyPart(uid, args.Part.Owner, args.Part.Comp, component); + } - if (ignite.IgnitableBodyParts.Count == 0) - { - RemCompDeferred(uid); - return; - } + private void OnBodyPartDropped(EntityUid uid, IgniteFromGasComponent component, BodyPartDroppedEvent args) + { + HandleRemoveBodyPart(component.Owner, args.Part.Owner, args.Part.Comp, component); + } - UpdateIgniteImmunity(uid, ignite); - } + private void HandleRemoveBodyPart(EntityUid uid, EntityUid partUid, BodyPartComponent part, IgniteFromGasComponent ignite) + { + if (!TryComp(partUid, out var ignitePart)) + return; - private void OnIgniteFromGasImmunityEquipped(EntityUid uid, IgniteFromGasImmunityComponent igniteImmunity, GotEquippedEvent args) - { - if (TryComp(args.Equipee, out var ignite) && ImmunitySlots.ContainsKey(args.Slot)) - UpdateIgniteImmunity(args.Equipee, ignite); - } + ignite.IgnitableBodyParts.Remove((part.PartType, part.Symmetry)); - private void OnIgniteFromGasImmunityUnequipped(EntityUid uid, IgniteFromGasImmunityComponent igniteImmunity, GotUnequippedEvent args) + if (ignite.IgnitableBodyParts.Count == 0) { - if (TryComp(args.Equipee, out var ignite) && ImmunitySlots.ContainsKey(args.Slot)) - UpdateIgniteImmunity(args.Equipee, ignite); + RemCompDeferred(uid); + return; } - public void UpdateIgniteImmunity(EntityUid uid, IgniteFromGasComponent? ignite = null, InventoryComponent? inv = null, ContainerManagerComponent? contMan = null) - { - if (!Resolve(uid, ref ignite, ref inv, ref contMan)) - return; + UpdateIgniteImmunity(uid, ignite); + } - var exposedBodyParts = new Dictionary<(BodyPartType, BodyPartSymmetry), float>(ignite.IgnitableBodyParts); + private void OnIgniteFromGasImmunityEquipped(EntityUid uid, IgniteFromGasImmunityComponent igniteImmunity, GotEquippedEvent args) + { + if (TryComp(args.Equipee, out var ignite) && ImmunitySlots.ContainsKey(args.Slot)) + UpdateIgniteImmunity(args.Equipee, ignite); + } - // This is O(n^2) but I don't think it matters - // TODO: use TargetBodyPart instead of a tuple for these - foreach (var (slot, protectedBodyParts) in ImmunitySlots.Select(s => (s.Key, s.Value))) - { - if (!_inventory.TryGetSlotEntity(uid, slot, out var equipment, inv, contMan) || - !HasComp(equipment)) - continue; + private void OnIgniteFromGasImmunityUnequipped(EntityUid uid, IgniteFromGasImmunityComponent igniteImmunity, GotUnequippedEvent args) + { + if (TryComp(args.Equipee, out var ignite) && ImmunitySlots.ContainsKey(args.Slot)) + UpdateIgniteImmunity(args.Equipee, ignite); + } - foreach (var protectedBodyPart in protectedBodyParts) - { - exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.Left)); - exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.Right)); - exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.None)); - } - } + public void UpdateIgniteImmunity(EntityUid uid, IgniteFromGasComponent? ignite = null, InventoryComponent? inv = null, ContainerManagerComponent? contMan = null) + { + if (!Resolve(uid, ref ignite, ref inv, ref contMan)) + return; - if (exposedBodyParts.Count() == 0) + var exposedBodyParts = new Dictionary<(BodyPartType, BodyPartSymmetry), float>(ignite.IgnitableBodyParts); + + // This is O(n^2) but I don't think it matters + // TODO: use TargetBodyPart instead of a tuple for these + foreach (var (slot, protectedBodyParts) in ImmunitySlots.Select(s => (s.Key, s.Value))) + { + if (!_inventory.TryGetSlotEntity(uid, slot, out var equipment, inv, contMan) || + !HasComp(equipment)) + continue; + + foreach (var protectedBodyPart in protectedBodyParts) { - ignite.HasImmunity = true; - ignite.FireStacks = 0; - return; + exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.Left)); + exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.Right)); + exposedBodyParts.Remove((protectedBodyPart, BodyPartSymmetry.None)); } - - ignite.HasImmunity = false; - var exposedFireStacks = 0f; - foreach (var fireStacks in exposedBodyParts.Values) - exposedFireStacks += fireStacks; - ignite.FireStacks = ignite.BaseFireStacks + exposedFireStacks; } - public override void Update(float frameTime) + if (exposedBodyParts.Count() == 0) { - _timer += frameTime; + ignite.HasImmunity = true; + ignite.FireStacks = 0; + return; + } - if (_timer < UpdateTimer) - return; + ignite.HasImmunity = false; + var exposedFireStacks = 0f; + foreach (var fireStacks in exposedBodyParts.Values) + exposedFireStacks += fireStacks; + ignite.FireStacks = ignite.BaseFireStacks + exposedFireStacks; + } - _timer -= UpdateTimer; + public override void Update(float frameTime) + { + _timer += frameTime; - var enumerator = EntityQueryEnumerator(); - while (enumerator.MoveNext(out var uid, out var ignite, out var flammable)) - { - if (ignite.HasImmunity || HasComp(uid)) - continue; + if (_timer < UpdateTimer) + return; - var gas = _atmos.GetContainingMixture(uid, excite: true); + _timer -= UpdateTimer; - if (gas is null || gas[(int) ignite.Gas] < ignite.MolesToIgnite) - continue; + var enumerator = EntityQueryEnumerator(); + while (enumerator.MoveNext(out var uid, out var ignite, out var flammable)) + { + if (ignite.HasImmunity || HasComp(uid)) + continue; - _flammable.AdjustFireStacks(uid, ignite.FireStacks, flammable); - _flammable.Ignite(uid, uid, flammable, ignoreFireProtection: true); - } + var gas = _atmos.GetContainingMixture(uid, excite: true); + + if (gas is null || gas[(int) ignite.Gas] < ignite.MolesToIgnite) + continue; + + _flammable.AdjustFireStacks(uid, ignite.FireStacks, flammable); + _flammable.Ignite(uid, uid, flammable, ignoreFireProtection: true); } } } From 452ee24c447d77f0702efd810ef56ae33768e8c9 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Mon, 9 Dec 2024 00:07:20 +0800 Subject: [PATCH 40/68] revert plasmaman coldDamageThreshold --- Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml index 179992382ae..ff87cc7ea5e 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -42,7 +42,7 @@ amount: 4 - type: Temperature heatDamageThreshold: 313 # 40 celsius - coldDamageThreshold: 195 # -78.5 celsius + # coldDamageThreshold: 195 # -78.5 celsius # Just set this to default cause it wont make a difference currentTemperature: 270.15 # -3 celsius specificHeat: 46 coldDamage: From e86841cb3fa3a0d5a5193bbf11113e08ac75f220 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Mon, 9 Dec 2024 00:24:23 +0800 Subject: [PATCH 41/68] increase plasmaman flammability base firestacks on exposed increased from 0.10 to 0.13 (with head exposed its 0.15) halved firestack fade on plasmaman (passive fade and stop, drop and roll firestack reduction are both halved) --- Content.Server/Atmos/Components/IgniteFromGasComponent.cs | 6 +++--- Content.Server/Atmos/EntitySystems/FlammableSystem.cs | 2 +- Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml | 2 ++ 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Content.Server/Atmos/Components/IgniteFromGasComponent.cs b/Content.Server/Atmos/Components/IgniteFromGasComponent.cs index 08fbe8ab837..46925c01452 100644 --- a/Content.Server/Atmos/Components/IgniteFromGasComponent.cs +++ b/Content.Server/Atmos/Components/IgniteFromGasComponent.cs @@ -12,8 +12,8 @@ public sealed partial class IgniteFromGasComponent : Component /// /// What type of gas triggers ignition. /// - [DataField] - public Gas Gas = Gas.Plasma; + [DataField(required: true)] + public Gas Gas; /// /// The total calculated fire stacks to apply every second without immunity. @@ -27,7 +27,7 @@ public sealed partial class IgniteFromGasComponent : Component /// The base amount of fire stacks to apply every second without immunity. /// [DataField] - public float BaseFireStacks = 0.10f; + public float BaseFireStacks = 0.13f; /// /// The body parts that are vulnerable to ignition when exposed, and their fire stack values. diff --git a/Content.Server/Atmos/EntitySystems/FlammableSystem.cs b/Content.Server/Atmos/EntitySystems/FlammableSystem.cs index b16faafc09c..db2b7888c17 100644 --- a/Content.Server/Atmos/EntitySystems/FlammableSystem.cs +++ b/Content.Server/Atmos/EntitySystems/FlammableSystem.cs @@ -386,7 +386,7 @@ public void Resist(EntityUid uid, uid.SpawnTimer(2000, () => { flammable.Resisting = false; - flammable.FireStacks -= 1f; + flammable.FireStacks -= flammable.FirestackFade * 10f; UpdateAppearance(uid, flammable); }); } diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml index ff87cc7ea5e..84ec14faf4b 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -53,6 +53,8 @@ Heat: 3 - type: ThermalRegulator normalBodyTemperature: 270.15 + - type: Flammable + firestackFade: -0.05 - type: HumanoidAppearance species: Plasmaman hideLayersOnEquip: From 8685f616ce95607557a7e79f6dbb5df693209776 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Mon, 9 Dec 2024 03:21:58 +0800 Subject: [PATCH 42/68] expand plasmaman names --- .../Prototypes/Datasets/Names/plasmaman.yml | 163 ++++++++++++++++++ .../Datasets/Names/plasmaman_last.yml | 22 +++ 2 files changed, 185 insertions(+) diff --git a/Resources/Prototypes/Datasets/Names/plasmaman.yml b/Resources/Prototypes/Datasets/Names/plasmaman.yml index 3ced9a3f0d2..3af8e264dbf 100644 --- a/Resources/Prototypes/Datasets/Names/plasmaman.yml +++ b/Resources/Prototypes/Datasets/Names/plasmaman.yml @@ -1,6 +1,7 @@ - type: dataset id: names_plasmaman values: + # Periodic table elements - Actinium - Aluminium - Americium @@ -119,3 +120,165 @@ - Yttrium - Zinc - Zirconium + # Periodic table groups + - Metalloid + - Alkali + - Alkaline + - Triel + - Tetrel + - Chalcogen + - Pnictogen + - Halogen + - Noble + # Periodic table series + - Lanthanide + - Actinide + # Polyatomic cations + - Ammonium + - Hydronium + - Nitronium + - Pyrylium + # Anions + - Hydride + - Oxide + - Fluoride + - Sulfide + - Selenide + - Telluride + - Chloride + - Nitride + - Phospide + - Arsenide + - Bromide + - Iodide + - Azide + - Bisulfide + - Hydroxide + - Acetylide + - Ethoxide + - Cyanide + - Amide + - Phenoxide + - Peroxide + - Superoxide + - Acetylide + # Oxoanions + - Sulfate + - Sulfite + - Phosphate + - Phospite + - Arsenate + - Arsenite + - Nitrate + - Nitrite + - Thiosulfate + - Perchlorate + - Iodate + - Chlorate + - Bromate + - Perbromate + - Chlorite + - Hypochlorite + - Hypobromite + - Carbonate + - Chromate + - Bicarbonate + - Dichromate + - Persulfate + - Pyrosulfite + - Pyrosulfate + - Pyrophosphite + - Pyrophosphate + - Pyroarsenate + - Dicarbonate + - Pyrocarbonate + - Pyroselenite + - Ethanolate + - Benzoate + - Citrate + - Manganate + - Zincate + - Aluminate + - Tungstate + - Orthosilicate + - Metasilicate + - Silicate + - Cyanate + - Thiocyanate + - Permanganate + - Sulfonate + - Isocyanate + - Carbamate + # Anions from organic acids + - Acetate + - Formate + - Oxalate + - Propionate + - Butyrate + - Malate + # Isotopes + - Protium + - Deuterium + - Tritium + - Uranium-235 + - Uranium-238 + - Radon-222 + - Thorium-232 + # Compounds + - Ammonia + - Methane + - Glucose + - Ethanol + - Formaldehyde + - Acetylene + - Toluene + # SS14 chemicals + - Bananium + - Fresium + - Carpetium + - Razorium + - Artifexium + - Barozine + - Frezon + - Phlogiston + - Licoxide + - Lipolicide + - Tazinide + - Lotophagoi + - Vestine + - Thermite + - Saxoite + - Sigynate + - Nocturine + - Impedrezene + - Ephedrine + # SS14 medicine + - Bicaridine + - Kelotane + - Dylovene + - Dexalin + - Tricordrazine + - Synaptizine + - Pyrazine + - Omnizine + - Cognizine + - Aloxadone + - Arithrazine + - Bruizine + - Dermaline + - Hyronalin + - Stellibinin + - Insuzine + - Inaprovaline + - Cryoxadone + - Ambuzol + - Leporazine + - Lipozine + - Mannitol + - Oculine + - Psicodine + - Phalanximine + - Puncturase + - Opporozidone + - Phalanximine + - Polypyrilium diff --git a/Resources/Prototypes/Datasets/Names/plasmaman_last.yml b/Resources/Prototypes/Datasets/Names/plasmaman_last.yml index 10f51974aaf..a2d2c0a6d67 100644 --- a/Resources/Prototypes/Datasets/Names/plasmaman_last.yml +++ b/Resources/Prototypes/Datasets/Names/plasmaman_last.yml @@ -100,3 +100,25 @@ - XCVII - XCVIII - XCIX + # Milestones + # TODO: might actually use a function to generate roman numerals with 1-100 having much bigger weight + - C + - CI + - CV + - CX + - CL + - CC + - CD + - D + - DI + - DV + - DX + - DL + - DC + - CM + - M + - MI + - MV + - MX + - ML + - MC From 5261b5aa0848917672752cb39ab84902f4a717c5 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Wed, 18 Dec 2024 14:54:17 +0800 Subject: [PATCH 43/68] add a whitelist for plasmaman jumpsuit / helmet --- .../Systems/CharacterRequirementsSystem.cs | 2 +- .../Inventory/InventorySystem.Equip.cs | 11 +- .../Inventory/InventoryTemplatePrototype.cs | 10 ++ .../Clothing/Head/base_clothinghead.yml | 3 + .../Entities/Clothing/Head/envirohelms.yml | 3 - .../OuterClothing/base_clothingouter.yml | 2 + .../Uniforms/base_clothinguniforms.yml | 3 + .../Clothing/Uniforms/envirosuits.yml | 1 + .../Entities/Mobs/Species/plasmaman.yml | 9 ++ .../plasmaman_inventory_template.yml | 129 ++++++++++++++++++ .../Prototypes/Loadouts/Generic/species.yml | 2 +- Resources/Prototypes/tags.yml | 3 + 12 files changed, 170 insertions(+), 8 deletions(-) create mode 100644 Resources/Prototypes/InventoryTemplates/plasmaman_inventory_template.yml diff --git a/Content.Shared/Customization/Systems/CharacterRequirementsSystem.cs b/Content.Shared/Customization/Systems/CharacterRequirementsSystem.cs index 24e7b81e242..c4174609dc4 100644 --- a/Content.Shared/Customization/Systems/CharacterRequirementsSystem.cs +++ b/Content.Shared/Customization/Systems/CharacterRequirementsSystem.cs @@ -92,6 +92,6 @@ public bool CanEntityWearItem(EntityUid dummy, EntityUid clothing) { return _inventory.TryGetSlots(dummy, out var slots) && slots.Where(slot => !slot.SlotFlags.HasFlag(SlotFlags.POCKET)) - .Any(slot => _inventory.CanEquip(dummy, clothing, slot.Name, out _)); + .Any(slot => _inventory.CanEquip(dummy, clothing, slot.Name, out _, onSpawn: true)); } } diff --git a/Content.Shared/Inventory/InventorySystem.Equip.cs b/Content.Shared/Inventory/InventorySystem.Equip.cs index 12435eba890..fa0d59ccd36 100644 --- a/Content.Shared/Inventory/InventorySystem.Equip.cs +++ b/Content.Shared/Inventory/InventorySystem.Equip.cs @@ -225,11 +225,11 @@ public bool CanAccess(EntityUid actor, EntityUid target, EntityUid itemUid) public bool CanEquip(EntityUid uid, EntityUid itemUid, string slot, [NotNullWhen(false)] out string? reason, SlotDefinition? slotDefinition = null, InventoryComponent? inventory = null, - ClothingComponent? clothing = null, ItemComponent? item = null) => - CanEquip(uid, uid, itemUid, slot, out reason, slotDefinition, inventory, clothing, item); + ClothingComponent? clothing = null, ItemComponent? item = null, bool onSpawn = false) => + CanEquip(uid, uid, itemUid, slot, out reason, slotDefinition, inventory, clothing, item, onSpawn); public bool CanEquip(EntityUid actor, EntityUid target, EntityUid itemUid, string slot, [NotNullWhen(false)] out string? reason, SlotDefinition? slotDefinition = null, - InventoryComponent? inventory = null, ClothingComponent? clothing = null, ItemComponent? item = null) + InventoryComponent? inventory = null, ClothingComponent? clothing = null, ItemComponent? item = null, bool onSpawn = false) { reason = "inventory-component-can-equip-cannot"; if (!Resolve(target, ref inventory, false)) @@ -280,6 +280,11 @@ public bool CanEquip(EntityUid actor, EntityUid target, EntityUid itemUid, strin return false; } + if (onSpawn && + ((slotDefinition.SpawnWhitelist != null && !slotDefinition.SpawnWhitelist.IsValid(itemUid)) || + (slotDefinition.SpawnBlacklist != null && slotDefinition.SpawnBlacklist.IsValid(itemUid)))) + return false; + var attemptEvent = new IsEquippingAttemptEvent(actor, target, itemUid, slotDefinition); RaiseLocalEvent(target, attemptEvent, true); if (attemptEvent.Cancelled) diff --git a/Content.Shared/Inventory/InventoryTemplatePrototype.cs b/Content.Shared/Inventory/InventoryTemplatePrototype.cs index 0d900688fcc..a8852e2deb4 100644 --- a/Content.Shared/Inventory/InventoryTemplatePrototype.cs +++ b/Content.Shared/Inventory/InventoryTemplatePrototype.cs @@ -56,6 +56,16 @@ public sealed partial class SlotDefinition /// [DataField("blacklist")] public EntityWhitelist? Blacklist = null; + /// + /// Entity whitelist for CanEquip checks, on spawn only. + /// + [DataField("spawnWhitelist")] public EntityWhitelist? SpawnWhitelist = null; + + /// + /// Entity blacklist for CanEquip checks, on spawn only. + /// + [DataField("spawnBlacklist")] public EntityWhitelist? SpawnBlacklist = null; + /// /// Is this slot disabled? Could be due to severing or other reasons. /// diff --git a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml index 16ec6d3b817..7c1e96c3163 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml @@ -136,6 +136,7 @@ tags: - WhitelistChameleon - HelmetEVA + - PlasmamanSafe - type: IdentityBlocker - type: HideLayerClothing slots: @@ -180,6 +181,7 @@ - type: Tag tags: - WhitelistChameleon + - PlasmamanSafe - type: IdentityBlocker - type: HideLayerClothing slots: @@ -209,6 +211,7 @@ - type: Tag tags: - WhitelistChameleon + - PlasmamanSafe - type: HideLayerClothing slots: - Hair diff --git a/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml b/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml index 968219cdb86..358d691b46f 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml @@ -8,6 +8,3 @@ sprite: Clothing/Head/Envirohelms/plain.rsi - type: Clothing sprite: Clothing/Head/Envirohelms/plain.rsi - - type: Tag - tags: - - WhitelistChameleon diff --git a/Resources/Prototypes/Entities/Clothing/OuterClothing/base_clothingouter.yml b/Resources/Prototypes/Entities/Clothing/OuterClothing/base_clothingouter.yml index fecf4129582..65889c1092f 100644 --- a/Resources/Prototypes/Entities/Clothing/OuterClothing/base_clothingouter.yml +++ b/Resources/Prototypes/Entities/Clothing/OuterClothing/base_clothingouter.yml @@ -142,6 +142,7 @@ - WhitelistChameleon - HidesHarpyWings #DeltaV: Used by harpies to help render their hardsuit sprites - FullBodyOuter + - PlasmamanSafe - type: Clothing equipDelay: 2.5 # Hardsuits are heavy and take a while to put on/off. unequipDelay: 2.5 @@ -181,6 +182,7 @@ - type: Tag tags: - HidesHarpyWings #DeltaV: Used by harpies to help render their hardsuit sprites + - PlasmamanSafe - type: Clothing equipDelay: 1.25 # Softsuits are easier to put on and off unequipDelay: 1 diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml index dfcc2f7f1f6..6d4e99ae9b7 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml @@ -181,3 +181,6 @@ modifiers: coefficients: Caustic: 0.85 + - type: Tag + tags: + - PlasmamanSafe diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml index ef2bd77ff17..5ec43cce4eb 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml @@ -11,5 +11,6 @@ - type: Tag tags: - WhitelistChameleon + - PlasmamanSafe - type: ToggleableClothing clothingPrototype: ClothingHeadEnvirohelm diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml index 84ec14faf4b..4351c47f5a3 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -40,6 +40,8 @@ spawned: - id: SheetPlasma1 amount: 4 + - type: Inventory + templateId: plasmaman - type: Temperature heatDamageThreshold: 313 # 40 celsius # coldDamageThreshold: 195 # -78.5 celsius # Just set this to default cause it wont make a difference @@ -78,3 +80,10 @@ parent: BaseSpeciesDummy id: MobPlasmamanDummy categories: [ HideSpawnMenu ] + components: + - type: HumanoidAppearance + species: Plasmaman + - type: Inventory + templateId: plasmaman + - type: ToggleStartingGear # TODO make toggling sound quiet in lobby + slot: jumpsuit diff --git a/Resources/Prototypes/InventoryTemplates/plasmaman_inventory_template.yml b/Resources/Prototypes/InventoryTemplates/plasmaman_inventory_template.yml new file mode 100644 index 00000000000..c295cf120b1 --- /dev/null +++ b/Resources/Prototypes/InventoryTemplates/plasmaman_inventory_template.yml @@ -0,0 +1,129 @@ +- type: inventoryTemplate + id: plasmaman + slots: + - name: shoes + slotTexture: shoes + slotFlags: FEET + stripTime: 3 + uiWindowPos: 1,0 + strippingWindowPos: 1,3 + displayName: Shoes + - name: jumpsuit + slotTexture: uniform + slotFlags: INNERCLOTHING + stripTime: 6 + uiWindowPos: 0,1 + strippingWindowPos: 0,2 + displayName: Jumpsuit + spawnWhitelist: + tags: + - PlasmamanSafe + - name: outerClothing + slotTexture: suit + slotFlags: OUTERCLOTHING + stripTime: 6 + uiWindowPos: 1,1 + strippingWindowPos: 1,2 + displayName: Suit + - name: gloves + slotTexture: gloves + slotFlags: GLOVES + uiWindowPos: 2,1 + strippingWindowPos: 2,2 + displayName: Gloves + - name: neck + slotTexture: neck + slotFlags: NECK + uiWindowPos: 0,2 + strippingWindowPos: 0,1 + displayName: Neck + - name: mask + slotTexture: mask + slotFlags: MASK + uiWindowPos: 1,2 + strippingWindowPos: 1,1 + displayName: Mask + - name: eyes + slotTexture: glasses + slotFlags: EYES + stripTime: 3 + uiWindowPos: 0,3 + strippingWindowPos: 0,0 + displayName: Eyes + - name: ears + slotTexture: ears + slotFlags: EARS + stripTime: 3 + uiWindowPos: 2,2 + strippingWindowPos: 2,0 + displayName: Ears + - name: head + slotTexture: head + slotFlags: HEAD + uiWindowPos: 1,3 + strippingWindowPos: 1,0 + displayName: Head + spawnWhitelist: + tags: + - PlasmamanSafe + - name: pocket1 + slotTexture: pocket + fullTextureName: template_small + slotFlags: POCKET + slotGroup: MainHotbar + stripTime: 3 + uiWindowPos: 0,3 + strippingWindowPos: 0,4 + dependsOn: jumpsuit + displayName: Pocket 1 + stripHidden: true + - name: pocket2 + slotTexture: pocket + fullTextureName: template_small + slotFlags: POCKET + slotGroup: MainHotbar + stripTime: 3 + uiWindowPos: 2,3 + strippingWindowPos: 1,4 + dependsOn: jumpsuit + displayName: Pocket 2 + stripHidden: true + - name: suitstorage + slotTexture: suit_storage + slotFlags: SUITSTORAGE + slotGroup: MainHotbar + stripTime: 3 + uiWindowPos: 2,0 + strippingWindowPos: 2,5 + dependsOn: outerClothing + dependsOnComponents: + - type: AllowSuitStorage + displayName: Suit Storage + - name: id + slotTexture: id + fullTextureName: template_small + slotFlags: IDCARD + slotGroup: SecondHotbar + stripTime: 6 + uiWindowPos: 2,1 + strippingWindowPos: 2,4 + dependsOn: jumpsuit + displayName: ID + - name: belt + slotTexture: belt + fullTextureName: template_small + slotFlags: BELT + slotGroup: SecondHotbar + stripTime: 6 + uiWindowPos: 3,1 + strippingWindowPos: 1,5 + displayName: Belt + - name: back + slotTexture: back + fullTextureName: template_small + slotFlags: BACK + slotGroup: SecondHotbar + stripTime: 6 + uiWindowPos: 3,0 + strippingWindowPos: 0,5 + displayName: Back diff --git a/Resources/Prototypes/Loadouts/Generic/species.yml b/Resources/Prototypes/Loadouts/Generic/species.yml index d1e53f093bd..ae52514fc50 100644 --- a/Resources/Prototypes/Loadouts/Generic/species.yml +++ b/Resources/Prototypes/Loadouts/Generic/species.yml @@ -58,7 +58,7 @@ - type: loadout id: LoadoutSpeciesUniformEnvirosuit - category: Species + category: Uniform groups: [ LoadoutPlasmamanEnvirosuit ] cost: 0 exclusive: true diff --git a/Resources/Prototypes/tags.yml b/Resources/Prototypes/tags.yml index e7f20f8f47b..527e22bd6bf 100644 --- a/Resources/Prototypes/tags.yml +++ b/Resources/Prototypes/tags.yml @@ -1363,3 +1363,6 @@ - type: Tag id: WriteIgnoreStamps + +- type: Tag + id: PlasmamanSafe From 0c07f1c194f7b757bdf95f157893f88bcd0ada31 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Wed, 18 Dec 2024 16:20:32 +0800 Subject: [PATCH 44/68] fix cryo spawn preventing loadout equip && put plasma tank in belt if has toolbelt --- .../Loadouts/Systems/SharedLoadoutSystem.cs | 25 +++++++++++++------ .../Inventory/InventorySystem.Equip.cs | 2 +- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/Content.Shared/Clothing/Loadouts/Systems/SharedLoadoutSystem.cs b/Content.Shared/Clothing/Loadouts/Systems/SharedLoadoutSystem.cs index f8421d25648..e5c2922b41c 100644 --- a/Content.Shared/Clothing/Loadouts/Systems/SharedLoadoutSystem.cs +++ b/Content.Shared/Clothing/Loadouts/Systems/SharedLoadoutSystem.cs @@ -94,8 +94,6 @@ private void OnMapInit(EntityUid uid, LoadoutComponent component, MapInitEvent a foreach (var (loadout, loadoutProto) in preferencesAndPrototypes) { - var slot = ""; - // Spawn the loadout items var spawned = EntityManager.SpawnEntities( _sharedTransformSystem.GetMapCoordinates(uid), @@ -104,6 +102,8 @@ private void OnMapInit(EntityUid uid, LoadoutComponent component, MapInitEvent a var i = 0; // If someone wants to add multi-item support to the editor foreach (var item in spawned) { + var slots = new List(); + allLoadouts.Add((item, loadout, i)); if (loadout.CustomHeirloom == true) heirlooms.Add((item, loadout)); @@ -113,14 +113,13 @@ private void OnMapInit(EntityUid uid, LoadoutComponent component, MapInitEvent a && _characterRequirements.CanEntityWearItem(uid, item) && _inventory.TryGetSlots(uid, out var slotDefinitions)) { - var deleted = false; foreach (var curSlot in slotDefinitions) { - // If the loadout can't equip here or we've already deleted an item from this slot, skip it - if (!clothingComp.Slots.HasFlag(curSlot.SlotFlags) || deleted) + // If the loadout can't equip here, skip it + if (!clothingComp.Slots.HasFlag(curSlot.SlotFlags)) continue; - slot = curSlot.Name; + slots.Add(curSlot.Name); // If the loadout is exclusive delete the equipped item if (loadoutProto.Exclusive) @@ -130,7 +129,7 @@ private void OnMapInit(EntityUid uid, LoadoutComponent component, MapInitEvent a continue; EntityManager.DeleteEntity(slotItem.Value); - deleted = true; + break; } } } @@ -148,7 +147,17 @@ private void OnMapInit(EntityUid uid, LoadoutComponent component, MapInitEvent a // Equip the loadout - if (!_inventory.TryEquip(uid, item, slot, true, !string.IsNullOrEmpty(slot), true)) + var equipped = false; + foreach (var slot in slots) + { + if (_inventory.TryEquip(uid, item, slot, true, !string.IsNullOrEmpty(slot), true)) + { + equipped = true; + break; + } + } + + if (!equipped) failedLoadouts.Add(item); i++; diff --git a/Content.Shared/Inventory/InventorySystem.Equip.cs b/Content.Shared/Inventory/InventorySystem.Equip.cs index fa0d59ccd36..369ad335336 100644 --- a/Content.Shared/Inventory/InventorySystem.Equip.cs +++ b/Content.Shared/Inventory/InventorySystem.Equip.cs @@ -262,7 +262,7 @@ public bool CanEquip(EntityUid actor, EntityUid target, EntityUid itemUid, strin return false; } - if (!CanAccess(actor, target, itemUid)) + if (!onSpawn && !CanAccess(actor, target, itemUid)) // Don't check for reachability on spawn to equip loadout items in cryostorage { reason = "interaction-system-user-interaction-cannot-reach"; return false; From d96aa980dccd7029f76b3558e7b0673e1ff6ac67 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Wed, 18 Dec 2024 16:55:39 +0800 Subject: [PATCH 45/68] add more sources of plasma tanks --- Resources/Prototypes/Catalog/Fills/Backpacks/duffelbag.yml | 4 ++++ Resources/Prototypes/Catalog/Fills/Crates/syndicate.yml | 1 + .../Entities/Markers/Spawners/Random/maintenance.yml | 6 ++++++ 3 files changed, 11 insertions(+) diff --git a/Resources/Prototypes/Catalog/Fills/Backpacks/duffelbag.yml b/Resources/Prototypes/Catalog/Fills/Backpacks/duffelbag.yml index 6f4a9783561..3961df1fc6b 100644 --- a/Resources/Prototypes/Catalog/Fills/Backpacks/duffelbag.yml +++ b/Resources/Prototypes/Catalog/Fills/Backpacks/duffelbag.yml @@ -265,6 +265,7 @@ - id: ClothingHandsGlovesColorYellowBudget - id: DoubleEmergencyOxygenTankFilled - id: DoubleEmergencyNitrogenTankFilled + - id: DoubleEmergencyPlasmaTankFilled - type: entity parent: ClothingBackpackDuffelSyndicateBundle @@ -279,6 +280,7 @@ - id: ClothingHandsGlovesCombat - id: DoubleEmergencyOxygenTankFilled - id: DoubleEmergencyNitrogenTankFilled + - id: DoubleEmergencyPlasmaTankFilled - type: entity parent: ClothingBackpackDuffelSyndicateBundle @@ -293,6 +295,7 @@ - id: ClothingHandsGlovesCombat - id: DoubleEmergencyOxygenTankFilled - id: DoubleEmergencyNitrogenTankFilled + - id: DoubleEmergencyPlasmaTankFilled - type: entity parent: ClothingBackpackDuffelSyndicateBundle @@ -306,6 +309,7 @@ - id: ClothingHandsGlovesCombat - id: DoubleEmergencyOxygenTankFilled - id: DoubleEmergencyNitrogenTankFilled + - id: DoubleEmergencyPlasmaTankFilled - type: entity parent: ClothingBackpackDuffelSyndicateBundle diff --git a/Resources/Prototypes/Catalog/Fills/Crates/syndicate.yml b/Resources/Prototypes/Catalog/Fills/Crates/syndicate.yml index 3f9e909c809..422f9d09b35 100644 --- a/Resources/Prototypes/Catalog/Fills/Crates/syndicate.yml +++ b/Resources/Prototypes/Catalog/Fills/Crates/syndicate.yml @@ -21,6 +21,7 @@ - id: ClothingHandsGlovesCombat - id: DoubleEmergencyOxygenTankFilled - id: DoubleEmergencyNitrogenTankFilled + - id: DoubleEmergencyPlasmaTankFilled - type: entity id: CrateSyndicateSuperSurplusBundle diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml index 90774a1185e..777a4f1dfaa 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml @@ -317,6 +317,12 @@ id: NitrogenTankFilled - !type:EntSelector id: DoubleEmergencyNitrogenTankFilled + - !type:GroupSelector + children: + - !type:EntSelector + id: PlasmaTankFilled + - !type:EntSelector + id: DoubleEmergencyPlasmaTankFilled - !type:EntSelector id: EmergencyFunnyOxygenTankFilled weight: 0.5 From 773292c30808f597fc14f36d46bc5679f058b2fb Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Wed, 18 Dec 2024 17:09:39 +0800 Subject: [PATCH 46/68] turn envirohelm into separate item from envirosuit --- .../Species/Plasmaman/envirohelm.yml | 12 ++++++++++++ .../Entities/Clothing/Head/base_clothinghead.yml | 11 +---------- .../Clothing/Uniforms/base_clothinguniforms.yml | 7 ------- .../Entities/Clothing/Uniforms/envirosuits.yml | 2 -- Resources/Prototypes/Loadouts/Generic/species.yml | 9 +++++++++ 5 files changed, 22 insertions(+), 19 deletions(-) create mode 100644 Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirohelm.yml diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirohelm.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirohelm.yml new file mode 100644 index 00000000000..353234a6601 --- /dev/null +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirohelm.yml @@ -0,0 +1,12 @@ +- type: characterItemGroup + id: LoadoutPlasmamanEnvirohelm + minItems: 1 + maxItems: 1 + requirements: + - !type:CharacterSpeciesRequirement + species: + - Plasmaman + items: + - type: loadout + id: LoadoutSpeciesHeadEnvirohelm + priority: 0 diff --git a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml index 7c1e96c3163..7fca604abea 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml @@ -191,18 +191,9 @@ - type: entity abstract: true id: ClothingHeadEnvirohelmBase + parent: ClothingHeadBase name: base envirosuit helmet - categories: [ HideSpawnMenu ] components: - - type: Sprite - state: icon - - type: Clickable - - type: InteractionOutline - - type: Clothing - equipSound: /Audio/Mecha/mechmove03.ogg - unequipSound: /Audio/Mecha/mechmove03.ogg - quickEquip: false - slots: [ HEAD ] - type: IgniteFromGasImmunity - type: EyeProtection - type: BreathMask diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml index 6d4e99ae9b7..3d2239dd793 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml @@ -164,13 +164,6 @@ - type: Clothing equipDelay: 1 unequipDelay: 0.75 - - type: ToggleableClothing - requiredSlot: - - innerclothing - slot: head - - type: ContainerContainer - containers: - toggleable-clothing: !type:ContainerSlot {} - type: SelfExtinguisher maxCharges: 5 cooldown: 100 diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml index 5ec43cce4eb..cc9b31bbc65 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml @@ -12,5 +12,3 @@ tags: - WhitelistChameleon - PlasmamanSafe - - type: ToggleableClothing - clothingPrototype: ClothingHeadEnvirohelm diff --git a/Resources/Prototypes/Loadouts/Generic/species.yml b/Resources/Prototypes/Loadouts/Generic/species.yml index ae52514fc50..203aa2c4e14 100644 --- a/Resources/Prototypes/Loadouts/Generic/species.yml +++ b/Resources/Prototypes/Loadouts/Generic/species.yml @@ -64,3 +64,12 @@ exclusive: true items: - ClothingUniformEnvirosuit + +- type: loadout + id: LoadoutSpeciesHeadEnvirohelm + category: Head + groups: [ LoadoutPlasmamanEnvirohelm ] + cost: 0 + exclusive: true + items: + - ClothingHeadEnvirohelm From 29bd83806666884ce35336f26f5be6b78b72d1be Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Wed, 18 Dec 2024 17:12:25 +0800 Subject: [PATCH 47/68] remove unnecessary ToggleStartingGearComponent --- .../Components/ToggleStartingGearComponent.cs | 16 ---------------- .../EntitySystems/ToggleableClothingSystem.cs | 13 ------------- .../Entities/Mobs/Species/plasmaman.yml | 4 ---- 3 files changed, 33 deletions(-) delete mode 100644 Content.Shared/Clothing/Components/ToggleStartingGearComponent.cs diff --git a/Content.Shared/Clothing/Components/ToggleStartingGearComponent.cs b/Content.Shared/Clothing/Components/ToggleStartingGearComponent.cs deleted file mode 100644 index 827531da3bd..00000000000 --- a/Content.Shared/Clothing/Components/ToggleStartingGearComponent.cs +++ /dev/null @@ -1,16 +0,0 @@ -using Robust.Shared.GameStates; - -namespace Content.Shared.Clothing.Components; - -/// -/// Tries to toggle clothing after spawning with equipment. -/// -[RegisterComponent, NetworkedComponent, AutoGenerateComponentState] -public sealed partial class ToggleStartingGearComponent : Component -{ - /// - /// The inventory slot to toggle. - /// - [DataField(required: true), AutoNetworkedField] - public string Slot; -} diff --git a/Content.Shared/Clothing/EntitySystems/ToggleableClothingSystem.cs b/Content.Shared/Clothing/EntitySystems/ToggleableClothingSystem.cs index a19655eee34..4abe7bc876a 100644 --- a/Content.Shared/Clothing/EntitySystems/ToggleableClothingSystem.cs +++ b/Content.Shared/Clothing/EntitySystems/ToggleableClothingSystem.cs @@ -6,7 +6,6 @@ using Content.Shared.Inventory; using Content.Shared.Inventory.Events; using Content.Shared.Popups; -using Content.Shared.Roles; using Content.Shared.Strip; using Content.Shared.Verbs; using Robust.Shared.Containers; @@ -50,8 +49,6 @@ public override void Initialize() SubscribeLocalEvent>(OnGetVerbs); SubscribeLocalEvent>(OnGetAttachedStripVerbsEvent); SubscribeLocalEvent(OnDoAfterComplete); - - SubscribeLocalEvent(OnStartingGearEquipped); } private void GetRelayedVerbs(EntityUid uid, ToggleableClothingComponent component, InventoryRelayedEvent> args) @@ -301,16 +298,6 @@ private void OnMapInit(EntityUid uid, ToggleableClothingComponent component, Map if (_actionContainer.EnsureAction(uid, ref component.ActionEntity, out var action, component.Action)) _actionsSystem.SetEntityIcon(component.ActionEntity.Value, component.ClothingUid, action); } - - private void OnStartingGearEquipped(EntityUid uid, ToggleStartingGearComponent component, ref StartingGearEquippedEvent ev) - { - if (!_inventorySystem.TryGetSlotEntity(uid, component.Slot, out var clothing) || - !TryComp(clothing, out var toggleable)) - return; - - ToggleClothing(uid, (EntityUid) clothing, toggleable); - RemComp(uid); - } } public sealed partial class ToggleClothingEvent : InstantActionEvent diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml index 4351c47f5a3..9923f3c88fc 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -72,8 +72,6 @@ - TauCetiBasic - Calcic - type: FootPrints - - type: ToggleStartingGear - slot: jumpsuit - type: ToggleFirstBreathTool - type: entity @@ -85,5 +83,3 @@ species: Plasmaman - type: Inventory templateId: plasmaman - - type: ToggleStartingGear # TODO make toggling sound quiet in lobby - slot: jumpsuit From 54bf646d9d8db068260918e88bbe23c5d85dee21 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Wed, 18 Dec 2024 17:19:31 +0800 Subject: [PATCH 48/68] make default plasma tank double emergency (biggest emergency) --- .../Species/Plasmaman/plasmatank.yml | 5 +---- Resources/Prototypes/Loadouts/Generic/species.yml | 10 +--------- 2 files changed, 2 insertions(+), 13 deletions(-) diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml index 38726ce6011..d933e6bed18 100644 --- a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml @@ -7,9 +7,6 @@ species: - Plasmaman items: - - type: loadout - id: LoadoutSpeciesExtendedEmergencyPlasmaTank - priority: 10 - type: loadout id: LoadoutSpeciesDoubleEmergencyPlasmaTank - priority: 5 + priority: 0 diff --git a/Resources/Prototypes/Loadouts/Generic/species.yml b/Resources/Prototypes/Loadouts/Generic/species.yml index 203aa2c4e14..a74b0d435eb 100644 --- a/Resources/Prototypes/Loadouts/Generic/species.yml +++ b/Resources/Prototypes/Loadouts/Generic/species.yml @@ -40,19 +40,11 @@ items: - DoubleEmergencyNitrogenTankFilled -- type: loadout - id: LoadoutSpeciesExtendedEmergencyPlasmaTank - category: Species - groups: [ LoadoutPlasmamanPlasmaTank ] - cost: 0 - items: - - ExtendedEmergencyPlasmaTankFilled - - type: loadout id: LoadoutSpeciesDoubleEmergencyPlasmaTank category: Species groups: [ LoadoutPlasmamanPlasmaTank ] - cost: 2 + cost: 0 items: - DoubleEmergencyPlasmaTankFilled From 4380b50a13218187449f0f2bee82f0e50a15b0ae Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Wed, 18 Dec 2024 17:51:09 +0800 Subject: [PATCH 49/68] add plasmaman life support crate + use plasmatank sprite --- .../Catalog/Cargo/cargo_emergency.yml | 10 ++++++++++ .../Catalog/Fills/Crates/emergency.yml | 17 +++++++++++++++++ .../Clothing/Uniforms/base_clothinguniforms.yml | 2 +- .../Entities/Objects/Tools/gas_tanks.yml | 6 +++--- 4 files changed, 31 insertions(+), 4 deletions(-) diff --git a/Resources/Prototypes/Catalog/Cargo/cargo_emergency.yml b/Resources/Prototypes/Catalog/Cargo/cargo_emergency.yml index c04e49f413c..1157eea4ca4 100644 --- a/Resources/Prototypes/Catalog/Cargo/cargo_emergency.yml +++ b/Resources/Prototypes/Catalog/Cargo/cargo_emergency.yml @@ -68,6 +68,16 @@ category: cargoproduct-category-name-emergency group: market +- type: cargoProduct + id: EmergencyPlasmamanLifeSupport + icon: + sprite: Objects/Tanks/plasmaman.rsi + state: icon + product: CratePlasmamanLifeSupport + cost: 500 + category: cargoproduct-category-name-emergency + group: market + - type: cargoProduct id: EmergencyBiosuit icon: diff --git a/Resources/Prototypes/Catalog/Fills/Crates/emergency.yml b/Resources/Prototypes/Catalog/Fills/Crates/emergency.yml index c519a19c841..a68a9271fc5 100644 --- a/Resources/Prototypes/Catalog/Fills/Crates/emergency.yml +++ b/Resources/Prototypes/Catalog/Fills/Crates/emergency.yml @@ -91,6 +91,23 @@ - id: NitrogenTankFilled amount: 4 +- type: entity + id: CratePlasmamanLifeSupport + parent: CrateInternals + name: plasmaman life support crate + description: Contains four breath masks, four envirosuits, four envirosuit helmets and eight dual-canister plasma tanks. + components: + - type: StorageFill + contents: + - id: ClothingMaskBreath + amount: 4 + - id: ClothingUniformEnvirosuit + amount: 4 + - id: ClothingHeadEnvirohelm + amount: 4 + - id: DoubleEmergencyPlasmaTankFilled + amount: 8 + - type: entity id: CrateEmergencyRadiation parent: CrateRadiation diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml index 3d2239dd793..59439e94778 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml @@ -155,7 +155,7 @@ - type: entity abstract: true - parent: ClothingUniformBase + parent: [ClothingUniformBase, AllowSuitStorageClothing] # suit storage is a temporary stopgap before we get more clever tank storage ways id: ClothingUniformEnvirosuitBase components: - type: IgniteFromGasImmunity diff --git a/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml b/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml index d8b72dd729d..039a11b1f56 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml @@ -234,11 +234,11 @@ description: A high-grade dual-tank emergency life support container. It holds a decent amount of plasma for its small size. components: - type: Sprite - sprite: Objects/Tanks/emergency_double_red.rsi + sprite: Objects/Tanks/plasmaman.rsi - type: Item - sprite: Objects/Tanks/emergency_double_red.rsi + sprite: Objects/Tanks/plasmaman.rsi - type: Clothing - sprite: Objects/Tanks/emergency_double_red.rsi + sprite: Objects/Tanks/plasmaman.rsi - type: entity parent: EmergencyOxygenTank From 8b00de92a4f79aa134f28d07415f93331b8db40f Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Wed, 18 Dec 2024 18:03:59 +0800 Subject: [PATCH 50/68] rename double plasma tank to plasma internals tank --- Resources/Prototypes/Catalog/Fills/Crates/emergency.yml | 2 +- Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Resources/Prototypes/Catalog/Fills/Crates/emergency.yml b/Resources/Prototypes/Catalog/Fills/Crates/emergency.yml index a68a9271fc5..04800719dc8 100644 --- a/Resources/Prototypes/Catalog/Fills/Crates/emergency.yml +++ b/Resources/Prototypes/Catalog/Fills/Crates/emergency.yml @@ -95,7 +95,7 @@ id: CratePlasmamanLifeSupport parent: CrateInternals name: plasmaman life support crate - description: Contains four breath masks, four envirosuits, four envirosuit helmets and eight dual-canister plasma tanks. + description: Contains four breath masks, four envirosuits, four envirosuit helmets and eight plasma internals tanks. components: - type: StorageFill contents: diff --git a/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml b/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml index 039a11b1f56..d76cae87a96 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml @@ -230,8 +230,8 @@ - type: entity parent: DoubleEmergencyOxygenTank id: DoubleEmergencyPlasmaTank - name: double emergency plasma tank - description: A high-grade dual-tank emergency life support container. It holds a decent amount of plasma for its small size. + name: plasma internals tank + description: A tank of plasma designed to be internals for Plasmamen. components: - type: Sprite sprite: Objects/Tanks/plasmaman.rsi From b1e97e4eb32186bbba893d17d8eb2694a6175510 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Wed, 18 Dec 2024 18:08:38 +0800 Subject: [PATCH 51/68] make envirosuit helmet space-worthy --- .../Prototypes/Entities/Clothing/Head/base_clothinghead.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml index 7fca604abea..0ee9b043e11 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml @@ -198,6 +198,11 @@ - type: EyeProtection - type: BreathMask - type: GroupExamine + - type: PressureProtection # Same as EVA helmet + highPressureMultiplier: 0.6 + lowPressureMultiplier: 1000 + - type: TemperatureProtection + coefficient: 0.2 - type: IngestionBlocker - type: Tag tags: From a522abd56214655f93e1c94c64da9ecd46d26df7 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Wed, 18 Dec 2024 18:48:17 +0800 Subject: [PATCH 52/68] update plasmaman guidebook entry --- .../ServerInfo/Guidebook/Mobs/Plasmaman.xml | 39 +++++++++++++------ 1 file changed, 28 insertions(+), 11 deletions(-) diff --git a/Resources/ServerInfo/Guidebook/Mobs/Plasmaman.xml b/Resources/ServerInfo/Guidebook/Mobs/Plasmaman.xml index 18096c16d7c..b358f280f03 100644 --- a/Resources/ServerInfo/Guidebook/Mobs/Plasmaman.xml +++ b/Resources/ServerInfo/Guidebook/Mobs/Plasmaman.xml @@ -2,28 +2,45 @@ # Plasmamen - + - They take 15% less Slash and 25% less Piercing damage, - but take 50% more Blunt and 50% more Heat damage. + They breathe plasma, and oxygen is highly toxic when inhaled. + Being exposed to oxygen sets them on fire, forcing them to wear envirosuits, EVA suits or hardsuits. - They are immune to Radiation and Cold Damage. + They come with a [bold]spaceworthy[/bold] envirosuit helmet that provides a flashlight and welding protection. + However, they cannot eat nor drink without taking off their envirosuit helmet. + + + + + + They don't have blood and cannot bleed out. + They don't experience hunger nor thirst. - They don't experience hunger or thirst. + They can consume Milk to gain a positive moodlet and slowly heal Brute, Heat, Shock, and Caustic damage. + They can also consume Plasma to gain a bigger positive moodlet and heal every damage type faster than Milk, except Cellular. - They come with an envirosuit helmet that provides a flashlight and welding protection. + + + + - Due to being skeletons, they can consume Milk to gain a positive moodlet and slowly heal Brute, Heat, Shock, and Caustic damage. + They take [color=#1e90ff]15% less Slash and 25% less Piercing damage[/color], + and are [color=#1e90ff]immune to Radiation and Cold damage[/color], + but take [color=#ffa500]50% more Blunt and 50% more Heat damage[/color]. - They can consume Plasma to gain a bigger positive moodlet and heal every damage type faster than Milk, except Cellular. + ## Medical Treatment + + + - They can only breathe plasma, and oxygen is highly toxic when inhaled. + To perform surgery on a Plasmaman, you need to take off their envirosuit first, which can be disastrous in an oxygenated environment. - Being exposed to oxygen sets them on fire, forcing them to wear envirosuits, EVA suits or hardsuits. + To get around this, you can buckle the Plasmaman to a [bold]stasis bed[/bold] before removing their envirosuit to prevent them from self-igniting throughout the surgery. - They cannot eat, drink, or consume pills without taking off their envirosuit helmet. + Their envirosuit helmet prevents them from eating pills, so it's recommended to use a syringe to administer chemicals. From 4b308c00c07c62598a9b478bb294e7a58d68d16a Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Wed, 18 Dec 2024 19:10:04 +0800 Subject: [PATCH 53/68] remove ss14 medicine names from plasmeme --- .../Prototypes/Datasets/Names/plasmaman.yml | 30 ------------------- 1 file changed, 30 deletions(-) diff --git a/Resources/Prototypes/Datasets/Names/plasmaman.yml b/Resources/Prototypes/Datasets/Names/plasmaman.yml index 3af8e264dbf..470811d5e71 100644 --- a/Resources/Prototypes/Datasets/Names/plasmaman.yml +++ b/Resources/Prototypes/Datasets/Names/plasmaman.yml @@ -252,33 +252,3 @@ - Nocturine - Impedrezene - Ephedrine - # SS14 medicine - - Bicaridine - - Kelotane - - Dylovene - - Dexalin - - Tricordrazine - - Synaptizine - - Pyrazine - - Omnizine - - Cognizine - - Aloxadone - - Arithrazine - - Bruizine - - Dermaline - - Hyronalin - - Stellibinin - - Insuzine - - Inaprovaline - - Cryoxadone - - Ambuzol - - Leporazine - - Lipozine - - Mannitol - - Oculine - - Psicodine - - Phalanximine - - Puncturase - - Opporozidone - - Phalanximine - - Polypyrilium From 8fa5a3e2a3336f6f7d8315419b9bf393790ecb70 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Wed, 18 Dec 2024 19:20:38 +0800 Subject: [PATCH 54/68] add plasmaman to metempsychotic pool :troll: --- Resources/Prototypes/Nyanotrasen/metempsychoticHumanoids.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/Resources/Prototypes/Nyanotrasen/metempsychoticHumanoids.yml b/Resources/Prototypes/Nyanotrasen/metempsychoticHumanoids.yml index 891067b1c1f..1f3bca9824c 100644 --- a/Resources/Prototypes/Nyanotrasen/metempsychoticHumanoids.yml +++ b/Resources/Prototypes/Nyanotrasen/metempsychoticHumanoids.yml @@ -11,3 +11,4 @@ Reptilian: 0.5 SlimePerson: 0.5 Vulpkanin: 0.5 + Plasmaman: 0.5 From 3df970ad9c758603c5a177cd312fdf5c2d5675f4 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Wed, 18 Dec 2024 19:24:16 +0800 Subject: [PATCH 55/68] nerf plasmaman metem weights --- Resources/Prototypes/Nyanotrasen/metempsychoticHumanoids.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Prototypes/Nyanotrasen/metempsychoticHumanoids.yml b/Resources/Prototypes/Nyanotrasen/metempsychoticHumanoids.yml index 1f3bca9824c..2502441d6c2 100644 --- a/Resources/Prototypes/Nyanotrasen/metempsychoticHumanoids.yml +++ b/Resources/Prototypes/Nyanotrasen/metempsychoticHumanoids.yml @@ -11,4 +11,4 @@ Reptilian: 0.5 SlimePerson: 0.5 Vulpkanin: 0.5 - Plasmaman: 0.5 + Plasmaman: 0.25 From 6d14167d3bc0244cb0bd539a2849cb52c40641e9 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Thu, 19 Dec 2024 07:53:22 +0800 Subject: [PATCH 56/68] add envirogloves + check group requiremnents in client loadout profile editor --- .../Lobby/UI/HumanoidProfileEditor.xaml.cs | 52 ++++++++++++++----- .../Species/Plasmaman/envirogloves.yml | 12 +++++ .../Clothing/Hands/base_clothinghands.yml | 1 + .../Entities/Clothing/Hands/envirogloves.yml | 11 ++-- .../Clothing/Head/base_clothinghead.yml | 1 - .../Prototypes/Loadouts/Generic/species.yml | 12 +++++ 6 files changed, 70 insertions(+), 19 deletions(-) create mode 100644 Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirogloves.yml diff --git a/Content.Client/Lobby/UI/HumanoidProfileEditor.xaml.cs b/Content.Client/Lobby/UI/HumanoidProfileEditor.xaml.cs index ce14882d167..ef37ec30a0a 100644 --- a/Content.Client/Lobby/UI/HumanoidProfileEditor.xaml.cs +++ b/Content.Client/Lobby/UI/HumanoidProfileEditor.xaml.cs @@ -18,6 +18,7 @@ using Content.Shared.Humanoid.Markings; using Content.Shared.Humanoid.Prototypes; using Content.Shared.Preferences; +using Content.Shared.Prototypes; using Content.Shared.Roles; using Content.Shared.StatusIcon; using Content.Shared.Traits; @@ -2024,18 +2025,45 @@ public void UpdateLoadouts(bool? showUnusable = null, bool reload = false) _loadouts.Clear(); foreach (var loadout in _prototypeManager.EnumeratePrototypes()) { - var usable = _characterRequirementsSystem.CheckRequirementsValid( - loadout.Requirements, - highJob ?? new JobPrototype(), - Profile ?? HumanoidCharacterProfile.DefaultWithSpecies(), - _requirements.GetRawPlayTimeTrackers(), - _requirements.IsWhitelisted(), - loadout, - _entManager, - _prototypeManager, - _cfgManager, - out _ - ); + var groupUsable = loadout.Groups.Count == 0 ? true : false; + + // Check group requirement reasons + foreach (var groupID in loadout.Groups) + { + if (!_prototypeManager.TryIndex(groupID, out var group)) + continue; + + groupUsable = _characterRequirementsSystem.CheckRequirementsValid( + group.Requirements, + highJob ?? new JobPrototype(), + Profile ?? HumanoidCharacterProfile.DefaultWithSpecies(), + _requirements.GetRawPlayTimeTrackers(), + _requirements.IsWhitelisted(), + loadout, + _entManager, + _prototypeManager, + _cfgManager, + out _ + ); + + if (groupUsable) + break; + } + + var usable = groupUsable ? + _characterRequirementsSystem.CheckRequirementsValid( + loadout.Requirements, + highJob ?? new JobPrototype(), + Profile ?? HumanoidCharacterProfile.DefaultWithSpecies(), + _requirements.GetRawPlayTimeTrackers(), + _requirements.IsWhitelisted(), + loadout, + _entManager, + _prototypeManager, + _cfgManager, + out _ + ) : false; + _loadouts.Add(loadout, usable); var list = _loadoutPreferences.ToList(); diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirogloves.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirogloves.yml new file mode 100644 index 00000000000..1e2ba74b359 --- /dev/null +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirogloves.yml @@ -0,0 +1,12 @@ +- type: characterItemGroup + id: LoadoutPlasmamanEnvirogloves + minItems: 1 + maxItems: 1 + requirements: + - !type:CharacterSpeciesRequirement + species: + - Plasmaman + items: + - type: loadout + id: LoadoutSpeciesHandsGlovesEnvirogloves + priority: 0 diff --git a/Resources/Prototypes/Entities/Clothing/Hands/base_clothinghands.yml b/Resources/Prototypes/Entities/Clothing/Hands/base_clothinghands.yml index 1cd074e88cd..37d9ed485fe 100644 --- a/Resources/Prototypes/Entities/Clothing/Hands/base_clothinghands.yml +++ b/Resources/Prototypes/Entities/Clothing/Hands/base_clothinghands.yml @@ -54,3 +54,4 @@ modifiers: coefficients: Caustic: 0.95 + - type: IgniteFromGasImmunity diff --git a/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml b/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml index 6501b1c420d..2833f1307f3 100644 --- a/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml +++ b/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml @@ -4,8 +4,11 @@ name: plasma envirogloves description: Covers up those scandalous boney hands. components: - - type: Sprite # TODO fix error sprite on worn sprite related to this - sprite: Clothing/Hands/Gloves/Envirogloves/plasma.rsi + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#913b00" - type: Item sprite: Clothing/Hands/Gloves/Color/color.rsi inhandVisuals: @@ -23,7 +26,3 @@ color: "#913b00" - type: Fiber fiberColor: fibers-orange - - type: Armor - modifiers: - coefficients: - Caustic: 0.95 diff --git a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml index 0ee9b043e11..24e33af3db5 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/base_clothinghead.yml @@ -197,7 +197,6 @@ - type: IgniteFromGasImmunity - type: EyeProtection - type: BreathMask - - type: GroupExamine - type: PressureProtection # Same as EVA helmet highPressureMultiplier: 0.6 lowPressureMultiplier: 1000 diff --git a/Resources/Prototypes/Loadouts/Generic/species.yml b/Resources/Prototypes/Loadouts/Generic/species.yml index a74b0d435eb..a8e1688679c 100644 --- a/Resources/Prototypes/Loadouts/Generic/species.yml +++ b/Resources/Prototypes/Loadouts/Generic/species.yml @@ -65,3 +65,15 @@ exclusive: true items: - ClothingHeadEnvirohelm + +- type: loadout + id: LoadoutSpeciesHandsGlovesEnvirogloves + category: Hands + groups: [ LoadoutPlasmamanEnvirogloves ] + cost: 0 + exclusive: true + items: + - ClothingHandsGlovesEnvirogloves + requirements: + - !type:CharacterItemGroupRequirement + group: LoadoutGloves From 6749bdd1f8560c5def2c192ef3a7dfb5841d70db Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Thu, 19 Dec 2024 17:05:18 +0800 Subject: [PATCH 57/68] make plasmamen breathe 1/4 as much plasma --- Resources/Prototypes/Body/Organs/plasmaman.yml | 3 +++ Resources/Prototypes/Catalog/Fills/Items/gas_tanks.yml | 6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Resources/Prototypes/Body/Organs/plasmaman.yml b/Resources/Prototypes/Body/Organs/plasmaman.yml index 5965c615ca5..49463379b44 100644 --- a/Resources/Prototypes/Body/Organs/plasmaman.yml +++ b/Resources/Prototypes/Body/Organs/plasmaman.yml @@ -10,6 +10,9 @@ layers: [] - type: Metabolizer metabolizerTypes: [ Plasmaman ] + groups: + - id: Gas + rateModifier: 25.0 - type: Lung alert: LowPlasma - type: Butcherable diff --git a/Resources/Prototypes/Catalog/Fills/Items/gas_tanks.yml b/Resources/Prototypes/Catalog/Fills/Items/gas_tanks.yml index 8827f534fd6..b547287863e 100644 --- a/Resources/Prototypes/Catalog/Fills/Items/gas_tanks.yml +++ b/Resources/Prototypes/Catalog/Fills/Items/gas_tanks.yml @@ -69,7 +69,7 @@ suffix: Filled components: - type: GasTank - outputPressure: 21.3 + outputPressure: 5.325 air: # 4 minutes volume: 0.66 @@ -115,7 +115,7 @@ suffix: Filled components: - type: GasTank - outputPressure: 21.3 + outputPressure: 5.325 air: # 9 minutes volume: 1.5 @@ -161,7 +161,7 @@ suffix: Filled components: - type: GasTank - outputPressure: 21.3 + outputPressure: 5.325 air: # 15 minutes volume: 1.5 From 5d10d7964ab6d524d28f3bc89f4fc8e58cf1a2cf Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Thu, 19 Dec 2024 17:16:46 +0800 Subject: [PATCH 58/68] use correct attribution for plasmaman organs and parts --- .../Textures/Clothing/Head/Envirohelms/plain.rsi/meta.json | 2 +- .../Textures/Clothing/Uniforms/Envirosuits/plain.rsi/meta.json | 2 +- Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/meta.json | 2 +- Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/meta.json | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/meta.json index 1e27d48c21a..9f7af4a28db 100644 --- a/Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/meta.json +++ b/Resources/Textures/Clothing/Head/Envirohelms/plain.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "TODO", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/plain.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/plain.rsi/meta.json index 2aab38458ee..7881ed5501f 100644 --- a/Resources/Textures/Clothing/Uniforms/Envirosuits/plain.rsi/meta.json +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/plain.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "TODO", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/meta.json b/Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/meta.json index 6b93f1ce8d7..9251d0cd12f 100644 --- a/Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/meta.json +++ b/Resources/Textures/Mobs/Species/Plasmaman/organs.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "TODO stomach/tongue from tg, liver/lungs/kidneys/heart/brain from paradise", + "copyright": "stomach/tongue taken from TG station at commit https://github.com/tgstation/tgstation/commit/df00d853564efc80a8d10528bbf77ca6960742c4, liver/lungs/kidneys/heart/brain taken from Paradise Station at commit https://github.com/ParadiseSS13/Paradise/commit/bd91a1b962fe9bd38e346e9fafd4ebb10784fcb3", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/meta.json b/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/meta.json index a15b644f97e..af089f61a70 100644 --- a/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/meta.json +++ b/Resources/Textures/Mobs/Species/Plasmaman/parts.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "https://github.com/tgstation/tgstation/commit/fc4de530ce208ad6d91ad85cf241b094e64b2ae5", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/fc4de530ce208ad6d91ad85cf241b094e64b2ae5", "size": { "x": 32, "y": 32 From a786002d059e8b13188a46f7fd17221f32ae17ef Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Thu, 19 Dec 2024 17:20:18 +0800 Subject: [PATCH 59/68] add sprites for most envirosuits/helms --- .../Species/Plasmaman/envirogloves.yml | 1 + .../Species/Plasmaman/envirohelm.yml | 7 + .../Species/Plasmaman/envirosuit.yml | 7 + .../Entities/Clothing/Hands/envirogloves.yml | 380 ++++++++++++++++++ .../Entities/Clothing/Head/envirohelms.yml | 286 +++++++++++++ .../Uniforms/base_clothinguniforms.yml | 1 + .../Clothing/Uniforms/envirosuits.yml | 282 ++++++++++++- .../Prototypes/Loadouts/Generic/species.yml | 70 ++++ .../Head/Envirohelms/atmos.rsi/icon-flash.png | Bin 0 -> 435 bytes .../Head/Envirohelms/atmos.rsi/icon.png | Bin 0 -> 430 bytes .../Head/Envirohelms/atmos.rsi/meta.json | 25 ++ .../atmos.rsi/off-equipped-HELMET.png | Bin 0 -> 806 bytes .../atmos.rsi/on-equipped-HELMET.png | Bin 0 -> 877 bytes .../Envirohelms/captain.rsi/icon-flash.png | Bin 0 -> 461 bytes .../Head/Envirohelms/captain.rsi/icon.png | Bin 0 -> 453 bytes .../Head/Envirohelms/captain.rsi/meta.json | 25 ++ .../captain.rsi/off-equipped-HELMET.png | Bin 0 -> 859 bytes .../captain.rsi/on-equipped-HELMET.png | Bin 0 -> 897 bytes .../Head/Envirohelms/cargo.rsi/icon-flash.png | Bin 0 -> 450 bytes .../Head/Envirohelms/cargo.rsi/icon.png | Bin 0 -> 444 bytes .../Head/Envirohelms/cargo.rsi/meta.json | 25 ++ .../cargo.rsi/off-equipped-HELMET.png | Bin 0 -> 845 bytes .../cargo.rsi/on-equipped-HELMET.png | Bin 0 -> 917 bytes .../Head/Envirohelms/ce.rsi/icon-flash.png | Bin 0 -> 434 bytes .../Clothing/Head/Envirohelms/ce.rsi/icon.png | Bin 0 -> 430 bytes .../Head/Envirohelms/ce.rsi/meta.json | 25 ++ .../ce.rsi/off-equipped-HELMET.png | Bin 0 -> 787 bytes .../Envirohelms/ce.rsi/on-equipped-HELMET.png | Bin 0 -> 855 bytes .../Envirohelms/chaplain.rsi/icon-flash.png | Bin 0 -> 433 bytes .../Head/Envirohelms/chaplain.rsi/icon.png | Bin 0 -> 431 bytes .../Head/Envirohelms/chaplain.rsi/meta.json | 25 ++ .../chaplain.rsi/off-equipped-HELMET.png | Bin 0 -> 800 bytes .../chaplain.rsi/on-equipped-HELMET.png | Bin 0 -> 852 bytes .../Envirohelms/chemist.rsi/icon-flash.png | Bin 0 -> 432 bytes .../Head/Envirohelms/chemist.rsi/icon.png | Bin 0 -> 430 bytes .../Head/Envirohelms/chemist.rsi/meta.json | 25 ++ .../chemist.rsi/off-equipped-HELMET.png | Bin 0 -> 797 bytes .../chemist.rsi/on-equipped-HELMET.png | Bin 0 -> 862 bytes .../Head/Envirohelms/clown.rsi/icon-flash.png | Bin 0 -> 467 bytes .../Head/Envirohelms/clown.rsi/icon.png | Bin 0 -> 472 bytes .../Head/Envirohelms/clown.rsi/meta.json | 25 ++ .../clown.rsi/off-equipped-HELMET.png | Bin 0 -> 1068 bytes .../clown.rsi/on-equipped-HELMET.png | Bin 0 -> 1071 bytes .../Head/Envirohelms/cmo.rsi/icon-flash.png | Bin 0 -> 449 bytes .../Head/Envirohelms/cmo.rsi/icon.png | Bin 0 -> 432 bytes .../Head/Envirohelms/cmo.rsi/meta.json | 25 ++ .../cmo.rsi/off-equipped-HELMET.png | Bin 0 -> 872 bytes .../cmo.rsi/on-equipped-HELMET.png | Bin 0 -> 937 bytes .../Envirohelms/commander.rsi/icon-flash.png | Bin 0 -> 434 bytes .../Head/Envirohelms/commander.rsi/icon.png | Bin 0 -> 421 bytes .../Head/Envirohelms/commander.rsi/meta.json | 25 ++ .../commander.rsi/off-equipped-HELMET.png | Bin 0 -> 851 bytes .../commander.rsi/on-equipped-HELMET.png | Bin 0 -> 889 bytes .../Envirohelms/coroner.rsi/icon-flash.png | Bin 0 -> 513 bytes .../Head/Envirohelms/coroner.rsi/icon.png | Bin 0 -> 501 bytes .../Head/Envirohelms/coroner.rsi/meta.json | 25 ++ .../coroner.rsi/off-equipped-HELMET.png | Bin 0 -> 821 bytes .../coroner.rsi/on-equipped-HELMET.png | Bin 0 -> 878 bytes .../engineering.rsi/icon-flash.png | Bin 0 -> 416 bytes .../Head/Envirohelms/engineering.rsi/icon.png | Bin 0 -> 421 bytes .../Envirohelms/engineering.rsi/meta.json | 25 ++ .../engineering.rsi/off-equipped-HELMET.png | Bin 0 -> 783 bytes .../engineering.rsi/on-equipped-HELMET.png | Bin 0 -> 852 bytes .../Envirohelms/geneticist.rsi/icon-flash.png | Bin 0 -> 440 bytes .../Head/Envirohelms/geneticist.rsi/icon.png | Bin 0 -> 433 bytes .../Head/Envirohelms/geneticist.rsi/meta.json | 25 ++ .../geneticist.rsi/off-equipped-HELMET.png | Bin 0 -> 811 bytes .../geneticist.rsi/on-equipped-HELMET.png | Bin 0 -> 879 bytes .../Head/Envirohelms/hop.rsi/icon-flash.png | Bin 0 -> 434 bytes .../Head/Envirohelms/hop.rsi/icon.png | Bin 0 -> 407 bytes .../Head/Envirohelms/hop.rsi/meta.json | 25 ++ .../hop.rsi/off-equipped-HELMET.png | Bin 0 -> 787 bytes .../hop.rsi/on-equipped-HELMET.png | Bin 0 -> 853 bytes .../Head/Envirohelms/hos.rsi/icon-flash.png | Bin 0 -> 453 bytes .../Head/Envirohelms/hos.rsi/icon.png | Bin 0 -> 451 bytes .../Head/Envirohelms/hos.rsi/meta.json | 25 ++ .../hos.rsi/off-equipped-HELMET.png | Bin 0 -> 856 bytes .../hos.rsi/on-equipped-HELMET.png | Bin 0 -> 924 bytes .../hydroponics.rsi/icon-flash.png | Bin 0 -> 465 bytes .../Head/Envirohelms/hydroponics.rsi/icon.png | Bin 0 -> 453 bytes .../Envirohelms/hydroponics.rsi/meta.json | 25 ++ .../hydroponics.rsi/off-equipped-HELMET.png | Bin 0 -> 860 bytes .../hydroponics.rsi/on-equipped-HELMET.png | Bin 0 -> 924 bytes .../Envirohelms/intern.rsi/icon-flash.png | Bin 0 -> 458 bytes .../Head/Envirohelms/intern.rsi/icon.png | Bin 0 -> 454 bytes .../Head/Envirohelms/intern.rsi/meta.json | 25 ++ .../intern.rsi/off-equipped-HELMET.png | Bin 0 -> 929 bytes .../intern.rsi/on-equipped-HELMET.png | Bin 0 -> 974 bytes .../Envirohelms/janitor.rsi/icon-flash.png | Bin 0 -> 464 bytes .../Head/Envirohelms/janitor.rsi/icon.png | Bin 0 -> 441 bytes .../Head/Envirohelms/janitor.rsi/meta.json | 25 ++ .../janitor.rsi/off-equipped-HELMET.png | Bin 0 -> 860 bytes .../janitor.rsi/on-equipped-HELMET.png | Bin 0 -> 919 bytes .../Envirohelms/librarian.rsi/icon-flash.png | Bin 0 -> 384 bytes .../Head/Envirohelms/librarian.rsi/icon.png | Bin 0 -> 384 bytes .../Head/Envirohelms/librarian.rsi/meta.json | 25 ++ .../librarian.rsi/off-equipped-HELMET.png | Bin 0 -> 642 bytes .../librarian.rsi/on-equipped-HELMET.png | Bin 0 -> 642 bytes .../Envirohelms/medical.rsi/icon-flash.png | Bin 0 -> 438 bytes .../Head/Envirohelms/medical.rsi/icon.png | Bin 0 -> 429 bytes .../Head/Envirohelms/medical.rsi/meta.json | 25 ++ .../medical.rsi/off-equipped-HELMET.png | Bin 0 -> 802 bytes .../medical.rsi/on-equipped-HELMET.png | Bin 0 -> 876 bytes .../Head/Envirohelms/mime.rsi/icon-flash.png | Bin 0 -> 422 bytes .../Head/Envirohelms/mime.rsi/icon.png | Bin 0 -> 414 bytes .../Head/Envirohelms/mime.rsi/meta.json | 25 ++ .../mime.rsi/off-equipped-HELMET.png | Bin 0 -> 772 bytes .../mime.rsi/on-equipped-HELMET.png | Bin 0 -> 782 bytes .../Envirohelms/official.rsi/icon-flash.png | Bin 0 -> 441 bytes .../Head/Envirohelms/official.rsi/icon.png | Bin 0 -> 438 bytes .../Head/Envirohelms/official.rsi/meta.json | 25 ++ .../official.rsi/off-equipped-HELMET.png | Bin 0 -> 877 bytes .../official.rsi/on-equipped-HELMET.png | Bin 0 -> 922 bytes .../Envirohelms/paramedic.rsi/icon-flash.png | Bin 0 -> 438 bytes .../Head/Envirohelms/paramedic.rsi/icon.png | Bin 0 -> 439 bytes .../Head/Envirohelms/paramedic.rsi/meta.json | 25 ++ .../paramedic.rsi/off-equipped-HELMET.png | Bin 0 -> 792 bytes .../paramedic.rsi/on-equipped-HELMET.png | Bin 0 -> 864 bytes .../Envirohelms/prisoner.rsi/icon-flash.png | Bin 0 -> 432 bytes .../Head/Envirohelms/prisoner.rsi/icon.png | Bin 0 -> 418 bytes .../Head/Envirohelms/prisoner.rsi/meta.json | 25 ++ .../prisoner.rsi/off-equipped-HELMET.png | Bin 0 -> 801 bytes .../prisoner.rsi/on-equipped-HELMET.png | Bin 0 -> 868 bytes .../Head/Envirohelms/rd.rsi/icon-flash.png | Bin 0 -> 450 bytes .../Clothing/Head/Envirohelms/rd.rsi/icon.png | Bin 0 -> 442 bytes .../Head/Envirohelms/rd.rsi/meta.json | 25 ++ .../rd.rsi/off-equipped-HELMET.png | Bin 0 -> 865 bytes .../Envirohelms/rd.rsi/on-equipped-HELMET.png | Bin 0 -> 923 bytes .../Envirohelms/roboticist.rsi/icon-flash.png | Bin 0 -> 441 bytes .../Head/Envirohelms/roboticist.rsi/icon.png | Bin 0 -> 436 bytes .../Head/Envirohelms/roboticist.rsi/meta.json | 25 ++ .../roboticist.rsi/off-equipped-HELMET.png | Bin 0 -> 832 bytes .../roboticist.rsi/on-equipped-HELMET.png | Bin 0 -> 892 bytes .../Envirohelms/salvage.rsi/icon-flash.png | Bin 0 -> 461 bytes .../Head/Envirohelms/salvage.rsi/icon.png | Bin 0 -> 461 bytes .../Head/Envirohelms/salvage.rsi/meta.json | 25 ++ .../salvage.rsi/off-equipped-HELMET.png | Bin 0 -> 849 bytes .../salvage.rsi/on-equipped-HELMET.png | Bin 0 -> 887 bytes .../Envirohelms/scientist.rsi/icon-flash.png | Bin 0 -> 442 bytes .../Head/Envirohelms/scientist.rsi/icon.png | Bin 0 -> 439 bytes .../Head/Envirohelms/scientist.rsi/meta.json | 25 ++ .../scientist.rsi/off-equipped-HELMET.png | Bin 0 -> 819 bytes .../scientist.rsi/on-equipped-HELMET.png | Bin 0 -> 888 bytes .../Envirohelms/security.rsi/icon-flash.png | Bin 0 -> 452 bytes .../Head/Envirohelms/security.rsi/icon.png | Bin 0 -> 456 bytes .../Head/Envirohelms/security.rsi/meta.json | 25 ++ .../security.rsi/off-equipped-HELMET.png | Bin 0 -> 840 bytes .../security.rsi/on-equipped-HELMET.png | Bin 0 -> 907 bytes .../Envirohelms/tacticool.rsi/icon-flash.png | Bin 0 -> 477 bytes .../Head/Envirohelms/tacticool.rsi/icon.png | Bin 0 -> 477 bytes .../Head/Envirohelms/tacticool.rsi/meta.json | 25 ++ .../tacticool.rsi/off-equipped-HELMET.png | Bin 0 -> 814 bytes .../tacticool.rsi/on-equipped-HELMET.png | Bin 0 -> 871 bytes .../Envirohelms/virology.rsi/icon-flash.png | Bin 0 -> 439 bytes .../Head/Envirohelms/virology.rsi/icon.png | Bin 0 -> 431 bytes .../Head/Envirohelms/virology.rsi/meta.json | 25 ++ .../virology.rsi/off-equipped-HELMET.png | Bin 0 -> 788 bytes .../virology.rsi/on-equipped-HELMET.png | Bin 0 -> 852 bytes .../Envirohelms/warden.rsi/icon-flash.png | Bin 0 -> 451 bytes .../Head/Envirohelms/warden.rsi/icon.png | Bin 0 -> 453 bytes .../Head/Envirohelms/warden.rsi/meta.json | 25 ++ .../warden.rsi/off-equipped-HELMET.png | Bin 0 -> 847 bytes .../warden.rsi/on-equipped-HELMET.png | Bin 0 -> 914 bytes .../Head/Envirohelms/white.rsi/icon-flash.png | Bin 0 -> 421 bytes .../Head/Envirohelms/white.rsi/icon.png | Bin 0 -> 418 bytes .../Head/Envirohelms/white.rsi/meta.json | 25 ++ .../white.rsi/off-equipped-HELMET.png | Bin 0 -> 779 bytes .../white.rsi/on-equipped-HELMET.png | Bin 0 -> 830 bytes .../atmos.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1707 bytes .../Uniforms/Envirosuits/atmos.rsi/icon.png | Bin 0 -> 508 bytes .../Uniforms/Envirosuits/atmos.rsi/meta.json | 18 + .../captain.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 2059 bytes .../Uniforms/Envirosuits/captain.rsi/icon.png | Bin 0 -> 535 bytes .../Envirosuits/captain.rsi/meta.json | 18 + .../cargo.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1858 bytes .../Uniforms/Envirosuits/cargo.rsi/icon.png | Bin 0 -> 487 bytes .../Uniforms/Envirosuits/cargo.rsi/meta.json | 18 + .../ce.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1819 bytes .../Uniforms/Envirosuits/ce.rsi/icon.png | Bin 0 -> 516 bytes .../Uniforms/Envirosuits/ce.rsi/meta.json | 18 + .../chaplain.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1632 bytes .../Envirosuits/chaplain.rsi/icon.png | Bin 0 -> 424 bytes .../Envirosuits/chaplain.rsi/meta.json | 18 + .../chef.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1619 bytes .../Uniforms/Envirosuits/chef.rsi/icon.png | Bin 0 -> 477 bytes .../Uniforms/Envirosuits/chef.rsi/meta.json | 18 + .../chemist.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1686 bytes .../Uniforms/Envirosuits/chemist.rsi/icon.png | Bin 0 -> 490 bytes .../Envirosuits/chemist.rsi/meta.json | 18 + .../clown.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1831 bytes .../Uniforms/Envirosuits/clown.rsi/icon.png | Bin 0 -> 509 bytes .../Uniforms/Envirosuits/clown.rsi/meta.json | 18 + .../cmo.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1854 bytes .../Uniforms/Envirosuits/cmo.rsi/icon.png | Bin 0 -> 550 bytes .../Uniforms/Envirosuits/cmo.rsi/meta.json | 18 + .../commander.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1798 bytes .../Envirosuits/commander.rsi/icon.png | Bin 0 -> 563 bytes .../Envirosuits/commander.rsi/meta.json | 18 + .../coroner.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1801 bytes .../Uniforms/Envirosuits/coroner.rsi/icon.png | Bin 0 -> 549 bytes .../Envirosuits/coroner.rsi/meta.json | 18 + .../equipped-INNERCLOTHING.png | Bin 0 -> 1658 bytes .../Envirosuits/engineering.rsi/icon.png | Bin 0 -> 488 bytes .../Envirosuits/engineering.rsi/meta.json | 18 + .../geneticist.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1701 bytes .../Envirosuits/geneticist.rsi/icon.png | Bin 0 -> 533 bytes .../Envirosuits/geneticist.rsi/meta.json | 18 + .../hop.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1957 bytes .../Uniforms/Envirosuits/hop.rsi/icon.png | Bin 0 -> 530 bytes .../Uniforms/Envirosuits/hop.rsi/meta.json | 18 + .../hos.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1995 bytes .../Uniforms/Envirosuits/hos.rsi/icon.png | Bin 0 -> 521 bytes .../Uniforms/Envirosuits/hos.rsi/meta.json | 18 + .../equipped-INNERCLOTHING.png | Bin 0 -> 1795 bytes .../Envirosuits/hydroponics.yml/icon.png | Bin 0 -> 532 bytes .../Envirosuits/hydroponics.yml/meta.json | 18 + .../intern.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1720 bytes .../Uniforms/Envirosuits/intern.rsi/icon.png | Bin 0 -> 533 bytes .../Uniforms/Envirosuits/intern.rsi/meta.json | 18 + .../janitor.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1644 bytes .../Uniforms/Envirosuits/janitor.rsi/icon.png | Bin 0 -> 491 bytes .../Envirosuits/janitor.rsi/meta.json | 18 + .../librarian.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1996 bytes .../Envirosuits/librarian.rsi/icon.png | Bin 0 -> 748 bytes .../Envirosuits/librarian.rsi/meta.json | 18 + .../medical.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1709 bytes .../Uniforms/Envirosuits/medical.rsi/icon.png | Bin 0 -> 547 bytes .../Envirosuits/medical.rsi/meta.json | 18 + .../mime.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1764 bytes .../Uniforms/Envirosuits/mime.rsi/icon.png | Bin 0 -> 537 bytes .../Uniforms/Envirosuits/mime.rsi/meta.json | 18 + .../official.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1810 bytes .../Envirosuits/official.rsi/icon.png | Bin 0 -> 480 bytes .../Envirosuits/official.rsi/meta.json | 18 + .../paramedic.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1603 bytes .../Envirosuits/paramedic.rsi/icon.png | Bin 0 -> 534 bytes .../Envirosuits/paramedic.rsi/meta.json | 18 + .../prisoner.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1731 bytes .../Envirosuits/prisoner.rsi/icon.png | Bin 0 -> 476 bytes .../Envirosuits/prisoner.rsi/meta.json | 18 + .../rd.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1903 bytes .../Uniforms/Envirosuits/rd.rsi/icon.png | Bin 0 -> 578 bytes .../Uniforms/Envirosuits/rd.rsi/meta.json | 18 + .../roboticist.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1658 bytes .../Envirosuits/roboticist.rsi/icon.png | Bin 0 -> 460 bytes .../Envirosuits/roboticist.rsi/meta.json | 18 + .../salvage.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1878 bytes .../Uniforms/Envirosuits/salvage.rsi/icon.png | Bin 0 -> 563 bytes .../Envirosuits/salvage.rsi/meta.json | 18 + .../scientist.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1604 bytes .../Envirosuits/scientist.rsi/icon.png | Bin 0 -> 479 bytes .../Envirosuits/scientist.rsi/meta.json | 18 + .../security.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1752 bytes .../Envirosuits/security.rsi/icon.png | Bin 0 -> 500 bytes .../Envirosuits/security.rsi/meta.json | 18 + .../tacticool.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1795 bytes .../Envirosuits/tacticool.rsi/icon.png | Bin 0 -> 448 bytes .../Envirosuits/tacticool.rsi/meta.json | 18 + .../virology.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1589 bytes .../Envirosuits/virology.rsi/icon.png | Bin 0 -> 513 bytes .../Envirosuits/virology.rsi/meta.json | 18 + .../warden.rsi/equipped-INNERCLOTHING.png | Bin 0 -> 1832 bytes .../Uniforms/Envirosuits/warden.rsi/icon.png | Bin 0 -> 513 bytes .../Uniforms/Envirosuits/warden.rsi/meta.json | 18 + 264 files changed, 2406 insertions(+), 4 deletions(-) create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/cargo.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/cargo.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/cargo.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/cargo.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/cargo.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/clown.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/clown.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/clown.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/clown.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/clown.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/cmo.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/cmo.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/cmo.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/cmo.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/cmo.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/commander.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/commander.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/commander.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/commander.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/commander.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/engineering.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/engineering.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/engineering.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/engineering.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/engineering.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/intern.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/intern.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/intern.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/intern.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/intern.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/janitor.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/janitor.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/janitor.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/janitor.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/janitor.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/librarian.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/librarian.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/librarian.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/librarian.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/librarian.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/medical.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/medical.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/medical.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/medical.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/medical.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/mime.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/mime.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/mime.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/mime.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/mime.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/official.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/official.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/official.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/official.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/official.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/prisoner.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/prisoner.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/prisoner.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/prisoner.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/prisoner.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/roboticist.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/roboticist.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/roboticist.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/roboticist.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/roboticist.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/salvage.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/salvage.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/salvage.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/salvage.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/salvage.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/scientist.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/scientist.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/scientist.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/scientist.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/scientist.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/security.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/security.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/security.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/security.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/security.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/virology.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/virology.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/virology.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/virology.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/virology.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/warden.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/warden.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/warden.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/warden.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/warden.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/white.rsi/icon-flash.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/white.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/white.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/white.rsi/off-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Head/Envirohelms/white.rsi/on-equipped-HELMET.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/atmos.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/atmos.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/atmos.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/captain.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/captain.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/captain.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/cargo.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/cargo.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/cargo.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/ce.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/ce.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/ce.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/chaplain.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/chaplain.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/chaplain.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/chef.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/chef.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/chef.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/chemist.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/chemist.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/chemist.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/clown.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/clown.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/clown.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/cmo.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/cmo.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/cmo.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/commander.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/commander.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/commander.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/coroner.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/coroner.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/coroner.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/engineering.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/engineering.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/engineering.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/geneticist.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/geneticist.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/geneticist.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/hop.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/hop.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/hop.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/hos.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/hos.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/hos.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.yml/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.yml/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.yml/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/intern.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/intern.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/intern.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/janitor.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/janitor.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/janitor.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/librarian.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/librarian.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/librarian.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/medical.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/medical.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/medical.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/mime.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/mime.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/mime.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/official.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/official.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/official.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/paramedic.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/paramedic.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/paramedic.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/prisoner.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/prisoner.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/prisoner.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/rd.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/rd.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/rd.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/roboticist.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/roboticist.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/roboticist.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/salvage.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/salvage.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/salvage.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/scientist.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/scientist.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/scientist.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/security.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/security.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/security.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/tacticool.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/tacticool.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/tacticool.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/virology.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/virology.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/virology.rsi/meta.json create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/warden.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/warden.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/warden.rsi/meta.json diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirogloves.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirogloves.yml index 1e2ba74b359..85a0df3b41a 100644 --- a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirogloves.yml +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirogloves.yml @@ -10,3 +10,4 @@ - type: loadout id: LoadoutSpeciesHandsGlovesEnvirogloves priority: 0 + # TODO add the rest of the envirogloves diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirohelm.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirohelm.yml index 353234a6601..65c09c68857 100644 --- a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirohelm.yml +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirohelm.yml @@ -10,3 +10,10 @@ - type: loadout id: LoadoutSpeciesHeadEnvirohelm priority: 0 + - type: loadout + id: LoadoutSpeciesHeadEnvirohelmCaptain + priority: 10 + - type: loadout + id: LoadoutSpeciesHeadEnvirohelmHoP + priority: 10 + # TODO add the rest of the envirohelms diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirosuit.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirosuit.yml index e9b00a03168..23aa42d4b4a 100644 --- a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirosuit.yml +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirosuit.yml @@ -10,3 +10,10 @@ - type: loadout id: LoadoutSpeciesUniformEnvirosuit priority: 0 + - type: loadout + id: LoadoutSpeciesUniformEnvirosuitCaptain + priority: 10 + - type: loadout + id: LoadoutSpeciesUniformEnvirosuitHoP + priority: 10 + # TODO add the rest of the envirosuits diff --git a/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml b/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml index 2833f1307f3..59a99ff3e12 100644 --- a/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml +++ b/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml @@ -26,3 +26,383 @@ color: "#913b00" - type: Fiber fiberColor: fibers-orange + +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesBlack + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#2f2e31" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#2f2e31" + right: + - state: inhand-right + color: "#2f2e31" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#2f2e31" + - type: Fiber + fiberColor: fibers-black + +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesWhite + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#ffffff" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#ffffff" + right: + - state: inhand-right + color: "#ffffff" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#ffffff" + - type: Fiber + fiberColor: fibers-white + +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesRoboticist + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#932500" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#932500" + right: + - state: inhand-right + color: "#932500" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#932500" + - type: Fiber + fiberColor: fibers-orange + +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesJanitor + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#883391" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#883391" + right: + - state: inhand-right + color: "#883391" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#883391" + - type: Fiber + fiberColor: fibers-purple + +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesCargo + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#bb9042" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#bb9042" + right: + - state: inhand-right + color: "#bb9042" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#bb9042" + - type: Fiber + fiberColor: fibers-orange + +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesEngineer + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#d75600" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#d75600" + right: + - state: inhand-right + color: "#d75600" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#d75600" + - type: Fiber + fiberColor: fibers-orange + +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesAtmos + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#00a5ff" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#00a5ff" + right: + - state: inhand-right + color: "#00a5ff" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#00a5ff" + - type: Fiber + fiberColor: fibers-blue + +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesSalvage + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#47453d" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#47453d" + right: + - state: inhand-right + color: "#47453d" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#47453d" + - type: Fiber + fiberColor: fibers-olive + +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesLeather + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#3164ff" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#3164ff" + right: + - state: inhand-right + color: "#3164ff" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#3164ff" + - type: GloveHeatResistance + heatResistance: 1400 + - type: Fiber + fiberMaterial: fibers-leather + fiberColor: fibers-blue + +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesClown + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#ff0000" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#ff0000" + right: + - state: inhand-right + color: "#ff0000" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#ff0000" + - type: Fiber + fiberColor: fibers-red + +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesHoP # TODO add HoP envirogloves sprite + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#0000ff" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#0000ff" + right: + - state: inhand-right + color: "#0000ff" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#0000ff" + - type: Fiber + fiberColor: fibers-blue + +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesChiefEngineer + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#45ff00" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#45ff00" + right: + - state: inhand-right + color: "#45ff00" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#45ff00" + - type: Fiber + fiberColor: fibers-green + +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesResearchDirector + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#64008a" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#64008a" + right: + - state: inhand-right + color: "#64008a" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#64008a" + - type: Fiber + fiberColor: fibers-purple diff --git a/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml b/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml index 358d691b46f..3e1480de9e2 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml @@ -8,3 +8,289 @@ sprite: Clothing/Head/Envirohelms/plain.rsi - type: Clothing sprite: Clothing/Head/Envirohelms/plain.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmAtmos + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/atmos.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/atmos.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmCargo + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/cargo.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/cargo.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmCaptain + name: captain's envirosuit helmet + description: A special containment helmet designed for the Captain. + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/captain.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/captain.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmChiefEngineer + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/ce.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/ce.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmChaplain + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/chaplain.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/chaplain.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmDetective + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/white.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/white.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmWhite + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/white.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/white.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmChemist + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/chemist.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/chemist.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmClown + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/clown.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/clown.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmCMO + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/cmo.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/cmo.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmEngineering + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/engineering.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/engineering.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmHoP + name: head of personnel's envirosuit helmet + description: A special containment helmet designed for the Head of Personnel. + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/hop.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/hop.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmHoS + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/hos.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/hos.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmHydroponics + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/hydroponics.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/hydroponics.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmJanitor + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/janitor.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/janitor.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmMedicalDoctor + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/medical.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/medical.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmMime + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/mime.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/mime.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmParamedic + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/paramedic.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/paramedic.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmPrisoner + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/prisoner.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/prisoner.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmResearchDirector + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/rd.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/rd.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmRoboticist + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/roboticist.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/roboticist.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmSalvage + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/salvage.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/salvage.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmScientist + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/scientist.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/scientist.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmSec + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/security.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/security.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmVirology + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/virology.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/virology.rsi + +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmWarden + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/warden.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/warden.rsi diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml index 59439e94778..cd6cdd0cb02 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/base_clothinguniforms.yml @@ -176,4 +176,5 @@ Caustic: 0.85 - type: Tag tags: + - WhitelistChameleon - PlasmamanSafe diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml index cc9b31bbc65..00ecf7d2522 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml @@ -8,7 +8,281 @@ sprite: Clothing/Uniforms/Envirosuits/plain.rsi - type: Clothing sprite: Clothing/Uniforms/Envirosuits/plain.rsi - - type: Tag - tags: - - WhitelistChameleon - - PlasmamanSafe + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitAtmos + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/atmos.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/atmos.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitCargo + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/cargo.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/cargo.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitCaptain + name: captain's envirosuit + description: It's a blue envirosuit with some gold markings denoting the rank of "Captain". + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/captain.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/captain.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitChiefEngineer + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/ce.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/ce.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitChaplain + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/chaplain.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/chaplain.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitChef + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/chef.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/chef.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitChemist + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/chemist.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/chemist.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitClown + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/clown.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/clown.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitCMO + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/cmo.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/cmo.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitEngineering + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/engineering.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/engineering.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitHoP + name: head of personnel's envirosuit + description: It's an envirosuit worn by someone who works in the position of "Head of Personnel". + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/hop.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/hop.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitHoS + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/hos.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/hos.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitHydroponics + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/hydroponics.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/hydroponics.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitJanitor + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/janitor.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/janitor.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitMedicalDoctor + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/medical.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/medical.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitMime + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/mime.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/mime.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitParamedic + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/paramedic.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/paramedic.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitPrisoner + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/prisoner.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/prisoner.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitResearchDirector + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/rd.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/rd.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitRoboticist + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/roboticist.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/roboticist.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitSalvage + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/salvage.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/salvage.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitScientist + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/scientist.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/scientist.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitSec + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/security.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/security.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitVirology + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/virology.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/virology.rsi + +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitWarden + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/warden.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/warden.rsi + +# TODO deal with adding commander, official and intern, using their equivalent ss14 CC jumpsuit names +# TODO add enviroslacks diff --git a/Resources/Prototypes/Loadouts/Generic/species.yml b/Resources/Prototypes/Loadouts/Generic/species.yml index a8e1688679c..8a2f050f6a9 100644 --- a/Resources/Prototypes/Loadouts/Generic/species.yml +++ b/Resources/Prototypes/Loadouts/Generic/species.yml @@ -48,6 +48,8 @@ items: - DoubleEmergencyPlasmaTankFilled +# Envirosuit + - type: loadout id: LoadoutSpeciesUniformEnvirosuit category: Uniform @@ -56,6 +58,40 @@ exclusive: true items: - ClothingUniformEnvirosuit + requirements: + - !type:CharacterDepartmentRequirement + inverted: true + departments: + - Security + - Command + +- type: loadout + id: LoadoutSpeciesUniformEnvirosuitCaptain + category: Uniform + groups: [ LoadoutPlasmamanEnvirosuit ] + cost: 0 + exclusive: true + items: + - ClothingUniformEnvirosuitCaptain + requirements: + - !type:CharacterJobRequirement + jobs: + - Captain + +- type: loadout + id: LoadoutSpeciesUniformEnvirosuitHoP + category: Uniform + groups: [ LoadoutPlasmamanEnvirosuit ] + cost: 0 + exclusive: true + items: + - ClothingUniformEnvirosuitHoP + requirements: + - !type:CharacterJobRequirement + jobs: + - HeadOfPersonnel + +# Envirohelm - type: loadout id: LoadoutSpeciesHeadEnvirohelm @@ -65,6 +101,38 @@ exclusive: true items: - ClothingHeadEnvirohelm + requirements: + - !type:CharacterDepartmentRequirement + inverted: true + departments: + - Security + - Command + +- type: loadout + id: LoadoutSpeciesHeadEnvirohelmCaptain + category: Head + groups: [ LoadoutPlasmamanEnvirohelm ] + cost: 0 + exclusive: true + items: + - ClothingHeadEnvirohelmCaptain + requirements: + - !type:CharacterJobRequirement + jobs: + - Captain + +- type: loadout + id: LoadoutSpeciesHeadEnvirohelmHoP + category: Head + groups: [ LoadoutPlasmamanEnvirohelm ] + cost: 0 + exclusive: true + items: + - ClothingHeadEnvirohelmHoP + requirements: + - !type:CharacterJobRequirement + jobs: + - HeadOfPersonnel - type: loadout id: LoadoutSpeciesHandsGlovesEnvirogloves @@ -77,3 +145,5 @@ requirements: - !type:CharacterItemGroupRequirement group: LoadoutGloves + +# TODO add the rest of the envirosuits, envirohelms, envirogloves diff --git a/Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..96206bc10cd4a08d44dd760ddf078c6ea2c7cee9 GIT binary patch literal 435 zcmV;k0ZjghP)65^zO! z3W6Y@ILRC&2rx}RRMs)v)ZiZ=84Cyy!_1a`SK3k(ccCFm?uq8^z03Q4@AdA@;GfL^ z7ytuc0JH#lmx!$4ZPB;nz}iNobO4I4+wsC*#JII4eRE+S^hq#92qgdtG_8F9*ek{v zQ-x6O07Zi{4<393@t4MR=iGz6Csfn@9w4p$xb0zOVHNe|S|R@O^eVv)e4*3@r4D=- zug+Hsu{vtm8I?{<*E3{$Ss{%Tr(Kx5PvkFncpJzwKQHH>0Wk4tD9~x;5VTaBvHJi@ zrUbxC_%Y5QD4H65jPXn<9pJ4_UjnNXyKQuzlR@M*`mh6$iI+A9n7F%-XmcmtguupD z;&<Ll25gJ9mj<^;;25~fsZmzx@vm-5WZ2)P9PQ}eOj&_>q8bk)b d02qKW>=Q)YfXWcrmKy*7002ovPDHLkV1i0hwf+DA literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..1abcea97c4dd247675aaedd51829c378a944f1ba GIT binary patch literal 430 zcmV;f0a5;mP)%3ZY&IUw^VMi^9be?m=Hn)K!Y`V9KUw+b=IU1 z;ttR>3>-K(L703gj@>f{M~z6j-0uO>-PfuPDoYitFK^mR)we&GhIWP&MFZA+shrMU6@qwy{G0(9?rP|aN+h-1b1^9g66C}v>}oRfQRs7 zIEMHs=2+vLLOQ@xo!$iQGO8b-`RS>eUv4G2C^IkY9pJ*vW5oN1Nzk#dw=>H7_m(oh zK2OG{1-^vJY-A8)C7;(Z*8<2Ofi&jL?-ng97eU;qq&0hp)0 Y0Fowo_spjN_5c6?07*qoM6N<$f@0~pI{*Lx literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..6c3e99f1114ffa3ce30dcd5e823397d59d825d8a GIT binary patch literal 806 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V0y zPZ!6KiaBp*?e7+L6gj@1QSs#-`v>RF?LMV_{nU+!8*fCl=W%exyuBIKd0cR#;k0AV zxR}|FbcEkg>WDacD&*gaMX`Il9FwN6zV`QA+NNs8Zb@VAPtTYizV$h@Z)W~I9q#+( zY==HFIaq`-@$B+=_4sg2jh<62yXcf7MxUj*4?LOu^~j*E02&51tm9{d_F(`g&v3)pcBJv=-P`F)o??@5|@K zU0E?o@%9WS-*QYn-mbNY>B`0}2O=8M-zSx_TzM8;^5oBR#yOv!N^ht$?4CXO&BNo# z0dvfcdN9m=@#?HZ{=Da(Wj5>NiX|L+#~h+J$9<9V>A9)#bIkWHpUAM8<>Xeks=a0W zbKg5kwOj0vc^sPmZ*TAy$^X$NM}Kf+2yU2me(Kgr@d#U%&1aYW-zW9*NByJtRz(?o zhL*>y4F!7`1p34ozyTJ=z;T?L;b8@%0!(rZYk=F6k{SKkja}<>i=Ks6iWN;y>v`e2 z!7=d?M?snD?8SkWnJ#|6S+-d3xwKew7N=kSgvXBNTFdPn^5-2}V&>bk~4&UXek z*FKwPLmHXX6sGEB^)}nb#uP6XOt{D7pvlPrj9YJsm|hDkZhHih)`0CzTpOV}4H4~Ta;e5tzSj`Z*Q9N|o&He`j!|Nl{AI8ni WHh(tPb2bALK7*&LpUXO@geCxARBo97 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/atmos.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..be0ce3d764e30d3090d4db729e40ba01ec9853ec GIT binary patch literal 877 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|T?X zr;B4q#hkaZ>@$KLWsdJ>R9x7t`eK1e>ms$up#t&hj~Crgm7FIb7__3;>X_#nfmcb* z9JfxYCOCF1ahBVnu**ebhF(}<$N#n)p01CAE@?h1pMJVpw`7O$cZYX&ig$K%@40{1 ze7`l{zWvGuGTID0?w$>9tb0qU&%XEH<#ArQX@W#*O(vtpkCI*gKNKmMG>mhVJ^F8X*G_iHJCR=m#PVP5`Fr{1 z{cuMwhM>xwQyle5g_rBkJ2ZXm`om>AUG`T;ZFWeBFJFJZa^qq4`Zo%d%pI;*H#ulB zZ>!(OyzPgv?!2$gPcBC<*#1E2Q%djFDU3PMS_--cHiyeiE7F`Z$EtB-a`KJ8TTinr z`1qYSn?euxutHqLG|h6%#}url3d>f zEvwmVF9z)jzQuk#^}eR+0R@NmRr~(W+0lOUJ>RKLwRv&h0-|OAtrOjNoIg8t;yorO z7L`96H;AogUg|tS|C(dtSC`-QN$U@RgY7sM!{Log2MX3O;Nk{~HAqgpyX=0y<(jLx z6N6*Ko;$p`&?9KbsTJ_ziL8w5^W>C}vQO)-SusB3>t8=f^AxLk{)At>UDAHF4G}hy zlMnHzp57yI|47i@6MLK-{MRxZRkYvK;hUme=gYKOAaix6f-Zxx!{R$Cs{Zr3RGYps zwS4#OXV~(i`1twvt34IMXI2&4$6HgYU2z>#zgR@woYBt0%6fC``s(awn zJZl|aMGfA`#&ULcb!T6(ZoB?f%=^NAe^btI`DZr|v6`sQn!Uz<+t{ZclJoaAo=WZ@(BCIkpsu+j9AQWxCmFWZ$87`opt@tf#h>{5G@x zqVe_QH2!n$t@XP&SeZWebiCTjzM*{jju)%`|8R6G68@sDRL-Ee@r9dPWPbwTkbTVh ZgZq=OS9L;7FDM%^c)I$ztaD0e0s#BpeboQ} literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..372c602e8f61aa83829b2611318138832599e4f5 GIT binary patch literal 461 zcmV;;0W$uHP)&O3 zwQ7+x=lZlp1wy$3eZLFat)uMbPzqw@(;SMZ!$}F%?Gyll)7#y5Y%Xmfv$`BfKeeAx zdVRpTxu8@9r3#Fjrx(+aTm}Omn;@Lj-}juZZ^(DdWoGe-!z%c1zPy44c+#y6Gs746JIk|>@%H#p)RriCRz^6Pp_AuwH$<$}b zgX4&id18HlHWt|(VOWPW@i1yigRyAd(f!{i*a=C348FPL=I5hvG8c;Gu>eAdN_9nu z=7*eDs%?sOl+9xUunL!K*a^mnt?6n+8bAYRfF$$-`_-DT=>_Sj00000NkvXXu0mjf DsR+)! literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..d80db50bd1a081bc1e421dde4f7f22911acbe52b GIT binary patch literal 453 zcmV;$0XqJPP)H+Nsh#7atR{rt9E9Vecw)Yml*hC zX#fqN0W?590BcJe&YYxD&AU~=-W@0(fXt1Gg_T7Q=INSB`Sk-B9~J^Ya3OdAWIi}- zCSmYsr^>Px(i{#1y942;kDA>=gS?mVpmL2(U&HbL^ z9OHayp4A0b2V!%n+t-^Egp5^<=5RXE*EN);{fY&kcJ}NfUC7Gu9b8!JK<0231|X#j z=n!ThV)KAu&IVA|?Bzaz$b!k5nnO3GcmO)pVRRGZE|2zxFtRhLO7GhqjqRR!Y3~3n zEGi4aur?_0(0i1A#=^a%?|)U|OGpxA@Fkzz`e-^&=7MRS3m}GQcP4~z-&EZ0JW;O8 vHqQ+p)!dhc-Dr&5`ltT`8bAYRfCBXmKq-*>n7x3100000NkvXXu0mjfLa4*5 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/captain.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..2e9179fb49ef7a0de3d3564379f5d5223894291f GIT binary patch literal 859 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|PU! zr;B4q#hkaZ_GeFalsLXW|AYeT*0U;+OL8+7Ojs#ml~OPvBEv$30Y^lA)qI(PMt zjb=SR9L3rhx?Ni4{W$#k@{Q=a+u=29Wer|W+wg#CdZ83|Yy1pX&ZkdU7CqYVQqDTu z(U)P}zp2;6&n#d6_}D9>d280OD`)u!KD*z(i~GmtWM|HjTXJ!E`=4`P{%66rah+g% zHoMK^qfO#}KmKMn?5aGXW15#-{AZ#BqyKNqQ%oU2#ydjlFYC@zc8_w8wx2lp!Ipaq zC(q$JcJyuFh9%#xTLsrFo5Wx=!Q%Z|sY{(ES#fKv^Q)scR~(pS&3FI)n;n5)XL>Q6 zaPWJj^sIRP5B(3q{l)QtnP(cV#yhJshNko^b_<=--yq-d@%y>?TRXb=nb%HN5S@L0 zf&cCakN}9;SHBaYc*fYIP8g5VcKXi+)by!w%&s`?{WWnu)*WU3h-pQQ) zrs>D@D<8|5Wcd>#Guu8(E&1%XO`?kN_z!)*HlCUN>kJpK?+)mH#Y_&kuE1rkuwLoSp)@_TnUca!%?NR%sl^S zvW{)!i-iHzLTeNjuH8CaPN~Cj3s>V5l}p}&Q?`al*<4xkIqkoRtL{0I-3rG0Prva= zxHmgL-HiGD>xM@ej0-G^n3fcOtNAayfA(Jk77=*~j&8GK;^Gag?_YR6j#}3CxP1G^ z+)doFyEES~mT4$$Ir6@0#-VR>FHL;p{kGxs(MX>uzE6@49I3swJuR@~yOPegS4W+H zD|K)lxUzrO*2cuoY?D^9tXewj{-RG3tlz2^>~1(K-+AmpPDI7FPt$mp+%aRc(-Vx( zVqa5V$3A6FdX&xk_A?o8#hwWn?_t$>S=quG;lp=m%RZ%hwQLtB2b%0N*}-7a*H)wS zziH!FwzEGP?)R-JIoub`ek}K(Wh=`Erl;07`|9mjjnft-h0ghWf5Q?XfrIPTOXk$y zZr{47n2YlPtI?$C26HOU-#bulbE@V@Qm#N*si+ZW$D^Y^qP4p|2o^Bke6xGAz1XEk z%?_`WJ-W~OUB0Zg=UcsNeCtAsC# zo3<~g_UK=xwixF#LdEbcJGEQ501Rq-H^8T#dC$|h11sYE#Akr__@-5@2pL8C%oVC^WzMa z(_Rku8LZwP?v(t;*tfyluZ>4vJ~H{(L_H_nuG@bW&hPyAC@$eUgWdPHo3}l8$!u3& zsB7-1FL+#AKVQ!Pj5=V{0c1I#zP91N=C3^{V%OPR7#f=! z7-{YRkmZif4h+999Afw+n++D@dpwoF(ZB)7YWPp8BS>-p$Z|acT{!>Jh09>tMi{~e z$$`|6;s}yM0A%Uc?O%W_BOv|)7TXD8FWJJt?a4!`al|_S=KJIA#~JiR4H%>pB~j#` z-G9z-ar*@Z%SuathLn&PTG5hUEm1FWqC#F|5C(0hS9?y8#sAfm=?qasXs-R#w)3XJ=;yhR25(OiWB55}$5> zE#JF$FT=EH(`Z)`f&kQl|AA_#;^bIPmIGjpuq(Iuf9BR1FrSO}7g?5*?Enyn=sW_n s@Cd{~4CI5MRS=CjVAKJl4xj}90L+S;6rBTYx&QzG07*qoM6N<$f}wr34*&oF literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/cargo.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/cargo.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..e7a4d554b27732b8fde80f8b95cf3275a3af3f34 GIT binary patch literal 444 zcmV;t0YmVQ!Pj5=V{0c1I#zP91N=C3^{V%OPR7#f=! z7-{YRkmZif4h+999Afw+n++D@dpwoF(ZB)7YWPp8BS>-p$Z|acT{!>Jh09>tMi{~e z$$`|6;s}yM0A%U8rDuUGZXiAj7CQ%K_c9no8IeBxw!+CBnCF-@+Y%3_xNaIglEfga9a2!*T-1 zm(ii`84i8c1IyX*UIL53ET>sH05Ui$E9<|rvoo;tJH%k3ZUPn;{&a&uPga*<@7}!( z)22ww4fH}gh+~)t8TW7$0F5X{cSx&YCKp>*?2++bK5C<`k m4~AxYVAKJl4j6R+H30xx&6VH7r(;$C0000`8tPXfrH{oBkc*XzS`v0xv zYW@co$mlc39QSB&=g;~Z^Zx9^ACF&VSL})KR#0=B86VA{c3xb~@Y~kb-W4q`eYk(V zSu&^JndO=0`Ev>TFFS4e5O73YLp<$>dD_ojtp#=K_5RHhobQ`+GUE7C>u>?_{MqkY zJ~)WDN?1$GUZl!!^?uaNBWF9KcSNs#uO|*|n1;7|`+ACGl;_*mI{rK+v~R8cgQku(3|z@g+Zc+^KYJoLVYc{+ z6F=vkW51E2|4XmF)@_=-{{AH$hd=Mi;9MY-x;|ZSA0Pj7OS9MpK1TtSh-W>|jh?6O zT)nYt*ZC_#4V56um2VDf+|@+kXOd5<>|S^ZWIvphwDEXm!?U0RKbG#FXEXQF!#c*>VLvCvX!E}G zx;(>`yZT8tn-(}8u~u0u_))7rr3Ie?@fN3 zqo5YI=*~jc_e|@2uP-+#YIl9HdZQKB!+wFn1)qGDE>FqpI&dl9Z1#qG@(ThwGbS5b z{$`Efd{q<^9n;L)R=nX$=4t-*$6Nka2}+4IO`N{?>~{vc-%tN$YFgPZe&H!`a`u9# zj(4mnhu$ui?hO2<{3ATkqEDQm?=fq`;|j(H7I6$1+|NvZ7-k@S#>!v6sy9ydRTkK-_$c?w(W;~NX+L|l5`MihQR033C`;P^V&9$Z znOpehHOAZc?-e-2{If=`v^qI>3(JCE>(k;M1wAqHn`_&-{q*~9j~CBupBLV^YTwzj zzE6r>Sq?e1d{vsItR4^_pFidP3Z^i#O$R=`GnJ3)t9^3#mirf8p9jT7BF9})SOX-4 zx3Eg=GH*F*-JOwT+4oBMsz!~j2cyOQS+%_SH&4`0%%4B;>G{L@3Q0fr=tVKDaA`fq zv}~SFXR(6Pw|c&ZpA#RmzL?;lvMS=!^ahRYjb!s literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..f2d82aa162e642a70075c082268b3cef3906018a GIT binary patch literal 434 zcmV;j0ZsmiP)d3L4R&_fD&OJ3d!`F`(R5^e?mY#zV^ zcmNOJ1TY#R4R?RVo`5hyrE~xiZ?=@P2295$wi*D<^$d&&!2%$GtuUXzjxr}O1Le37 z><*A<(vJ}OU5 z4&moChagdF6r&uiDWwB+s_jjnD#eY!U}$okNL|4s7ccD{pp6G-NRQiU@&z28WB@SY z*H_B#mG}~BF(Z&7D#l&Jod7IEb-$Y4JxD!QzKTh@1#o%E#ZHdxO80T18- cJisFD8;Y}iSE;?@r~m)}07*qoM6N<$f*3=$H~;_u literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2644d0774c8dfe5ed2e4898c96e389817c648b2c GIT binary patch literal 430 zcmV;f0a5;mP)-$sVjp zA;cY^Y19c3>O9J|umi9u7gw=#x!(hr-8X{})vYS_cJ^21L>lC77>l|f>VPq4yiQ&g zAUI~N8OS=Z)-|N*x*-B!d$~i?h22dP;KDbTNKVcG^{H@tn(6JbLTwkg z@9Df-;FmBp%M22<7IhnQD*yxG1zz%yzXF|WO^MB|0T}8?mD*;|Rkq8({g5~S2jBp{ Y0Mcc8)cZ<5`v3p{07*qoM6N<$f{-A(d;kCd literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..baf8c4a5ed0520aef977e0e30be6d174c9be0ee7 GIT binary patch literal 787 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V1h zPZ!6KiaBp*ZOj&N6gjrv)zO;2X~X}9=}tb9-38&1ODv@w1&a!{u3XE)*%*>uZI;Qz z=5p|uD@RhPqN`PJL`+j_tOJkd@&#)?pS}0w8gsW~KHHPM@^ALewcKI;`R?r0hqdC0 zGNKHJIE4~+v~HSv{n&Ab-R(S`Gg9mF8E4ci%+0Ht`P+7K1!qJ?pZHVrF&CKsN z6!D$#$_&96O#^1MUBp#mk%YN*zhh@R3zhC*@ox6Yd z)Gg+m^|rSCe@pA)UDh&%*WRz6aWK8uboGrroH6@E!dM+eKNNjoGMN4E!`HpNWpgGR zu6^*r>Vkzy;X0|?$&wA*8P4Am{l;+q?3&9Js&n&%F!_y?!RJK`Kt?0p{`mTLk&K6n>EsL2P@KOhv zZn!-O%H0!w^oDNHv#piOiqx}vcDPl3>jlET6Gvo6k?(uys6L4*x!IyQJNkeBkV5`G8rII4sNWG4Yh0-I?uoOvjn) z;}Yxskbsu6=B;;kG@oZ$cXqqKfPmln^%6$}D>TnyN$4)F)(N**$CQNL=9fT^6p)78&qol`;+04=m)7ytkO literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/ce.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..b793e52c3de3ee9562a0117688bf68990d43ec5a GIT binary patch literal 855 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|PUs zr;B4q#hkaZ>@$KLWsdJZ=(M!^U{uAf&RIN3qDRU!PA<8yG_qw^$ceb)7My%b=SIbB z*~}^%v+2hI(ZH4|e778}vQ!^;ovj2ML2YuXVIo z1tpdT2sN*Fs1`WE5iPN?KYuEt`Fg(vMK=A*lVU0r{^UpRs5N(sT4S_9;NS1KL)(vd zFs!n%H*P%nhj-52A~yMJ<@|5{@ci$eo7Q-4pS*qRX6-u5)Z)blF4pbV*>I|%_x$^Y zQqyP8md;nYy}ohoXNR)r8;(y;CucTpWay7OGGp$U$5&oXmas5vxHf&7NWherAHOSkrL zuhDbddDAlSWybIMLUyeWEgcyu`~(>039~djXJLGRgPW||pySe~`o}aicKQj)@MD%D z)>{vC#IZ<=eCuO4z9~!3`F`R2hIM?KHBQ}QI3!eQ=C#q@A%9-1m1yEeqKxV_hnCxneO4I9_W;-tJ{IDhK-!YhfxOw&IDw+6q z;TtuXg6G>m|H~*PoAHtF7EevBSB%$ou?70ackrki-0lk0NjCTzIn96F@wWP30$wa( zl7c(`@=Z8jx6EaG?c?^BC#NT@IxG12#FtI-iZxt^i<=n0=}(=5;XEhP0d(#j@dxHt Y4jNDUp>l5zFsCqhy85}Sb4q9e03PLoTL1t6 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..4dd6c085650c751d36d4605d685fc66beaf9d7b8 GIT binary patch literal 433 zcmV;i0Z#sjP)9L;b`k={M&rP%EfuE;^24oUikJioks6M9JhEDK-(EPw?t z0`Psmo}5fN@A#ZkmSuar1HhayMga@y<@;H_yB*$9ydR@m>q2M&z}#`1b}WQwI>V+x z40CiKv@-xxq(7Y{q&@@sH>-yWuDjgk0BZN+gE0kXA&o9CI`PksFWF9ir&?Li%D`Xq z!ReqA8_^nQwkk;4JQKTh43S>!5Wh@DIF*gEG5b1eRmt`r(>2YFYZVUiLuTg6l<&o(!w446}7Qg~n bfNg3ChB=uh5!A*z00000NkvXXu0mjf#GtjB literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..216c812a2378b162fe95ceb818ff8e3840b04176 GIT binary patch literal 431 zcmV;g0Z{&lP)NX{Ve~VpZu(x(?3fCXaEhM0h9o2 z+b*Y9(}TIi+k)aa?z9d7bJH|wWRB_a`9aLx_3vqYwnn$)La+c}ZWu;0&hxzP^y?2| zSi^x}X8@*7>5#XZlT$Uwi{^A&wXhR%xBESSJpCXW(6BqC(ard14L~-R8&(!r8Ia~s z@ai8xU@T&LVrAl_GKA@=VgVq%IHAnKPeuEvUX!;3fD5?2-V*JOAz+SJo-*9I0Jwxj zQ8WO}Z2EUOW+-^=1^NVPoFfJAjQX%c@_(ssfhpOEHiB z>SHCqk|b&GC4{~VO8NRpshBGPNQj{4msysHad6=)nJWW8?vvXXx{0g04e1{e4WI!u Zz$degoS80O1}*>q002ovPDHLkV1kUxxZD5$ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..51e2292e5fcfbe99d08269aa93bd624d1a22c898 GIT binary patch literal 800 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V0~ zPZ!6KiaBp*ZR`?ulsNwXV(bx)$dr#cPO};sP0CyIC#dgGGqY=4us-3<;?^ergyP$8 zgkvV(I%L8w$fOvfC}(+7n@>f%@PBd5bkhXGu{H;+IH6<+(>5Pn zc2+6nvuROnZSTpyoNTVizlwblV>XCAu(2{<@9>i)MJ{}W$TA!M`L_Qrt-g}8$0omf zDuYnQEdR#SZ*7hT%310jXnR_8Ghx{7D2A&HqOUwdA7M8DXe^TA_ z@Ss5VeD0J;w&|=ll-~ciUlqM3o>7pI{r1jXX7Q|k@{W0Bdt_$+U;01(V|b#*ac+jE z6^sjH^cki+W^E|i!w}FX4hg(C2DoH8~io)bzD3qHKN z9o>?c@yue~EAu3TX_dYbCUbGEI$UuYb3ik);ml5;4eztHe Q2PSz2Pgg&ebxsLQ08xcuH~;_u literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/chaplain.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..3c3da7d920072f09758c555f9d65d520b5ea3322 GIT binary patch literal 852 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|PUg zr;B4q#hkaZ9J7TTWsb)Ch#9uC?7p>VibLm)3*OZi{4WIe?>*wbF#cdw$RhT?B5bGR zxYkaOE7~GA%RBL?2d8C+nO9ZB1eZtqG$-pdwM!avf0}f>IIcH z_(`1yu=j(%L91*T5b(Wd#f=6-(HM21}f=~o;-={ar@QT#b?f%)5oaqFXb540Ri2zX?cF3r+->)o%Y z?aRKK2sN-u^&ab)+`G>GMa|msOrI zec+YqiIdydb4%CV{xAAplLs7f`V1|PSsM!WFbMRCGaUNJakSR(<575&+S@uPkt-6vD+7gjNbjfJ_$JrtgwsQeU3Auykhm9rJERA%4D*SpWQK| zreU5FsMdjxl90hg5&!aewleDdqoX zyBG)KX(y-Ds5P!L;l2ImhL3?*L)waOPc)fMK4u^k VZj}3MI1J1t44$rjF6*2UngC7%iw*z) literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..01d3b2a735ed3e4925a76824b486aaa6b22d8102 GIT binary patch literal 432 zcmV;h0Z;ykP)?_<2syT z$(p@_2~<`V7Buu)pz#0}Bs+y$Z;Sl13=u0IO3Wtn5(4wT$^73uX5In)a~J>vU;qq2 zFMuRTD(5NeXm95Ug<&`v902A)5D=9i$=O=`#vJ~+T||ya{#^j<>iu252s`wTb=y+T`I8o!<Po6T|<-?J49f|x(eIPR{et4j~6vZAI?7qz`~2?1x0633xUw)$faq@ zS&|2ULnx(eAz-Ql8giI3NCj}J^-aJoXBRPLN3qKJrKmNxH6N@GVBt89RVTDcIQvR> z9*HImm=I#PPKam>s+(_mAM;)S8p6M#D$BB+AZu;KH}4IAI9btX*N%S|`_+gHfB`T7 aL&PV6Taj4cp)U?t8>}qoou*%2Y3#DhF&Uv}inlW$f9>Bz580wp_lf&85y7NkO zT!Bd`+q(%7l|ga0rPnd91z;e&TPo5tT?(qyMtt+y0Emkbm4=d<#{c{uumBdo0_-z> Y00MoFjGNZ8vj6}907*qoM6N<$g6g@s%m4rY literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..3c845ae012f793e5e7ce36173b6a45f159c85b48 GIT binary patch literal 797 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V1} zPZ!6KiaBp*ZR{3y6gjrPq5hDWc1-TpX<>&ZsAsylo5~XmlhYjU{ce4dy6nX4pP$ksf81l{aA$2O zXkwAzYfm*hzy0x}lLD3V%majfpLws#Fxh;z?-K8X5(Ag&naYOA=dLRw0`yCmBmsWM!Z-!J|6 z>EiH;+NvJ^<>I$b{JatRU{(I!xWzM=J7;Q#IegP`o}}XVvsvrG=|{#1W`7@FFPDD1 z!>wzP!|y#V7fqk$D`__zYI&f0;OTbnYL++8c=d|v%w{X9=~Vvv-Ba`V;q;t+yDQ`O zuoQIi_460j7Ve$<+@gfh?n~8Pw$pPAeS@Rl<-J+-KEI0d088`11vy)zGIXnF$noU3 ztnPnV(lvqg$D?yU?l026=boVLl)7%++2aZ?6nEUt;V*yuzdf#1QAU*EP#~iMK59+^ z;~L++cPhVZIpvwtJ*QIg{quEaB?`L}nh(8t!j?Jf*3LDz9g>b2%060aUGq)AV!Ks@ zwVv_g3ws=Sh3?q&dgh!7hocxWN5Nn5zsnx;{rep=d%eHp6TaC2yEa;Lb>HW{(s=stoHM?HJ1WCczWifo z_jZ{*=j2WO1ntDn1#_MVA6YP~d8vQ&zFqSK{=HNR5pA02-!kJn!@qCmw`;_9pRubF z`c@>oX0zp^kL)JjZuTz-PXwo?5C$C79)@~`kDr<(UoZuLG6I9AtDnm{r-UW|bpT|* literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/chemist.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..67cf04e32cd1fdcd14557aa95a9c2ec1a2c387a9 GIT binary patch literal 862 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|T>w zr;B4q#hkaZ3^RlSWsdD{2tHoqw0?r4R?4nxe5FE8(|Gt~O;sL96>MyqtY_8ftT1Iq zN2!iV$;(R)?K+WjE-7A{&Gbshz_}^;dd2X78@BQEJ{+DCF z|DR9iI48sDi$V*oW}R)SOEv71+ZM1g#K@yF^jWxA!%6N|rayug&TR{j3w>}j`P_0v zrq5GOrz)K5J}en^|ec$>wRGvRRYkS-4ms@MqS3S=MH>_H2#{sT*txuw!pkSEvX)g zYVzuf;vc*^l(U&-zFoCY*{j=0kA>`N*ZE#uex<1WvBBizpIURi_#e6PMDjrO{Mb32 zuW!Acb;4J0M`hTOkN+4teOzYGIeAlm!|x*TPX%v6&dgz4bnBUA#IG$+C%?Y;yNAI) zp{V~LS(fh7(Jt*d2sZMlH@!$*)D>)@twT^vGm{Hjh`Ihqg85$FyvLjOKJ#XnSxi|H zKmter3GhDvo{m-Otrt#O%BXpP0Q^P$zQ4iG94|HqL|=ejg}K5`0~SKm@4FGL=l6yL&mv$XDP&JdiNu&AAeZ1TvW&tZ%h(dGRLf-F1vXTrq$z zNIr?NJwmQ!-4(@X?t_-&6*QX-(bR9_aT_V^9ZEjLa$O9n!2f_{SxBeTP|pq2Pc^7V z2JAgs#8X%cS}r&MnIX_E9gEomY%sr--Gx;wia49mWC8ei`8AMLf?G|&l0i{tmN1Jd z?T&wf0DcJJRJ$i0viVQ|9)wurL-=O@3SgX)01`j~NPwvWd;*)`qQ~^AYWn~H002ov JPDHLkV1lhx$5;RW literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/clown.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/clown.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..f5ad4ede171a2df76b0c4a2be69946fd24e0a393 GIT binary patch literal 472 zcmV;}0Vn>6P)^8x|*i~4|0uSPWgeh;%6_3Y}$!y{5@DBU=d0~$(lMLdD z0enI7NsR0faxLqQC`NN1v=XbL)oQY)nroB7#$pyy+B=j&h~+xySAqWl(=?Gzr=eaH z(a391kBhK&ED=v(Eoiym0Az|lH+3v#_pr|Vc6J+Pxh&#rM&kwGtRtau21xrPW z2D5}&)TlfDF#`A@gi~`*JYe&I06Yk>D1`9M{uRI|B>^OW1dsp|2lxcRi=gor6KU-L O00003x&Q3DX*AoRnm1JNnp~su6fEC zkvcC#E*V;zRB`$wy7KF;VO_}Led*b*ro1hs99i-2_uh;QyXkxXosY!(TAM#Ln~mT9 zt-F8!_D#vU{f{TiapwGxYvVBIzrSxzX79Z6DHZ_@rxs`(pUU{o{JYV=zM-b(xUU(HQ|EpS)4m&xw@}m&DAg8XnW((@mBMLtFFtd9ExX65Z~+> z@qkC{&#$Kvbz(XayDOIjt>&;lb$F9b&7$KQEt<|<+Umox{XO$jmM7m|8aZ#+6dBLN zcZX4@gLiZ1hE~b9Z{Hg9)P4DqoBZsje%|!ww^wkiU%{}=4x5)TAxt`e<`j^hL{7 zmIS^HIx}L`ra4J91+!#k`DWeRw&m(~G4&HsVImJ@A9NgG&tBT|fANF83)Yo47Hu$; z|90cQz*i%dlYvYQMN=3i$fz=?xN|aK=YEYTnIfeq_0=_^A?j<@HRS^zcG*3+qH^bz zyMWMwu)TF39|gborFH0Z;=2XmN*^BVHd#^?bRuQmqffVQht`S+E?ijM5WN06d&!T# zbr1T|rk_myz@lw++WYgrHG6M|%`?3>MN!3JYt`T1^VoMdHuJMN?+JhK@v!~}uGs6R z|8g8qd-n2H#J>9h!EGP-682gyKdTmU?RD`^ner1aMHO~9n5e}5mD*srIV2;Ux7t^F zx%z@l`7btba9_w4Sy-BFaky$pMEWtQ#;G%(&fhq%@j;6H9lm)7pQ$XYbMpGjG1G@_ zvGn(beSy0@ylX9U1F}1>YPPaI*jjO;Jc;+)p=0UHVt+sL^EZ6Y_Emexn({{Mz55B3 z$u+(ujqLuHt}NrUdCy-^AeQ9InUnZdN_64L4b^NB*V*13;@-0Uut$51f!G^)Wh3`* zKZ5yr|8h-fO|VW{_hd=?dB&V~EWNXBGHeRi!{u7<7ChPDa>M+5(Rz8uz1)PNV~O|! Z{=560v8o51l?P^j22WQ%mvv4FO#o91;UEA2 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/clown.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/clown.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..fe591ee8b3300c4a6be09cef74539b1cba4c3a75 GIT binary patch literal 1071 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|WCz zPZ!6KiaBp*`DO?^iX8thy*KmdwhJ{IuErgi(9HH_k=P$4@taOpCpW1JuF_*&oqlxQ z>w^Ma7baJP@vqyP_Iys;tg74jR%Q31Gk>Zo=AM0b zrux76%{QO!g=w5y#`2?1`_P{M<#+TX=g#}Czi}Z$ucK+7G;>USU-=n*!6u&r@~jzR z5*I@wox~KcS*$BNJ}d72N{+QcAKsN^e!a0Tdg8Y0({{0k?E7~l=_Py6wnkh2T^GwA zYVWgo!Fo<&#>pug%{R&3-Fy3ixUO))o(|iWa$juYj!nO8n-o(km|OMNP3cb{!>$=> z3lDH|)qTv6(hg<6R>ZpVj?AQT?E)Eg`JaV*q>kSEwN<6%{`bbKEFsrke(Fd}Te+7d zX9u%Jhku#);?~Z_M#hM10`FpG9sl`p?xDE(UIl{l3K(N1o)ENe%AeLSC6@VFBmY#c zUjf?-nO7Q{+MI4#BD`Vc`UCHLLVb?7W$UD$TNn}Z$np3qGsQKT(l}?GH!QwyLA)8t_GU-#bwlQho^3YU&9-mRjs4nulzY?EsjgM*6-pfkoopZ1YyMEkcpaNy zdZUCR`%QgEon+Ia48{c(Q4AV=Vhml2SsSo&8_M*4O_x%%`sy0h5caj|m7qe?I{pe% z&i%gxm#}1nuCFgG;96$c{$%!&0s{>}mk))^JDn{>xPmQyeG3YfPjz|mLhixU*Jl%j z9~MaL$k~zl$%N^kr>*GHp9L51<{E#u&ObFlXhG!Oe}5Np&Ut*$eX-$1?SfCQxS9@` zoUO8F%Kfiu^E~_U+1|ccMoY>WzCQbMJ2qp@_35WmA5OS#e4wB~a>m!M*$%~GJ1^Xm zdN)fi&fg*V{)M!OVh=WiHcvFz&|S4;g>iD@K}{Rc`GMyhN@_Uj*!?fe(J?y`u~&X! zfJVZb%cc*G%!pp{bl;cgJ61)dUYU$8x^nO4-e}mp;p@$&!~YK{9~Sr<^>{M}Q`zT5 zFWfcGoa-_bZ0DHwbmv)PmV5FK9_qUIa&FmB*wuX@b*C-!m9351988aIb9~w;ux9$Z ze!_I=?qdJ| literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/cmo.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/cmo.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..c70f684a4dfd083e0cd92a9fcc78a7df7c18fa8a GIT binary patch literal 449 zcmV;y0Y3hTP)1}cN~Y#Pj6_UG|zn2+Z;Jn2g_6y zLJ0ukwrz|3^YBHABZeFm2;~mMaZLS_K9xV$N3_a(W$KWB+@Z>0MYY`T0r=@#J1tsU zUMFj%D8(P{69!hhtSNOtsRKX7^GkUtW>Hb(sB~hwo*~+c6T)y}-i68IgnfeB(SYUP zo@4@m!j0<&`5V4~fN^oeq9{@+sRn>cm?VjSfG9Wk5JOHT9l)*TF9D~#+TWEXA$(js zvpImmK@hM>*zVqmNl4?b?f}B`yzC|+>{}qE!j|OM5!V9X5Sz`jl#k-~r;(PpHUO+w r-^(qE-Gy!$n$G_L17H9Qz+c)2)%Tp2E3yuM00000NkvXXu0mjf{13rm literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/cmo.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/cmo.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0dd662f8b18ff27ed5ab61d8fcb7e1dc20777fa5 GIT binary patch literal 432 zcmV;h0Z;ykP)Vekkt1`Cvu|ncV;8=1Y zSO5_BeP8>plebD9In;0<*b~UIjQZz&c@A~-f`U_`=4F%H?(YEV>s$LRYIqIW-q@L| z0a)*@$C?6b0!keAG<~coJlP73?aIxu>dgM*(vuVCd7f*CSwjpt)L5ASZnb&|_{!(AlgcJUOo?0D185w_vD}2+;aG1% zD!!)!h$xEeZ9>?OKuO+SC2k^a1fU>xJJ+RJ#h))zBXMH@*nRu3wywQf(>COONF0Cz aZ~$K`aF%wsm`4i$0000^ zr;B4q#hkaZ3^RfqC651R+}IScFwKA~lFKS}VpD>as`rbKt}RhQ)5|$Bm zBqr)b(!v=5TW@$wzo06T>!=ZQa>_z)2V)7YTn-JT^WW|FxzwaPte-bH8i3p1jO9k&3usD^eUk>%PG2Zbccs z?5EeQ7}u}TXDq)wf8V=Kjbn^KD?>Ke&U58C$TuG*`&uh#9~l<37Ce}2ZETfIodK}~9g)PZY{rkS7L_>L*$MA~LWx#D9UDoTC3 zWlpcC@>ON@nQ;2)oD`!@bKC2C>zz;T`+VchotAS&C(V-L;}^4S1yL;0nhMkpVsZ&my8Xmv&gVj7O?V*Q|>!&>Z5OUjQhQxzTK%YFEmpuZDaL|wZ5#W zj5=+nX4$AtNdC)YSG-BRarX4TOdnIviA-I$T<5{HgY4h;z5aU4rcGp{(Z;3)3tDzQ znsZ}E%Xy}CzFYlPhRT*TDzopr0JSEL0ssI2 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/cmo.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/cmo.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..da3011cb767246800fe5e6c5969772b084592a49 GIT binary patch literal 937 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|Rrk zr;B4q#hkaZ96drDC652+o|u@jA?JZ{L|5;(Ei)5Y)+ts;+H|&D+f==&d(w2H*CDa5 zf?jSCSJme{)HU&0o5H5)wo{yT9yv9y<&DA>xfrpMz^)0`e;-SWZ00k5TPnduKjxes9fm^di#&iy)>+Czn`$JKU}MUBk+|+%RH$XN1nPCg&?g`!+Ce$#JzB z?EfRGzUTPGFP|lx4hl$@J24&YbXz=Q{@Jic?$wLFOb)48DSP4mJ^uZ-`>PEK*w$Z& zk8*!f$l_;cYs)KRTfalUa{|LA`_Bbz*Z-OqyxYV-KiphPxA*p5?jP^8#kwU<=WX7Y z|MWe_7Pbc;E0#R+e%r8ht;~k10^jcRTK1FAKS#XlUi7EzO4jY0d>De> zWqi|luT;O<7=9<2DZ^&+$pd~|txVOwu3U;w+b+KF{`Hy|5k*FufaE2DogZ1M`PW20 z-~TwQ{R@kWgq&R2MYHAC40yKPt(?Do(RUFc2SztHw=)G6J?8JUD~|l*z3aZ?tIDO9 zCMjwPT=tLavt0%4m|~c87-g1=<+BIrJMO!|cFjAH^}qhFV2Q59tPX`+7&Q9C7{H+! z#USF&-S8-bF+fI_0WP_P;dAhrH+Of$zTE#!HRAQIDO*hK9ST?eHQtsJqseH}nUKe@ zdG7K=2{vhNzo7f=bFZwsd13A**F%1*ZtIxXxu3tpHtl!RO^KzCo4lE?%}F@rAs}`@ z+&@%u<{35V#aAk3-|qimu_5kOd+d?6Zx73lUrdWFx2+6Y=_#>hvz&vUU(<$$PtWwS znH!tu*obx%seZ_iB?5*y!13$~z(j&_bq7hO6D{RjR8 zb*K*h0KtFYAYJO>(#~;HCm{-L7aPzB4k-vi%zf!CNvGaNgB0Fb65f5h^SzUIUl#Gt zG5`j^02lx*fQ_SaaK8ML7(4x5Lhr^|NF9L8v$-q|t!-2~eKlrV>$nWxsV0RG0kApC z_xwbiYElSs0%Tfq4$!cH8aCBf;{vFL@6Ga^bh+sPc=uJ?!p`b03dOZV{k=N?9N@mv z5v3qXAa0&n$s}q8jDW&qBuUIy8&bTqLlW(nQy6{@)hBrVc#7tDDFM&{oP;37%_lo! zrU2Z63_+$WH8z?fftVVAPBnJ|8JwNGp?LM6YTe^KG;jT}d206nEu7oW2l=fidVZ30 z%*6mCukDgSfbjZ_%Y7MeO(d;0B%@a8F>qg_A5!c0OUqmvfKXluSMA_HIm c3_u$C1Gi+8{quYCw*UYD07*qoM6N<$f|3Wed;kCd literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/commander.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/commander.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2d8f37ab002f119b97fb7f36003d98f097e85448 GIT binary patch literal 421 zcmV;W0b2fvP)VQ!Pj5=V{0c1HqAxiCkGyhK%vD%O93=fvw zVx+kPK$de0b2IomYcW{veFzpi?kvyH0c3;ZNOc5B4uDw>17F{MMUe-|k?IJNLjYu{ z?g@2<=&gSlbQ#paV$mo5GAJ>~FkH5{Nvd(gI{@Z;rL8gyVd~-76`fegaL@Y*NufYe z2!JeC7gA@q`1%5vuPAgh6QbrV zjT`_c5r&&1wGFaF};=hEZB$yAQL4X{~Np=7TyxsExWWj$1VDXC#UR-|;lOqX`l?_1_ zZB#w~|HW-cg|zX{JF+Y%+W{aDJN+Tt!q`0wWP_pE9vF4Nr~^hFKurJuriqcPj^fU1 P00000NkvXXu0mjf1<{~3 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/commander.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/commander.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/commander.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/commander.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/commander.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..ff26b7a61c9b9cf2e28779ae4cf16cbe0d3a629c GIT binary patch literal 851 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|PUw zr;B4q#hkaZ3^RfQMcV!+6>Jd5)H%B9L(>9Hj#dTMxiT_LZy$uU&kEge;pkFX>uWm& z4sO-c)#DPhvapCOsF)>`q2tB0?PA6ysS^t%=6#>@ZJE@{FZaIKPAIn5SibY{-}683 z@9k%QendegouMT;=RoJh&&%ENc(y*PGqcL(-pFDWckSFZ?&$e~jNxgQ9JkjMUVOj# z=II*@T6Xg~9*5mJd_q}Xy8QBqpVnEj^SfGgSF89ec(k?7?d7^<>=E;?<@#*c#nkLw z=%c%}P;~K(UH6YEJj(Dh5fnYkmdRW4ciZ6;3`IYa{xPWqZ!b)*lj?t7Ja@;Wc(ycw z8*)b%zq)*RdDHxLzYYWx>95jucx|@)z$=zDQ$jYbda*tJUcr<5f|G-f`d>dKBY2fl zVPD$p8rB^Zt$kbi*qld%D z&fDj;YbD%2oX_Z($QX4(+B?Z8IKY2F1AFo-3$;lr_UIi}V+`JMEb*eqW9<$4A_uG^ zx>x-$*igk8wDIQO|C@j8FPwi!pwF1$P$8Rx#W@C!B&V>i3z+MBSm@^#=#@CB-e*er*-{b^c4S-Zr%_fB0U^6X)0+`fs<` zwP`n5o^82XcZ_YqZ{oH zW7l85(%j>m67bPq&;GGY0Q>P(RSKJTKdX)`Z9m^z&DdGQ)b-H&u*TZAvaa()BV05- z+^Z}x$qaFO{vr9hwbOk53llDwX(=ebFrUjJHS2-6pb&@fEbj%=@$KLWsdJZ`e1^S$wsl@R+ru-3K7OEI(&S53(r0Xb3CD?QIaP<{Xszb z!lu>1rIS7hS(Ow7b$rP2TCi}NN`iE+Zxr+T1sWg!>g`=}%>IjBCI6FmoA2zEe)s)% z?ftut559lh_$Y&MfyE&vncYR#tgDi5%=#Obzy53`Q$%&B?PulvUpe&(Dy^=)>5H$( z;XCn0Rfj?JJ@=0SZLvcyf`zlolV_Nhzb&oNd9r=UB!R}R=O2a3?kt@#|LF2kNx>!S z4qPynzvRYJF5viU;olhjMH6!l=t`A#J$+v_&Dnz?=x0+QU+~4-9Y^#Z)#fd>wKErM z$TUgqe-!xm^6lkK@p>~46znj)72a?y)vxgiXT;Axd?&U(3$dv#n_0R0$M35`(hsk3 zDwGBBy6`4EsS&uRsQ<0}+f0TneO5B5<%|EFwg}#)-?aSW?OhyBOdl9-eoPhVRa(@j z(e>@`eV@97qo-9A4wWslY49}pZ^@;k!oV-m)owWT#O-{Ae)q!P7Ho$!o_kI3bP$ny zoWEG(Q1}Cd0O5t_W%2?nJQ$ zsfp|J%Vse@KAmc2byMbPVdk4YU<5a)JF>O5yv$x7=+r6q>x+A@cWlBZmH-{Tr$*1G z**A#$uj9Elb?G$ApRDU{7rzn}OE|=-!S_}9vfJs&8>-fJ91L#O5swtC`o~uCo3-QU zSyu~2QTwuAS?bqjv#K#YZn-n>5YvQ9S0-=2ru}y7;W|e1ACuJ^i)O8z))HNMh$+DT z-;e2B)>UC=lh%H`8YL*Ku0A6^LG|&P$fkRCl|phqF6*#gIdH7&uT$E$Bi|>#;_LTm znffh|9GTn=C8YKZx}m_;zl~vx6xUB2z2)?tj~NsIZ=)ohf%Qk5JRRmns28 zCAOP54tO4Wq<_QxeAM=ci#GB%|5p9t_;f&p#ar#kn|g-ZzvEV%oU8HogUXku{u9(6 rwS_BuU9#Ve=dU&oflv*MYnVSLxHjygTe~DWM4ft(}g~ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..fa89d56424fdd0a501163f20bfd18784f316634c GIT binary patch literal 513 zcmV+c0{;DpP)*WoonNE&Q5$Gt#K#N4Jp;{F3lqi|?lPB{4NTKMqLo$%Ptpr-IO_ncdZigcT#h5= zjv=f>;13UDC@_RvJ_qPP)%(sh3tTfWWlTbrWtv>>%jjyK&@~;tun);Z637FiZ5>72 zTaL-S1nq7coqp%nlMSr_SHwkqyv7CaAU#5#_&K`1|V-W+X*B=YCnU`jTP$K**l?{ z`5Ze3mKGO~Jv>ElB#7kv40gBEw4Z5mFsWm$kaH%;P6&JDnf zBwAn17;LRgP5bP`vi&*E9&brMwB0ZeKO_P`00@9DSAerwKAub}00000NkvXXu0mjf DUQE?s literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b2f56d60032a18f898d4387c39a85ee0066a3e02 GIT binary patch literal 501 zcmVP_uTuuJm1gz zHi9E)ceKj)rY9S0zDpQ2!UH;(I@OVK7{%5foB z0MeXva(0DMxzvhDl;c9MXW+v$(OdQ6bma)cJrU7HvD>WU-CO0Bvko9f?=IF6RijY4 z6+{9<&<0d^{2rt;X=Dpodre?gcv6RF!2j5k9p0n82o&<6Ac6&OXM1wo>b zOLOYO5eq=Rf@DMx?GhvZ>BE7r3_!bDz6oTIINZnT^1R3;w!UMT>)1IkJ2Q>s&H)1c z0466!u(=Tz?J}l=Nnf0UuIrX-vH+Te<;WU;b7WpDytp{#Yyc@TT3T3d$hB_9qRmb% r+n?j)-kPf|wp#|y4~YZd05||&)rGRqPRHLt00000NkvXXu0mjfWHi-| literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/coroner.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..1ed81414a2596b7d8a6b2224118cc76b9e84e878 GIT binary patch literal 821 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V1@ zPZ!6KiaBp*ZOjf16gjqEY@yR7Ki(NUW=b=36-qwv3%Im*HLuNZQ&%^4Tu~yhQR9~5 z9GT`TRvx=M9>^<%TuAd44{mqqD9MQ0(*3c{-1cSm)ra?<*-a>}7x23$d(ZNF^>bUj zn&%QzgjpMk_OQ&*nD^3dM*M;0{PKn0?x?)Gx3jnR*e`*gqzOOgvL<}mcrh?${=N)h z`zoXE_V4L$tE7|+{1xYK|2bdx%28e$ZB~~S-OReV zWAEPD2e;VO8CTeu+s4jvOnoP|s`&hG!LQ+Nk}PkTUfO*sdYNl~YL>rvRp|jC^K7%d z*Z$=!-s?AUt>5u&e_KCK&waAB<3ZPEhF+h``Q%oUTPWlpwDw;Fv)T9Sm2*!&*~3-vF#7fD3nxx|T<5aQ`nKK9cUAuCjNgPxiXU69 zxe_)(-)F(qI}ST-I=_84tKlkez4x)+HGEDyqoCqXL9gu3iXVP)6m2$7)4Ta!=zsX5 zK#5bGOb(WT3>xZO3{PDc7tGOM0EgQmh5$bi2AJgWXa*~zUVU5l8TT00775)_N{@3p z$9_Rc{b=ygFFk^qO|zFPPdS_R_SRKx(LL4sWlH=U?j#zz{#@*SBC3buYP278etCxD>*tiJotjM1`*Z6KK4)g}EK#c8 zbo$5}jy zr;B4q#hkaZ&Swid${dY%?YOdq-SfbcglLiPVxmzWv^Z4dMEG-EtH1Dn2x3_{&t*;5 z+k=abE8Ge?A`-=#A9sXf*1c^%lm&fTTI42ex#j(MU+3gJWx2H3krQV6bKJjc`KJ8Y z+4AX)-|zAt-pF*IfQi$n@Go7dMN$JlQMaD4NR1#qM3OC%#Cd@m_?!+3ML&41J6F*5>5? zW!lqfwCRudywoFy{ytu%!Komey6^nq+J}cMpB#uSpZI&GyNwvX38QG;l>Ogal-Oq( zZMqZr?O);5bS=&g>W-7U&#p_G=)t!jMoVd`l-trM#|fM(leZ zqf&tv$|sJ-&9qQom-;7uqkE!6pD06HGHb)b2*w19Fa}&)7O{ptpNHP31(%sSte*2? z+liUeC;nyJa^mEJ3BvOXmDCR&y)4+}wm2#0%_Eh#eO2qW`aA48d`aZ#d^yGEk2(eX z>KopiTkxvooQ`hso^^>PMQrcdx|OaiV18Dpv^Hkr*Sa-%+qEVXKb*5i>q>sVH*?6X zi#dHCzH?7ldfxj2}ZBlCS#y_wMTpu+6pQ+!WtXyxYDy z_+{iNrj&U$LSZ{vQX_6?DcVjE`^)q*b?;fBJGI|b?))|DzO`*TXGSj5e%3j&wHogx z#$Dg=S!>On+?_|?h+klxzjw!;8~f7p-r0HYfAn|jcXp4IMTa|;ebv%jbwW0O%I1mP zaBI`fH79^Ro%a2_I!Cn?$4{Z|t_PJ4&n+9ye=9QizUlGYlBX&f>OyYo8>TN_&2)RQ s0nc$R25_oe!(bqz&49tJV60>Qz`e+1vxmAVFat4oy85}Sb4q9e07Y<#eE%jLUv^$qc*L6F+3#r^gxG2Wnb|a5Jw<+|f1lqh8@72>`;q_!O_m9|&xIa3O`M!G zp=GtAs!Cg!84IiaiFO5sPlh@o`}Y21>uc&>uitR>fROrCSq7sW)#3ckE2R$!Dllx8 zQ7NwwX7+4QVQ&z6c$}ZZy+Nmyae{;g-;y>pMFy{{8|E;4O5GI1f7mXxW6tH=4v8~G zv!*gDG%pV`{?qTrHm&Z!Bm)aJrGNY6l73#=$-{GVt%(k&BSY4~dUcb+A|3V9j0WyG zW$8cuXK=RYf1hY``eYdc$B%a`Q9C9#CK+tuS_BQcEes4jh1H9WZ0ef>3~~lfS3j3^ HP6T$izFb%tdBNKZdK3AYYR{&S$GqBg(32I?0% zPC_a*NOq?3F6K@E7DDYJ8Qz(=7`vG}15iO*8@7>I|MP#q19$)rFi(90aYuEq&CGA} P00000NkvXXu0mjfu`{s~ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/engineering.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/engineering.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/engineering.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/engineering.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/engineering.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..5c947d4bbde85e9393362235d5095677f7dad715 GIT binary patch literal 783 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V1R zPZ!6KiaBp**=LA2iX7YDupoBJ29L>l$BwO5T3O_35pcv?IDk*cBXi3(Ar+Q2Nvj2O zS(qIU9t$;85c5=B_QC)0%+)zMOp{)3v3h=c@AO!H(X=x>E#K<|;?myTF#mjacIty_ z_XRS-45v7S5%vaiRAP$!ykf7JG1bYqW%waoaqXY1XIrS-t=5qtEz@vubnkfiHe-=E*$= zIL+&JZTnvt@}%d#?ypC+EG{iCPsOY{dtBj#YDI+kZ}m4?JWppZ1oUw-;H6l&9o*Zl z?QmE<=g77bGp83Clp7_xh#h2Wy`^PPvuDQZEe$KL?xVPbtl z&b(twW-Q!t=H%bD8g0Mz4Np!M`%bat-08V%-U+$oj8@_8lFZ~_sm6evS{&C9ZxW}Ha9!!@24D(j@O1TaS?83{1ORWMTgm_c literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/engineering.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/engineering.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..a80171812401e8939399cb8ba0e2491845db5739 GIT binary patch literal 852 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|PUg zr;B4q#hkaZ3^RfqC651RU3h7!R@n;Yg&ES~ixa$;rD;s>e1vWOqYIVJ29gY z`}yw22mjw@e#pY8AfwJGCcogO#`a@#RTb$MxA z+Kekcohe~Vp846rs6yiFQ~&6~v|0Pz<5nLCx!*tkz$PoEyIJe*F|ZXMxL3Aat6){b z)UD=OtRKts;`)Q1JobLDM(Ba3X5ShHuE$MV8TjYB?Xa76aN)hY5}7v#j&0}FWq5vH z?~wNUu*QEeGMit2e0n^2!kq0#y%;91C@&G)e#*3#|H{7W1-nFEZYqgv;GLeo;BAEb zEVWH{BEOxiyqzA!xnbsl$~+l~xZV$Y^bfgiefc*lrgF>I-Qi~>{|9e5`inzCuuZr) zGxr|5-}DFncio)JvHp;Np8&%lP9_HnM+Odc4hB%z%~4=z5oT#9Xkvg%o@2T&aiMA6 zf>6Jj=qG1R@31Y;I@S@%A}zA1*x~uUigj^JZO{IE=+xHj`OYrkvuJnt#gwFP+#<`ss9 z_>lcx4ppJoT@RkV_-xy7zRxZBV(kBqZ{M7noiOV!Q!DG#)1T)2@BN^~gCq2yLE9nz aK-@gU)bic?Ezf}2gu&C*&t;ucLK6TmTZn%E literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..d27e7093c64be9396ef54ed706f4669f7a660168 GIT binary patch literal 440 zcmV;p0Z0CcP)B6lH3zlce$Sf$lVVP2DG`lMb1X6lAnxo0oJ?j zX;ne10^iM>E6qyIp_ZDXQ;GR{hA1y~2w}&v3e(rAID*HQ2QlaCa{e&@7VeMw6mEwK z0+Qy)B}t;Qq#gh+VV>s-0;W=kA%{7&Q~K;+_aW8Ugafe(UljgPc0W2Iv zk?4fPyI*I&GfUjPlLTXo)z=B3(x9NFy-M7~+z3EHoZS|~;ms_-kHEy-7(nQFx54Q5 iny*G=0W5$8s6(Gi+LtExL}r};0000* z02aUkSO6n{AP7=1*(%4HuOx(M)D8f1&+|xJKhpd0riyLcyb)rVQZ57w0OpS46z_2y z=c66w0m1G7Or!INj*SXm@>Yp$1_6QJ>WX zRtK~>^!)Kug1|d+sNr;?(lLZ-Rj~lj-uW*4)Oa#hHQ$?a$pDym@G>BG+g*TwIdWkb za;D?~U=t=uQb5cLG2~EFO9!y4^+~`gZ%@z2|9nt6xw@}n+Pt=V02BMZuWmxhZokf9 zXO_61k_MAf)^`&^xj{;62c@`)xe-7CaWzVZ!@F4^`vfND#sEqu?S`c4`k(&;7Qg~n bfMx0n-YAggC324200000NkvXXu0mjf>vF$N literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..10a0987784c4f4273972a8cec0704fb775b3ac60 GIT binary patch literal 811 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V1t zPZ!6KiaBp*8D<0rinRS_ciPUQ>fIHf!Lq!E^`O&NNzmy>lo99ilsq}_v)Rk%lj&#Sc>1_ACt?yq@2_Hh6xfVC!T)}`?}WZ!P^(S3;6y% zJ)SOGI#2QNLxGcdycZ9$i@txscVYWd)?-XEb7fyfJIKc=PJI2hPF^qZ^ymBOPp0$l z|5)+()GkdoCXa=m{3M$XAFP?X^DUcChKZEm?Kv9*G+vZVk6HB6w3j8JF>LkJkkz3k zVR?(ceqP*nwuoKwp#dxFe={fD6v;1FVA zd|>IwP~j)QfQx&LDMPs^D(1<~V%gZ}Cu>%}j#)i-rlHd82Mve5|27ZQ5cv{SVi5eZ zEx0}6&cm&f*L#$if0cT>W9#IZrLn6SIpyXZOW9w)@Onn?YsJ!uL2~INhc5Yz-Ezfo@v)gf?K7RMrw(FaU+Cx25rbj21SUQP$ z$X-jy?K*IHv+~^Y>>NQIW|rN>aSd}7_>W)yA)@DTJ>m7`Y5wnzx7Ak(dT}olzjFBE z)9QwO-%f9KaZ8zIIC;Yq^MgL^%JcGEPtS4ZSbyll90dj&bqP%}QYEXYh3Ob6Mw<&;$T8@M@a? literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/geneticist.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..26f263ca77fefeea9bc18336d5e5330dfb536bce GIT binary patch literal 879 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|T?7 zr;B4q#hkaZ&Swid${dY%(D-t}x#I$_(?|Cgn%Cr*np!7#_qz&gN%`N2ncH$B19k0GLO8pG8r(=YwUs|r5}?0c^+Al!Ury$-`iFlq{+q$?B(cJcyLL(a zO}~(}^;eSZ6qW_Qvd>>HsQ<&5_hjAU=+D*VPxidjnsD`c-u6cSxt~wQr=LjM?6EW` z>gQIigy%1`FWBsV_RLjAdH3$!9M8Kv_WYIUEq7tR4>&z^X9o3lt}-)tQ*qy?onzT%hxJdEA9Z-eUIy< zLj&trmvD5jOgOT&QaD4lsc3U!&&U6d>{=7S0Vm8b?J-NkQwv5&IAU@a>oyoDSCK9yzmT-urJVA(I1L3w#T2JU+xA zEA_hSQ_i#(@5L2fv%fZAbe*@O=CzYQQ*7o<{e(NRY9_8r)%^uM>i0XyeEF_Y@Of_? znf8bo(%`{HC+HWd8XYPwgPyg_;ICquZ(rMN*ybF7t zuHNt|)%A$ld4_wtw*?Acf0~{;akf&y=QSRW|1t{A>@c&Oyg5GM(@B*l4|lwqZOI&w zYsBt7e_PG}s*)ee`4`qH9&stLnDvKG;CtO>$x~u89lxmXJn=TT_N?Q0aHr!p%ALaJ0jv`8vNgn$t(gjEZFK*ZL<&)6y- zkSc$ng_a?IU?H1EA}FkgCjmj8(1VTx7pcw!`w4(cWwp$EDzuT zJb(vq1K2xB+s`-FRA>DFhU z`e2n!O#~tC0Go#28@SyK>8a<``2G{!%9C_E0f1>e8*Q)bps`lB%5N|42**ITwZyNv zyCCYoZ}aMM)v7g6H*1E}iTrym)-~kz@(Edd;;akPkE!|ucjKY{1aUzChzDd4SP(4R zd?4CV2GCS@T^Su;UjdKvQvYy&zD59%A3*=rItS<~Zhb{M{YadO{kV**R$LCy#wuv| zlw`_=N*v2Hm+;98O+o_!hWIN7b2k73F{;(lEQ&|7nUlFY0O@=(DUqoj!(EFNL>|Bc ccz`1G1NMoD6}K2h(*OVf07*qoM6N<$g4a2?VgLXD literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..fe9eeb318872d32eee9468b03b41dfb0a3fe7cf1 GIT binary patch literal 407 zcmV;I0cie-P)rVkJT>0FW_fwZJsnhtq^5W05gllTGr zA}ur>jo+X{>TKx{h=)KRTLU4`F(CI&l8fz9=*bnOpnvg6C-i?hq{Aoh$8rD;zyUY_ zGk~j`)L+jEQ$hP0AP#Hx0ni+}12~UExV!b`)Wb9Y7!N2+xez=6H22PWAoNgdmW8y= zu^`wLAk)d4fXCKEen~QZeu3!J<8H?Q(4{A%PNM_;=H=Hl$rD7QAw@r~0;>XW;M41KpTGtVPeh)=*qYL36Yn+d}@uA3aDGH z`T#z~i}zS{KNNMvXyrkcv)2c3W7%lvlxRwZQq-1lPSDA%c0vsS1W}fOxfy_l*w*W5 z){3{sqmj8e0P6m5sG+Hf!Ce3Jf4~7a00;1k`T%dWg~kA#B60u#002ovPDHLkV1o5e BuxtPT literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..9ed1e3eb7993d89f3ee11a403ea6384b1e51a4d8 GIT binary patch literal 787 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V1h zPZ!6KiaBp*8FmN<3bg$fnBC0sM8Q=>A)`>{NYKS+T-rM)9CLEC*&lU;?;W~pzlZB9=yzTG{&D{0hhJ_nYBPGI zdi^?gD)!F(x(@N%{=wbvz;RS89gt}U+kY# zIam4UWX7gr%3G}bZv?R(>15E0;1*bS_rav+PlS7x{;l--7~j!u-*Cxb>%mvL>)KY< zdaq$I=sR?)a>0G?@0GQ$#2Q4|-!fe@bF1Gv?M7%rVaVEtUf*@+J7{lAEETqRcUYAn zyQkki()-PRMzo3oVA0#Y_%(sdG#L%9ElVvt>;c z-WUDk$@Djo_jjIUpP`W9(D>`~okek4{nAs-&G(+;{IJ>kbjIFlv&Yry>whv#w((7! zk@n)(apxM%cz5HCE*$m&*>VNy?zxI~F#{&$ADvZY3|o*y~CX~ygaDgw9pCvZE8h>BVE oF9=WMaA$1*r5^0m9tL|xm8oT$)NXEE0Zio#p00i_>zopr0FC`u&j0`b literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/hop.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..91a859a432fb409118bc2f0f92c501889c9a1f15 GIT binary patch literal 853 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|PU= zr;B4q#hkaZ&SwidiX7jsSe4p5&pz{bY_b9le6rHZr?nx zZ|3`bvTXa_GtEe5VJP0h(vf!k)_MMWUyr@+{{C>PnKDPG=d*CJhDp`ec%H?G|9m6W zwbb`Q#2tRemVbZx=iR9IyviV~ZY|e|xAjM^eU%AYwOr}a4x4J;M8Q&jEAi)N4{l`h zVw!Mj%M13I?K^fBFvn|ujdLlLe%i3wVP9?3kBOb;Zc$VUZFtVTpm`I+xl6JK^nX4*ntEj2kqf^r9=d&N+YWm_&41i+ zn^}*{-kWj$p72$Jf_Ony#uO!WTi!Q&9n@wzt_^(MbN;K^f+KZ?O-pNjuMZU5$~B=g zDDzDC_k`cv`g3ZUCP%UEt8YHXGG(IWKM~Qu`^-x?{T7<={(dvU3usA!>{-!bT41Wli9W|r0+xVGsAgT z>la?LXl+hV$hMp8(-E_GUd!gT8Qn92CBE%2acEV4Kl!ux{rmb37RL{IIHbMNef`bB zziG39xskc(6jqH1nqEuaY3sYbcrVV;{BR!2Mg0foJMDO*KSrKn;_%XYPm=beZs+;bYF}tp3l(+Gn2e++ZzumDhv)cB%5@H|_@RiFg7N7}D)~8TK>o Yx>ECCOMl!1U_N2+boFyt=akR{06u4c0ssI2 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..d60218ad7b92660cfb6666ad3fd26e71bedb6395 GIT binary patch literal 453 zcmV;$0XqJPP)VQ!Pj5=V{0c1HKMqcH=yVq|Nv7Osk8J0Y} z!$@-nfGkht<6$s#S72CMbq_2S+@{1JcjN&B15l1sN08(Ikmb(YTyXy0uiqdJfbzj| zBszlR5CB|wU{_&y@p=QP#u4uTnD4K0xiRRA8ZbyHN}|X= zyZ;bGVfv7jN}LqfLZSQa}UF8XwIOC13-!J-rs*VQ!Pj5=V{0c1HKMqcH=yVq|Nv7Osk8J0Y} z!$@-nfGkht<6$s#S72CMbq_2S+@{1JcjN&B15l1sN08(Ikmb(YTyXy0uiqdJfbzj| zBszlR5CB=aj#-m|q3ACI1BeEKXb_u0mVy88byAHZ-T^S*ulpg-pf04&pf75Gp=Q<1 zl?*`~4@n9Il0pDxIS5>QeF4Q0AU;TL-8%*beg@)0f}(5)vXoLlk^?}&3-Tc>6wtxV zcQ?Um_I{<213(F|gzqs!4;Dv&EHB}H%rN`YH&Tow%>kf9c<=8&utgw8AOnyXNDib1 zmOZKJ0C1{?=7iawzA!AE$jlI)aRw~6a)t>*R{j^bUg literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..1d55bd52700cb5a02eed7ad36940ae63877af870 GIT binary patch literal 856 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|PUc zr;B4q#hkaZ{4<0dMUL$+*_sxexvT2qf@QHwlqw7!#4d5V(7nZ}HL5?ZO3;SO$??NI z@1hS;EZlB;wmcD7a$&K6sH0Nq><)IvthHBEF8wLIm!f``#pcY6*avf$76V|~g~=Q(@~lw5gS*kX5N*tzvr7~J=K3yL=QK;d{{bbkkbNBbQE_Gd_le(*L>z6ryFC)4I^ojUl5?kYQFbOT#k>#sxUIi**69BpU_f2wC#kZ{?UJTCQ2$l5-?ft;n70&>rzb?0&5S?5f*s&VXeB}d|rhUO3x1q zWec8V?|77{#k^wCfx5}5eD!_{k|lB#c{Kdj^_|OMI;U{)OS;gF$Pm{FVhfTRqGoK# zeRpzlu*@8Bj@w%A&%3TOIm^w!{&4qUmYEBCds((+hczo<|6?6nk+2ARXHwXMylqASjb}q82!-2ThI$4r);`a$a;~|+tis^w L>gTe~DWM4f!5D!g literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/hos.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..887a3ec549b20ffb660d0d9af08e6a641d526c3e GIT binary patch literal 924 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|T?4 zr;B4q#hkaZ96drDC652!<+{%_=DLv2qSEb0Rk?gltP^DGjy=T0yfS&Z-d$#WRmbCc zRWGE1nj$%Nzj1W>Fy-K~Ek{mmTldh>z}UImyyWgP>GB*=t20k*I%dl6_?*`A{p_Fn z=7$e_w`V%Mk?BCe6qX&r9MczH-~R1a=Z(NU5ofL(P~|h;w}nAu&+dEO(ia8Z+5c!+ zm@dA-b}H+Q9nwkxf2w(pUzE&sE>dVecRbg^cy4gt`YDX-yBU|T9nQ$)dwfx0g5I%;TJcB?k%HV?{p-W8Mg00bQ6op;NK2q& zRKx7jZV$z#YY#Ll{HrGZpZ1*T!jC6vTQ>b#-LdBJn{BH4YBwKVkKMmHKSoTG(PhDv zOWsTNFBi=0`cP&)zvc3a@L3H!AD=FrC4BtVsYOp;p1ZWKD(2hVAf^zeDf%0aZi}CL z_(X-!-@S5Y_J4kSxZiYzkAv98o65K%z;kIKRNa^*iJ{}6N7N$if`OI9Ji`Biuu>zulpcu_oB@t@tf-%rFZugyjaD*pxj;X!J_qAbsw8$PWcA-9N}Gm;O@ht&Z0NsS`#h8 s7$o{c8QPLr8y-e5CZKbVaet6rzj>yv>h|Od!0g80>FVdQ&MBb@0E7&vssI20 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..1f24373c3bc4943c83004f69b54c2ac6f8236e5f GIT binary patch literal 465 zcmV;?0WSWDP)>!Mu@Txu3xdX>id&~TbrZzFp@Vc2 zT%5Z22e>$Oah47l97J&IWT$M_EVe=+x)?AOr^ePL<|Vz>bn=b{Dcm>Z-aGF5-OIg8 z=J3yw01`j~NB|*#;@Pr$|I`S@b~g*CpTEZ<2O#sc(jxTA1`bLqe(Xkj1;sqMybxRf zWS&+RMq{hh59KLGb9f-QD?p~X>LHF%0qRG7EJx4fJ#>mS-sS!dz;>^A=3B}(GTC$} z|7Kbq5MZBPb5((>0>8}@sYEE3K>%b_y()23Vz%0l%1b*W(T-UaoUY@)0>ggv=b#l4 z03E>O)g6rT7=pyi9WQ5Teej42fDU1=`2`Fi$drl9DMxcA+jA-abgEe=bhJ00000NkvXX Hu0mjfW;n|( literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2a4b193b2bfb049a2c062966d1959c8e4db5b3b8 GIT binary patch literal 453 zcmV;$0XqJPP)#pqPOpb=6Y7ALT-Je=j@ay zdsr8mg3tsabEw|EjX@wrjg`YdU=m{;Lzs>$ApndQZx~G>Db{1Wr_)Rc02?rWc}L6{ zg@E~DSZlij5|I!9HetW^&W!-^Q^=u)p5*cT69DY$=p?k=H>#{1Q*mLF*SzOzvR!Lv zp4vTtg{{5WV7WL=TFs!GuJOEfZ*cPmuTRyJ*Ys{e=*u8T=4H&K03wLV?N-obK97B^ vC1oxR0DWATneXqRDZ31*9})$i02II{yvCB4&Hvmq00000NkvXXu0mjf&cnl+ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..350de2ebc73bc63f99644a670236777913fc61ed GIT binary patch literal 860 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|PUk zr;B4q#hkaZ{4<0dMUL%HD9~oS*ul29LeTu9P?Z*|V$+4HjUp`nMUHy=@2yzHt{LH2 zwc-1`s?}RI1_}tEDM90SF?!ub{?sn?DJ2==FE)P3FiAxC#&V& zJ2Tz<@PY4-68Z!g&Ri5qcye*(vDA`Gm&rQnDYG45l@ljmv@-YKX$1^(uD8Asr8|Z_a5u4du;cBr}KqnDOHE#IECJED89x{>kJ?7EDQ>8I3Oe znJ(Mn_4fGtXY2h9HR^Z$sYzdu9w(~Gn6l{A*7Ab;CC@T*DyLmz3enK1=?FfUzIcx&5-toM>_=VRRp^M#YYg@)XbDiK@IW%IbcdzFSfqo&jM zn2_20%xh;a-g%Q}mcO9nfB!SV5@!sV8Z6xy432X!JdFjkTlG|>${di~Kn6~1}6II*4Op3)j z)E#$ReOuS)J0Wy=($jqjMEX0P&J`IL{{ z@y?OZlD?+bJ3E+Ws^5IYp(wcGi@j)V%RPC8iJd3Z)?e7UdG=HVefKkpBD;!z#KqkB zboceehx6r}?mC^=X>gzM%U$>57Z=3OX?gGN?-U=`G`Dp{tb>)zo-;>&-Rw`8cL+Ji gFvF9tn(-gQ>bfa9yz*0j0<#N)r>mdKI;Vst0AZbe-2eap literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/hydroponics.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..0d458e5fdd59b9fc7480f2e695a77cacaf8e6ca3 GIT binary patch literal 924 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|T?4 zr;B4q#hkaZ96drDC6531_C6mo;nuAqdtFraZgqaP&`BVS!$)6CYyGvQowls>Fvh- zwZ@<8@AEMK*XKBE$mCGGge7Bl^`0MA#@lb_*$N+jb6`0`&7w(lWle`2=n;_n6A%72Y@*7fBYGo}dq3;*#?$RJ0# zY7^hp`1|^FfY-y@>n~kj{$i=UY~9b2tNZE#TUZ`2r|R3ZeLmGFyY1l) zzM{AJ0)@IOIXeu#zwmCjG-pxi4+ih@d(Q&D%ynYA!0_?5d$-{2L#MYoK3SyevG(lZ z%lle^SuO$NfbbhoT$01MWS){wP$Tv}lUh?S@OCEyw>07mKz%lVDt6>Bf-J zC&(}>nWX_2cMHRlBNI%|DXyLqkUR164w3&dx6PAV{F}H$)_tGju;Qh_Yw4HYZ-wh= zuN8jq?n6Zp+g@kGYwmInD~irli+x{i*PuVI$1|->?>|H2v)YG&2|J|My{?!$Ie@WO znDh3F!y0qWUDkMWMdd5;j?(6 zQx@ElRXf4+be_%fJ#h#4Ph|^be60S;^jTrGA4?+Rti`(b_Hn=6rpdc`>-!52OEy$B zF4f$6ROrjsm1+-Nf6I#OX^pn_Ua-00ncAyhubqeE64VR%s-qKsy)~(Rx53zf_shE{ zA(Q^{nNDBk7e7D9e)cKn%36kYeiyT!YHzKjBl4>c@h!Tx&BA~|HDH_V8JyPmo zMenPzGx~Gcbwv!vz2%?e9NydAXjQ5$6xt_b$|<^&^PR8D8-_^_pMP$1P<<_UCR74n hSOa5X@m_}gjJ?itMOP^B2?4VkgQu&X%Q~loCIGB=q(%S$ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/intern.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/intern.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..a5c195bad06c035ad48dac69134fe49820f9bad8 GIT binary patch literal 458 zcmV;*0X6=KP)RCt{2l(9?0P!PsHse>t{pj4zCY&tkOv<`w>hfacjfU~os zqaX!GM<>C~{sBTKhYmu)p~>LXA*q9&{C00Az0LZejg#ios=7gv#eOMidJurwXA4Ak8C9 z+RitC{BIl9x0fqqam7&={IM@yf&FHQGiav- zz+ZiCP4{((apEj)gyGYfhIf~_f z%~RV0bn&dd6B@^R0ByoG{$<_th578R2Xy)=ZbDK>1~Z;>%(?K#gw9XEl6GFVI;@=MJ6Q4i2G%skjtr3PDW4A-;FbRSO+*X@dy&ElJ)x?)$yRy(8=RV`%^l zpaC>MHh{}oY(EX=LjFk!xNWWF4?yO|{w}uKAqLkK5h`8vFr-*SIaLTXfW%xXXueDV zl5ZmegmMR>=OIpAlin;?u8f+nZX!G$hpO8t08nMcqcRTbBb+(si`TdhXg9VI0I9p6 z)B!ekiVk}3UGZJnsm^j7;~eT9bt3(qOO2rfSw>0#++MCwRJuT3;7!*w)1L(;06z8Y zMtLEGG?$Z+3xF82*Uwoeev4zA6KiNvRu4d@I!f*VuJUa&MA!TfscKlDSomX}+dV)V zPilLyadAK;huGjJ>#i@%C-)to)z9%JB*kPf;Wz^db zG^|pm#r`ek;OCm9(CC?}x9E-CVWrFA(Q8h3{r+_}XLC+cyJRi5;b+FbZ}Zuneg9p1 zf6v2%`DISUJq#CQG8s?JmTr#JpT70@KG9=yZp2NAY`i=3U1z)ozIZz0 z-HzUOeeJB>ALDo~)V#YXeZP#c`~19rt0uQuTOB+ebG=nG+vUW%gx$eb`!4ZSNWN!X z@nYrD?RSdyA6c^NTvGjOgY62AArr+C-Z+ZZvsQd;*^nb+JO812$%RkL=T{nX#$+}~ zb1vF*BK@=ENzjI9rr*kFPCi`Ek&tPjjS=sVdy5N1kqbg&hOHX}dp;6 z$f2``51cZRx4yp9OZe-b^1l`r*y|J4RP}v`dAiGrM@lP{bQ^9ot*L0-p{@}1v~E-6ni{=go9!)6sxC39C_A#u z%9--_BYX5E2`=l5+NMbdyWVFNzBsvDvtK|ydA;MismzhAQ+6G;G`hKL&-p9q?25b9 z1Grq~OqhGWG3oc_N45Lq6&~DuI59FJy{|&j;!l~|{huOPzbDtUC&=wP@J`ufQnp7- zkHV9dPv*`Ix?7)ZFX8Aq@TRP7YvLLHAGfw{o%c0QQ1aL9zKGkOR5gS=57Y~Fwrri- wcxJhQ$#D*bvxZC#;KZ!VfX;QVW~^ggw!7!KkBYq-FwZe~y85}Sb4q9e04;^6x&QzG literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/intern.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/intern.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..9349c431edca0469f8e56a7912d1a2cf928c7df5 GIT binary patch literal 974 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|Rq| zr;B4q#hkaZ{5?V(WsdL9_bu#I2tO?n#oMjQ?W3W|BgCWF;}`hty-1~C|Fw<9FLif` z%+)&GJpGF3q2?x~jD*wEej22f^LGE)oVrm@`dxP2X1m)e{Kmh;lAba5-~WB~z@M~z z`Dqm&e!p#al)<>b;t zwEx+LGc|3h%1u`US7b)EoDXi_<@qdyF|E7vUhoNtjpD+0c5VEuAJ3-97<0WZnpgSg zjwic&n$=HzEX=98o3uoD?;87`e|nR5H$1w0J-+jZfUMNh+>03^ZoZ~>?%CX$d+6iR zGKYkJx(3s#mLDy)KdfWF#x?LW!}f%x6G}Pk35*de+W*UV|2$m&;-)?4^&dPo_oO@S$+w+h zaoL!hljbUD$0VY0sz-aRZg6)w(@O6NV!OTcn}avJ{onOZv<)2UQ4AV=Vhml2Ss{^t zg}a4e%8E5}B4WQYi$>nDnklpO@ua&F(PrzWFqm*^O_;G~@~Klo_ntB4Df6Xuyxrk4 zW6~m?Q=(Pxd%cc}iXE7Da#&Ks^u6{P-=mp^7w^Av zYdYKb>`|?au4>a4!4n@v3cS1h*NZFcN}n^aVbaE_)qQ_EuU z6lQ;^YV_F<>C1FhSH)u528M^1a(2Ahdm{4lU-RS_-(4;U+Z=z*%2b!$t@`41u&>kQ z*6^I)$8Xr&*)zA#@lz?wA}){A_Q_{dUIp99vhL#eJ?~55{8y}VnvT8uRQ|EN-1*ff z-!*rgw^ST|&74zFR#CupY^HPA94%$3)feiDcv5W>_chO&V&sb{SY%)5{aZd5vytf@&b?ckHxi}Tf3(!c(Nmux*&2#i3 rlSAPah5#8|1`&5|26S#5xCS3j3^P60WbcEP)MRi00e*l$ON#rs|T+apIAFJqV?H&6BDbW*gw#v+yO|urY_;K<3d@8eMNZ^HMJ6c z=>abU7XXRRD|5-(xk<+^u?{`Bw+x9gy~Q{}1xR|S5G%LO?VE2EU`;i<%MJwqxlosf)9%&OqO`SBGD z;wzv&$pwHC*N^I9!?hC#GA2&3EBl%!B_9Aaq33xC1c@>uAH`@-E)}4zW-ozGDF;(n zIo^z7t*w*D$Ha4+1C&_Pv_Mr=xShvj61EUm$F^;lrkUR)B>NT!3YbaxvxsK`U=SO# z&47*Kf&T(4gLq~DGV9)utVOmmvZlds{tpNM0U!YW(!K!e{G3N2sgjle0000hQ*fv literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/janitor.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/janitor.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0236e6542fbdaca15de0396ffeed4ff46bc28501 GIT binary patch literal 441 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 e2haih9pC{sV{ryj=>D$&0000 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/librarian.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/librarian.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..982f4081023c07a04222308890f1c4ddfbcb48cd GIT binary patch literal 384 zcmV-`0e}99P)1RCt{2mOl=HFcik0#+ftd!U~6QmqomR7!G9A8;A?;9zs?Z zy@1AW0i=~;QG~AoF(iBouTA^DU;n)@pg*ev=m6RYFei%g`Zq+qMgfGenY49H%MJ*` zNEHMIVCLpq-zf|;5VnY85EKFe$TOEAgaix+0U=5Oip;;kFc1`?5I{CR((CNY=Y;Exf7l`_0mum!t`iZU)pA|`4~c5xMgW>n e2haih9pC{sV{ryj=>D$&0000 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/librarian.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/librarian.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/librarian.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/librarian.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/librarian.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..e27bc0790c9a6a69f5520183b2955d55fd206182 GIT binary patch literal 642 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|S$Z zr;B4q#hkaZ_In==5IDZyRnT>jA8VoDn!c_D7M9{NN6(3g?$Z3n%=bvIRCvn{ahE%* zR(ET3tkc?Iv18@NEgYubf|R#)KB)GM>n@+a^6dKE-%svUDOfLjMvyU~Z(76EM!w~R zx6c);vN^X%#z!)+`hWXc_kVx&`kGvQYc-V?*?7+e@jV}+zPy!w`K~X<>G6Y3m+*FN zNArC}tUmGg*82Y6l%Jhr&@J}B^TNaXHY}cpY9s&Jq%w*Jcj|;XUMQ1jSQh`-TSVY2cTW_Dvw z^W|BkTJu+{Dul|`%+g|b%lP!sJ%M1+2W&36{{lJLWHvQ(aCEs^R#=LftXrw`Ah%9X zecIE1%l_4*CGXAK|IVv-zk$r}4{P}-H$d|@N{}3mJD|QO^7Z%0lka{9CMpI`S3j3^ HP6jA8VoDn!c_D7M9{NN6(3g?$Z3n%=bvIRCvn{ahE%* zR(ET3tkc?Iv18@NEgYubf|R#)KB)GM>n@+a^6dKE-%svUDOfLjMvyU~Z(76EM!w~R zx6c);vN^X%#z!)+`hWXc_kVx&`kGvQYc-V?*?7+e@jV}+zPy!w`K~X<>G6Y3m+*FN zNArC}tUmGg*82Y6l%Jhr&@J}B^TNaXHY}cpY9s&Jq%w*Jcj|;XUMQ1jSQh`-TSVY2cTW_Dvw z^W|BkTJu+{Dul|`%+g|b%lP!sJ%M1+2W&36{{lJLWHvQ(aCEs^R#=LftXrw`Ah%9X zecIE1%l_4*CGXAK|IVv-zk$r}4{P}-H$d|@N{}3mJD|QO^7Z%0lka{9CMpI`S3j3^ HP6qF0B>ImmNATjlPl^Rc2t-9Ie^^#V0S?6#Wix4?OOinF%w|D^PW-_ zlq&Gu+*+_|Ifv|Oj!GqF>lvcF*dc@+%PLG?r{W04FC#JM>vH}v02c1w^(j~nDhNoL zBNs)H%93gTxP)1jRS+~(NY22YWWhd%gO#GZPA0s-O!4NNpo#|01I=@KRaR3 z{kj`n5x>8ECJDwE)7J^1(jX_RU5hs{Zv-GAw)sUK$FcZ-D~_Ovd1C-*$aY#o`n_hW g5g7mjU;uRJ19JqJ`2U74NB{r;07*qoM6N<$f=Q0JGXMYp literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/medical.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/medical.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b0461d149351a573cd5adce7c1636d28de5946d8 GIT binary patch literal 429 zcmV;e0aE^nP)JsUi>IkfmTiii9jf86eTSP-iKb_V zU+XNkrllftTsfN}ciUW8P$Fn`^!xpaN1GoMtl!E1+lXF2|V#muKT znH((rm`ZlvjZ{CU|0$}ZGi&QCXE&YA`?fOZ#A!`6u=v$-_K!G^Uig7IuOmASSWWd} zZJwTgv36Hume5Rfi>u|Y8h%CHJ+kkKZ^G-JVw)CSf2~>{E^xe1tNgGR!>arB*N!ia z?hm|u+cACp){dC(cUdphUVbSu_hM`0?|+ZEj&4=rYHbRxUCviwTgj@@{_n@v=1#Tq z6Fye-OuozYZoh;|;pGyB*205P4c~Tet7JLzP*|nt@0&L~c8RAyzcc-SRr*vOL`nz3>(o(%{eYxi(TqkChpH#gSciD?UEW>Q}=AxZF!FP_u)|hRK z+1Gh7gJnAJ4W;ux?l024*5A<4@Z^D0So`czxmWHAx zh5$bS25@jWGH9rCFg#^pTmX}t!@5A&IXh-Ss9#O=lQpL+_Lij`>&R(h=3<{}-LdGz znu{xJR;;Ni?KmoX@7>o>LG3k%<*!xU z$kI;}$~tNLV4l&&bNGkJONoO$9Oa;GlO4iwmR$s|oM{zrK`=h=XdPc)f+ zCdVBxzMd{r@#Fqyrf=6bi#7BW$gI~Z+NRiQQB%~hW&y`<_utPRFuk|?p7uJ}YUg3k z8J>Fmho0PKiBu?!n7mb!iT`}x7dv?c55-$gbk0>WmNo5>>0f>PgX1o?==s}fs_gat zTy77D>iFq(?{zuD`r7qB)6|j;PtWj-I5jcPtPLz%E(JPYTI+oAtjXPyBB3Nr zzN>tCOF3h?l6;sPPd-XH7~!;#we*FMf#b`d7b5q|KPHLDygOq%VYj@>_kZSl{@?xn z?|sFGzvmAW&0*Leqs#c|XHEKQ$yZ0Y?-^ct`9**!X~NH`tO=hgZ2B&pu07MbZ&8U2 z*ReVLPAtznmj-FrRyY5-8@c4~#Et!7b!)jIX2l))al+!&zpoOH?*yyJs|t#=IvxBk z@4ETso9?dxLJhC-?e83W`_X!bMJeO_GW+jt=Vq^CimZKGCLMiM+3@?{Cn6VLY8-mF z0c6;X>{^zx-PiBz>0n-RF=N4=Ifu@wtJcpE7IjE02@p$oe3vckdAMQOy~70+66$Y- z6&apqZnH0k-}=O^U(?JISkhXx8csCB6*M?}X9KR@tryYrblvoFRqaNW!)>qtF! z@v}|fJELifU)fG&Nob1EyY8tXRMG9-@qpp?jy9J^GOMm?m543qsyY7OY}KMaTpofC zxD`0FKC4}@VtJaTZU30-U;Lfr20F(%8BP~6L4r@60T*`*>jGit>=>ujb7pKiF?0Ik z`8%17-JU4jSnxr~l=1xMBX>?+;WAopxs{~y2cxSC3dwZ^BmnW)41WP8h^qxyWF4u zzP|Y2FYol%sU+RWZ9j9xd+D9mWp9cZcg$;Ptl?z4DHC||o|IIIebaA|wx<@136_2g n5q-i8(;l-lpmQVi5AfgJGihtE#cf4k_F?dJ^>bP0l+XkKgz<;C literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/mime.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/mime.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..ba71f97dd444db13bd0d686a9fee3e4a00254344 GIT binary patch literal 422 zcmV;X0a^ZuP)w$MFp%=da1e z$FF$~ec$^ow;lj@Ulav&T}MXZ`wrm#gL2K&7R>D@*9__cAq3>*7mVZXJAc8kpyTnC7Xa_DX&P%d{>FLC6>=}<$pBDj-nK0nrMCT0 zvu#HP^Q}VA5io>OioV%AM5_VtR&ytygf*|1We1QXVD^_2%YU|az=d$j?Q8B0@E5|3 zhnNQeFod#CF5h;ng9rrL8(T{SW0+v`mmSNvjn$ik=~qt3YP_FL8YK3x0v-c2%^ zc_l#bd{4eELv#P}IO z%_Z5g_cfV!-PN<2E4JxPnx;eOoA1>}wEhZD{kP>z!)vn*$D$f6`o4;t*yN+TZ?SHz zUA>Cv`_}yX5ps2@_gS+UB{aGgIk80jS|_}r@#WlQFH_BC*Jk7%-y+l?{J`$bYTNdo zGN-Fzqn9@Loz|*jJ)>m5XImA_JyJg0J2W+1?yFUtx{{L(5~8166zN(heuS zGryM2(|(xC>(Q)_YgrRM9874K>a}1Mlf9;Qe4&nWOVXbg6-QPD?bO&8%<7{i{AbTz zSN+pl?rQJ9n6W^|Z1&mqeY{~zFD?al=WW0JuS?cGwhnbzebwpnJHE_cw%bJ(=xn>Kdu-Jo^;Lf|BN>FOU zztP0^VvgC?rRQHypYmwuhnLc)53hf*J3*I$*)?!Vw}bb6Q%32Cdz){*kvRTw_qA{H z!k7#g-yQC|RqP>jW_4)pRHj`zr+d>g_TW5c{jdC6a$%etHLws*&^ zXOA~HS7PPre{_~en$V2ylPATV8!sq+by8o9`|a$Rjq>{+PL2N_|GBc|@WY0S8B10x z6z`e8l_BI;yzS5HGaExhotfk}u>QX^souIjV2=2Pqfrg7a=tB7k6(TD!u#)A_s8g! zHtl<`SF+hwa*`kY6zB&n(yG_u>I6WBXgGuwjZk)?#=d}C(m`@h8s)R zlJ7qmnmLawWZ5kGUn>Sl<=o;lvy9oNFu__>mC{(Htf<%^QeKL5P` zv32oO^MlzcMS7e88}B}s7mRCF1f?Ui07HbP%tt00=C0zBk4f$~gMkU0!PC{xWt~$( F6961mV$lEq literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/official.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/official.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..26f594fd07d58ccff933ab4abdb80bebf8febb60 GIT binary patch literal 441 zcmV;q0Y?6bP)V#fnZwK}94Gu}kz_ypZVPg$60yTXOlnk9)uSa(AR3|11rl z0W^RH$OJG|o({KHwoK&?f^}f+e>ho4pvbXF{k2S5%V}1aa5=KJAhn0&1Z&ZQ5+vl<-NNH;1M{R zJXh+1QU{Xe=8&1n74Z$!hEgYb>lj|lHGpO`=89z(g6BYdf~%*?sK(0)!1vyMK~PC^ z)~HAcfSd5ce~%$(D#aLctVtfvt^sgY%aichdO>Nugx%Vn$W_*Ma8x^nIc5s;-0lHR zTw0h2X~dh5PfCu1`vAA~oBVDwjCSVbvx@c j=*|BD4WI!uKsWUXdW@PwW}kdu00000NkvXXu0mjfN_Dt9 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/official.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/official.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ebf672af7a91362dd199c43fb85cb1dedbc57a94 GIT binary patch literal 438 zcmV;n0ZIOeP)RO}M_u3o5;!Mhq@jdz!D<#nhTp{{(mQ_exz* z>Hy8{Asd%ZbuphEo)cd=XAU(eb)u(hD2;oO5aG~)#&W_uvv+_C zPb^HvG~!FhFD1v#hbC^TH`%>}6b%URGp=K<1t1}O-;ZfZwZ~fK+5nX6x{0A%b#<44 g`5`d?2EYJ(0!@ULHCEe7XaE2J07*qoM6N<$f-9}M1poj5 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/official.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/official.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/official.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/official.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/official.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..43ced855d8887542bb5f42356775a448d33177d7 GIT binary patch literal 877 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|T?X zr;B4q#hkaZ4rU8GiX5{Kyu7MKg8w4RY^51)RUbDjc(m|~z=o++SH1n^sy?XwWB$v2 zr1?c6|GX-Ly;8HZY+K}xaBx2pnzc6Kme&=LEu~ktF~)vBYjrz9!)WrGrZaz>W}MM^ zQ~mz-_Q{Rk`y2|lFa*dXGX7H6m$m(0yu8-5PBo(X<(@;g5C8o*cjoo`0*uVb&F?C{ zMH%R?w>|#r&nv~5)tuZD?*6&;?zBpR1lv3N>V|6bcZW7*oiN)jBR!$WiG|B%7{`|wVe`0FO-zTK~Dl|BEt@{8=%+-7((9VQU~gCBt|NE&)YH%fTu=O;Ui@+A!}Gp+Tc3N;uczF5XYZ!i!t$Wa zPg-&bcc#tOt{rg_-{oq!=dV#qkr8OUZIL13`a|@A(t#ZkYg|QZBs_APMAl@^d}A*E zKm1FeMAu^0hDRBU3oN1-H2TCCaB(j&1uUH6^;kx0s&Jy1`_5RY@3*II)mCM&G@K=Q z@bD?+{aU||E3UeJdFuw31=YumIj;#jY~xrZGFgAq)XYT2iVsttC2c5MXLaHi>k5B{ zd)JQ%9cu9Uyh3?{tLe#Ym)(v=P7!nbCAvUK)A3;WH|~~Lt^cRPw!RQg+wBm+5L8v~ zJMTN^hoH(CGAZ3PO7~qh`$sfbo?d@4_*I~oN!#>|Lf_{dGE!=8nty)phuRNzCPw$) zZ2GWw$?C($FRL>NW+*SQYt(p9_T$;<=H+Ug7k)Ea+_?~$d|>G^j#uXv_;8pVFXw3W zlQvX8*7WX+d)qobC)u`}^_#bwwpZ~jsP6acHMsclcK5uNd2?8HDhGbynz8I=aN}3P eA-9KNKjXqZE#k@=OPqoEhr!d;&t;ucLK6V^){Bn- literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/official.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/official.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..5268b74ed074df791ab04ba3524d68bc83173887 GIT binary patch literal 922 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|T>< zr;B4q#hkaZ&U=d_N*v$sxHdKCo!d<7CtXwgDh#E5IZlw^*qJE%`qIkg?=RMCbnsnF zZT6Ej`Y>tJZrApsvrl=%9l5FN+I#kzL9X{@=gW5QzpU#P`MB?w-jUyRDV5LJ&wSoD zzcNjxV&2{hGRh3IlywsRuPy%lNITwq_u6%*Hs&Oa9==X2Q8meXI*X1dfV^}l}M{LfSFT9NXezR)XOkNzkPBmKWe+)8A% zcj|X+VO|-t%f?OncS)RxB4f7veq|9p#mnEM;*K@f-e}wYCh^-JnE^2Lpe}nT-OkJ0I?}Zdh&G`Ked`(d6icGb}C-4gZ;SDgEIn;4HAxKAyF;Leyg~ zOXfyT^OM_t{@9;n*SgTsjltwNN5eA-MsQFkvp5v@Fl6)zGMqJJS^$&u;9lUQIrW%j zh?aVYn0sZ6)b``kdbL#>)Es$*`Zx7AuX^*IGjQ*`b1Nq~TwivNybAjc>J1(33BOFfg zW__AcHH9_KU2gM3OO-{O*Ypi$2Hnum$g7%X} zNsY!$x@kvma9f0MZFCJk@7^X`%Mr?&_J4Nb%D;RIvdh1h8@~K`$R5!Yf_Z sI~dKp6MFDju*59vAqoxd#d{m#+r0YJ8a#3XfSHZK)78&qol`;+05mY0%m4rY literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..72e4eb2552bf671ce8d80ccbcddda59b2af94433 GIT binary patch literal 438 zcmV;n0ZIOeP)J0dCEpt921#&Vv_{PTuH43hyj!?s>fP-J6%!rGJ(N z&;S}h1GEB&kibk4^4&KL?QAM|%;iuWXR9+Hd&N*IWR3Hy&#W ztO?Y^d&|9sXHdUd!I)u=%oWksVCSJkw+ml!`e>ndP02_yop*V070+QkI zk|g15$pgS4%=5g0K&TXI@UTY71aPY5mw+ylr5Ez{cZ3&R-;r6?WVo_>039M6w_dlr z32oaJ^|RZ1l3-l10DRw>?b@-(T|YdDm^9Dr9l#D@gjcT^zJ$82 zi}=msm?RiiEC9>0uT`~Xp`b=e>8UT754GY$2NLjU> h{{sp@0Vse~>KBIPmU)0I`C0$~002ovPDHLkV1m}vx)uNc literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..ee7ed60958010b1d522d3358ca6dd279e03b153d GIT binary patch literal 792 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V13 zPZ!6KiaBp*ZOjf1lsM|Ypx$X(`-0}?;DSN{%_$9SezH+lCV4E>YgOk3%xsA12i5zSdemRg@Pnc-le4i_jmrXjXTQs-Ryg3&G+zA*Q?v-RQvB2 zmz$H%c8ZhD!P1Xy%k8%(7pG}Q=7)s`tPCkS(UJKoTH4`b(#DRNZ}sM_(@V5n7gKD{ zExaOFZ+h>$=i6grc5P)@mptdoT&slKGT!jVyFOPO4_P;TzK*iC)!e?7i!Z*oa*I`) z`GuW+?ekNycW$qEbkxmw<(=<$SufQ-{wSe-e7{`dDi~rON#d2e}7m#r}E$T$e*Y6 z?SDpp%iUFz1b}=_Qq87x`&KRo`wFTO=k2&-u*srseDX$;s7IZGR}NJ$Nl$XTDuO_wy=2FKNYUyZg*P zZi?sY`K9QjNf~nnR|=mgvUqg*U|!y=&m0d!CGZDMVEzGr{p5+udvjO(048+?Pgg&e IbxsLQ0J|Y(6aWAK literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/paramedic.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..42198bae06682b965a50968cd5365b2567196403 GIT binary patch literal 864 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|T>= zr;B4q#hkaZ3^RfqWsdE4THdGVG{0$)sL|1=00GUGrfGhXI>#nBEDT=QaY3lP$xq2u zXKROuwI~y(tLJnF&W#h6c0?#n^I_H1@Mvc-zr9r8bL^fEOjdVhRx6d;b9{f-_I>~N zr~mud?_cLXUC4BxXba1Ur$uLfufBQi&&xL=mtL00GcB6_bt-GZ$Bi2ezpNMEU}4+Y zdhLYe^=5&_(x8=7R{VbI%lJIcuj#W`)Yq+6327y4odGOY(?eAX9M4SdpTyBsW2b-Y z@ZrPjcJg^K1^n%8m-cXZ_u$c0#hP1x??~><+r^#o-BgNqj?DJ>#>tQ6JKPp?v>yf= zwf>*rjokRp50Bb7WNnq&_jXD_T8UH78wRe$&6^mqt+ONg^dEnz{Ay)$UO4;9%loPE5~UqWt!r{$tut`te7i$?`|_=?vshIm{1&{r#3MSb zQbWlnxT4d{xZ>}9wOX@nm@D2N3UiD(Z$CqP zt0t5DJlRYed4-9s8Iw0#d}dNER(_-qHOG6=46|ak4Y$SWmR`Q`Ys=HWzb`&qZ`bn2 z>4fRz`;2?O-;~}y%Sh~Uw~v$mK9*)4_nN!+-n>qgJ6OwgxM&W;1{rk*o#UJg;N*zL dT_gTLy(V*BRx8_fd0>`d@O1TaS?83{1OR@Vh5i5l literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/prisoner.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/prisoner.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..241f56711b1f88c6983cb96637221b6df872684b GIT binary patch literal 432 zcmV;h0Z;ykP);#1_G;69x*-JEj+;KFBnouuIu1SQRxy9l8r zEdVy*^F%?=REja?IH!~fY*|(?H=I5;|bz6Z^Fdza4U-s zMwxjxi3P(FZ$c_Jh^ONw=0*S#!gWP_J<7&H2n3P7xiJ70MNuVCBhzKDnEwM7zyer+ adFltx-GpU>CT6by0000)|m5}5R)#wslnx)A#m?~-1EK5dyj14pJf0HfB`T7tpKi1 zkOd!3E$8hjTs^_+9DwGR1K{@AMmU)0oI5=LbGb4pgb0A#zXYC`#9V=T3K@!1HrL|SbGYh36$p4>*q@if-!5} z7@|pRbPZ{`sYC!AFLzi@p{e*Q)@z!F^Una-_~CSvAGlQrnzME@g-9X*9>TYzg7_`w zSmT;bCQzJeeG|CLnKgrJD_sjyN9RiO&fWnwUL?pozJ!U5i~VIjn%mku$RYemhc6*j z7-Y?S8}n8GC4}Ro+5LPOr)dgb$<12>P)aGwucEeXV17spfB`T7KXXNW)TV-A9smFU M07*qoM6N<$fWrQ)1!x-86bQEx+wa$mactq@_E*m3;cFZn5KAD>+8 z)~$FE7ruVmx1gJGN;w=&9?D-tzVCXsefQ>@A|h#%A}5&d4~k0<`gXRaax+iOd#;wp zEDZ%cEH|Rv@5pcOD$LhBa{By=g-T*G!F%FbS(%5e4jdGik$ zPYvh2u{pkbuDR7D#L+!>9)H^N&Uh=!3E?CBla0UUSU8C@)|70R z+r!^>^m$ld`k(wj@wdtgTr|#yZmpD-*vqo{EZa%`z>oir#I`ERs55{AXbyuwpD@Fr zLM8_bKL(EDoD2^w7!_cWJ**1?J+osRSI@bz?ZnLKAB*0d>Ji+^VW#mTn{l1_CQGTQ z|DsOVueCgKO7>mdLd{v6e)$s~@BO-A)<1@=l~R*W@hnZf$M&1$*3bHzFGUmN{>x;p zTigG3k$PkH!&yEq7sMPS7p(T4sqVjg#~uBI+gkI_PThIQB+YQ$0a>;7i&rKu=SW!= zf52#Zwa|{AMf({9vTXgM8_rfmY*{8SO|kXIhh)}JN5O5@ak~mxuOHd^Hp?zMuRKDw z_25y4&;_4#?w=}}|77WXd*k92&kNcc!)1^7oU3CDYpSxWa*kLyr+I0;!JOEB&f?e> zug>nS4VC;4Hb<}ZDfy?jNIg-}{NPKcFL4fPEr}7AZJ+-?L@>lYGW}t!H}`e@ZvH46 QnC2NgUHx3vIVCg!0IpGJ-~a#s literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/prisoner.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/prisoner.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..711238e05c6c13a24d82b94f58ff0c3e9c8ff230 GIT binary patch literal 868 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|T>| zr;B4q#hkaZ4rU8GN*s+ppmiihXI7AFXI_auTeaubaLp%IlK5Y_=HHvr;r_qfDc8XK zKa;n9>b#NNuxt5-pspjeyJw~-SIqD&TX^P=!kIeZ8~NYfnjb#& z+t0CZ3q!!10H!tP7Di`D|J^ZT+s8l3LLHrj&!&qtoD?@cFxyYaKghKFOyfpxb3VZt z|8M%5|1T5TU7j`L=DEhg8-EsRE%=ei*y<_VewHUud)EDaeEnR344Wq7 zin^!2ndD~hPdqFABWUaI$G6q~Z&zB&6j*y-X2F%RJ(kA{C+uhQQQsS2RlkDk#_x^X zA%C;&_J|+%*veb8FZ=N^_QTSVjC*r6dbcnvy)Aa?x0+tuT(?g(Lg)OC3pae0X78BN z-1q;R<)%NCKMHxyomNt9@c8mPLvsB+^Tb`x9X^K(-`pJbg7w6PAZMk?PT@U!i{7(6 zPkpbc>Y(rVec$fqa@VC#$VFzT@a!phyfy6qe-FXxKlO`sE=43K#-SXyqJ+cN>~@`}3lWh?Y8_BtM0U0i1Km+{fVOdl@eDbs#lTGIK+ z&St$p$FlH-O1^$yow>~Ka!r5Ra>j697ja|BWNcxa<^Ox0&1}`Czf4E6T$LHl-iQ`Y zYpW7^;dOb2t2JBsj2sJQ|9MIi681aDuv82E_;9d}F{;$agL}h_Ex*@lwxrJRkN#1c zdHS{ZjoUrjBAfE(+j1Uz>Au2`=h;rRb-ve@%iNR|i(a_r^SSQ7#tKpu@4uccegEra zseSp@@Lx--EZVDB$|Wi$I!`}&Q@@}x>85o@SMauKHU*)G+@)oQt-nP4%3k~MYfIu1 z{)G;Y>RerZ${wheZqv7_fBeEz;`Hzopr09zY=egFUf literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..e7c65cff7ee2be331bb647033cee13a48a7c9f59 GIT binary patch literal 450 zcmV;z0X_bSP);uh@7e=z>qQPJ+<&>td&m8M_j2!6 z@z2r#8bAYRfJ^{>^DKR+mxb6#^9{9nJEt6g%q=SqbESZb$1fJUIbO%n;Tp@yLP!B{ zbFNOeH=i9~@G=7BWFe$0kR%httrGHkA8aJi{OQ_6={%O*ZgBv9dNSH6?84qC3i;9S z9nURb|8gu<1*r=BHa9Fo$k`~)*MvWnm@K^KaLKWn)jA`PGcG=K_y1M|j}?I>5hX8-^I07*qoM6N<$g6NUEBme*a literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2d5d6c394a524f554b940793de67365767b106af GIT binary patch literal 442 zcmV;r0Y(0aP)&<^e{f+9Ku)FG7M&q*v6QE+gJytAi95qy^h5$?O>?!Du_pL^Up zGKfEx2G9T+Km#ZN_|4^Hzh_W<(rf!l#KYGJZG z^=-|zzlD{?7^@1b3P^L(+5Kq>g65P9+?Z8~Ol?S}S;YcyH>c59J$bLfSH%ypSo3i? z`wT!E{{*38&IX`MNbM#eK8s?q6>|ZgTP-_*PFcK~faQcD7kjpdQI6U)w|9Uxt~-lK zr7|w&@*Cr=I#G0qb#E`fmykpTbq5Jxr{XH+N&phVhLJ?kqnKaAKuf_~8GsaGrx1F` ktpE8xpaC?12I!|=0irCCZXhA9jsO4v07*qoM6N<$f>0~75&!@I literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/rd.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..5af3beb5a409d8d946de409bb8f929e22433c078 GIT binary patch literal 865 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|T?L zr;B4q#hkaZ>@$J`MUL%vIGAR1qv6`hu;!L+&KDJ5D(vX!3d`!#LmvTwEM!slL9L)O_Pf1oNQ*&E6UX?;BmkFaj)lrOTQ<5cX;>L@!rEb z59bx{uYP~Jxj1Tpr5i&=pDtrk@N{o~<)dBo#j9AGCtjD^;bQz)oBP0nhXDe`HxABR znLneuL_y|LSE0GfioSaFhesEG@N@o{JGbHYb@2wj1hX{Dx$!#k7Unm&wtJ|AuSsX$ zww*h4pY0Tu1*bM|WLh_8PnY!L?H_CY6dpZyPj&3hyO1o5eAnMEWUjIW}_g#y2#?SEklAy3hL&u+ibwl$ehGhM!qoM-c+b2wW z+$(eR?}mxD#diDe-t{eZ&!3Fd$3p{!8W@Xq>VApSPI?%+%gAs3<1(RuhX;>TpWi!? zd+FXaujY6$O<`VmMVu=k^$|mpviG#NZt*Y7pG{u9VRD0((Xst&v`&RPbWL#7Zkl#} z`h}WJ4^BOrd*GUPfS#FY;J2lJU~-&;;jAH(LvarSF78HM2JVSEz1|U8 z>VDHtNKW5ow=MfGqY29NFU&I6r`lX4V%_Mg4TW%&HtZ+@j)`#WE@g!gPTlX$DY z>$<#x`1wOBtGE2wm~!tP=N_5Uhdd?NHI64WhJ8~p5P$Z>tI}rn*+_r+9l|=E?)hu4 zeBri;)mq;v+MWEuGa#g`@vQyMl?!zaw0p)cRnuSjQoLZsuX!wb`*y`Uh^8{08tfol{sVEPh@zw(6PmrBZYU_scz-zsFBH zH~qJe-&%RGjXQta{Q6^Pe)VV0U+xnQiw~!J^W3>w8Z(FGXHkuGqjJb`h0~|wvp;Qg zc9wUlZ=Ili==qCshUa#@-Amod_RL#W!)c~G@$aNV(*3V&?{k0FK z>-4*7@1Qtk(^oLN)DpjP~TOU1SA0-=99|D_mPInR&q7Ia{eXpC;y-K<-2Z)@kR zUs4u#{c={#_F<6HR~6wu)V1qi+5B5STi3t&uy|X+9C1Cy6Ai1@9j>gC>z}uDVTh*3 z`lS~yZJR9nU8<;|{rAPd+jDP=Z~Yr}&vGZr3CX5wQeTurZF$mf>%0lHk80j;U}wm$ z%=cl@?H}Q%xxcF~=-$9$U31e;*6FeE?P)sqcz9%+ekCnmv~%CRfBh#`8?d-@F&v!8 z1PM${23%YoZih|}uin=ItL7M3yZV)_yqkS{(=Ud*oLT`d>V7fbI~HYjO>$A))|HY; zvu?j#=dveR^sgto^x``SdyXa*5O?~3&WXODrzdX} ziC$Hip#NmD>dTKlZfEUc7tCESrR0y>sugh!9yNXkcr+xd|D5PtG^^#Ey4^HMwy^)d zjQ{(QWsSsNaBFe;#P4{?8BH+5XfmH9pKIxx2}c)I$ztaD0e0svA$qc{Kn literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/roboticist.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/roboticist.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..498c98bf96d93b78fffa32d2bad2d52488e3e06d GIT binary patch literal 441 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 D!+gd~ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/salvage.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/salvage.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/salvage.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/salvage.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/salvage.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..a826d42142de2f5d93a722037ce96f46b8c647f1 GIT binary patch literal 849 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|PU& zr;B4q#hkaZ{4<0dMUL%HYHcVHcJd5LI;gO2jpY>){hdo61@8GaA=y7}kEG2rjf&HE zlUde33cS^@V1eo^XU=6OwjH^$%;SVSQ>(`7eK*g{60tcmD{{ijc#g?4TmC+)t=!GC zXFJc)i);>sOp+TW-Y(d5agn{fM99S-S0bD|bb{h=geHJFd(a+`)sh}+kGEAeRT#yjQgi5qu^m-n*o zlP%pS_VJmcpi#q}7ydf><%xZGBi-lrqvn%PM|1DWQ08N& zxc<6C*axs}sK3iQ>&V^*+8mQF%RAq>m9;2Zf5R918`4G0ErMnbPE}35%k)N`;m^ct ziOyPw?^(93RyGUzwVkchr|(kn>qQ)r2U?@j*C(pJ`~BLtJnxuLqnSce?Vr?>9quxA zewXjgj1}LzYyx92<8c$=4&O-?`S$L1o0(^Ak4op*#2EO)_TTnEk%!R@vnQPY6UnVz zA<0t35wzi3Vdk%$E&nBJMcN)^FfXvU#h}q=#?ZBxw*d#&FM)YQfalUezNx1;Z>knu zTKaKOSw^eiKF+Lw9~J)u!q=JX{bP0l+XkK`5by@ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/salvage.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/salvage.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..6aa916ad57de75e22d1610221d99b746bced12d1 GIT binary patch literal 887 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|T?B zr;B4q#hkaZ40D76C652^ogm=ZC=j$FLpkt#Li@C9tp{7A(!<$~`RU~um6w;i>+lRO z4e`!d)XY0=;iN@vVN0EII~)vrS6IHUKE62N(T90=RG;mQzie}_`Of!u<@aOte%kSi zxN|o=^5Bf{(4F!5;GKefxAhkMS!csKeMU-6BBRJ1k0TpjoL&^LvpeP!=dXuKwW+%l z8z0?|i#(L0+?~JCG&{z*WTld9ycTm+{G=Nn^BdM3I`@#RYVVS*QSH%t?&w55YFz)@ z_sp+1J9V6xPSo8gW}lh;z3}xbnQeA;a(zenuki<+OJh90&u{zbBg#Bx$CMaZmMwp& ze(2*;qXt&@X|>BHZ-4&oqQ$!h$Glk22DL5y|1PbaTfi-%;s2!4{aY7B@SS~F!}6oj z$BFH=sfE|_(k8zpr`^2%XYFqJS67o0E279~6R>q#pZs1mr+*sK+V1BQD$3`I#sx&u(_3Y}a$|rIhMC$tg=Zd)g5PKkW zsdKaGcE5X^OXQkLHf?SG^PpJnzwxh7iLS-04uxA7H2TCCj$UM1U=hUt4$=(902y5d zxa1ZFt&pJ1InGOq4!snzJi7Gb`5Ws*-F~R8F!}fGiJV?s-=?iU56^jA%e2SpO>SyL zK7*sF(>0xmMJw$a=G&B}F5nHxE)6(o^Mw6&#GT77H-8l~bv@3#dFcDLLo4Rn$=3u= zn5Ll9AnMR8aqY><$fPat2TlfAiYANeryQ>mTA}6pm+8gfpRWuYj|Rj|RzH`xC;kAh zo9pG1pX(Y;!dksc4>7G!sxhufwODTQ=P7T3<(G!9+yUzwCSSO^d|r$A{rQUuZ#nWX zZu2|e^!8Tv!^fWC?LX(-=X(8Kev{=_ZVOh~-xsy5{S1L8SI}rv)K>MPtdfd+eWcB0oF%Gs5VeGaF@x^m2!1}j+ zr7kFS;JbKZt5Jviq$mAwNz*z-K` z5>C^-Wm&>M$7gp4;ks^hFCi@xNSf#s{AI*T0Z51|bd%ZaPVC>&#ju2UX#m;~CpEbE kwQbfzqyaR52B^Y50G7y<@Tuxoy8r+H07*qoM6N<$f|=01u>b%7 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/scientist.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/scientist.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..7e08f6d19dae9e826c75d368707b1862344cb624 GIT binary patch literal 439 zcmV;o0Z9IdP){Lc7skfuK2a z!{Jb}qzr(YFbu;5#IhJ;jy0upfV(>V68My@*Gp`;cPjVk7%G;Umv#D4y|3y7qNN`|Nl^1i&Hs3$} z;`{Fhf^ON?JuC};tvxFycPIAX;kBiEZrqY}e->Nb_-^0Bf)4W^b5gq`Qa;x0>~UI{ z5PE+VbKJMShBp`Hv&n~syq0-cw)=*M@*5WUO*R zwiM?9rd~JYwO6x#gvKA~J!UPMz4dm+_S+k7Hfa8m`yXv`^oQ65C5G&qXjaR2X z__3jM?t%L5dXYA8Xo)i%`pD#95y!xBoSWfc1*3wDK10i6)&`j5MzIDzp0$O%Yl|M; zQc90K_IhivvD+6liv=HEy!LNNTv24rcs=hq%NFYzi{Gr$FMCd1?6aPu8+m=J)Px5Q zGkwaeo@=>h&-u)hE^5(Q`eSj{-JNqhXLvKb(-g0+NoklC@bB@-%bN4%h!^Be^}n`A zp=4?1nYahLtIKCx;JG@_##JHw8LLcjty*LI{yE|X`{!+BC~0|lGW$lG$fE}*89y~C z&W&YQ40}Ex1?4y^db^eQmqVh0=)0TQ!;Z&-azs$uGFrnlX8^#dFph zoWD+gw6JUAR?FV-HS@IpyW?&3RRXg_lBQ@{*77~rI{$I)D)*FShLa7ZsvopzSDyDM q&fsh%%YO|XEP;a*avkCi%ymSYU!C6jy8xIA7(8A5T-G@yGywntY` zr;B4q#hkaZ3^RfqWsdC+aC{RX^n&}W0&mKytrxB>U7C_{VCn3rPXz^9CB{c~y;$O{ zdc`kkxs$iobft(DLG3)H8)cJTimb4TI5Xivgy59tzxCpLSlf3$lRI&jf7a>0-uM2$ ztNveZ^W&d*f~6lrMBg-qr$v?)A1}ZC>F`rx-}~bNf_KlX*I}5PzBzIaUwzfaKWz8^ zW~OY`6zq3md3N&o=ZLS;JA_p>NM$R`mw�%ctzn19y(d7%i53kZB>g_R&!n-p&1K zf}+yW(hr}Ty!vXjqxD)0zbfO3f6os4-Z^u}sVYa{IJ^8U<;TlbJA}n=zIjBuhD%w~ zd<2Cl`;n;5k7!#9|0 zZh4Z*zxQL@95eq`hMsUO(HSkO=XalRCcW8MropAZP`ENwswjQ5&wyo<; zea`x4>N~V1ZIno!S^UMuf6DGTrvtyv@?tV@Tp7Yuv{R-|O#Pzq{&ts-Y(+c0Z`{4x zdX6b%;`tx@-9o3xGiov!-0XARS}B|%+w}IVSSrJR-FKl9(;l-lJhfnigrqP7F77R+ z3!Mv1^%jQu`9wcCbNb`^I};_9iv)85cKm(HZgXCEV|8+p-{0_S>lD@(nr}J%;|>`u5$Ju+dr`k&NAkAFrt4fTIm2J?pllR5aTo!dS^O=3mr&evJg@LB)(@F({Xnc zi63i$cRVHuA)Nsd?Kwv{pn)TN^`y0v7KE3w%jE}1ci%JivE^)|v9^+lzdXJ2elxm} z%7Rn|X2p$VBNJ;t0C{2Z8RgH!d_6--FW(`=j?*keZxKHNFTCe-g0cYU0=jw!?HLHN zRQzzlwrRxK$@Gc)3nt90000vA z00|%g3IQC~H`%4ea@vA%rVHrk1*m27iB6<5$Q%i*~Ct5_s5)`bB@D> zp->fsDv+9!?8oaI1dSJuJG#cuGsTDTs(}+>x87lfT6aUix)931du{(=v8)= ye1d>~f+FUH0Z6XvDlTT%|NI}201`j~%u}DlHkAGD;jy#;0000cWOFN&e>`~Vf zAuQHA%1+I3T@g9OU@)6^GoPZgOvR`CBC^OZ9B#QN_)RphqBcb-q&${q5Z^{~WQ1C}D!7NvE+SVNwj z*>zzB^NNU$MbYv1Pib7&{Iv19^WH5DZ$GHNYGu92D5}`Qd5bCMss9tv2}ij@mi%=S z53_t5ukhh-U=P=)hwj%EcCPQ9#-Mdk!N$pYqyOuKeK{ozvV8k%zO8%qX=B%>yRNs@ zznAV0_HHO_`tdGEQeXf6!?f-F{6}Tvy1veqzn@sd5PL=TfAkgC-&`7k3S8k!Lih0Y z$Th9HajxR-!T;UWqHM);7!vw~8O{_kHCXyF7#!zhcxJ(P02GdoSr}lFhGGppUYm}I zrc4#yrdxE%yU?mU>sW^s3$KPvr%i}aaZYdaTRwPbwC_x|hd6_fS#6!HuFpR8MI zD!-shJ$aKM$3=#-oNE$gP0Sg3&Xw{=2gsdr+&QnT@o0w0 za9ME8UZDQkb7m2(i+i)LCs)3oc50LGmBSasPRbm-FnwFiCmXdtm%9U$KCVzca`@u2 zYKGeKtx;1K&6oQ3=<=B-z6NI>cK9uSe6~pL;9jm~+@S^v(l@L>ct0NKIk<6wu?sM3 OFnGH9xvX4QqeYyTH7RA1cC zy%Frf8K&?e^E|iY4Y_L(h1Xg5n`Wl|3c2$IOWpo1XU)DM_m_6TuU}Ku z6b@hd7WT+%mAZ(ofBCd;7YlEedvRXi6S$YyU0b`W>)AD~YnL=_(*F9}e_LS07yJtolyGz%y>|Pr)xY>Rp%QJ$tPKw%7!xeQ7$o{c8E|n=F--{c zytboZO_9@fSHHrQw({0y$u2%kTq5(>IG;?4t;w17Yvq<}R*Vn%&d-xsvEF1&=?l@ZNfztHC?BdA-Cw^MkKhwYsaiRbRXg_C0j#n6cPw zzI)f)7i?~LruI5`)$YT&N5Ue0?Ktu~M1KKy)%QP-Z0h&9sv7E;)z*6bwfwetubqPe zlP^y!|IdA|UmyQ=j=fGml&SVVtLE){@7I1}zLD6i9&KkOFZ%DLk_hLWQygU$ulBHC z*!}sZjd*SN$L{&ho${Ir#oVvF{(8jqn(~d+2H+ICk?BCe8U_OyZ3YZ(1!Em^+v({c UPipVX2IejXPgg&ebxsLQ0Qi}d)Bpeg literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..13dc3f4679910a1eec7fe81b17b55377c5e61819 GIT binary patch literal 477 zcmV<30V4j1P)kpdTD5E4 zuBT|%6Xd!U?Smi&21}6qJ5D2+U^?A%XB|0(ro-=)hWIC%@0MuSOq3Xh@x*|t4@cnQA ze6g{e+CZl2jzN&Qol3xOHaT1J0O%6-dOc}G5W}K1%2ACUMhECtt2yAdJe)_qa2c%1 z+?DZ(hngqnfZuM5iRgqg2gvB6(M57IiKiDa{SJ@ix{B*!FkQ#`$TRk20pyEib+TYI zN9L9HlEE=&11OPE?jRl9iguG|6jzER_K#?40Mbx5z&-U`0OlnPpaC?%!U28&*v6Yk T{>sP$00000NkvXXu0mjfbBNCT literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..13dc3f4679910a1eec7fe81b17b55377c5e61819 GIT binary patch literal 477 zcmV<30V4j1P)kpdTD5E4 zuBT|%6Xd!U?Smi&21}6qJ5D2+U^?A%XB|0(ro-=)hWIC%@0MuSOq3Xh@x*|t4@cnQA ze6g{e+CZl2jzN&Qol3xOHaT1J0O%6-dOc}G5W}K1%2ACUMhECtt2yAdJe)_qa2c%1 z+?DZ(hngqnfZuM5iRgqg2gvB6(M57IiKiDa{SJ@ix{B*!FkQ#`$TRk20pyEib+TYI zN9L9HlEE=&11OPE?jRl9iguG|6jzER_K#?40Mbx5z&-U`0OlnPpaC?%!U28&*v6Yk T{>sP$00000NkvXXu0mjfbBNCT literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..bb70ade7054e43c207ef3d11df2cf5eb6a73eb04 GIT binary patch literal 814 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V0o zPZ!6KiaBp*Id)%mkZ8N_u&G@~?esDY4_zJBR=L0G)i=IAx;S}%Qhlp>f83h(zv8xC zdv!_-BVJW)ik#JDo5Ngq@1@o(X1;s>W;~wSarlAXx$TNfpHm{+f+v3ewBXpw zScSz0H1-FwmYmjeQ{wv|uz0CN_v_UUxN-wUSQS_z)?ZI5*&r#sNR{EL{1xUo_SKEk z#n*p)_vow{pZfcw{0UpRLcWHEw(?&-f56lK*pHLREr}T+t!|{c= zn$`LyQ~qjcU%-)|5QbJm$LNOHU)=1Nias-mTK221IW+0{-Sj8rnsId}|8AXi-PN06 zYDP?NU;%O*#+uU9@Z*|}tz z{lu>H4LaU4bR5LL_Waj3p5q^x4ixTT zD3H--00$cmZZhMGBNwE?FKDT6(=B?IdgtujS%!=kw9Ms_i-jw`b8j?@oqy?steE4z&ZkW8~C#h7afSIr%DH znRB+7;s5WSfnlHf-mg|q)K_=hDsWeP0;jyV>xT1nEcGI7k1H4-Si~_{^ocX{J!Wk{ e=UV6=(AQ5|z{2_I_61-DVDNPHb6Mw<&;$T%Fl$!; literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/tacticool.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..1a49a398bc3464e3e58df9a8e769509efb14d0a8 GIT binary patch literal 871 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|T?9 zr;B4q#hkaZ9J7TTCED&EUD7UUezlj~o4199d9OxO_^Elvmt5KzofBt-Pi;5m{h4;}Z&^geekqyb+ziJJ zg%(_XDbo8U$#UMY*B+Nm99-8J?cc`WBj+kO?@q>}tJ^u}b>HCEds-u^WZ*Az{Dxp9 zdp2vC9H&U-ityFukuBs zD{fV{y<5!Z=Kj*?+vMwyxHm+xuKM-tv*o=xeGO&a$3DDc%i20CP*f`Pz=zZ94>AhR zo;_XI`lPb&M;!a-$s(qL%NH?e^l;u{nqzwIg7Ey_Z?Y|C1%9ebXDX00j%Zaqzx(`& z{WC58EQ-IL6(_FC7_zADn)@d+NB=p@ofZGuKPyW0wq0Z@k?23pczVvpxb>%t!jnZy z>w~=+)H1e4v6@%^`x%h8$MSbyTLs(l%bGr73%aY0{TC~}SjRGjR5PDN_#v#oa~*(K{AyIa7W2_$Mn( zp(T%!nP)za;(yU)Gdak=DWZEN$1NreW)mLgmnSzzF1n-d@XhYsK{k`*_xI~QMEf(v zW=d@nV2UVj=R6zm^kgtg&^z%JO-24p=Iej4&QgDQXw_wh=myUc*+S3EX%Aoa2j^_x zp1S`)!Tr3=Ebr~Ah2rMzb&z|)v2h3Ip5HSgX0P+le8ShQ;Gd+mUaqydoc+`PH{u&u z>#NJ_!{dzAi;H=SJ}**Q`<-1QMCsO(Eyr%^8_eL{U?Zb@Fw0tA_LR&Wo8sx$lMmVN z<(S$UP;7Re`NwVk>yMktYeH=~wJU`~xG&l^_*B$SWL^En{lof0ghKT>>km%Tm1|RV T{8!us<{So3S3j3^P610YDQ0`v)TNw5DN+fWo!Xvih|*R(T}{lA^=PM`i+2EYIq z00YnpAc~@L`YIYRe>Wl_M6YuIn7gh^;iaHtJXf)CVi97MN-hKo0OpS4)ZbZ_HS)-z zh6BOw08I0XoE(yrSC2BT-n}c2>~ovD+|L2@?!%Li4t5U7+8Z|V^Or(_O>QTwF0eZA z)qJo$Xyhy!)-{|?Y}PeId$B_ZJJwxTyf4%*czSzOHQx{Cp8;Uu*~5&yBd>;lv^jEd z9CMcB0pJi8MNvb*R0}cWP}4~VaH{o9z%K7j13K#mDtEn1SPnVT(37Qt0<>QE>Y%pmv&NFnCCdZlR>U(z7LeOYqvJ>K`rddkPxEPH~`FD*QL9AL9zX=Vs_ji#0uqH2o?a$Ez4T3(=;vR zkwXm!f;|D4M%NK_$fl@xAiO)b4h?Pw+;+bQ&|g2i7*hAJOJ_&Dof?3RpT?{yuqL3* zq1TU>5(L)Bp@uVwTE`Hkb;Sa}csHl8t?B1f)ogFhy#b){WHuq^#Myy>IdWkba$52L zunDs)TSIILG2~Fw$ON#f^+~{2&aYy+Z2Kzru#_sM%^SN1(Af9=)lC=^_0Rh%{`kC_ z4j`nI&E161k3mic<#-kIN&p(-bVPZQBx?P&EMgwtyfOgv=21(Mq`LZ_{{sfV02qLM Z>Ki$blTX7m=I;Oi002ovPDHLkV1iNcyjB1J literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/virology.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/virology.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/virology.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/virology.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/virology.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..db8cc9f8351468ebd4b4d1209d3dbd961b020d99 GIT binary patch literal 788 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V1B zPZ!6KiaBp*8D<0rinRTAa6hiIUSWsj(UYzMUehdY271raurRq0$W$iCC6u93eRi$3yR)PD1JY`SYG_!X2z#8 z7y|qzF#N5nudJB1?%40^zdbH*X=#c`ughngu_tQnB4eg`v9A|@)@D6EN8gF%*~;s$ zUz7yb+=_ivwwug$Q>bV&zo!aG+-e3Ou>NCz*a5qmsd#hC3-@HdB z-EJQZTig1vqGtl@52f@!`4`3CD=R2HdERxahNmg6Y17TLZ%-co?}%+(C?m{p%8+pZ zK59+^#`PnG$Z0rm}rS630L+!`!Pf+Qcy*Th>p-+3norl$Xebc*y zZWYS3KjY1s@ZeddPnV=u_8+$2EW3D*v{e2uxL#IXeRcAItp&cVHy$T7glUP-vzhy- zX1_zuYMc4pO&6vvGwe1#Qr^yaHsIqEO{Se!^aWz!k)>pHVPf7NWh^H68aokUBn&GN<~jZYH&o-O0JW20?URo|e{nK9Ye z@;7S)=cgi>rOHPX<~J|(kG9)CPvGB6r77Z0&ywyj|F}KXS!bzknyf8n_D)W*n=*!X u-81L@tlh*oWax8&t;ucLK6Ut31EN# literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/virology.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/virology.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..eaad0d46f230cf2294549b39fed8a7af88495608 GIT binary patch literal 852 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|PUg zr;B4q#hkaZ3^RfqWsdE4SoTOn>5Hh0%fjF&?lOUv395IEvQ9AH<=G(_x3SqTC_|ye zFKM%+$BRox9Tr4xvWQf?=EGX5IYZG={AB=_;r&)_{iefncd{3K=YIJAUEBBlzwiCG z<=a;;Gwm@;!_y4T3mGQIs-OSM*;Blj@&5PZjtm*q;rgfj#e@aJivsiNE(yCZMUM*k@KR4Qhfzl$s7Yp=l`Ga!FX-S}qIO zIwrqm*YE6+aQE1M|M>Ig$!n%2D{W%Z=;1rXB(ulf!8H8nDPMl?ld3U2dMyld-k0q* z;Pjs7KYwC<-Jd60=Y+d@GR(}d+~4!}`tJzeHILpLm%QYE`4)G8B1e*Gi63NZee8b!VdcCTx9{C?dl`Fjg|p7xhiiXz8Mt!3wdgDToMq}!@YzIdsiar- z96Lqd;HuVT3G?C>wd=B+xLUM%9?QDc?5-nn)7dh#Ous(4sU!GKTw!g#?u-Vd_3`_S zuTORepLI;i&WrJK`0%4%u?vso4?lAezc3cU-&JYcr4Lkq>7BzHrak zcGk@M!^_R;iF@~`ndv>8wZklQe$Z*zc`Y-ob>drpweOOc{fF(tJ@>cDg|StELOV5? z%+Gh3+>=+B*qJfe*zz~4*}PnbI+^HwGxHf%`#wu}d3hTDdiVBvD~{II3B_vX8TXWD z@h9ID+uSj)rF9O=;+(!0?-jP4sADM?X?tqHm|*G05YZ>h08WKy+z9;x`TfUca5g=z R@&aZP22WQ%mvv4FO#tbVa`XTI literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/warden.rsi/icon-flash.png b/Resources/Textures/Clothing/Head/Envirohelms/warden.rsi/icon-flash.png new file mode 100644 index 0000000000000000000000000000000000000000..7510f6b5c01a7cf85f58b4379246f68418627679 GIT binary patch literal 451 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 P00000NkvXXu0mjf&7P`t literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/white.rsi/icon.png b/Resources/Textures/Clothing/Head/Envirohelms/white.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3c2f355d66ffa3216b252aaf1128227e1e9aac88 GIT binary patch literal 418 zcmV;T0bTxyP)jhFn#HkD>(;?JCk6im&wfuYHtpg|8brA7_I~ibpFHl4?9w000XP5$-~cKC z#Br>r*V9t2d)cKZigp?YfO!~(^l_`{?B>+u#utx-+)|ng!2*D}@B2lZWm&0?8hSVo z>;Gc}bele6ZHy#p95r7T{;&iSFq&&Drg!GsXay@b%Wfj%Iw zl&@l53BW>#W1-(3l!?_skra|`UKs$AlcnK=YU_Xg4>$k^-~hI%Px?fb2 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/white.rsi/meta.json b/Resources/Textures/Clothing/Head/Envirohelms/white.rsi/meta.json new file mode 100644 index 00000000000..9f7af4a28db --- /dev/null +++ b/Resources/Textures/Clothing/Head/Envirohelms/white.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-flash" + }, + { + "name": "off-equipped-HELMET", + "directions": 4 + }, + { + "name": "on-equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Head/Envirohelms/white.rsi/off-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/white.rsi/off-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..e73142d46f82fe57f46ff40b8fc37d0baa7a7e10 GIT binary patch literal 779 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V1u zPZ!6KiaBp*ZOo1e6gg(^{hy_M&rWCcc8A@pO}Z8(1v##&&eI*Xu^F>5sRpauWr}n? znxe&9QZUhBJI6MQpW+f7U;I~m-Tkt14~x~E==aS<=ll?}r=J?tl}@j?q_gA1oY$2d2dutU-MyMy zm%HHiGWKWMO|RHX54^kf?(g)&zYBJjHr_fe^=Z-l_q#3TpO=54Si$M=mA##LPwhXx zvx{v@`p;cD@%2Wm!rko=Iu~}neqb8+@c7;GH&e<2bi|rL20eYl6d^n7sATLs<;yQc z)Xmi`Dk>i+SvMSNd7yjX=l0_796JuLpK#*q#f+928=n5WpZ-KXzV1`(wc3wD4qUnK zb07bDV-=e&w~J9eYHe6!?ztH%o!R9lRe$|kHl0D|Lf-c2Q@vQXH%I4OF^fsDli?HG z#2EiX@_+P~qrU|O1UF?@%G$9x>L2{F;juk;@}KQDLM1>!BO}a!m*Ny_@Z-_VY7DdN z%$>Md@A2bXJ0+Djaq?-rslVwyNhPn>P4)8(zKuH$FTWa`-X(Oa@Qm|oHeQbpA57Ga z@+>v=yR@^>V*{W4l3#0Pol_~$zZ0zYZHL5yr9mevKiQO&#VKqHowwH2@rBpr8FSaz zUA&vO&-qo_44$rjF6*2UngD)~XwCot literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Head/Envirohelms/white.rsi/on-equipped-HELMET.png b/Resources/Textures/Clothing/Head/Envirohelms/white.rsi/on-equipped-HELMET.png new file mode 100644 index 0000000000000000000000000000000000000000..78174218818f4b6636fcfb5a1e8b63449bd4adae GIT binary patch literal 830 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V0s zPZ!6KiaBp*8D<0rinRUj2tF>f@Vu{9N!Qkd?M|IeZ0&tglP+z2kmg}Ncg~W9Z&k{8 zeLGt9#Eeo-K1yNQn4+~Jn~Sqgw)bbg&BM@w9oO%$7rhHVRr{Rp{hi;>_ndD1f2Xae zi6NkGGQ-xW+&k89&OX{YJzGPpTT|tT&F5(D15a+|h}rue+p%@7k#h1mbw#GnB3!JK z%Xdc}IeA%1!oT3u`w+(6(z_!fV;K3Ce|&k2{mK0&6GgsO-R)^U_`vN=(^Q6#{U3KV zrfZ)stgn@fx4xgI{Jb{2G30)RiBoCBQDK{7M?Y|v8CiQQzwGyOu2zHR#hG@+pVj;( z)a~#8d(Q6LweM$6a4j&I&1^qDQxt(&PH-pZT4U znCQB}ap9MZEgD^CWO}`h*~umqw!iefB%-?IvBd6YrCAdmJj?XylJv@+W2Y$YwElwl znak00%Gz>t^UqcZ?GRh1DOerDbHPU~*{0IW`^azB6FSnK zmaE(O&m3c2cXG$oX?9B|TiZycxo@c9x_UlT__q!7k9V7&&8*bht2OhENaO5u*Q)pY z0xE*JMQZ8w4KglkIzBI&Z`|;H8uN^${?T^(Rgg3}uIU;~Be748q*?DJ-5Zzopr00FXd ASO5S3 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/atmos.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/atmos.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..43ddf4a5781620c0ddf7f90e22342389dbb502d9 GIT binary patch literal 1707 zcmV;c22}ZpP)x|M@Im(IXVKM&CwA6ZH{|VfYJ#B zwPpSYJeOx#32^)^1i9^N3B{oDWnlDuH$#$uJpF^frj5XsF2EZrA{Z;+b_H0vh~Uzk zy%327kjC%XUo}SRqzp6WzBEK2-+&MNP%_v4d=cpG)gqL37IYcwd7q64$pjcX8RQ-v z)&#`anOLJ0ywA=9zuiFPP(HdJW5cZzK|OEJ{^96SbI+^4zJtK>xW1-M92L6Gg8$9} z@L@fV!QT*|5)<~r4}jO-3@=pU@$gptmG`0NyVi*i@_T0#|L)l1RPV3)RNz$TI%mg! zM*&Kz=XIm5oJQAN5tTR0aEltR5FE}M@}nG%*SBp2*#j%3tA1Ma7)@w+oF9Jiy&5f#eBBRuOi)ta{@A&&>Ap9D_&$+LM{bI!H zjZZ~F@IIVK&fib~Hk^w~UDRuQ4E&uIu1WAYs~XbXyM{|&$I5yCx^~x~p#Zhp8HXVE zVeYs6G8cDN>-9d2*7*Vlj;!S;`iFpTzf$!-tLgT50Z%_?xUtRf*Z!^%oISx)lfa9I zs@K|p3?Lmq&o|IQG2Yg+pd15--sPPE$Z!QW~}D?apr{0Jot% zdke<#s6nvT!`Xj-W})RN(;O` zSN=xjcY>22AbW5eS@;BTKY&|eE4UL2Fn!FN0Og)pO(;gOy!?&1&&CyX;s4_{aO1}+ z|JEmf2e!EJClY`UC9!~nVt`zWadLkvMX2Rp4=((P1ejfT71zBScI?=J3l}cvvhqS% z{h!cvIaNnUz0|b|RN>~`R~cNKr7J^0Bw$r z0BCb`1VEdkBY?|~Br@Dg)Tfnb#vVHX-kl2MEP(Ie|F;mrFK3gLUl8ciqIdEs#06C2 zOWX4J^ke0ZZ#U;~1W$vr7DD*sBwB2tZKdsb_{!F#B3O+8W`Ml(O7&!xi02A48w^bX z&9P$g5lS=psGK$oRE!ANnEZLxYk*EoId)Qqt)&N6V&dmn zuK|)GvkHR#oPA|z4S-ucSN60AXnOBQo z%`lCpZI*C54+yuup0Cg2ZUCJi z*DbiI6QRoUyY%qCrCyK@AX_j$P?DzVrSB$%lK_&r>5`SzYRDq&nwIN40{{bY5_8@UCdIbOg002ovPDHLkV1mVg BLofgU literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/atmos.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/atmos.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..08a25d0bce619e7d7c03a2aec2a32624f1d64b1c GIT binary patch literal 508 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 Z@D8DJ#8>XYH#h(Q002ovPDHLkV1fvu;2Zz| literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/captain.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/captain.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/captain.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/cargo.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/cargo.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..d31317d5e5ed921a13226ef27f28401023ccf5da GIT binary patch literal 1858 zcmV-I2fg@-P)z$lXlQ6aAP_+R z>HXOL;Yp-YDfIO8q{nWKI~KyW0MhyG?c4Nqc>1;U-P(8b|5Dc9JD}_NAp$$UsX2m? zSUgj3D~hI2gBAg6I&=~5vz`+XYzc7WqevR6^CTcfe?F*xrQ-rIkoAxL823yBwrAzy z|NW<<2&}FK62`R>pQA$8yJeq0uK*-(eIK#HPknPJPzv>}*TR zbA^DjN;W@ZjEIoBGn4t{=re+&)Z=q}J|7kpfDN$m`C#=u{r0oK=j<4e4-9VBb~p{1 zGl2nKvz*hQ*v;qcU{L`$ovFW^a#4Q1jxY9{Q_MG=vXkuWaHxyKwH@Ia8F&moGbR(~$s`m6f=5 z?HVFAPZ54`IfjRa&3hbnyzeL2zHqj*w3xpvbIb4O30VpD_huGF?M69$P!=P8B4{ke z7~uHkMGTGvYanz2XOgKYW;S+78L@9p;Gt2ov196f623z5*9R^kg?(smZ->kX?0o&i z53cxKjoI1XPpBp6B*xH@5oP8#fXmV%f&7d?obP4vE8Tvax zp{n^SH9ZW#lht1l`CW~Gs@D$y+TY@aQ4tgq(;N2!)#E1rv~oqaa1{g4xG(2cv0{Mc zuixz%zbhA*{pFC30j5zZ22{QMbx~YkqJAxE|L&Q?Upv!)366?2KVbLa zo}3|g?4xb)8=616Y#?rw4Y_L5wg5ZULkF8xbrm>!d~c3XEWh_Ct?TvOgy%a#R{klq z5`Q%FY+JCdx&kZIB;bbMmH=#yHvfd31m&W`nIPesV)UkGmaZ3(d9%})@CM9|#a zj94tD%i{4k`ntOje&b_(kC6Lv&nu8$AY8&Bwn-Vm-3q(>wgl+z?yhii&nx)J|6HC6 zc!{zAC~=epK#8L)07@KX0o*(!$Ki#X`gn;#>~SQ(PhYgAxfvq+flDof@XOw0G#X8F zyX=E+hrB-*VCP4xcOu!_t9NIaq!6CIILDA;2_by46HQx)UTxb>Wh>HlMQ}6%xcAQ8 zSZ+&OkIX1U(|g~k{|Y+{wF7qEnvfx28Ev8nO)Fs=j$?qNrf?%-Ppm&CtF5?uo1>iRH*3bw>&;Oxw1BR|fmExJt(Cl1+Vt|Js?6@9@s`HXWv32FL z%$B)LI2r+Lcy0m$a&iTh1ePQUC!Hsp#ekYNATfw_Z3h4qb$L2mkA-su{DSy8T|iE# zmu>zOqk|{3jlsu*unWgAKvHC^u;vOB3vx6j;7mZ7Cz^G4qjDK^m+ zox+s>%n%6}hmrsMo0}`(H-w8~$g7a76{oN*0Mkx%s;UZr3^q(qWb_Rg=Ym1ykHuIC ziXD^4;mxpcR{hiI3T$RI%hzQ0KOQf$(aRx4)en! z^zbRhZasmQsj>MWFCtX4T-i`qZh~V0GI@B)6?jN_rw9KBOw{kjSZZ9^=JV%pHu!0r zFy~?)Ple~fRNyTnYU&VXEGS?Kb|-*Zdp8Dxc+il^6PSAZ2uq2^2WOQVy30*)B>>f* zsDBx?Mhr+ieu83SMe0{b3}9}+RNybT8HKK0z%!ol>k>1 zv7E`v_2!q5{_{49G82%CoN^q_e1R*b7|!6yu5iW>|B@rDuqH})0apT8&*TZ_1)Mo^ wMwj*N-w!|W{%0q39>AVGd(2z~!fj5%fAVUiUxZuxjl#K4(U9$@= z(iXo%S3iWVL5FU3(01tPpT*J=B}h@E5PP0HOlyRfn&6VNB)RwS?(f}4?wiFwD+Y)G zVt~K^rfItArOc0b-|nGaug^pZAd9ouq!?#DD1hv6_wqF@QLYQXBmEYWDA#3~k5I|E;Lbh5;?tU6615{3`uKf4yr;lF?(^osK zhJOUqa5zM>*~D(@>#TE|-#NyaUtQLMEEx=-SS(^N7~tjp8Y_!)qNtRv>qsV(c({9v z27v9)t*=4TMmyAw#Yo0mPfR`zABsofcTa=@!1>Pmz#Efyf}D`j7YV>Li-!&ng<^mh dAO?s5J^|g2tIRae$~OQ2002ovPDHLkV1jm_(?b9N literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/cargo.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/cargo.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/cargo.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/ce.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/ce.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..d71154821f09c39d28b585b9fa3546fc99d6e03e GIT binary patch literal 1819 zcmV+$2juvPP)vpu%xe z3Xs~5Y++u!5h0zrlmyuGCbC8y@ZRSpY}?Kenx>h3?O7XLy};(T^$hU>YIyylz`Wal za0Cbq0of=poB;-ZLAK|6bs;WP1JQsurRBtQ}bf!c) zzKH!<%0&2q2{S12s9crbn*hD6@o7Oon3$Nr6KnIuU;Q+}dm|IiKaV;eMR543*9p`K zU=2qt`}K)*`!P{YoutBlV*#kL1x)b`tbyl5*67Fxo`1>2(GTrhnj3RYJcmEwp9nMX zb1W^mLQDl!{u>IAN;{RF1tLuCOg%6@KAvklfzo7Lq=zLY!No|OWbdJL6!NEvJgdWB zQ~+9ZXxO*z2G-S!xpsLmaCLHW%5#*y{GTW%($*7fx;!J^*Ik{j$1kTL4ShKU5Ec2U zlsbP=0WSU{=G6cVsjUdbPqJZE1AKJl3ZDY@Q85ZAy@+a}h3RR82G~MG@6r3EU`BrG zWjXB6iVLkjTnG*Rq5=>xEiQ$iMNl>#Ux+j}zy*4b8(sotdfW z3U2=N8OC!)+$$#0T4l}@4w z7J@<${8}Tx?zH(FBr-B8HfHeSXu04gzp?;BLqkgWe#38mB>|Q%wAlGl+{YSh=W1Zi zfa#PYP`LTmuzBCauNE#2$a3{MJqytKzW5GjJkAar-y+v&d6oI}+`6s)e-U!?Um6Df z_*vxBKRow70Mvx__&o_gl@hT85lRDOS{f&x_fv#I{_8=9-;)5xyI;nIkb#DV26S|E z@Vu^WI(9bmG9x4oBC=eT`32%Q-YxFw2!1_&aTJ#D#_vgh=H}**PMKc_lK-ak3;2nu z0H|G{IWaDRB4oG> z+17~Z&eI}L8v(N7S`oN_`suL(<%HzsaS2aBxXTq9Pf&{zYiA>XT?em%yXhl;7sLuI zL*R%L2ley;#(nh)w}GNY$XmVWykp}^@AWCK0Td$R#*|ora$*DH-aC;?(oR6O9d1{v z#(S7tyV(9BGDwHwc33Zrxnc!+&iE4-R17J`QNKXkQ=9@hNaKzzyu2xX zvFjiN7vsjAPJt6I)Yfk)+2L6L%d$e--?Fmy0vl%91lTUna;*hnBh1UWt7?Z8_(@RO zAzk7v!!6i&U?aaL+d3!J>`-%$?{GwD$S-=s!@~%N!y##HE6F#2v^lgnf=}iqP5xiuvhh z1Es_!l=MX?IgsRTY3ZvkCwN={n*z~)OAAaWNq}<21l-7mXjESWEdj_+pXmhV*` z2Bd2~GoT-vpgjVlE1G=rB*^}q$Tn^(&le%$irj8ZvqJ~k0#J|w1tqu*2r4+j4R@e~ z+ZJ7D3E=k06DTg=c=yMS?|ut{#D&mq9tRLz{$egxfuI|c@IRb!ArmC1-rN8H002ov JPDHLkV1jF7PFnx~ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/ce.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/ce.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..759670ef07ddeb395fcaa73567e5ba0faf5066a1 GIT binary patch literal 516 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 T=MZa&00000NkvXXu0mjfKd96F literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/chef.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/chef.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/chef.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/chemist.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/chemist.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..b9c4c0327e540ee6114156543e049242f82245cb GIT binary patch literal 1686 zcmV;H25I?;P)E<@ zvNTHR;$VTq7VU<&*gH|Xf&9glJ`i8z;@s|?$Z&$mjI1t z;L{Yc#aMV6ci);UUwe{6aE_o;Bi-Lm+9fBl6+~h(~%0Rkjjg4 zT*ug~e^aIngYh_tzd^nC;{7}fyPxRVw|bxbsOsAv+}Z;$uIA_G3EiohqyF@B@RsOD zQSo8mzDi}@#dARcVfj7G4>T+%Jl7s$-!N_z0Mpu}mpuM<@Eff^&Uic@ z6mV{;4VVT|*^F`z{-YezAamn6Ke$l7rCBjdWjB5|yosVadoV zm7nz7BxnUfXJ==!RkPyv+kZqaP>e$PBtgQ$(a{lYZf^D~yS=?lJ3BjlQFeECwcn{F z0DQsa<)w5yi%Ft-y*_e1N-Qlc^*QtTeE%C|==Qj-3oQXS(5ThY(h)6t{(0e&gCP(? z^cN?;Q4c^&ZezS1^rEw6FEEJ>KefogOyKb+#ZWYbkq@A!&gjLMe1PPC(h7~=Xb5yf z7wohKMoAy=I-Vh5qqYB7kv@p|N$}fBuh4;(00?&W_Vy?%$WkC{47wo7qXzh!%_h-u zh2+kZHv~=)a--Y;T027cUSD6Q!^6W7qqsb(9U+w;5ogn@u#8NzS-DMS!tYA}ycEO? z5H=OX@t=+J5UL2n{F7k9?@NH=<72wIx}w$9Rrwp>c$}{Rd|h3bgaN#hc`eW5kK;Gt z^(Dam{(i#bT3CpZ|BE~q2oo~_Xv#4YfTkQX0cgrG6TsvlJ`N9Z>Juh{*rO#t>p8jD z4B`F2yB31^d2iBj92eVVE5B0s=K`oa&fG4VBZ@12{DW8xb3#()c|oS0GB@ zTwricQBxa13%&)wHgxu5k?gIaJRV1eM%&vA9nKYq12_!fgHu^~FNq>cgClc4(CPtr zv6_H@lcC{UfxCd3MDgHjy=S!qIQgMM-+w5|ZE4|l<<=C=BPQhvLQh!1Bw{EpathATIFH7y~mwO4xQ1l@ombU76Bi`eQHK-yFRqS0DXPp1>%N2aS(7rSjY=F5B4r?0c0K?79*n7t-n_2bAbJ% zMJAczK%gFgR2Ae2^t`{nX(uemX<5tyDfof_Q?QW$h`lW@SLbs8dScfwH^E2%sGrQ| z$?|+aMq}|279RdxqU3qc2Ve-ims6vDFEkPWb1$aC=KTuMeUiC@cQFK{9rz<`G0jml z_5mCXVh#p*xm4_AV+n0BQ5JOBUy07*qoM6N<$f-H#`m;e9( literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/chemist.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/chemist.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..8e0dad6a3b9063d7d1697de45bf5faa14fc994db GIT binary patch literal 490 zcmVrpXJ4 z;`zdPnal^jIVGtsNC7;wSkadoqI>VS{;MsE=R6|*%6#z4N(x}UB5Gd$j19Zzz3{R`XC)NYgZ) zPm-h>0JOi;=}^DlCw8MKiV)<-G7cXIOOl@1n56*VPlrEYK8E5bC{9S>s|4VZkCzTm gg%p4SPyh=A8Q2U2*!4z%Q5cBm@H>`&=5RD*_!HR4wUK@J=TREkTL7N_qQmwzKlrgc zg7;PVr37H)<41UAsvc=Q%&U{ws)q>vhOyr4M4d6{q6i{CVfgVI#y2#Cf+T#|YjD6{ zRsbR=ms|Kb06q82vdwEP`4u0SKU9zElS{fGLNWgK$L6cp-i}^5)Z&=GtN^C+0CN*{ z*|OkwI{@86rA7MB9D&_bD*Frw&p1Uf{xzX*%pQmQB?Tb$Nl|K))HJO3e&L%7Y!c$2 zNeF&2}{AR7g&e-bY!#y@vcV-s$Fe+FK@^uZxsL)_UPE;{ieR zfK_V*2(R(zz~^@1ULVN@W zVe7e|?KxExifKIy4ydVQ!f%pmJfeU^=gwCFY=j^MLY&_}nL!(T;Kz=x;^7DKKIi-;1t3y> zezma?g1Qb6&94{9s&4KSCxu<&NyL!lKZZJgQ2~g27+s5ReHpm~sNPla8EnUi2$kY5 z`wCDaOZdBOE2pi8xF0-^#~L1&=|a+28FJj?Q;o-?A(l-#T=q_j zUrGSBCSRei5i#};ZamAc6zhZGD|B)L;KeOhMeveeN`RTsQP4vN(A#?#=I7@D?q7%G zXc9?d=DqtNRI^74MgHTcaWFMAMy*_ziiOG*8JW^go|+>OHi2A zb!Nz5g@oV<8Se)I+0GNTbse@f(^gp#lsuq|LQWrQW>g5}?}|`FW)~ux=AY!ovSF~O zjE6ABj|^r5A`z@-NfE#!RTQOOCR^mgaY_PAPt-x5^~w1esvZ8yEZ_XLC0ph-L>qWc z!1PTm*RFf=?MVwj(VxipLDmCUz|vAW_-KczA6_MO1qgl^(EVjGUGSQ1V2_!vJg`|4LkKVNz z|7pS@kP+(>D2gxx_f*;gkaHT>ySC;4+G2`N_Apx|R|07PreaOm2u+)i8<4aFp;x1l z9-!H{+AMy`A6m1;4@yDl6`+P&Py{092@-tLp?rZJI`Mcb6lPnFR5mA}$=U>QK~y?V zkp3(##^?TKHl$cYHf$L%C)D*KF2LKK(@Z;fP6F|A&m()zTXxFYQC0xn`3`I8<3t2n z{3vwYWnEJp3Qc<m^>MRhvBscaEJp?C|^JYC;KWa#N?-5-12l2#F0&u zD3>oF2}c5mF?qNS(A(P$GY>~06vDExG4K-l?c0z{CgFoGx?z4E$?5MNAzwfh{{xJO V%3=EST7>`r002ovPDHLkV1fleQQ-gp literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/clown.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/clown.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..f28976a3dafd20aa4d7f9ce0f7941c9a3864beb2 GIT binary patch literal 509 zcmVAPsN@;H9VdU$N`}D02m9HdQZex-1x30m}ogr+L3=x>69r0Bu}(*>IuD+j<0I zz}wVMx=o3lkWRr}Q-!U)r4POwmYc>Kl)#mpP7J`Sjl6C>6}I!o1HZCHM1gmKJ$0^E z>M5aJ5CZ66@N#X0H6P;XK%W#f{8tHeod|3!04(Tv4)UjBIvEoJppU9;+g_fxze<5+ z+c1}pkS6soy;Q&5&%$zQyv@B4rsr&|0|}e?CVa+~hL*|9I*k~>kyd0YZ?*2BSY3qm zlNY}unu2N;S};WI3ez4sRy?PGg0I3Ot2-4HtcxL7m~X@2XMUT&RF(qj541E+1matO zV8UI;@g3%*#t1JU|9z=x;kX|IM1yxe`J=Z1or^w}4X!7MSO6-HqkyKdycRe}pZE2r z=&yNTHZBeTnaP+1sS>om_d}8ZBmfD(zXNy&AwGmgQ5>yA00000NkvXXu0mjfp8wjD literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/clown.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/clown.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/clown.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/cmo.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/cmo.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..4e8be768c7d973417a46ac4cc40e073fcfcf770b GIT binary patch literal 1854 zcmV-E2f_G>P)d4+8QZH6VMP?Q#66ttZis8kV>-qk_6H; zQVY7h-)zo$vugIv?Cw?B{b0F!=iWQtIp55^b7tl&MV2Ec0J0o80g&a$34km|P5@*% zo=5>spFSN;ENf_J@R-!4CBU&`$D+l>#rF}4K{GQmXliOQGQ_oJt$N1Y$Ny#nP$ z%ajNox zd~a*>YXw51qoXR=;gHzf-Hn=>8dXkmmOtqGkWTdW_G0hey)mH?`v3<5SJXL0IdbHP zcAZ)R@LO=})-ClTC_>`(Oro-~GR`UD^T;y3@4T)HEdeCZV9+67V}iktlxGs;CohkT zLqrS?$rM1ML>(ASh9u%+w`2FSi;-!_*WEtKB%bR)O8_gx#7yNFYAf>8xx9-+`@k3u z4V_b&*xiE z&H$*hvlE#H`GdjO^jlV@2q`mx)`}31wY9YioE4*_JX0$|c76&jPLrPv!eufOen$eZ zQW6VDXjff&gzcWRijc_vFqrT=65!gkYq)dg4%V$(r~VW2&dD`GuA9D(i}4FDgRh72 zoA5dk;P~<59+PY7LMHj2xKSY8$O(WfM@|4_IdTFZ%aIenS~O1T~`SR2RnX*-yiD*ZaYuVSvt;E zr}L6TF}}Q7+3FNpJ>d7gUci=s@TkDsWvtODC-1uS~T%LG_sw!99D)6$s67Nh-6e!#~f}!E58=$W#>i1Q&zA zJ8!MG{tsfu>Shc$tWUcKoC?>(7awQCo#5iMw2^!cwb+pN|v z_SNww$MqS7!d#Y?;6t2F%oWHago}9!l9OPXoZ(o2*49=JgAn_YI9ot^1H)rCB0;f3 zw&ckx?>%i}NX&bj)~D42=%9!|uouX@z-_R_B{xA@Kcl(A0+plt=WRS!vi>`^g5*s@I*+5+_Ldfmf`5&v_a-jq01up!P_Ge0(j-8S8Nj6Q;#6?)6P zO8LhD41z+T5u7!6Hl-CI<_WO-N2Vj_gS%jUU|Ak>6Z|Qq=NSngWAWnz(-_1^0FJ$> z?8&DKi~?l{G|f>oeg$OwrvW5yYio<@jK8UXT;j0Z4igv)Akm=R05?Ps=k56du73mU sd-80@?kEP)6Xzoy4Jt z9h7u(aBy%j!BILnB_KFElwt@(SCJrv4yEl93SElWMeyvqa%r*4r8KzYTXOf_Bj4}- zufRVm0*C-2fWQEnrV&vTXX2jcL8Vez3KgJUuajP{N6k>NSPX{4A#EcR=Cj#sAP8=N zYPCwz=`U3FjD2>&Ll(ho^5iQx)3(?0&(#;s!7bgW#y!sobb{ zFk{|MUBR;Cf*}DZ7K@8t0#vivq+e0G2L0KCTy6xD8s}=Y8qLeH9ORe50LtYu*!JWk zped6e2sH1yZa4sFn#p7!pU>02Wmz2YnF( oEx|m`?Lq;NMTvK*u82m+9jwZaUfbGmLe>uAy^O+y4hOVK(}mvw9=7q9Pwuzn`#_u zI?wrhXFtbLzjNkCmzf8KneUu$&hwtDcsCh`^N(&Ije^?cxx%xtv6U!*p)RCf`B6fD*qY0p2@N z9k~>FSXPn&GAPbQ0i1vK#GXj^C(}t2;Yz0?f=Z(0!6kV_>lfA(M0p{;%&!R2`<=E( zyW4Ate_H`i`IX#Kns~E;%Fhf@-LZN}_+8thbhw{r^yDFG_WU8=9lLgy<}S9-#Y;EE z|0pRUpz_my71G4%hA0mpTYv4lZ+J19K5_a<$&de85n)>a(DJDK@>Gz{JW@_ykx|iR z@eRezMj>CmC*H4p_XZ^cXn9l~5I0#(kQ?q`XMm48YcIbzmhw=BE4j}HIUGFu>a+{b^Iuo0nS%md)nY$8wh2- zBEO|EV0kt`J)$58G9X%fY)N>4r#_nR6RlKGRzNd;jKZTiEL^g{{15~@aJl?h*Z6grR@Yc4`YT06P~lfv2*Cq7 zoF#N}^ceL!|1}cDv+Rd49*`=?N|qVFF(Y9>4uqCBcz{(X2>=f`-)pE|+e>K&cL{vg zHP*@B_#PV>(=Jm<0A7Z|?ahM>KL-{9a6d{Fc+mwev^)czzyqNwzt(1mM`9j)gAKrDMQbVja@vbkNZOALZ>eOkW9x zDE!YVeJ||t3{FzJVwqYV07K?-!i1$RmdfRFN^(%TfQ`^x;7{uQbdA3_PrEE70X{0V z(|}lapNf;`66pbvPc%)b!aHJ5(zg}A$S3kDm8s|f?P2-Q~Hoh{s%H5 zluRfIu=v}8{FEFh-H_+KF-fTg^8@+&Y;n_7VOfCc;|>`CLgme5EB8Y3!|8Z$`l>hS z5g{`_W*=}eKg7UvsKakb02FF&br7-v{LIEl9H*p;5X-+Aboea^a6!y)ZDO892+AA- zXy-iFA(_Vc9x+X-&d1yF)2iWh90`iY&v6ON$X59+2_QpDZm)7)val|+6~mP%e|8q2 z3`bS~%5Y=_pbSS=0LpM^3GnzEPPs1s<%8jr9fhkP5qp#b`1$fvk!OeQ$=}#`?6eTf z&pT9{9DUugkB)Twklf7>fXcr#5|*1F?7VmbgeY;kg{fNyNTuvCix4(2mQf!QXxRd2LgE>C$3K=>IE;HI^T!w7tEPvCI>ElLNBy9ovt zivgQlq#l^DEWpT*ej0op%Kj}rB{B?sbl{e8CV1ON&7Sl{1#u^VZ>QjV;-?pl?eK>+ z!nPW_wACtPKr2O)d>+N3UfmM(gwFTwcB9^rlNDA^?3=p(=e9gdQ)&h5uw`N>txHf zQD{YP1Wp8)4QyV&;GWtrEvrCF08D+T_-+9PM4dGNpd|oTem97as4d!EfTti#fgmrb z&xie+=DGNx1C)}>5oVY#N|gMsQ>@~ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/commander.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/commander.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c8f010a368b6d77f20935bfa76142c05438f80e1 GIT binary patch literal 563 zcmV-30?hr1P)K@i42!x4pOz(nH%F@i6|Dy>=yf=w(ewXn1h ztju2^Xdwu~Sy;x>B58y`I<-!th%fL&y>LM#KEQBO?vrNP*LX6AX+F3O^NTMlzK_bRvR@%!3tg zAL?+jq#VFwVv13bEcEjD{*f2u4&Sj_DQ=pdt3>(!sf3gYQUFceKBV|JY1CsT+J))m zSM1C+;OXi`#7POVMU<7Hd|8tM*xuR~QZJqrpeC}B}iXFS~NJ`&b}(3pV6+%3S^IU+@-U%d4^=R z3RGT$slaR+j!YV$b27~A?f@y^3kHNw3Q*qdu2!2qV5fj}{$xCE*QTomu%hst@*BRF zFQIMeb8M|&DaUbN8vwKaQ@iaA0T&17V0Ssx1zXWO+6R?_yg`|HRR=KAH*~Hn2g8~R zjSVArYzUYydDRE7Tbz&aQ~P^ABrbpp-~#+RfOqO&*Nod7rtAO!002ovPDHLkV1lS0 B_Ot*1 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/commander.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/commander.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/commander.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/coroner.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/coroner.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..c48495a6d50f3799125ba94ca5a46b2b965a80d5 GIT binary patch literal 1801 zcmV+k2ln`hP)K84cn zv|R5u-tTsjZZdlW3gvN#K>lP^mAZeZ z?h)Bqw?lpZe&`!@otvAp<~I`HhqFI9hZ_$2_kT`Ks>ZU>yoV6@d~$rid2ss!k%`cM z>~p6((|J?*8YIj;}^%JW>bw{p7pK- zo})(~lwKYNc+Z|a`xQUt8Gs__K;!Y;mOrlmnB3UgeII||6VVD-nNz0*W!J9V>K?zt zWCW|g|Mkhz7P;N>BLjZMRxh;QQ0eU~`mCZGGNxHpTy54=Ytm&mUoP+iIR2hIq zqw)OhvAz@j?^@d$rIKJvVDy#Jw;ubPnxmPgR@Cj3jULHVr&xPEy;p4MkDJ$1Q zj`@|aFm+zmxcqlu{+a(vlGqM-*SSjSby1=O8;XYOjb}ad=Qc1FfG-AN@9}{}Yd(B~ zy-)64v@%2uUGR4@?=4#M;Tyc%_~MNYv4F7vtN>hLY>e2`Sc>3_qn!JLxPW(q2YUhv zP2T|JaK&w5EC9w8c7^Z);bEZ%TsKoWBt7=B{`FxlXWO~$?V)!tOGpGSw)rp1MW z$w?wcT>M4?aCb$V{OlxG0jYoH1;Hx7%6W)XggE()1jx?+A^rXRQd?Uq!^6XV8LvZU zzH>j~Kj*WkfcLeuw5ac?RBBoNk&zMWcN+=N)6-KHA2_Qv| zk^oZVCTQXJ;KR8WjDR zAQ~^%F3Z+!b^e(EL*j)Nf(>VM3g1yD)GhtiYpSl1g~xTYzVf=?Xc9wtkfSVYFw_JL zm;yKg<6$VvP{(v<#`t|!0^r36OyXDyF+q^(2cdDF2=)Dd=4AzBp z#6hVktOUS|8TW^&A$(211Wn@cVZodM3_$`Gz@h0Kiy6a80G`0=rrzSs3#d?BQ6U|O z33O+YDklM*fZoRkV5A7gWTr3{fT<@mFPy{STn-fia^>yB2_{AGOb~Se&_PV6F@co@ zu;+OQ3D6&iGc2Y<=g_}XgxEr3h|Lo)J(&Hc-=3E8_0=-(m8Uz~W1j=C6t{J}t-hD9 zU#IGT#&h}e>lt;1$c1yK%Mf}V82pb2%OYa+G=0PcITqstXME-+!t!+Ux6K>28UlDR z++GAD^)Zi1gh^PotphrO>3RTyvz&l!>kueMNR}iaVk{P-@dUVBD{z)hys?JHbm;CV z)@4R&3kgPr>5BxNfCCA@R2jtNQGr5bi0PnDg1I0_UI1Y&0L%~DO?qB>tiF)I`mg5& zU=^@A2Ot7j0D7H!fVi_lmIE!IJ5v?P2MIg`vhx1`8()w_NgaC963nr(dbQKk)Krj_ zpsTCPnVMKoRuCjHN=G08=zlY798ekEZpGpjfsMzml=%Rd1DG#hi(t#37Lx~%7l5*j riIl{RL?YpGjmhZfsGqCAIt9VMlRL-OJa|ZL00000NkvXXu0mjfVtG|c literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/coroner.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/coroner.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..dc5dc934c591ed3403e2e90aabc5684de53ba99b GIT binary patch literal 549 zcmV+=0^0qFP)aM~Xsx$gJ$9ZCf6z(>n{;dp<3kKgxm zzxUpq9{yPxfCiues0MJmJyNY!`!#Pg8X=Xs(QyT^+D3?Zxl;Z!UJ?qbAeaF#xxvs& z%q?b12Lv5sTrC7M045(WnLvbQxy5Q#iP15Qs}U2xT{ePUI$X~xCIF|?1v67V$Uo)5K58d( zwA|QIVf^9t9`=vUy92wSc)#hP!+poC zpoY{ON-70GoIbD3r}UPNf{JOj9|xW8q&)cEa3eF|A6PX7(uen#!d nODgubs{lNt0cZdkfClgb$~)LQ6L)lR00000NkvXXu0mjf(K_Ua literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/coroner.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/coroner.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/coroner.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/engineering.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/engineering.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..2a8940060319e94063cb8322142bedd55ecc5521 GIT binary patch literal 1658 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/geneticist.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/geneticist.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/geneticist.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/hop.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/hop.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..6599aa9df8dec9d4ed410c55ca80c976548ad5aa GIT binary patch literal 1957 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 U3g;#6AOHXW07*qoM6N<$f|U8-egFUf literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/hop.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/hop.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/hop.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/hos.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/hos.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..51a9fdac333b1b89691bec4fd9cfea5aa4e8bdff GIT binary patch literal 1995 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 WsItM13U{Oc0000ayGPC~`kPz4F z_dB!u?_3eJ1=56@bZ&VRsoax5sCg2XLx(5dBB{aq8STymn`}@P15-2qahG3i-Ut z?ED~phB?8|*Ha)MZ5{qH>PGx)MgT*7K@1S^L012-AED;M-FeQd(O-s7Rs$>Nb48($ zpHAvTJU>65fr@_OGkfDQy~{MbN7(DI4e=OEEb7EeqXrWUTt#v*k(Uh z2vh!t3ZTMg1bJixBOs5c5L^aFV<;A@@zY5O?ZwqASJ2$DybqX}p2pT~+i>yXMR<);^Sk;oL~@emzLpcEh}z?5+N;4Zx2=ruXOmtEZ9e|I@zj+c--8i;!3Rjs)OCNubfS9+><) zzpahPprj&r$?r&j);)*dmz@@q50{`W>ANGlF$@io)tb$Gk>wrJPn0M{en2HJ6559Ij-R)^-# z-o&EV82SR1QxS|JApOm6u-@uMBa0)Mijc0$tM?*=*CNpQET3>|s51j%Q~LAEFmcOO zWvKK0%UB54WJlmpLfg<8y9IpEjd{b*I~IUtXmuz-<`_x3V~rTk6fRdgFHkOU)VIf$ zRHc~nzfN4DtxjPS0a+0Q(Yo8&epZWlUSJpA#iIai>C6nhiSvY!0KT3e;?cNW9hQWn zQFvaU94IWCGeL78XrmQPI)09E4j=)uZf>Sq?Yuy_p==V{OyO7nbrdZr>;B?D@G;ZY zKV!dcX;Trf+Cd7hpw0zm4rJunLdbjCDyxyBXSv%63P~AwcU0tf3NF*>ZF=4z1AlxKDpAcCT zfMsg#z}yfQi?2_fR0F}ol1)ub+6HgG4r|CXKp+sn?CdNa2egO)w29GailTlH;h_Z1 z#mwA8IYEcpgTd?+bPHDk+`E4tj~m?DF?eEV!zn!@Onv(C@;cOW0<_o|69n| ziZ4X~ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/intern.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/intern.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..4a7e1f31bd7c2ce1bc60f070b1c1a97d097ae20e GIT binary patch literal 533 zcmV+w0_y#VP){iTybx~AJuf-WJvaA8 z@y`kX0)PO(Ge9W6ZWyU~gp>hjbmu9S9z!z)aEc?l1S4z4XAdy;HdxL;7a^E=j}Y7d ztT+|B?y`qg%;pKg?nE@bh;Ng{3j{yFvH;_}g~Y)Yi`81o%_Vl$*!X&SXZgS{E`U@j zWwbK_AnPpF8qaP~M{1{!FoBvr@+*qM)dem9K@hNd(uR_bp*mMYp;SP%UdQfxWx`87 z^7D!dK+`nD<8kwCh{F9bB1hX}#cB19$VYx(0jQnSRv^aWVd)CED2{m|>Id6z%(EC9bgs;00MvjAOQFQ XS}C#vp?#CV00000NkvXXu0mjf-M;2g literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/intern.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/intern.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/intern.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/janitor.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/janitor.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..ad1c6cbbc1855036aa8a1c476ca56e36a375094a GIT binary patch literal 1644 zcmV-y29x=TP)96wqAa7OMa)1MRIFN?WHnCjK8k|GRog^JSW$QY^ot6!e| z*}V{<1hF7L>-5|oC1U_SLHXo z2zHMlec|I22m}IYpW6e>*rqatdwag9v7eN0G3!z z-*?BtL!*9qZv>IpIXH=Fer*w!I|7{_X})5K-_n>p@xd8w|J|+`6+L=e?8$CH^79>_ zfAC&+My!r{@N`8sQk6;I}jao^4u_9DezN zj7AyP12^!*&XvijH_gwfXcbBV@RgG&@+J=?0rtRjnO3irIR(j8zFhmWgI{?BXz%1m zzWL2v<`nGazb~)E?1Y6Iq1oZijgY>Sdi>AO{X<-+eycto&M;{$HlrHYY$^o5xC>U2u{=w+JH3krMz}j+_9< za^wU+mcx<&G8}F-CT}+~u}4V&1{~M!UaQ{+-fJNwzr365?CebRxAa3LC~H~(I$yZH z2xZ<);xgo7yi=5Gp=o!8kdDinXeLa^i;>9s5Q4BVJZ^+cLJ&B)2@!-+as@&Or$wOi zl22a4vs0$u7DG7vL(p`4mezo8pFfCIySC^(keVyt2FNMn6w;=bj&D(J$Fu-v|2T`o z!5~gQScUQ1SAmZXqTto^xdLv0oD`oify-YW#IMn~NTRs#?|`t?ER;q78=jn(FA@+| z?W)t)fqM;(#y_W$D6aft-g!bvfIaQq*xLZ?Kh-QQAZ3Jjwp;lVzK|+R3((ry>fs^eg;0$cb}~9EFja@p0EEdp>TatJz=9AN}GB&Qv)B!Dp{FO2c~(Q&9_Dt7-C qoJ9ZVevt>T^?|K=t^#2-C*eOW4luVi$fo-M0000JNRCt{2mA^~FKorNn1yQhWMa5th-8xh{MCoQFvy+fNz%g?M z7qQ~nIe&w6?b^_~2P}3dE=t8o2~x0yLgCCixe)sUE+xU`zL11_?@Qh%?=E*M_-82q z1)u<816Y>DHgj7u@lXE)j^kuf1rWul*t954`M40$0A3rc?;CjPbTJJfI${_GE=`B& z6-Yx!1C&mK+rtHNMw^dYZad7K85REAK;_pLLs9^?ZZn`3j;XjPy2xMiYEoU00$68x zTpimOos5Du`#e^!*I}Aw=<$6Ytxgs9_BZ#-N($idtBKvUVlc6zFcvKy)o{3q=W#Px zfW}KBbAE{6yYd(e1~Ym3dJ%sgcey`N00CjaVq#2FK&yV94>7d#P8cmduPccI++0^# z^xt1plzg{$)#RsuG?`4`c^=<*=&9>^n4>Y}ceb@SuZ#y!E|-Hk3mP|3~#!;!rJv1%z&WS_-=#ZhqCK?lGg6q0}e5n8|^YX+2 h(vSjB017|>`~dc~sSW1dPwxN#002ovPDHLkV1kLi(VPGP literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/janitor.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/janitor.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/janitor.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/librarian.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/librarian.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..16d3ec02c5f7b9e6d70464a18a0de91322aee0ff GIT binary patch literal 1996 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/medical.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/medical.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..933083422d936c6ec79f4793bdb52bec12cb44a3 GIT binary patch literal 547 zcmV+;0^I$HP)G3OQD+#2FoZBbJRYZ3t3}mnmG7|*R4SFi80uss1duUq z{d_(jn&KIlLi)`MIrUS%Mjh(A=Cx24gaG!^89J^%(MeJX=ih8Lc{gAlK%DJw@;cOa zNlZcjU%f7EC(~^85ypa1;LTzFd~rzacAM9sUQ|K=XeZiAtOJwDWFZgpApZT?BhmH? z0|XGnAl_(5rz(Y`2y|r+nfXAVTaCH zo9E5%Slm_F*^ssTa=EFH)}aU>0*C-2fIqab#q4Iy-pT*~002ovPDHLkV1ly??M46q literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/medical.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/medical.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/medical.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/mime.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/mime.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..37c4441170637800ebf0defe756232bb7a6a5b01 GIT binary patch literal 1764 zcmV@o z(=)5Ft7dvsW(%i!w&zzz<^9Q1_D%+mL^45@OWh2lP6D<`E3a>A}TvLI7n%N zaA;_V($mw!?~jbo$;pZQeR_H-pYJA$nFv;XATKYENC;3MD*q{z-rwJswyE-8DgX-0 z71tp_So!%g?d|PJ_lpGFFh4(^R`1-Quc80NLWD^E>gsA*U0tO=LyZ707!m2Bq9R&a zT2kh}RDh}CVoAOu`r7F2+q76xBJ-_Yz^z~R{=GD)K-~KsZn?2R(IS$cM7fofmGqnC z8KeQ+SLOey0O(J(wY9Qu2fMqeVs@5%qV>_zg@uLYbHQLxdIr2;&FiHfqDw4`apBdg zS5b`z=kYI#vf%;f`>5zA;qpjVR8+|Os{EIF04kc5l|`e%or(ts4ep2Mc>wyK&^*PT zm1S53iUyJV;6i1+;vT#LEJ%O<{+%#RsPg|*02GJ;?&#=9ru+N*&HfKBV4(E@cz{rx z#>dBLa&prApDr%qZ)$1^dk&R<@#2LR|4#+j*w_ejAL~ebkq4ajKV3wY!&4wUV%+UE z^K(SnDvAof(n83t2RH@H^HvWiC@7$vogF$nJPh*y6(|YN*Vji^2`fLZNO8pqu%V$r zt4t*U;P$-e$j;6-^U()6-${TUytty}QE>pCfNlsoRH5}U1S3F(z6kfTis3X+c~lmH z!v=689l1KS3nc;22eIzQv;&~>49vxtubmzPn4eplMbPEf@_?5wUt*CV-w1iJ5>LdE zUr7K=Lt|rOG&MC9mXBGWv9ZzdF~A9aEf4Vde5MP+C?1&N1-LnPKk#EL%FN8vD(lAW z2wk+g(_M8c32=OTOxxSrl$)CymX8(S?(Qx*4e;XwWMpKR`3DCF+GW}nz~yooOl&1& zqmYj)o)aR)d`HO2k7>dP^;n~JUcrJOS5tOd@MzX+Y&$&mZEbnR&bL4#?1n; zMp6Jua3lqw1V>T;N^m3v(D@TbYMqDz>mV9?lmvKAWc*QHZoY$GwGhldJUlG-2g=LK zjgB{O=#fHD*0uns{8NvIx>{Rlbaa#!7Z+tdc4Oi#1oM@K;*{7DL)5rc*!EP|_B;?U z9>pp=ZbesDmkc>!M|NRhLH-6fGE`h#Y{V)mbP>RTa{vJELZRZY3HHE7YHzn)o{|7n zRaJ8D4KeuO!-q6IJslP)e)jAcj;N56=;u z>;8TDy9i&8A5-(aduA)Z3ph6DBoO%Y`~6|OgC9Rqp1A&v^8;+FO(=N)3jRfWa4h9` zY>eiFM_d;V_!{C>sXU-0fJZ3*K@j=gzLlg1Qd|cQfat#po2G?_!p4A8V*tq0N=j(i z=aajz^YimEpCiQ>7~|mq7>59kN!nRXkV?Ei2Z2|sryD43$4FdoefeLeL zT!ja4>n|@aOIrX;(Xf@awrrJWTL4Twn0Mj&+yVgNaR9s^o*uxh4|@P^5Y=-6wgo_J z9;#!W1v$IDZd_g$SoPt<=~Fc zbfMh^I1~*7AV}e@TSoB9m$=LX;NtMS)eaqK3&3adOasKn?RFa~ix3@v1C_U)7l@`y zY6)PC$pbhSFf%hF^Ex^@$Vv3{^vJb-OG}G+RsqmGlkhLT$Lvr#YLLhP0000gP_4FN7#7D4j8#%VHU%AfO zX0Nx9>lCrDzCzIAT5S~c4MY*aLIqdIWd^g27KylAlYx+B@|%3~&u;X?KZgd;02)9U zz_x9cNF?s^>-8EMjfT%tfYE5gHk%C{h7k^j;dDCDGeY5dsZ>&ekOt^>yDXE*0FLo^ z42Q$Pg@{I@P$(2!onaW#5K0adi$$83%jMl#I-RDu*=(w8DF^Tkz_3EJ-m)yn<#Ln{ z1OnhVjtkZ6^~ed-e*j3iAO-No5Bf6DT}d4Zh2VTXL%ZFEcsvgId>$r~32e7p%Hz7D@C7IVT(4KMJQxhZ zbUKCO@d*8XpDK<-B9y;eE~N7WV6|HLQmGWfO5Gpx!|_1zzaVs;06eq#%K^Ly4WI!u bfCl&jUboIirnE7f00000NkvXXu0mjfM^5bO literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/mime.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/mime.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/mime.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/official.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/official.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..c74fe2b800217d1bd923e56eda9407a38ba1b5f4 GIT binary patch literal 1810 zcmV+t2krQYP)L8B3a ziLKJu7auC3HEA$WAL@%HY63Cwhu}W=LQ+af0uiFo2Pvdg2$=vDV!K3CWJ^)QQZ_A= zw661=?U@eS-FEKXoe{G8HJh2a_s*PizWaCXy{7@na})@mJV${5%5xM5pgc!`0LpXR zl>{s|?n|VmT{8cirSmN%0w8$!-(kLwow{lZEM2#d6$;)H)K5yi#FXW`CP0iYuUyUwT%hxIEv#I>ibmr%DB5?4%XvY97!M;Y`so?tX)+9h zEC%Qs^II;1d<#nQT@kQt+qT5spE@RuKY5;wb^__h2MH*@YuB!vk$~@=7&9lHVpL`< z(Ygx%Awln_SDEkpKv9XlS77>T3F|>kB)5XXD4Tz5VSeXWxFRU;hHVv-@4{4i*y5!BQ0!&sHWv%jVO|+neaI zRU4@Le2?^VZu-&%0Hk+EdZ?|fjmx21lq?MIalpG=S@2-Jkd>?*mH#P6rIwe1RDokDh;}8bn zE9M|Suc&*FE_VIK&maMVaM)CnuS9?_9YXTNkEanAzR*mR-zr2Mhq7_U2Y z^t;6UZqEsq!;HN4_fpp0C?XRaI5AcI{d^efl&}Em3c8FNGsv zI}ecj-cT|xSAYxw%gP`hX^c8@E#DOZnD2G+as@Bt-*vM@*D*MD9=$Kfbtv# z0(4%wf8zt}m;Z6>ch8+5H^@dGB?7Sfg0*)%dYy{r&9MU&yo?E$4k91Aj9$MJO;pcgrdPs>4_a!4uEKvd|1xou^H*-fyi`#F3Cs{HRAy#0)9Ail%A-5oOT}igrDVb0$m_otbkWQt)s7_ z3)nhXI<1>qW$Wk`%45K}K)*c$2>di&ka{Ezoz79e@^@SlaP(|9Gw$4##jN101;5~w zCptLwg060%2`QZtQ9^wqa2N)R~;d_}HQO51}lv==qflPt` z3cwfl8}Wf5c7M47DwAnCm7v@OHmt0n`Bch|2OJ+GEMVtqX?MsQ5c&WDEJY#|jPu>o*^pquJ>oUS>c^*Qy>fi?jcbV`;6Z&Sbz5+qPUjTY@3*8*|Nd=KP_N(dnJ5p1Sf-;6lG7Y^r-41hz0Lx}s~(`&>5);;ug zH>6k&ArBFD0Nn$O<&lJ>2T^urf||RBz5{&sKans1-ULgxXnZ~!aDeZg<%zxlQUFYb zrqgNj#CL!d$6#8ktkPNMTxvfl08G4kwMOe(8|+h;()-#=fwi>-RAByjjF%*Ly`a_013dq1Na0O W*|?6w9lgVB{N}Uy9xUa{S zai8aWM2IE8t8c$&D-QvnqK**e_4b?Q_oe$r2J-y&RvJbyx6zD zv58)BbT2mlxdK3brJ>Q>nZ9qH90>qMM@P-Tz<{kh;QHj=xP6Z2OC^H%_5Hlzxz=~D zfT8eKPrn!cxdPC=s1$0y`9ZJw?Wbv5PUQhDFXOlm`QQ7`?R%NW3#M2^`PJP|LkNFC z0W|JD&M7&nM)pK8n=R!U_JI z3k>D=5&$JiQ}B^4pce-=XcV+pXnzHSZ=4^2x;i~S#H%;_G` z{m}7Ph+n*#@J{0o;f*E0)YMc}$h}e_N&ZXc1xk&I0H(}Q5x|r=Dgu}?M@4{;mvkIn z%&AW)QH(ua0=&`rQI_o}?FatfLWo~`liS`SzX0{&wP};>1xcct<*{?rrw<|7| zqO88a(Xn-^La5@}iIy$chK+ajpJ$&f&y{X5B(U^k#pRy6MREnQNsB<`-GmH*GHmkQ zm++ngl$xUbIgC)QK$?KlJ*QyDn3E!3#1?>E*wKYw&G&Q5_6#0E?FFV?d2v#4S{+-I zMByHp$AMQ5VBg(MK)5JylPG-82D}9LJkx2uoq1>;O%B^xSNrqI70^+6lAxj-j_f^q zYF@6bGn`4>?Y(Jtim%@q%G($h-gAIbWLzj$AWgvOwlCsWS zyG@l@o-;{;)^_>uOw2{H3wyA2Fy;YCP$U@Lpj56v+^mdZ0EZGJ+yl|*ZgpG)37`W> z83dxa0!cz#a4RPvG&v)-0HmD|gt%McbT{<|dsLP}Bq%%Ng5g!mV;jSQXX1X(s|Qd) zi2&#YS{I}ZT3opaYW+lWg$3p4;&WLTDOn=T1(6y;z2L?dW7Y-x1VDnf06LRL09Ib1 z#Kpokgp-$`d;#C@1WkfEl1BN9fCt~)&L5ZiqNp7q?F}#+42QJ`F4XpUm=5Rm`J0LVv1MzTKsw-~^s3cGfMAXorJgRTK- zh@i^5;dttEfO{qnloyc3yiik9ljl;-00_-V_!qy<;yX$OvZDY1002ovPDHLkV1n1w B6Q}?H literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/paramedic.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/paramedic.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..4ef99e18f517aa55c8f1f6a324be5bafcd3be3ab GIT binary patch literal 534 zcmV+x0_pvUP)jUb`U|k3hCzNptVpsDDK_5xflvrDzrruBLB&SVwSs-;*x*4%e_bbFYo2< zBJ|G+0YZQfKpMa_O;^)2-@0wvRIOH*77Ebmbll-^$jqQvEJl;bgv|kkcqWsPf)EC1 zHk)oDkstuTY&05q5UQ%OIpWAG7K_3V!T|AjoLa3GRVo$sj5$|6pZC^~CnF(%)$JWO zolbkE7`Z95p4I8?>5k2jhy3^FN1-YR0Ysw9v~^IR@_yFqf4yF3)qpvNI4|fdFS??U zsDuE%r(@qsc`NYcFn_(hqHed#@}`a*EC9-hvJ!2Q<2b%J%=tRZMawS?z#$q$?&ZS^ zD>ZKg*Iv2CDkWns1u(1A8;d^8Yf{%X*z?!;gXWbmfMr=OzB-r7(eBBa&-}hoqkg|n zbbRO_m>px7n6h&ciR)s|Xz%-dm zlCJ;mdu%zZ;aJAu17Rop{W${zz)gpnaCQymFq}P>Wp6~O7R+As#{1ow zGkdd}?9RPAvnK3*5H@pX=6>gX_t%+w&S`3Lv;?3gM@s-|a!2IJ6#%STW56%S-qnw|I`(ZHQuPOk~JK9*HbkQZx7b~Ab z<57N_hljX#B;NU^*(WF>xb7D&r(_%7i)1{=#OHrWQT~3`MPIXn_o+Sj^zyfx?H-32tK~NLLC$>z`yAI&*ES5 zMgxX@M^0aSEdd6*$agw;H3s0Fae0&gKX|dgq35{+uq9*7VJ}e!Mju1$lJa_>iV-!? zcrJX`}E} zGVA*s?3pF6gik5;FBrfqo2&{)H)GjVwI4M zLOFi%TofllDnFba76QM?PS-~;;SVH$dKL(PF!$u(H5=z4R1wPgkAew*AOU(_o2I8y zDH;~v0V~4ahZp*HR($PbGV)$B<*v$nzsI{57QnIQ{htzCNAYK~?iX0k1q#d`NPtWx z(`IrnEJVqF;&y?s(Gq}~94!H;$^S^@|+)Zw!Le1rer zLNGs{O+I>)9Gn&jmpJ^m02+^&8$NsS(b4M#WxX(YLxtdm^GP(@0^2V4Wocg68dL=B z^MFrZDV@v$Ww`=Q)FPnq%%>j1qYNig@?4@bczxPy0H>zN^Es~vj>;8?65v$h6gV+P zq(~Qm1;8n6t}{jB4-zr~0fdtShvy130^mf$F%n@5Cs7nS3l+iBYS0=1Trnpg92clb z6grIuv;-LX*QV8?<)6x8#Z_|!3OfjuhY%L7g87{kEs9aNxw%R0?d{_FX_*l5arY8U zaHv=cZX3qv+dty*%mRl{O3RMr4b zknLdJ!3~?zUdO{WEY6Xo$e@8N0)T~wzY7`-M58!2Vf2h^Po%lR44I=V!{G^9h%foc z5{>*I;*Q`^@WG#|4-j#F0LSDZz#G4e(B9sj5plghM<6dD7K;(m2033qw;r2kg^>Wf{e1hveL4Ks$&9=nuwQ~{fb~G#5_MoC0Pn@e38p@X zkpPGct0D5F#`kxaQ1b;$VSFgcp=cNYLB{(}JGVCX8?qCCEB9o-!VVJ{3xFYqc~>%E zpWaK6qvM2_032w%nlDg~3vMKU8j}Z*7qGUl;FevzN>L&?{khBy7@3-qxd^h1O8El1 Z_zz#-GSqRzkSG8E002ovPDHLkV1l3f9>f3u literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/prisoner.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/prisoner.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..a6041fdcbcb920421054ea5f7fc854a3b66a9691 GIT binary patch literal 476 zcmV<20VDp2P)9>WIl%r~ zyI_9nczB(pnbk}|;Trc3fMc`?ZenX4-wV40Vf4p4;*fB`T72H+cml9AE` S;%sIB0000I`Atgl+sFoC{CZLsPO)CTh ze?X!HqsBBr6GLhoo-8Q=g!Woklin7XYZZIcg{EWo;x$=+=m25QUD}4k^&&XkrV(4j-&ucaNLsu zlx$n24(;1ka@1kwT2cZOZ+TMncs%@fky4=(mU`E5gMz^zcJBJglp#hyj^`|xhH>M@ zBQ0$Vl!ZZf8$9UjyosvHX{zt+C21iH3m}}&SulgQh0_GlS5+P4$JrqQUH7TnO!&^W z@OF*jfg2OJ2>IS1@1y<2Tf$QOh6KpLTIRfiJ4(t|fAs|l);~Y!7`hA36fEKf((yhV zwoC-UPuzqhiyuV|g3SH<5kd!VpQ`(f@8>s3f`3#2=wdERMx!zTIkf}*PcJLM@gKJ7 zZ6YTT8kL9OVn$gd!eIWJdOzL$=q)|A+$6Jm>S<+k!)iIxP7wKX2vA6I%biiVt48#>wft zSmVKP{F!qePtfd7A{do~-Y<|(jim=lGWv$u>m67J* zy@MrK-t#6uE`lDu{f8Mt!>)8eu}V|I8E!)?7|QQb3e_6)u{*5A-wxd1+r4>YQy=@~ zVf+VlemZ|Nj5-Ae{=FXPAhX5LR*Sx5;` z`pywdopJ=1uYzqg5ojygw6znv-#v=2%a3v%AwD@yc8GpiNC`krPEU7(X5H-R6WE{F z)1mj@2*5T7{_NSk*yr7^_pe%#hW2i!DSlH^!0j4~-~a01BG8uF@x-O8eF%kn2JyQm znhUv70;C4k!Wm%e^1MB~P2>X3x>t}23Pgut7wq6SH3FPXn;6+OzUI>-r;|N>#S>QY zO9>FkIE-GJ>vikz*w?%GBScz5fQ>Q04t`T3pm*M=KQPfnd|sl&|gQ|LqNeR`VMcfPxL@#SAv`TDUPprfmoMt^OEdH^1R8 zLPQ`y@7!S)g`?ZT2o2VM5weTlkO1>veE?Zm>B!E`#<_Fnc%R>Y8@@8J?-AZ7_PhOU ze4kaYli!d4Wo2a!GyAN9o&5J?UcgEu1weu$DF6~2Ndb`HND5%)B#{{&E$b35#A1(> z04q?aZmCQ`^Mxxs74?4$A^6D_vZ<ia-Nb9ryD|Wx!k-+fk3J0 ztx8CxzIX{ij)%h`JuNP5Io;5Ve6Jf&3RR;bNR0p@U9tQzJrzzM1D;)z+iw_DyG0=9 z$#KCgKz(G>iSK^}NJ`#luls!JskR^Q`!vfIz z_Zjaj_7~*u-G`JGyhmN$$7Gg%4L9AgT57v2DvG~E=)v}g&nC-A>JTc zY7{L)96*cIxl#h;D`C`lTX>a-?`#m;^V*pxDt3(3Y6U_PbI&ZOII0mnx}!B{XMqpc zT04^b1%ViPM7okZ7pCF|>f?#XJ*20M4KsR9`3wUYcQW1_}^)V#? zMcV7_xU0|~{iV+{B|rVKYrf~s6nc5DlrHn1 z!+YQRKIZ@XzBkNa{Abw!Hh>Kv4RF7(!c_Ix)VZd8!_8aUj=2JqOG){K@5jK`JVDrmrCylLkI(qVf9S|;l&`2 zyS?vLPVpb%E9FhFnF1^!!6M-hHz2)!xr>XJuUdIc>sfoMqxveI3r#@?AcQkW#XjOn z&H?ipE}XlA7q2o?wNyv-RftIlpoInk#shq|&YnC=^3GM&&tnse>Zo2+LIC4&CK%wr zU@(}!X4gr&9L9rycV;|KAPVa=q>r2zg^+5@Y#F#9VY-A)#fFDBtV`xG}et{vRFljk08 zZW;du`AJ9toIa%(T|UOUx{l`cJlbD?;0f?Gvf$zQ=BMs_02IH++LM{$qmQu5O%?xO zqE37g!T^=Gx+5CWnHkf#Cp)GynfsRlAWgo!){-0dKLgA|Hh>La1K0q+0M_lP!S}9w QTmS$707*qoM6N<$f*A=3UjP6A literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/rd.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/rd.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/rd.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/roboticist.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/roboticist.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..34bcb2bbd6af7194f66031bb47748c315217673e GIT binary patch literal 1658 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 B?;8LB literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/salvage.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/salvage.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/salvage.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/scientist.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/scientist.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..7199bf41fb9efa7fcb679e2f7793a4a8e237ac73 GIT binary patch literal 1604 zcmV-K2D|x*P)%xj18FFfl2Dlp>9bD}oCP69;67!AM2G*ty~k>A-5-I0VOR z^v(LM$7@TPnf-~4^ns8xGdthBZ~orSyjwKj7z#iGj-dcF;1~)(1CF5pG~l?A0+h>T z+nZ)tR?MU>EdffUlATB-E)jBrj*gBfpU)dLL`oVrotyYWb z^}5|?G_-|K7J!Y<<#L?l_5!C>Diu*K3=v>_Hk+ktwJQE^SZzwveIdfba#ExrALVpJ zP!ixPdM=Cy0RTfKAzW|+QGS)41SSINllky_!&;zX42z#jzbic~$0P|{O zWQ0~JAA3mW+YhF|RqFtTU1_9b<2k>8uv`!71wYmp7U7Uyy5)FrHW}C0BmdB zDv^!vHY)JEUtn>Q+kkD5jb-3J(y(mkeYr*mHvG@QG!J8i@(&@Cz$>QT1X&Cm%*M*h<>}X(q@j?V(4sv>!06%!~ zjh<&QFcRd2PzOdYL+tVK+>^x!8@#$haNZH*-9i^y0>JiL$DK=@GA*`Nw2| z&c|N-%nRqM8@~y!k^n0!D>0M2pb#eijoSr+#!vtna0~^Y0mo1P8gL8+FnNft!~NX) z1PMRw(GuVpZQIUSfO8)Be+$9wIngavAT03pH>Lo$Ay*z<#f8Ah-C|`)UBX|`2aqm45GPf5+d;s6cLx5k$ZW$B%h0_t|aS0qR zpj(g8BIsO6zY)q`2Ygt6L-B@LY=W;7Axr_p3B1)hQQmih0{oIxYG1@A_;Evw1mL~+ zI>FQjF%kfKub(^lpn&rU-U3Zy6pg0<@Be53$cx3It+W670l3&;xg91j7J$7$xdBm# zz{bn&xSw|sBLU<)d4S^rqF5K=@wm&yF#~{UOu~OjZjRwRk3#tX0000(Bo{}WFyD30fmTl8C%nTY1hjcof*cwpCJC36Tp$xEIuiNQ#N&tY_ z@pu#vwr#UD@~8{LP#HoQz_KjL^PJ*1W_zr;eBT!_)aghG;Dz4W#bO~$@#LoGLLKVg z=~bxQlsIb6KcEy{eP| z&`z{<(yb4N!$lsyp2utYCe`*U18|6x(w6Trf@|M_j=2`Vxn%QeUFjVl%d(b#Xup}F zE(n7DM*!7z&7L@jilQLbbwv()ELord)%;faQ0)-E9D1I-AYN z^E|fSZnrFkZs72NFcx`Cy#nB-!%Zm1U=Bn1Sk}D}wMOul>$X>bTgU(y00UqEegIA? Vr051fEdl@l002ovPDHLkV1oW!*{T2l literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/scientist.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/scientist.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/scientist.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/security.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/security.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..6c4545b6ad0255d207d52beb1bc9798435260ed8 GIT binary patch literal 1752 zcmV;}1}FK6P)4?}<~Jqay&dIXVJRo1-HDwK+NhP@Chm6yS>sZ#(s6 zKd(KC*}Th0fXi>4b1rms9Uv5g)^>L2{$GDu84?8G8Sd_;krOc*IeCJvRsN-H>J$}r zU()c{xU;goZ7f7!0mS+1y=irxA02fjU$|USHj6)eUl=05`Kg{1<+duc!spX*hf=AO z5<%?1b>jO>Lt(-uV`GDen_oRv&!3?T8#US@5rqF1^M9%FqxSV9 zfUfXke=lVcCj#>yD*&1ooQK2H)e7BC_Nel)u`yO*b07J1b&FCPj;fi9r7|s3^Qh;a zq{cqk@E<9F^t<^-t5obsDq{)>hlYlR_T2~P3ojjYJhCx1kB#_qe>|al z+7VD^ zDf_`9{w*f^{TVEEb6d_QnF;fH0xg^fzw~(05Ot`J&j^U?c#V7Jd~T5HSEf zKrKWF;Rin8T9+g2C{^vcn~?yglU;t$p+;G6N<<%&@-P8@@M3^N%|GzU(Gv85&;(Xp zKtfV!c2f-o$}j-u;p}HT&B6w72FGLOtI=>9SIO5~T zmfxxce1FoR3LAqt7a`|EKF?5eQ2ZPfF0Z-#2#0O?jRZg>cAdlDuMWBPEtk*o^;U$x zQSw{0fUkFBl=H|`c*^H=k|M*WHST^I|1h6Z!tPzK-HOn!wOym~<6tBJLfhN?`>?NX zUpWS%Z0Q+=4e(2NEh|&Nz32Avh|!9W5bK0u6v}bD9MX!A&X1r+gupQ!b7KS>{y+lg zYk>d=H?_}zv`6RP(_#_o`5VE8Kac?LesYDz$H!@6VuBVH7F5~d;v(Ijnendyay{i; zYZbsD5U#`cQKs(aUr_!)0?f?J#B8p$3SsiUcC$dM(Gh^!9326u&CwBn+8iALY#x&B z@Md;>T8U=tF%p17PDiZ;cjBqJ_xmfe0xVV{Q={3<&>(>GenN(}439Ew z<3R-K?GF4t<1s)|Q?L}3?LDRbZQvzsq|iA@_=r$ES5lmnu00tWjgn%R~MVTugTuShG(znS5fdxR?34)N% z6DgWwr{TDswS}#+C?Y|z!{Im(l8+?!z6+uT#sSGq81}}5 zP;-R^2s$1n+*n{_z3eATMEOA^6(OzQw}Ffs1Juk1Vq*a$CjbKc&=sdzt)_AXqK2vn z{_;yC5(F90C2dl3tp-80CC!1yFDc7C=@tV)(28YlLQ^Y3H+Eid^WWytxEg9=#9>fz zi5i4sRA}NoRszUe{C`3uX>tPW3}cJ@o_C&pMGIqCpU5_uj%(coWGfm*K#=$Q2c6&7 z|BgfoaLM+(Zifx51wfNSDC!%)zmLzHb4-E|8-N4O>-hrBgy2>J=zH=2@&fMMxueSN u-ncxX?Di7f5)vJE40P{D(_%L;vFn3 zxrMD27qGITu;Bp22!_N2EkIFNAQ8rSGYl?)VumcS*}vJ@H!u9(yvM!?;-BRM_y9hD zF~G(CAxnnB3-R`7i2JwKz*+&$_oO+Qk$Mb>O)V)-`;~Vy2yFoR@nUiZ4}C|NHHUu? znXs$~?Qy9(jJfUe~IE7C<~6N2%LIj;|ZziHLRiJFLxFj*6E?eUYy#EdVmJEDPw5X0d!e z&o_Dtxs)g1yab?fQX6R9m@wG3J-1J%r#Q)R9O#x`8$dzi_zY0*wOS30-GilhFwn}A zP*hz_(h0O$Eg)sj#~~-8iHrbFw-e&| z#Q$jYsVP(U-pgRH9snx;Q6z%njR0;!Q8AL+kSC_$L!y?bHhB&(z3Euh6;l^e*=1^a qBO0|}mFw11fOW_R@Bw@PAK(|7N2<_kkq)r{00005;yr}ScEgmwi9h2&G&hJIY9LxLv)ei|Ni zc7^c}AcgN8$Riuh;C@{H+wqZaB>ea^=~#*^$gK(j=HmUdOIdji^5GTuFUWEJIJG^= zZ%F`*c{TbqCCWwG@$kS|>k-Y34&kpaB*6HeC%&VtgA8qs4A$H6_W8K)wqYo|%%0Gc zxSsaN6A3K|fSbekc=4Qu{yU}ISWPfUc}q8Q5rhvNW+`sP=)HR%9aG!L3-{hS&QQ7k zF-86srn>Ha7tmi8gy4GIN2hkn=if^JkGtQ6drelW(x^Uhgz+k1eAVrzVwtwfXVMjQ z$73`3YgC{_HY<(dVYVyI=O+5)(Mmj#?RmGIuk#|mr3YYKU0+`l+&SHUv;4d}`bZVm z8&u#rOoX_vU4U4A4%|7NeCl8lgmJLyz3@!FjweUH4)>wG749Vf%UZLCq=c*I-2Zs{ zcPWqi+XW^!6<7vgY(i#bg{p`f6IMgB#g}o zf^%Z1(ZFL$G#KyuGI$p<)z3XcRUk;HZ#tDqQ6`hAlVYNS76EYUd_GSfO6T$%|HA~! z2NH=y{fIVGU9pSo0Aor^;0ssfC5ft7{qX?1(iVp|T8%<7Us&A^?$IQbb*o#q(Qz z`=Z^hUiuRLHUlEOw>=Jxmv8r>-D~)(!pH;gQ6eXt;~FVBOiUCWFa%4ku`n9vh7R!X zc7)31vQ~R5Xc6G<_|V|s;Aicah>ni~^nFD>hu6F_1)Q9m7(Y{MM~DTh0$C}v;~3PA zkSbsO&cHDmjml-vM7}2i)V)9e0`Y~Yp0jd%y`LmB%5Me}`JM=vpP$F3BhAdr(E9qi zY}?q_pylP|dLO|3+~*e{gTb=yl8-iqSNWa@5D$x(^!bG#y2ID zS5}PZAWKt7j~{&$E?Dyd6fmf@0zm?@WM*2tbr_FSJ&GqLg(;2cIxoX331wI;>`S_EvxB1q6tW+aKMNG&N5?V;7ZzsUJ^oPq}4`s&`k z^a4(ZtS1L3m9?dAQx$zL)E>Ghk!if?hrTDYN#OvpRA4odWjltOvYrXp?zN~_On|5Z z0$z%tkSPl0ty)5|S*?JdU>O*KDR($#iZy)-VmNF^1D*pI5Uk=u=}fFg1D;A!Ou^5F zEY%An2~~5sMg*uzKsc7A?GS1OkPe>|vQ&ei3*?)^GXW@9K`?>|5R(p+kSl>3jm1QG z9AqTO@^fy%q)g3;We~>mqS=vuIPu z_5(%)@R}S(@Y4(|yWQBshyY}U)f72rhr@zeC(tg8hXALdp$G{1>e(~r-%pAamOSW@d7*>#;bJ#euUme1gJTA0CfQ?D=V^XadDA?z|zu^ l%>OSeEYxchfOcyU{s*fJz}}-18>|2T002ovPDHLkV1fXuNJanv literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/tacticool.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/tacticool.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..6370d1483d486d29162afe78d59ff2ce2fbffc31 GIT binary patch literal 448 zcmV;x0YCnUP)EsxjhH9xT~FpC1bxZCb*+iW1_W8<;xJ`ee?r-M=zlmMQ$kF-nnlv&1b|DIt| zKFX2!LvrN&9zbPlHGth=&xY^R4Y4QJ`!N?G5BaK60zf%YRx%7~nubp}7EX^ilr}Y~ zmR}h_AkYJ3{&q^K-rWD1M-#M2CzR9AkupFShMl}|y|uK*_LF&j+B@i|fkkn$V-mvHts+>-ksw`DXR2v;I`iv!?KH~tDB`7ud{ ql)S3|%-MW#fNMwtXaEhM0lon(_^G?0xDfUL0000S^ zLKq9c%5Q9JuqbK;mhJEFtNXGL0hM1}U6rGwBlX)m_M|c|N`&@GTb1ED?z0iWOn~R2 zDh~nx71e~0Pg(`}?{AS`zwCtu2KP%#(i0(gpU#JK2=Kv2H@{&Mdd1+HG5>f00`ezM zM84~IfdIXzcxPuvwzjs^IVw+Ma3AhJO-qCU|Hs<}`R$t{%SH)sc(49Q- z{L0&q)cYmq>Ys)8Un$xXKbm5+1bw_c9>@tg@p3IKN&{71jhwcv;0Z*h!6`Qc#P#h-IU ztya6$eL4OsPb+eGc&LUYhTGcOn&OtnqWI&_je=DmbbfxWS`{u427njnFvuCA`sKL8Qp*R#aJ!a~GJ@o_{Mx;?Jj!b$)J z8W>-kjR6EdEYA|)2QQ9jd5Qs-3;`G=+Q8{!h#@KG16_=)!Py;x!-mjJYu>^VRsz7s zzWmpdH_yUgh+`2zIDC34nL_91e1juCj$HYjdcYU2%aPAVsEXKtp>Q6!!$0rNZzTZS z5V{@$k2wB#?yET5ey1M5uRf6J;b~rIKkY;@2V)agJh&AhecmxC9|tP|5bW&j z?aA`;@~v`ALt-iSMDT=QzV6bhSs}QU>SE6YPY=e#U zy62mUV7(rIFD`xGEtV_bXDtFMkA+dSC8w>z!v@%7yDnip2QW2->vIr5&lSi6dOiYe zz=|<;ifmyl09Il5=Bx61c~%}kJ_5jvQ`o{J3gi*QH%~{wst0fvmI(;& z3-lxko5}-rSz=2~sh(A(vl*_+a($k;0^BOk67{#9yli<9SN*l9iSK8xBa6F>k&ULX zo&%U7ql38uc>;5QE;u{^Y|CsC#6CRS9|_0F0Yv!%mT+4S7;H&H z`S$^@J`Do154%pe35iyOFa*&3`;Yp@em5<^*E4A0QdRgcL~=R#7O}7-XweS zX#r6nU7%}@qVo`-|Azq}Z!{XdjsHyoaIwO=9WHPdfYG3CKprBn@_IO)`y8O}$pg#_ n$YWlZnVE^Wm@@#l<|O!9fJc4{$M?Lst=m;^I&Wr|+c~Y+dfe&?WDZyYD{oKKZ`O-3|U(DL@L4 z0vH2$o+paM;#qvXUc+_WOrij@*-UIU8)-)6ayjhxdpRZ)*Bgz75rj6ta5xl|N(BU< z*>1OsAqs_p9CMv{-ELPKLK`5T&tp6uqu=k#Imb%vb~}zS&qR6v9f*3p9-H#1OsU6F z24A1R>%9-=F&`snRY41&Rs%|JC3s~o?*Cvgh^s;K+q)>2dCXrxPg($rAmafS6A^;)$;$(dA*&CLK# z%>oCQ9QVdkH0K_;RN4T(?+bo)v)M%Ty?SQuKQ9r6Az(u|j*~zOj#{l&k(nK}fG|qa z=~S-Uwr%oCGk{*Nhad>z{?k+`o6X8~S%oA3Xlhv&TCJ9x^Os|c$Fe+p5d9&4H|Ny= zc+>GFJdM$uhNs7}>5XXAf=jO3s{$mU6d(mi0aAbib1Jrw^jI%W00000NkvXXu0mjf D89&{2 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/virology.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/virology.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/virology.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/warden.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/warden.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..5482b7a4dd97e195e7ab3aaaefc5e11599eb2b87 GIT binary patch literal 1832 zcmV+@2iN$CP)B8bd5Zp<@fk437M4BQ<7V#&vWYRWjv^qLW%QK-S@t8zx#LQo>N8zj-mim;3x_}1&*QsRNyEIKn0EyDZn=u z-?!4setG(&#N=IC0$h3Tymhgn;s7BV^mKQZ9{lyEks)pXp2o^bx^$|9E|s35Yw>?6 z>_1IQd#|anxy4%E+0holwE*1s8`S}M9c^l|+Fzx(xNH=EL_IG=K;uJIeu`|zX<1wk zlv(8W`=tnM2kw)orz3(Z0h&Z(FA5S#AOKQ;8_tjhitlHl{^H_d&O`wJ4S$L&V)I6Y z4K+126pzQ{_2}l792J*vPlNwh0YE-GJ4-!1Jw$7pPWi^h29X$k=~%gNj%Ft(siUJK zCnBi)*A;&BzWNPdD*RMiO|vtJt01PjX_xASEz|augDX)^{&CSh1g{^($1Bq?= zzV};MAI~jP_DJV%r_60K;XhIUo_7;ZR%i(1;-yPIi|Xs^_tit=mtI@)KI(n2ouE){ zt@eD(#2@+Nxx>%X5JR7*07jxL7wf~mdM@~n9RZkETVjpJaB5e!pU00M(^6f-f%>S| zAQnPA7oqI1n%I?dIzn&wu?Uhaf}Dnw>Ht};)C2#7c>XvXDFC*$r7HiS_v9$pOZ|`D zPX~;`^VtH6+p5wKY=g3~isiUQIkrIn^+z|!6^;}D+nM+rD0h@Uq~S+Br;F+52e(r+ z5{+Gbxh{r$LY6hY6LcD%>A6fW_5@?G7}41`Yk_Kjmr#4U|J}1R_|FSR6cZb?1i;Y3 zCtg)97odmeg*<}!flo!R^Ed2RO_)tLEdkDyS2#|GTxIPo5p$5sy#)BdivcdIYk;5KYd)C*?ysBsBU&dyOso>JQ7Fgv6^~AYRDL);ECjv-B`F`lgx{3_ z>RBKF!Y$=zK)|MR>f~62bpA{*;ddp#hhJW$mX;Q3ZEdATj~>ag`T2QzFf!uY1Ngq* zzLzV2gTY*f@uN)E7azC$t^~k-YjQ7F@RI+;?E<+*Q2;7%6a}CHM^OMOa1;eFd5FW| z*+hMEiEQlA53>=IiQzP48s2ia1PC|xq z439E|@gM?KSGsSD%*uXUY}u5{L_^af$)%1WmXWKpsNY1?Bm_oq#|g zdlaPS3giO_hM?gXi5P*LM6p48&Vi{LXpI287)R2afI#JRAXngRKuw}Ret-_N1Zdbw zNP@3@e!1vybU0J4fLB1TPpqxUDZn;-{$fMg1{Mzt&G!`R&Dpeq3u7DR%xyF-mY0H2e6>1kY2DW!y z2S|)O!Ss30xdNskY8`+Bjt@fOm;$Ozo`=R5*!GYg0C2KWK63?_OA20A?$~4k*8(8z z1WpJRz;V%N8J$(Kwh$`IhbPE(IJ{yVh}u0b7w1fM$?m%G&MCP zL*}052LL#S2l?3881?t})B5_l5plNQjtB;WPHuonYOc{DC_~c1@faK&q+~Lw<$C4{ zoEPBp`RI#y(g~OABC8XjTf48s8n7c);{@fm|82iSF2W_Wl*N0D1mL~+|Af4x$uSTa zMu_~reI0m92V*#&2xpm&Ydi%w6b&OF$S1XR)^BTn=S2!|ad=*}!vw|xV93E0bqo-n zu5;%t9Vf&D;6UTme1U9Sa3cZKm^^^I0BnmWo4$36yu{VpKgc`){PyQu1z_GVC*eOw W%=}R1Q;QS;0000#wmib6-z}hhl9}*pjIHtJ+ zjBYwsvem@Jl(&Vd-iS&^Fw1p2SAa#x0dN2u00-b3#V)JB7?tiE00000NkvXXu0mjf D#ckwR literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/warden.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/warden.rsi/meta.json new file mode 100644 index 00000000000..7881ed5501f --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Envirosuits/warden.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from TG station at commit https://github.com/tgstation/tgstation/commit/a3849062b8756e3c2176fa0b9bd80aef9facc3ef", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + } + ] +} From 9f888634febcbafe7b1f7851d68e21a248dc7be7 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Thu, 26 Dec 2024 19:42:44 +0800 Subject: [PATCH 60/68] add capability to set conditional starting gear for jobs --- .../Station/Systems/StationSpawningSystem.cs | 33 ++++++++++++++++++ Content.Shared/Roles/JobPrototype.cs | 25 +++++++++++++ .../Species/Plasmaman/envirogloves.yml | 2 +- .../Species/Plasmaman/envirohelm.yml | 2 +- .../Species/Plasmaman/envirosuit.yml | 2 +- .../Clothing/Uniforms/envirosuits.yml | 11 ++++++ .../Roles/Jobs/Civilian/assistant.yml | 11 ++++++ .../Prototypes/Roles/Jobs/Command/captain.yml | 11 ++++++ .../equipped-INNERCLOTHING.png | Bin 0 -> 1925 bytes .../Envirosuits/enviroslacks.rsi/icon.png | Bin 0 -> 532 bytes .../Envirosuits/enviroslacks.rsi/meta.json | 18 ++++++++++ 11 files changed, 112 insertions(+), 3 deletions(-) create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/enviroslacks.rsi/equipped-INNERCLOTHING.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/enviroslacks.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Uniforms/Envirosuits/enviroslacks.rsi/meta.json diff --git a/Content.Server/Station/Systems/StationSpawningSystem.cs b/Content.Server/Station/Systems/StationSpawningSystem.cs index 85be5f740d5..42a8623d0cd 100644 --- a/Content.Server/Station/Systems/StationSpawningSystem.cs +++ b/Content.Server/Station/Systems/StationSpawningSystem.cs @@ -12,6 +12,7 @@ using Content.Shared.Access.Components; using Content.Shared.Access.Systems; using Content.Shared.CCVar; +using Content.Shared.Customization.Systems; using Content.Shared.Humanoid; using Content.Shared.Humanoid.Prototypes; using Content.Shared.PDA; @@ -50,6 +51,7 @@ public sealed class StationSpawningSystem : SharedStationSpawningSystem [Dependency] private readonly InternalEncryptionKeySpawner _internalEncryption = default!; [Dependency] private readonly ArrivalsSystem _arrivalsSystem = default!; [Dependency] private readonly ContainerSpawnPointSystem _containerSpawnPointSystem = default!; + [Dependency] private readonly CharacterRequirementsSystem _characterRequirements = default!; private bool _randomizeCharacters; @@ -174,6 +176,37 @@ public EntityUid SpawnPlayerMob( if (prototype?.StartingGear != null) { var startingGear = _prototypeManager.Index(prototype.StartingGear); + + if (profile != null && prototype.ConditionalStartingGear != null) + { + foreach (var conditionalStartingGear in prototype.ConditionalStartingGear) + { + if (!_prototypeManager.TryIndex(conditionalStartingGear.Id, out var conditionalGear) || + !_characterRequirements.CheckRequirementsValid( + conditionalStartingGear.Requirements, prototype, profile, new Dictionary(), false, conditionalGear, + EntityManager, _prototypeManager, _configurationManager, + out _)) + continue; + + foreach (var (slot, entProtoId) in conditionalGear.Equipment) + startingGear.Equipment[slot] = entProtoId; + + if (conditionalGear.InnerClothingSkirt != null) + startingGear.InnerClothingSkirt = conditionalGear.InnerClothingSkirt; + + if (conditionalGear.Satchel != null) + startingGear.Satchel = conditionalGear.Satchel; + + if (conditionalGear.Duffelbag != null) + startingGear.Duffelbag = conditionalGear.Duffelbag; + + startingGear.Inhand.AddRange(conditionalGear.Inhand); + + foreach (var (slot, entProtoIds) in conditionalGear.Storage) + startingGear.Storage[slot].AddRange(entProtoIds); + } + } + EquipStartingGear(entity.Value, startingGear, raiseEvent: false); if (profile != null) EquipIdCard(entity.Value, profile.Name, prototype, station); diff --git a/Content.Shared/Roles/JobPrototype.cs b/Content.Shared/Roles/JobPrototype.cs index 5cf8cf38fb3..4c32ed5def3 100644 --- a/Content.Shared/Roles/JobPrototype.cs +++ b/Content.Shared/Roles/JobPrototype.cs @@ -98,6 +98,12 @@ public sealed partial class JobPrototype : IPrototype [DataField("startingGear", customTypeSerializer: typeof(PrototypeIdSerializer))] public string? StartingGear { get; private set; } + /// + /// A list of requirements that when satisfied, add or replace from the base starting gear. + /// + [DataField("conditionalStartingGear")] + public List? ConditionalStartingGear { get; private set; } + /// /// Use this to spawn in as a non-humanoid (borg, test subject, etc.) /// Starting gear will be ignored. @@ -128,6 +134,25 @@ public sealed partial class JobPrototype : IPrototype public bool Whitelisted; } + /// + /// Starting gear that will only be applied upon satisfying requirements. + /// + [DataDefinition] + public sealed partial class ConditionalStartingGear + { + /// + /// The requirements to check. + /// + [DataField(required: true)] + public List Requirements; + + /// + /// The starting gear to apply, replacing the equivalent slots. + /// + [DataField(required: true, customTypeSerializer: typeof(PrototypeIdSerializer))] + public string Id { get; private set; } + } + /// /// Sorts s appropriately for display in the UI, /// respecting their . diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirogloves.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirogloves.yml index 85a0df3b41a..425624df61c 100644 --- a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirogloves.yml +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirogloves.yml @@ -1,6 +1,6 @@ - type: characterItemGroup id: LoadoutPlasmamanEnvirogloves - minItems: 1 + minItems: 0 maxItems: 1 requirements: - !type:CharacterSpeciesRequirement diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirohelm.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirohelm.yml index 65c09c68857..bceb7fd4132 100644 --- a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirohelm.yml +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirohelm.yml @@ -1,6 +1,6 @@ - type: characterItemGroup id: LoadoutPlasmamanEnvirohelm - minItems: 1 + minItems: 0 maxItems: 1 requirements: - !type:CharacterSpeciesRequirement diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirosuit.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirosuit.yml index 23aa42d4b4a..215869cf28e 100644 --- a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirosuit.yml +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/envirosuit.yml @@ -1,6 +1,6 @@ - type: characterItemGroup id: LoadoutPlasmamanEnvirosuit - minItems: 1 + minItems: 0 maxItems: 1 requirements: - !type:CharacterSpeciesRequirement diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml index 00ecf7d2522..341f352fc84 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml @@ -119,6 +119,17 @@ - type: Clothing sprite: Clothing/Uniforms/Envirosuits/engineering.rsi +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitEnviroslacks + name: enviroslacks + description: The pet project of a posh plasmaman. + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/enviroslacks.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/enviroslacks.rsi + - type: entity parent: ClothingUniformEnvirosuitBase id: ClothingUniformEnvirosuitHoP diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/assistant.yml b/Resources/Prototypes/Roles/Jobs/Civilian/assistant.yml index 5cf4fd9449b..21037cfd181 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/assistant.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/assistant.yml @@ -4,6 +4,11 @@ description: job-description-passenger playTimeTracker: JobPassenger startingGear: PassengerGear + conditionalStartingGear: + - id: PassengerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconPassenger" supervisors: job-supervisors-everyone access: @@ -20,3 +25,9 @@ innerClothingSkirt: ClothingUniformJumpskirtColorGrey satchel: ClothingBackpackSatchelFilled duffelbag: ClothingBackpackDuffelFilled + +- type: startingGear + id: PassengerPlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuit + head: ClothingHeadEnvirohelm diff --git a/Resources/Prototypes/Roles/Jobs/Command/captain.yml b/Resources/Prototypes/Roles/Jobs/Command/captain.yml index 7e4d4e19a9e..ea658bb3cef 100644 --- a/Resources/Prototypes/Roles/Jobs/Command/captain.yml +++ b/Resources/Prototypes/Roles/Jobs/Command/captain.yml @@ -27,6 +27,11 @@ - !type:CharacterWhitelistRequirement weight: 20 startingGear: CaptainGear + conditionalStartingGear: + - id: CaptainPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconCaptain" requireAdminNotify: true joinNotifyCrew: true @@ -52,3 +57,9 @@ innerClothingSkirt: ClothingUniformJumpskirtCaptain satchel: ClothingBackpackSatchelCaptainFilled duffelbag: ClothingBackpackDuffelCaptainFilled + +- type: startingGear + id: CaptainPlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitCaptain + head: ClothingHeadEnvirohelmCaptain diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/enviroslacks.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/enviroslacks.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..7d9aa8981bc681787be7bbc6c8aae84b2206e1a9 GIT binary patch literal 1925 zcmV;02YUF4P) z$r5OIun82ZnChltj0p*S(7KR-id_;-FomcOje;g%YQcm^n>H14y-c{7a$CI&cPQc}VVarf?BeqOKqB?&-fv9HC_?N7d^9Tz^JgoFh3 z9(sTl!^6Y;+|2xpAtm(4ANuk)+H_%)T8`G&rXnBD;d#CCmn2~8=UZvv8-;!x`GKxx zT_IXYx60DN~jIXTok+)S=| z7v)#w)7aP;-vbHK17JMLaUb7iQehGmNq^tEFTe-hFw zyp_lMfdci24lt5i`rlq4@GjTBvlRRifa%P0`n(6D@xA#n-rsvhV7J?Co>R@Eg~iZ} zwhZbW?d5W3rIVy*c-8@n-tz~;E5UpB?on!LDqj~j7Qaw#HKe6GIyyKXA0JO6BO{#m z)id1oaf3ostW3gM8AJj%_$5CL11EwnH0BdQsx<~)oS9E>Zct7BJa&~sP?t^B#U zIW9vQ5fNcpzNsFtW91GSPzHEz-t+bzC1qs_1rscPQX_w@dHIG2=(qLLnejS$-*b2a z<>R(-vJzIvH`N1f&)=pg+mx!*!}*64xx(BxXa?<1+iBW1t;)au^gho{X7I}G2>sVo zYjz4YM1YLI+EG`^km)vLht& zYiepZZ?oCd6olYBe*Cy$`ML;zaM=+;iuHe2R~Od&Y;;yu7XKV+u&gBblYjW|;eh1p zBA}J+*1AL2{C8M(R$@VC=ybQjhPtd#%C%>v7f zFaZ?e2opddjxYff;s_I9=A|1qZt%K%_wL=6FM{+S5Pb|00Ec7I#Ugs}-~lBjCjRe4 zhH(-2E#RJUQ(8srqWi(>0p37w?5%WjWQx&7FhoE} zT?skMogA5U^X5%1^A#{*CA@<&1gC#G&2dAbqh1&u17N%_NWesE;9haR@D-Gy)lC{k zFLV=-YtN-!yLQp}^XEB_y}4`GuJL}H009$3tz;!6C_{j~LFgiSA(RgTVQZN_J#-Ur z^5jYN+B;-UB1VEa26zW%NP~a~t*%SK&?it`T}?-h98nDhJgYzoCR)Z@s3qh1XIN2D z!Kn}e9gRRY0iJGUOHNK!z_56QaScZW09W4p%pV3>Np&kGO zAzTD$;{<{YIASC=LG(f1Xd@V&1>mFK81YXqBK-71LNHoiAPphC;ET78av-HkaakW9 zAU=5zP!L@}kN$eZu>w{GM)(360&xi&Uf;lZtPjlmhnU(AfJ^$Tho`7$Z4tc;fG*-L zH;RCEgqo+Cx%2qbfWh8Ac`QSr znAIeR@mTuGl3W`vU=*eZ(E8*7i3^aO8Y{7S^=eg?#0&stV-o%b#Y+ZrZRI+800000 LNkvXXu0mjfEG344 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/enviroslacks.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/enviroslacks.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..7b4a2760e258c3f377cdeef33e364ab9efc894c7 GIT binary patch literal 532 zcmV+v0_**WP)2w3 zX9S_RBp@BdDT}LP7om1?a4NVciU=9}KrOdD2d-G#;YJd=+;_@7_tp0~CpSq5{#g=0 z0!RSQ0H$fOY&QF=KAld%FbpM7fL^c1X0sWEp<=NZtk-M0Mkw5`R4SezgaK^ZW`#ll z5CFqm*F8e0s!G?mkG@*1CJZ4AkVqt;-EM=f>$I-l)?w_9;aa_h=6jQBxQ{+B5&|&p z3|20eDS!(@5rT(vp%4A$n<+E}A%Nsn5*iN;$UJ4}{_{hK6X4?K0)6Ngl@LIG(x*|M z>#y4Ob4z|-0lFVurFv6kImp3cv7j1GflmOt=XI>1-&X(*QGycVYYf$lE;!E$+&@l! z_`riMdJ|%|sZLB9RCT1_M~F zR?z8msN;A%PW9bxN4`J+Mx&9E&*vF-di?QsI0o|X0`~<1aLJ$h4iJPSfCP{L65tDe WW69EMK5-iW0000 Date: Thu, 2 Jan 2025 13:10:00 +0800 Subject: [PATCH 61/68] fix stuff broken by the merge --- Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs | 1 + Content.Server/Body/Systems/InternalsSystem.cs | 2 +- Content.Server/Damage/Components/DamageOnHitComponent.cs | 2 +- Content.Shared/Inventory/InventorySystem.Equip.cs | 4 ++-- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs index 99ee489516f..80f7691ba19 100644 --- a/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs +++ b/Content.Server/Atmos/EntitySystems/IgniteFromGasSystem.cs @@ -3,6 +3,7 @@ using Content.Server.Administration.Logs; using Content.Server.Atmos.Components; using Content.Server.Bed.Components; +using Content.Shared._Shitmed.Body.Events; using Content.Shared.Alert; using Content.Shared.Atmos; using Content.Shared.Body.Components; diff --git a/Content.Server/Body/Systems/InternalsSystem.cs b/Content.Server/Body/Systems/InternalsSystem.cs index b5a9e49c9c6..ca98b637d9e 100644 --- a/Content.Server/Body/Systems/InternalsSystem.cs +++ b/Content.Server/Body/Systems/InternalsSystem.cs @@ -44,7 +44,7 @@ public override void Initialize() private void OnStartingGear(EntityUid uid, InternalsComponent component, ref StartingGearEquippedEvent args) { - if (component.BreathToolEntity == null) + if (component.BreathTools.Count == 0) return; if (component.GasTankEntity != null) diff --git a/Content.Server/Damage/Components/DamageOnHitComponent.cs b/Content.Server/Damage/Components/DamageOnHitComponent.cs index d2562a6a3ce..31b3ea730a3 100644 --- a/Content.Server/Damage/Components/DamageOnHitComponent.cs +++ b/Content.Server/Damage/Components/DamageOnHitComponent.cs @@ -1,5 +1,5 @@ using Content.Shared.Damage; -using Content.Shared.Targeting; +using Content.Shared._Shitmed.Targeting; // Damages the entity by a set amount when it hits someone. diff --git a/Content.Shared/Inventory/InventorySystem.Equip.cs b/Content.Shared/Inventory/InventorySystem.Equip.cs index 7c66601e330..9c3e256b57b 100644 --- a/Content.Shared/Inventory/InventorySystem.Equip.cs +++ b/Content.Shared/Inventory/InventorySystem.Equip.cs @@ -279,8 +279,8 @@ public bool CanEquip(EntityUid actor, EntityUid target, EntityUid itemUid, strin } if (onSpawn && - ((slotDefinition.SpawnWhitelist != null && !slotDefinition.SpawnWhitelist.IsValid(itemUid)) || - (slotDefinition.SpawnBlacklist != null && slotDefinition.SpawnBlacklist.IsValid(itemUid)))) + (_whitelistSystem.IsWhitelistFail(slotDefinition.SpawnWhitelist, itemUid) || + _whitelistSystem.IsBlacklistPass(slotDefinition.SpawnBlacklist, itemUid))) return false; var attemptEvent = new IsEquippingAttemptEvent(actor, target, itemUid, slotDefinition); From c7422c948b86e4ac626cc15c5f0a6e75744a5f25 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Thu, 2 Jan 2025 13:31:00 +0800 Subject: [PATCH 62/68] make plasmemes actually only need 25% of plasma gas to be satiated --- Resources/Prototypes/Body/Organs/plasmaman.yml | 3 --- Resources/Prototypes/Reagents/gases.yml | 1 + 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/Resources/Prototypes/Body/Organs/plasmaman.yml b/Resources/Prototypes/Body/Organs/plasmaman.yml index 49463379b44..5965c615ca5 100644 --- a/Resources/Prototypes/Body/Organs/plasmaman.yml +++ b/Resources/Prototypes/Body/Organs/plasmaman.yml @@ -10,9 +10,6 @@ layers: [] - type: Metabolizer metabolizerTypes: [ Plasmaman ] - groups: - - id: Gas - rateModifier: 25.0 - type: Lung alert: LowPlasma - type: Butcherable diff --git a/Resources/Prototypes/Reagents/gases.yml b/Resources/Prototypes/Reagents/gases.yml index 8cf143c170c..8c3b760585a 100644 --- a/Resources/Prototypes/Reagents/gases.yml +++ b/Resources/Prototypes/Reagents/gases.yml @@ -133,6 +133,7 @@ clear: True time: 5 - !type:Oxygenate + factor: 4 conditions: - !type:OrganType type: Plasmaman From ddabf8d4656a06708d19f9a985b4fa6eb17713eb Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Thu, 2 Jan 2025 15:54:41 +0800 Subject: [PATCH 63/68] add BasePlasmamanGear starting gear prototype --- Content.Shared/Roles/StartingGearPrototype.cs | 3 +++ .../CharacterItemGroups/Species/Plasmaman/plasmatank.yml | 2 +- Resources/Prototypes/Roles/Jobs/Command/captain.yml | 2 ++ Resources/Prototypes/Roles/Jobs/Fun/misc_startinggear.yml | 6 ++++++ 4 files changed, 12 insertions(+), 1 deletion(-) diff --git a/Content.Shared/Roles/StartingGearPrototype.cs b/Content.Shared/Roles/StartingGearPrototype.cs index 883fe283a6b..73bca5554b7 100644 --- a/Content.Shared/Roles/StartingGearPrototype.cs +++ b/Content.Shared/Roles/StartingGearPrototype.cs @@ -8,6 +8,7 @@ namespace Content.Shared.Roles; public sealed partial class StartingGearPrototype : IPrototype, IInheritingPrototype { [DataField] + [AlwaysPushInheritance] public Dictionary Equipment = new(); /// @@ -23,12 +24,14 @@ public sealed partial class StartingGearPrototype : IPrototype, IInheritingProto public EntProtoId? Duffelbag; [DataField] + [AlwaysPushInheritance] public List Inhand = new(0); /// /// Inserts entities into the specified slot's storage (if it does have storage). /// [DataField] + [AlwaysPushInheritance] public Dictionary> Storage = new(); [ViewVariables] diff --git a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml index d933e6bed18..09ad4f95c28 100644 --- a/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml +++ b/Resources/Prototypes/CharacterItemGroups/Species/Plasmaman/plasmatank.yml @@ -1,6 +1,6 @@ - type: characterItemGroup id: LoadoutPlasmamanPlasmaTank - minItems: 1 + minItems: 0 maxItems: 1 requirements: - !type:CharacterSpeciesRequirement diff --git a/Resources/Prototypes/Roles/Jobs/Command/captain.yml b/Resources/Prototypes/Roles/Jobs/Command/captain.yml index ea658bb3cef..14ff15c03b7 100644 --- a/Resources/Prototypes/Roles/Jobs/Command/captain.yml +++ b/Resources/Prototypes/Roles/Jobs/Command/captain.yml @@ -60,6 +60,8 @@ - type: startingGear id: CaptainPlasmamanGear + parent: BasePlasmamanGear equipment: jumpsuit: ClothingUniformEnvirosuitCaptain head: ClothingHeadEnvirohelmCaptain + gloves: ClothingHandsGlovesCaptain diff --git a/Resources/Prototypes/Roles/Jobs/Fun/misc_startinggear.yml b/Resources/Prototypes/Roles/Jobs/Fun/misc_startinggear.yml index b2cf3b87930..f5f2828eba4 100644 --- a/Resources/Prototypes/Roles/Jobs/Fun/misc_startinggear.yml +++ b/Resources/Prototypes/Roles/Jobs/Fun/misc_startinggear.yml @@ -307,3 +307,9 @@ shoes: ClothingShoesClownBanana jumpsuit: ClothingUniformJumpsuitClownBanana mask: ClothingMaskClownBanana + +# Plasmaman +- type: startingGear + id: BasePlasmamanGear + equipment: + pocket2: DoubleEmergencyPlasmaTankFilled From c3720fb354e2e7f9894f2cd1e15870ad5ff219ea Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Thu, 2 Jan 2025 15:55:47 +0800 Subject: [PATCH 64/68] remove unnecessary ToggleFirstBreathToolComponent Unneeded after the wizmerge --- .../Components/ToggleFirstBreathToolComponent.cs | 13 ------------- .../Prototypes/Entities/Mobs/Species/plasmaman.yml | 1 - 2 files changed, 14 deletions(-) delete mode 100644 Content.Server/Body/Components/ToggleFirstBreathToolComponent.cs diff --git a/Content.Server/Body/Components/ToggleFirstBreathToolComponent.cs b/Content.Server/Body/Components/ToggleFirstBreathToolComponent.cs deleted file mode 100644 index d427102591e..00000000000 --- a/Content.Server/Body/Components/ToggleFirstBreathToolComponent.cs +++ /dev/null @@ -1,13 +0,0 @@ -using Content.Shared.Alert; -using Robust.Shared.Prototypes; - -namespace Content.Server.Body.Components -{ - /// - /// Toggles the internals of the first breath mask the entity wears then deletes itself. - /// - [RegisterComponent] - public sealed partial class ToggleFirstBreathToolComponent : Component - { - } -} diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml index 9923f3c88fc..08cb5f11c83 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -72,7 +72,6 @@ - TauCetiBasic - Calcic - type: FootPrints - - type: ToggleFirstBreathTool - type: entity parent: BaseSpeciesDummy From 08f883f9eb169a5c92c79e9fecc000639f71673c Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Thu, 2 Jan 2025 16:01:19 +0800 Subject: [PATCH 65/68] add more 0 stuff in plasmeme bloodstream --- .../Prototypes/Entities/Mobs/Species/plasmaman.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml index 08cb5f11c83..c785e27ab85 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/plasmaman.yml @@ -12,11 +12,19 @@ prototype: Plasmaman requiredLegs: 2 - type: Bloodstream - bloodMaxVolume: 0 bloodlossThreshold: 0 + bleedReductionAmount: 0 maxBleedAmount: 0 + bloodlossDamage: + types: + Blunt: 0 + bloodlossHealDamage: + types: + Blunt: 0 bloodRefreshAmount: 0 bloodRegenerationHunger: 0 + bloodRegenerationThirst: 0 + bloodMaxVolume: 0 - type: Damageable damageModifierSet: Plasmaman - type: TemperatureProtection From b33b8cc17283a29d2910c9cf7a000b45e580418c Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Thu, 2 Jan 2025 19:38:28 +0800 Subject: [PATCH 66/68] put replaced pocket starting gear in backpack/hands --- .../Station/Systems/StationSpawningSystem.cs | 24 ++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/Content.Server/Station/Systems/StationSpawningSystem.cs b/Content.Server/Station/Systems/StationSpawningSystem.cs index ecd7fa742f9..c4b17e15076 100644 --- a/Content.Server/Station/Systems/StationSpawningSystem.cs +++ b/Content.Server/Station/Systems/StationSpawningSystem.cs @@ -188,9 +188,6 @@ public EntityUid SpawnPlayerMob( out _)) continue; - foreach (var (slot, entProtoId) in conditionalGear.Equipment) - startingGear.Equipment[slot] = entProtoId; - if (conditionalGear.InnerClothingSkirt != null) startingGear.InnerClothingSkirt = conditionalGear.InnerClothingSkirt; @@ -200,6 +197,27 @@ public EntityUid SpawnPlayerMob( if (conditionalGear.Duffelbag != null) startingGear.Duffelbag = conditionalGear.Duffelbag; + foreach (var (slot, entProtoId) in conditionalGear.Equipment) + { + // Don't remove items in pockets, instead put them in the backpack or hands + if (slot == "pocket1" && startingGear.Equipment.TryGetValue("pocket1", out var pocket1) || + slot == "pocket2" && startingGear.Equipment.TryGetValue("pocket2", out var pocket2)) + { + var pocketProtoId = slot == "pocket1" ? pocket1 : pocket2; + + if (!string.IsNullOrEmpty(startingGear.GetGear("back", null))) + { + if (!startingGear.Storage.ContainsKey("back")) + startingGear.Storage["back"] = new(); + startingGear.Storage["back"].Add(pocketProtoId); + } + else + startingGear.Inhand.Add(pocketProtoId); + } + + startingGear.Equipment[slot] = entProtoId; + } + startingGear.Inhand.AddRange(conditionalGear.Inhand); foreach (var (slot, entProtoIds) in conditionalGear.Storage) From 7600d7d16d5aab369101198d457ca7b8bdc53e3f Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Thu, 2 Jan 2025 20:37:52 +0800 Subject: [PATCH 67/68] rename hydroponics.yml to hydroponics.rsi --- .../equipped-INNERCLOTHING.png | Bin .../{hydroponics.yml => hydroponics.rsi}/icon.png | Bin .../{hydroponics.yml => hydroponics.rsi}/meta.json | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename Resources/Textures/Clothing/Uniforms/Envirosuits/{hydroponics.yml => hydroponics.rsi}/equipped-INNERCLOTHING.png (100%) rename Resources/Textures/Clothing/Uniforms/Envirosuits/{hydroponics.yml => hydroponics.rsi}/icon.png (100%) rename Resources/Textures/Clothing/Uniforms/Envirosuits/{hydroponics.yml => hydroponics.rsi}/meta.json (100%) diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.yml/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.rsi/equipped-INNERCLOTHING.png similarity index 100% rename from Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.yml/equipped-INNERCLOTHING.png rename to Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.rsi/equipped-INNERCLOTHING.png diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.yml/icon.png b/Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.rsi/icon.png similarity index 100% rename from Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.yml/icon.png rename to Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.rsi/icon.png diff --git a/Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.yml/meta.json b/Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.rsi/meta.json similarity index 100% rename from Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.yml/meta.json rename to Resources/Textures/Clothing/Uniforms/Envirosuits/hydroponics.rsi/meta.json From 498792df221b7ffc2bc0f47a85133f0f36f5d6b5 Mon Sep 17 00:00:00 2001 From: Angelo Fallaria Date: Thu, 2 Jan 2025 21:35:16 +0800 Subject: [PATCH 68/68] add plasmaman outfits to all station jobs TODO: CC plasmaman outfits, ghost role outfits, nukie outfits, dead corpse outfits --- .../Jobs/Command/administrative_assistant.yml | 7 ++- .../Roles/Jobs/Justice/chief_justice.yml | 5 +++ .../DeltaV/Roles/Jobs/Justice/clerk.yml | 5 +++ .../DeltaV/Roles/Jobs/Justice/prosecutor.yml | 5 +++ .../DeltaV/Roles/Jobs/Security/brigmedic.yml | 5 +++ .../Entities/Clothing/Hands/envirogloves.yml | 44 ++++++++++++++++++- .../Entities/Clothing/Head/envirohelms.yml | 11 +++++ .../Clothing/Uniforms/envirosuits.yml | 11 +++++ .../Roles/Jobs/Cargo/mail_carrier.yml | 5 +++ .../Roles/Jobs/Epistemics/forensicmantis.yml | 5 +++ .../Roles/Jobs/Security/prisonguard.yml | 5 +++ .../Roles/Jobs/Wildcards/gladiator.yml | 5 +++ .../Roles/Jobs/Wildcards/martialartist.yml | 5 +++ .../Roles/Jobs/Wildcards/prisoner.yml | 13 ++++++ .../Roles/Jobs/Cargo/cargo_technician.yml | 13 ++++++ .../Roles/Jobs/Cargo/quartermaster.yml | 5 +++ .../Roles/Jobs/Cargo/salvage_specialist.yml | 13 ++++++ .../Roles/Jobs/Civilian/assistant.yml | 2 + .../Roles/Jobs/Civilian/bartender.yml | 13 ++++++ .../Roles/Jobs/Civilian/botanist.yml | 13 ++++++ .../Roles/Jobs/Civilian/chaplain.yml | 13 ++++++ .../Prototypes/Roles/Jobs/Civilian/chef.yml | 13 ++++++ .../Prototypes/Roles/Jobs/Civilian/clown.yml | 13 ++++++ .../Roles/Jobs/Civilian/janitor.yml | 13 ++++++ .../Prototypes/Roles/Jobs/Civilian/lawyer.yml | 13 ++++++ .../Roles/Jobs/Civilian/librarian.yml | 13 ++++++ .../Prototypes/Roles/Jobs/Civilian/mime.yml | 13 ++++++ .../Roles/Jobs/Civilian/musician.yml | 5 +++ .../Roles/Jobs/Civilian/service_worker.yml | 7 ++- .../Roles/Jobs/Civilian/visitor.yml | 5 +++ .../Roles/Jobs/Command/head_of_personnel.yml | 13 ++++++ .../Engineering/atmospheric_technician.yml | 13 ++++++ .../Roles/Jobs/Engineering/chief_engineer.yml | 13 ++++++ .../Jobs/Engineering/senior_engineer.yml | 5 +++ .../Jobs/Engineering/station_engineer.yml | 13 ++++++ .../Jobs/Engineering/technical_assistant.yml | 5 +++ .../Prototypes/Roles/Jobs/Medical/chemist.yml | 13 ++++++ .../Jobs/Medical/chief_medical_officer.yml | 13 ++++++ .../Roles/Jobs/Medical/medical_doctor.yml | 13 ++++++ .../Roles/Jobs/Medical/medical_intern.yml | 7 ++- .../Roles/Jobs/Medical/paramedic.yml | 13 ++++++ .../Roles/Jobs/Medical/senior_physician.yml | 5 +++ .../Roles/Jobs/Science/research_assistant.yml | 7 ++- .../Roles/Jobs/Science/research_director.yml | 5 +++ .../Roles/Jobs/Science/roboticist.yml | 13 ++++++ .../Roles/Jobs/Science/scientist.yml | 13 ++++++ .../Roles/Jobs/Science/senior_researcher.yml | 5 +++ .../Roles/Jobs/Security/detective.yml | 13 ++++++ .../Roles/Jobs/Security/head_of_security.yml | 13 ++++++ .../Roles/Jobs/Security/security_cadet.yml | 5 +++ .../Roles/Jobs/Security/security_officer.yml | 13 ++++++ .../Roles/Jobs/Security/senior_officer.yml | 5 +++ .../Prototypes/Roles/Jobs/Security/warden.yml | 13 ++++++ .../Prototypes/Roles/Jobs/Wildcards/boxer.yml | 13 ++++++ .../Roles/Jobs/Wildcards/psychologist.yml | 13 ++++++ .../Roles/Jobs/Wildcards/reporter.yml | 5 +++ .../Roles/Jobs/Wildcards/zookeeper.yml | 5 +++ 57 files changed, 560 insertions(+), 5 deletions(-) diff --git a/Resources/Prototypes/DeltaV/Roles/Jobs/Command/administrative_assistant.yml b/Resources/Prototypes/DeltaV/Roles/Jobs/Command/administrative_assistant.yml index 1483d646605..dad82de8abb 100644 --- a/Resources/Prototypes/DeltaV/Roles/Jobs/Command/administrative_assistant.yml +++ b/Resources/Prototypes/DeltaV/Roles/Jobs/Command/administrative_assistant.yml @@ -26,6 +26,11 @@ department: Epistemics min: 10800 # 3 hours startingGear: AdminAssistantGear + conditionalStartingGear: + - id: PassengerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconAdminAssitant" supervisors: job-supervisors-command canBeAntag: false @@ -46,4 +51,4 @@ id: AdminAssistantPDA ears: ClothingHeadsetAdminAssist shoes: ClothingShoesLeather - innerClothingSkirt: ClothingUniformJumpskirtAdminAssistant \ No newline at end of file + innerClothingSkirt: ClothingUniformJumpskirtAdminAssistant diff --git a/Resources/Prototypes/DeltaV/Roles/Jobs/Justice/chief_justice.yml b/Resources/Prototypes/DeltaV/Roles/Jobs/Justice/chief_justice.yml index 8f76050d882..7896d62f947 100644 --- a/Resources/Prototypes/DeltaV/Roles/Jobs/Justice/chief_justice.yml +++ b/Resources/Prototypes/DeltaV/Roles/Jobs/Justice/chief_justice.yml @@ -18,6 +18,11 @@ - !type:CharacterWhitelistRequirement # whitelist requirement because I don't want any dingus judges weight: 20 startingGear: CJGear + conditionalStartingGear: + - id: LawyerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconChiefJustice" requireAdminNotify: true supervisors: job-supervisors-captain diff --git a/Resources/Prototypes/DeltaV/Roles/Jobs/Justice/clerk.yml b/Resources/Prototypes/DeltaV/Roles/Jobs/Justice/clerk.yml index c2032b67ebe..e68a5664380 100644 --- a/Resources/Prototypes/DeltaV/Roles/Jobs/Justice/clerk.yml +++ b/Resources/Prototypes/DeltaV/Roles/Jobs/Justice/clerk.yml @@ -17,6 +17,11 @@ startingGear: ClerkGear + conditionalStartingGear: + - id: LawyerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconClerk" requireAdminNotify: true supervisors: job-supervisors-cj diff --git a/Resources/Prototypes/DeltaV/Roles/Jobs/Justice/prosecutor.yml b/Resources/Prototypes/DeltaV/Roles/Jobs/Justice/prosecutor.yml index e0cebc4417a..1d041088b77 100644 --- a/Resources/Prototypes/DeltaV/Roles/Jobs/Justice/prosecutor.yml +++ b/Resources/Prototypes/DeltaV/Roles/Jobs/Justice/prosecutor.yml @@ -7,6 +7,11 @@ - !type:CharacterOverallTimeRequirement min: 36000 # 10 hrs startingGear: ProsecutorGear + conditionalStartingGear: + - id: LawyerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconProsecutor" supervisors: job-supervisors-cj access: diff --git a/Resources/Prototypes/DeltaV/Roles/Jobs/Security/brigmedic.yml b/Resources/Prototypes/DeltaV/Roles/Jobs/Security/brigmedic.yml index 44f32ffc8d7..01e0a953760 100644 --- a/Resources/Prototypes/DeltaV/Roles/Jobs/Security/brigmedic.yml +++ b/Resources/Prototypes/DeltaV/Roles/Jobs/Security/brigmedic.yml @@ -11,6 +11,11 @@ department: Security min: 18000 # 4 hrs startingGear: CorpsmanGear + conditionalStartingGear: # TODO: corpsman plasmaman gear + - id: SecurityOfficerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconBrigmedic" supervisors: job-supervisors-hos canBeAntag: false diff --git a/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml b/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml index 59a99ff3e12..2f0790f6adb 100644 --- a/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml +++ b/Resources/Prototypes/Entities/Clothing/Hands/envirogloves.yml @@ -56,6 +56,19 @@ - type: Fiber fiberColor: fibers-black +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesNitrile + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/nitrile.rsi + - type: Clothing + sprite: Clothing/Hands/Gloves/nitrile.rsi + - type: Fiber + fiberMaterial: fibers-nitrile + - type: entity parent: ClothingHandsGlovesEnviroglovesBase id: ClothingHandsGlovesEnviroglovesWhite @@ -174,7 +187,7 @@ - type: entity parent: ClothingHandsGlovesEnviroglovesBase - id: ClothingHandsGlovesEnviroglovesEngineer + id: ClothingHandsGlovesEnviroglovesEngineering name: TODO description: TODO components: @@ -291,6 +304,35 @@ fiberMaterial: fibers-leather fiberColor: fibers-blue +- type: entity + parent: ClothingHandsGlovesEnviroglovesBase + id: ClothingHandsGlovesEnviroglovesPrototype + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Hands/Gloves/Color/color.rsi + layers: + - state: icon + color: "#911801" + - type: Item + sprite: Clothing/Hands/Gloves/Color/color.rsi + inhandVisuals: + left: + - state: inhand-left + color: "#911801" + right: + - state: inhand-right + color: "#911801" + - type: Clothing + sprite: Clothing/Hands/Gloves/Color/color.rsi + clothingVisuals: + gloves: + - state: equipped-HAND + color: "#911801" + - type: Fiber + fiberColor: fibers-red + - type: entity parent: ClothingHandsGlovesEnviroglovesBase id: ClothingHandsGlovesEnviroglovesClown diff --git a/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml b/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml index 3e1480de9e2..877a1158072 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/envirohelms.yml @@ -174,6 +174,17 @@ - type: Clothing sprite: Clothing/Head/Envirohelms/janitor.rsi +- type: entity + parent: ClothingHeadEnvirohelmBase + id: ClothingHeadEnvirohelmLibrarian + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Head/Envirohelms/librarian.rsi + - type: Clothing + sprite: Clothing/Head/Envirohelms/librarian.rsi + - type: entity parent: ClothingHeadEnvirohelmBase id: ClothingHeadEnvirohelmMedicalDoctor diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml index 341f352fc84..1e77e19ed84 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/envirosuits.yml @@ -174,6 +174,17 @@ - type: Clothing sprite: Clothing/Uniforms/Envirosuits/janitor.rsi +- type: entity + parent: ClothingUniformEnvirosuitBase + id: ClothingUniformEnvirosuitLibrarian + name: TODO + description: TODO + components: + - type: Sprite + sprite: Clothing/Uniforms/Envirosuits/librarian.rsi + - type: Clothing + sprite: Clothing/Uniforms/Envirosuits/librarian.rsi + - type: entity parent: ClothingUniformEnvirosuitBase id: ClothingUniformEnvirosuitMedicalDoctor diff --git a/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Cargo/mail_carrier.yml b/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Cargo/mail_carrier.yml index 5a90e77a58a..055ebec8bf2 100644 --- a/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Cargo/mail_carrier.yml +++ b/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Cargo/mail_carrier.yml @@ -3,6 +3,11 @@ name: job-name-mail-carrier description: job-description-mail-carrier startingGear: CourierGear + conditionalStartingGear: # TODO: courier-unique plasmaman gear + - id: CargoTechPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] playTimeTracker: JobMailCarrier icon: "JobIconMailCarrier" supervisors: job-supervisors-qm diff --git a/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Epistemics/forensicmantis.yml b/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Epistemics/forensicmantis.yml index f7a31205706..9713b900a6c 100644 --- a/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Epistemics/forensicmantis.yml +++ b/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Epistemics/forensicmantis.yml @@ -19,6 +19,11 @@ traits: - AnomalousPositronics startingGear: ForensicMantisGear + conditionalStartingGear: # TODO: forensic mantis plasmaman gear + - id: ScientistPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconForensicMantis" supervisors: job-supervisors-rd antagAdvantage: 5 # DeltaV - From 4 to 5 diff --git a/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Security/prisonguard.yml b/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Security/prisonguard.yml index fec6ac685ed..a9a409b2128 100644 --- a/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Security/prisonguard.yml +++ b/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Security/prisonguard.yml @@ -10,6 +10,11 @@ department: Security min: 14400 startingGear: PrisonGuardGear + conditionalStartingGear: # TODO: prison guard plasmaman gear + - id: SecurityOfficerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] alwaysUseSpawner: true canBeAntag: false icon: "JobIconPrisonGuard" diff --git a/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Wildcards/gladiator.yml b/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Wildcards/gladiator.yml index 3651d223d77..fa197c35c3a 100644 --- a/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Wildcards/gladiator.yml +++ b/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Wildcards/gladiator.yml @@ -4,6 +4,11 @@ description: job-description-gladiator playTimeTracker: JobGladiator startingGear: NyanoGladiatorGear + conditionalStartingGear: # TODO: gladiator plasmaman gear + - id: PassengerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] alwaysUseSpawner: true canBeAntag: false icon: "JobIconGladiator" diff --git a/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Wildcards/martialartist.yml b/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Wildcards/martialartist.yml index 8c3c80c72fd..1c445b69f5e 100644 --- a/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Wildcards/martialartist.yml +++ b/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Wildcards/martialartist.yml @@ -7,6 +7,11 @@ - !type:CharacterOverallTimeRequirement min: 7200 #2 hours startingGear: MartialArtistGear + conditionalStartingGear: # TODO: martial artist plasmaman gear + - id: PassengerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconMartialArtist" supervisors: job-supervisors-hop setPreference: true diff --git a/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Wildcards/prisoner.yml b/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Wildcards/prisoner.yml index 4f5551a2b3e..d0f6f728110 100644 --- a/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Wildcards/prisoner.yml +++ b/Resources/Prototypes/Nyanotrasen/Roles/Jobs/Wildcards/prisoner.yml @@ -4,6 +4,11 @@ description: job-description-prisoner playTimeTracker: JobPrisoner startingGear: PrisonerGear + conditionalStartingGear: + - id: PrisonerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] alwaysUseSpawner: true canBeAntag: false # whitelistRequired: true @@ -26,3 +31,11 @@ id: PrisonerPDA ears: ClothingHeadsetPrison #deltaV innerClothingSkirt: ClothingUniformJumpsuitPrisoner + +- type: startingGear + id: PrisonerPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitPrisoner + head: ClothingHeadEnvirohelmPrisoner + gloves: ClothingHandsGlovesEnviroglovesBlack diff --git a/Resources/Prototypes/Roles/Jobs/Cargo/cargo_technician.yml b/Resources/Prototypes/Roles/Jobs/Cargo/cargo_technician.yml index f79a30e5fd6..28b0e60e316 100644 --- a/Resources/Prototypes/Roles/Jobs/Cargo/cargo_technician.yml +++ b/Resources/Prototypes/Roles/Jobs/Cargo/cargo_technician.yml @@ -5,6 +5,11 @@ playTimeTracker: JobCargoTechnician antagAdvantage: 2 # DeltaV - Reduced TC: External Access startingGear: CargoTechGear + conditionalStartingGear: + - id: CargoTechPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconCargoTechnician" supervisors: job-supervisors-qm access: @@ -27,3 +32,11 @@ innerClothingSkirt: ClothingUniformJumpskirtCargo satchel: ClothingBackpackSatchelCargoFilled duffelbag: ClothingBackpackDuffelCargoFilled + +- type: startingGear + id: CargoTechPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitCargo + head: ClothingHeadEnvirohelmCargo + gloves: ClothingHandsGlovesEnviroglovesCargo diff --git a/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml b/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml index ee1a101154a..d3ed4fc7583 100644 --- a/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml +++ b/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml @@ -21,6 +21,11 @@ min: 144000 #40 hrs weight: 10 startingGear: QuartermasterGear + conditionalStartingGear: # Quartermasters have the same gear as cargo techs. Ouch. + - id: CargoTechPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconQuarterMaster" supervisors: job-supervisors-captain canBeAntag: false diff --git a/Resources/Prototypes/Roles/Jobs/Cargo/salvage_specialist.yml b/Resources/Prototypes/Roles/Jobs/Cargo/salvage_specialist.yml index 8b806009ef8..d51fd95c4af 100644 --- a/Resources/Prototypes/Roles/Jobs/Cargo/salvage_specialist.yml +++ b/Resources/Prototypes/Roles/Jobs/Cargo/salvage_specialist.yml @@ -12,6 +12,11 @@ # time: 36000 #10 hrs icon: "JobIconShaftMiner" startingGear: SalvageSpecialistGear + conditionalStartingGear: + - id: SalvageSpecialistPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] supervisors: job-supervisors-qm access: - Cargo @@ -29,3 +34,11 @@ ears: ClothingHeadsetCargo satchel: ClothingBackpackSatchelSalvageFilled duffelbag: ClothingBackpackDuffelSalvageFilled + +- type: startingGear + id: SalvageSpecialistPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitSalvage + head: ClothingHeadEnvirohelmSalvage + gloves: ClothingHandsGlovesEnviroglovesSalvage diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/assistant.yml b/Resources/Prototypes/Roles/Jobs/Civilian/assistant.yml index 21037cfd181..cadff6a3c74 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/assistant.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/assistant.yml @@ -28,6 +28,8 @@ - type: startingGear id: PassengerPlasmamanGear + parent: BasePlasmamanGear equipment: jumpsuit: ClothingUniformEnvirosuit head: ClothingHeadEnvirohelm + gloves: ClothingHandsGlovesEnvirogloves diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/bartender.yml b/Resources/Prototypes/Roles/Jobs/Civilian/bartender.yml index 85a86dabce3..a4bd4183d60 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/bartender.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/bartender.yml @@ -8,6 +8,11 @@ department: Civilian min: 3600 #DeltaV startingGear: BartenderGear + conditionalStartingGear: + - id: BartenderPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconBartender" supervisors: job-supervisors-hop access: @@ -31,3 +36,11 @@ innerClothingSkirt: ClothingUniformJumpskirtBartender satchel: ClothingBackpackSatchelFilled duffelbag: ClothingBackpackDuffelFilled + +- type: startingGear + id: BartenderPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitEnviroslacks + head: ClothingHeadEnvirohelmWhite + gloves: ClothingHandsGlovesEnviroglovesWhite diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/botanist.yml b/Resources/Prototypes/Roles/Jobs/Civilian/botanist.yml index 35b858fb388..fae143ccab1 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/botanist.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/botanist.yml @@ -4,6 +4,11 @@ description: job-description-botanist playTimeTracker: JobBotanist startingGear: BotanistGear + conditionalStartingGear: + - id: BotanistPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconBotanist" supervisors: job-supervisors-hop access: @@ -27,3 +32,11 @@ innerClothingSkirt: ClothingUniformJumpskirtHydroponics satchel: ClothingBackpackSatchelHydroponicsFilled duffelbag: ClothingBackpackDuffelHydroponicsFilled + +- type: startingGear + id: BotanistPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitHydroponics + head: ClothingHeadEnvirohelmHydroponics + gloves: ClothingHandsGlovesEnviroglovesLeather diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/chaplain.yml b/Resources/Prototypes/Roles/Jobs/Civilian/chaplain.yml index fe7175172d2..27a2ee9fde4 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/chaplain.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/chaplain.yml @@ -23,6 +23,11 @@ species: - Shadowkin startingGear: ChaplainGear + conditionalStartingGear: + - id: ChaplainPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconChaplain" supervisors: job-supervisors-rd access: @@ -52,3 +57,11 @@ innerClothingSkirt: ClothingUniformJumpskirtChaplain satchel: ClothingBackpackSatchelChaplainFilled duffelbag: ClothingBackpackDuffelChaplainFilled + +- type: startingGear + id: ChaplainPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitChaplain + head: ClothingHeadEnvirohelmChaplain + gloves: ClothingHandsGlovesEnviroglovesBlack diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/chef.yml b/Resources/Prototypes/Roles/Jobs/Civilian/chef.yml index 0837f1f3907..985e14856e2 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/chef.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/chef.yml @@ -8,6 +8,11 @@ department: Civilian min: 3600 #DeltaV 1 hour startingGear: ChefGear + conditionalStartingGear: + - id: ChefPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconChef" supervisors: job-supervisors-hop access: @@ -37,3 +42,11 @@ innerClothingSkirt: ClothingUniformJumpskirtChef satchel: ClothingBackpackSatchelFilled duffelbag: ClothingBackpackDuffelFilled + +- type: startingGear + id: ChefPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitChef + head: ClothingHeadEnvirohelmWhite + gloves: ClothingHandsGlovesEnviroglovesWhite diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/clown.yml b/Resources/Prototypes/Roles/Jobs/Civilian/clown.yml index 8cc8f5c6a72..bedc58506b3 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/clown.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/clown.yml @@ -7,6 +7,11 @@ - !type:CharacterOverallTimeRequirement # DeltaV - Playtime requirement min: 7200 #2 hrs startingGear: ClownGear + conditionalStartingGear: + - id: ClownPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconClown" supervisors: job-supervisors-hop access: @@ -43,3 +48,11 @@ ears: ClothingHeadsetService satchel: ClothingBackpackSatchelClownFilled duffelbag: ClothingBackpackDuffelClownFilled + +- type: startingGear + id: ClownPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitClown + head: ClothingHeadEnvirohelmClown + gloves: ClothingHandsGlovesEnviroglovesClown diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/janitor.yml b/Resources/Prototypes/Roles/Jobs/Civilian/janitor.yml index bf11532ddbf..081f55c5ae1 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/janitor.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/janitor.yml @@ -4,6 +4,11 @@ description: job-description-janitor playTimeTracker: JobJanitor startingGear: JanitorGear + conditionalStartingGear: + - id: JanitorPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconJanitor" supervisors: job-supervisors-hop access: @@ -30,6 +35,14 @@ satchel: ClothingBackpackSatchelFilled duffelbag: ClothingBackpackDuffelFilled +- type: startingGear + id: JanitorPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitJanitor + head: ClothingHeadEnvirohelmJanitor + gloves: ClothingHandsGlovesEnviroglovesJanitor + - type: startingGear id: JanitorMaidGear equipment: diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/lawyer.yml b/Resources/Prototypes/Roles/Jobs/Civilian/lawyer.yml index b8e37c2bebf..6f211a0ebd4 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/lawyer.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/lawyer.yml @@ -10,6 +10,11 @@ - !type:CharacterDepartmentTimeRequirement # DeltaV - Security dept time requirement department: Security min: 14400 # 4 hours + conditionalStartingGear: + - id: LawyerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] startingGear: LawyerGear icon: "JobIconLawyer" supervisors: job-supervisors-cj # Delta V - Change supervisor to chief justice @@ -32,3 +37,11 @@ innerClothingSkirt: ClothingUniformJumpskirtLawyerBlack satchel: ClothingBackpackSatchelLawyerFilled #DeltaV - stamp included duffelbag: ClothingBackpackDuffelLawyerFilled #DeltaV - stamp included + +- type: startingGear + id: LawyerPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitEnviroslacks + head: ClothingHeadEnvirohelmWhite + gloves: ClothingHandsGlovesEnviroglovesWhite diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/librarian.yml b/Resources/Prototypes/Roles/Jobs/Civilian/librarian.yml index 3468d10f278..c5d9e639247 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/librarian.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/librarian.yml @@ -23,6 +23,11 @@ species: - Shadowkin startingGear: LibrarianGear + conditionalStartingGear: + - id: LibrarianPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconLibrarian" supervisors: job-supervisors-rd access: @@ -53,3 +58,11 @@ innerClothingSkirt: ClothingUniformJumpskirtLibrarian satchel: ClothingBackpackSatchelLibrarianFilled duffelbag: ClothingBackpackDuffelLibrarianFilled + +- type: startingGear + id: LibrarianPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitLibrarian + head: ClothingHeadEnvirohelmLibrarian + gloves: ClothingHandsGlovesEnviroglovesPrototype diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/mime.yml b/Resources/Prototypes/Roles/Jobs/Civilian/mime.yml index 6aa6d02aecb..995b310ab5b 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/mime.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/mime.yml @@ -7,6 +7,11 @@ - !type:CharacterOverallTimeRequirement min: 7200 # DeltaV - 2 hours startingGear: MimeGear + conditionalStartingGear: + - id: MimePlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconMime" supervisors: job-supervisors-hop access: @@ -37,6 +42,14 @@ satchel: ClothingBackpackSatchelMimeFilled duffelbag: ClothingBackpackDuffelMimeFilled +- type: startingGear + id: MimePlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitMime + head: ClothingHeadEnvirohelmMime + gloves: ClothingHandsGlovesEnviroglovesWhite + - type: entity id: ActionMimeInvisibleWall name: Create Invisible Wall diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/musician.yml b/Resources/Prototypes/Roles/Jobs/Civilian/musician.yml index 28f9c597e58..09a279a6067 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/musician.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/musician.yml @@ -7,6 +7,11 @@ - !type:CharacterOverallTimeRequirement min: 7200 # DeltaV - 2 hours startingGear: MusicianGear + conditionalStartingGear: # TODO: musician plasmaman gear + - id: PassengerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconMusician" supervisors: job-supervisors-hire access: diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/service_worker.yml b/Resources/Prototypes/Roles/Jobs/Civilian/service_worker.yml index 8bfd05ad014..e2a1a5b4dad 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/service_worker.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/service_worker.yml @@ -1,4 +1,4 @@ -- type: job +- type: job id: ServiceWorker name: job-name-serviceworker description: job-description-serviceworker @@ -7,6 +7,11 @@ - !type:CharacterOverallTimeRequirement min: 7200 # DeltaV - 2 hours startingGear: ServiceWorkerGear + conditionalStartingGear: # TODO: service worker plasmaman gear + - id: PassengerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconServiceWorker" supervisors: job-supervisors-service canBeAntag: true # DeltaV - Can be antagonist diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/visitor.yml b/Resources/Prototypes/Roles/Jobs/Civilian/visitor.yml index d16be5c350a..2bcba6e517c 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/visitor.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/visitor.yml @@ -3,6 +3,11 @@ name: job-name-visitor description: job-description-visitor playTimeTracker: JobVisitor + conditionalStartingGear: + - id: PassengerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] canBeAntag: false icon: JobIconVisitor setPreference: false diff --git a/Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml b/Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml index feda9c0f466..ac3ce537d55 100644 --- a/Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml +++ b/Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml @@ -21,6 +21,11 @@ min: 90000 # 25 hours weight: 10 # DeltaV - Changed HoP weight from 20 to 10 due to them not being more important than other Heads startingGear: HoPGear + conditionalStartingGear: + - id: HoPPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconHeadOfPersonnel" requireAdminNotify: true supervisors: job-supervisors-captain @@ -78,3 +83,11 @@ innerClothingSkirt: ClothingUniformJumpskirtHoP satchel: ClothingBackpackSatchelHOPFilled duffelbag: ClothingBackpackDuffelHOPFilled + +- type: startingGear + id: HoPPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitHoP + head: ClothingHeadEnvirohelmHoP + gloves: ClothingHandsGlovesEnviroglovesHoP diff --git a/Resources/Prototypes/Roles/Jobs/Engineering/atmospheric_technician.yml b/Resources/Prototypes/Roles/Jobs/Engineering/atmospheric_technician.yml index a3bba1547a4..e5a14a10638 100644 --- a/Resources/Prototypes/Roles/Jobs/Engineering/atmospheric_technician.yml +++ b/Resources/Prototypes/Roles/Jobs/Engineering/atmospheric_technician.yml @@ -9,6 +9,11 @@ department: Engineering min: 36000 # DeltaV - 10 hours startingGear: AtmosphericTechnicianGear + conditionalStartingGear: + - id: AtmosphericTechnicianPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconAtmosphericTechnician" supervisors: job-supervisors-ce access: @@ -28,3 +33,11 @@ innerClothingSkirt: ClothingUniformJumpskirtAtmos satchel: ClothingBackpackSatchelEngineeringFilled duffelbag: ClothingBackpackDuffelEngineeringFilled + +- type: startingGear + id: AtmosphericTechnicianPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitAtmos + head: ClothingHeadEnvirohelmAtmos + gloves: ClothingHandsGlovesEnviroglovesAtmos diff --git a/Resources/Prototypes/Roles/Jobs/Engineering/chief_engineer.yml b/Resources/Prototypes/Roles/Jobs/Engineering/chief_engineer.yml index 74ba2ae68d1..f3a29e50f10 100644 --- a/Resources/Prototypes/Roles/Jobs/Engineering/chief_engineer.yml +++ b/Resources/Prototypes/Roles/Jobs/Engineering/chief_engineer.yml @@ -17,6 +17,11 @@ # time: 72000 # DeltaV - 20 hours weight: 10 startingGear: ChiefEngineerGear + conditionalStartingGear: + - id: ChiefEngineerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconChiefEngineer" requireAdminNotify: true supervisors: job-supervisors-captain @@ -47,3 +52,11 @@ innerClothingSkirt: ClothingUniformJumpskirtChiefEngineer satchel: ClothingBackpackSatchelChiefEngineerFilled duffelbag: ClothingBackpackDuffelChiefEngineerFilled + +- type: startingGear + id: ChiefEngineerPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitChiefEngineer + head: ClothingHeadEnvirohelmChiefEngineer + gloves: ClothingHandsGlovesEnviroglovesChiefEngineer diff --git a/Resources/Prototypes/Roles/Jobs/Engineering/senior_engineer.yml b/Resources/Prototypes/Roles/Jobs/Engineering/senior_engineer.yml index 128779db94d..f50f3db170b 100644 --- a/Resources/Prototypes/Roles/Jobs/Engineering/senior_engineer.yml +++ b/Resources/Prototypes/Roles/Jobs/Engineering/senior_engineer.yml @@ -14,6 +14,11 @@ department: Engineering min: 216000 # 60 hrs startingGear: SeniorEngineerGear + conditionalStartingGear: + - id: StationEngineerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconSeniorEngineer" supervisors: job-supervisors-ce access: diff --git a/Resources/Prototypes/Roles/Jobs/Engineering/station_engineer.yml b/Resources/Prototypes/Roles/Jobs/Engineering/station_engineer.yml index dc590045191..be069331bd5 100644 --- a/Resources/Prototypes/Roles/Jobs/Engineering/station_engineer.yml +++ b/Resources/Prototypes/Roles/Jobs/Engineering/station_engineer.yml @@ -9,6 +9,11 @@ department: Engineering min: 14400 #4 hrs startingGear: StationEngineerGear + conditionalStartingGear: + - id: StationEngineerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconStationEngineer" supervisors: job-supervisors-ce access: @@ -31,3 +36,11 @@ innerClothingSkirt: ClothingUniformJumpskirtEngineering satchel: ClothingBackpackSatchelEngineeringFilled duffelbag: ClothingBackpackDuffelEngineeringFilled + +- type: startingGear + id: StationEngineerPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitEngineering + head: ClothingHeadEnvirohelmEngineering + gloves: ClothingHandsGlovesEnviroglovesEngineering diff --git a/Resources/Prototypes/Roles/Jobs/Engineering/technical_assistant.yml b/Resources/Prototypes/Roles/Jobs/Engineering/technical_assistant.yml index 668af727519..62b2f47207b 100644 --- a/Resources/Prototypes/Roles/Jobs/Engineering/technical_assistant.yml +++ b/Resources/Prototypes/Roles/Jobs/Engineering/technical_assistant.yml @@ -12,6 +12,11 @@ # time: 54000 #15 hrs # inverted: true # stop playing intern if you're good at engineering! startingGear: TechnicalAssistantGear + conditionalStartingGear: # TODO: technical assistant plasmaman gear + - id: StationEngineerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconTechnicalAssistant" supervisors: job-supervisors-engineering canBeAntag: true # DeltaV - Can be antagonist diff --git a/Resources/Prototypes/Roles/Jobs/Medical/chemist.yml b/Resources/Prototypes/Roles/Jobs/Medical/chemist.yml index 12e457ac2e1..16bd418f707 100644 --- a/Resources/Prototypes/Roles/Jobs/Medical/chemist.yml +++ b/Resources/Prototypes/Roles/Jobs/Medical/chemist.yml @@ -8,6 +8,11 @@ department: Medical min: 28800 # DeltaV - 8 hours startingGear: ChemistGear + conditionalStartingGear: + - id: ChemistPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconChemist" supervisors: job-supervisors-cmo access: @@ -32,3 +37,11 @@ innerClothingSkirt: ClothingUniformJumpskirtChemistry satchel: ClothingBackpackSatchelChemistryFilled duffelbag: ClothingBackpackDuffelChemistryFilled + +- type: startingGear + id: ChemistPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitChemist + head: ClothingHeadEnvirohelmChemist + gloves: ClothingHandsGlovesEnviroglovesWhite diff --git a/Resources/Prototypes/Roles/Jobs/Medical/chief_medical_officer.yml b/Resources/Prototypes/Roles/Jobs/Medical/chief_medical_officer.yml index ee57445cdf3..65fb5d2a86d 100644 --- a/Resources/Prototypes/Roles/Jobs/Medical/chief_medical_officer.yml +++ b/Resources/Prototypes/Roles/Jobs/Medical/chief_medical_officer.yml @@ -20,6 +20,11 @@ min: 72000 # DeltaV - 20 hours weight: 10 startingGear: CMOGear + conditionalStartingGear: + - id: CMOPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconChiefMedicalOfficer" requireAdminNotify: true supervisors: job-supervisors-captain @@ -57,3 +62,11 @@ innerClothingSkirt: ClothingUniformJumpskirtCMO satchel: ClothingBackpackSatchelCMOFilled duffelbag: ClothingBackpackDuffelCMOFilled + +- type: startingGear + id: CMOPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitCMO + head: ClothingHeadEnvirohelmCMO + gloves: ClothingHandsGlovesEnviroglovesWhite diff --git a/Resources/Prototypes/Roles/Jobs/Medical/medical_doctor.yml b/Resources/Prototypes/Roles/Jobs/Medical/medical_doctor.yml index 8d37afdc51a..e91c2752838 100644 --- a/Resources/Prototypes/Roles/Jobs/Medical/medical_doctor.yml +++ b/Resources/Prototypes/Roles/Jobs/Medical/medical_doctor.yml @@ -8,6 +8,11 @@ department: Medical min: 14400 #4 hrs startingGear: DoctorGear + conditionalStartingGear: + - id: DoctorPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconMedicalDoctor" supervisors: job-supervisors-cmo access: @@ -34,3 +39,11 @@ innerClothingSkirt: ClothingUniformJumpskirtMedicalDoctor satchel: ClothingBackpackSatchelMedicalFilled duffelbag: ClothingBackpackDuffelMedicalFilled + +- type: startingGear + id: DoctorPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitMedicalDoctor + head: ClothingHeadEnvirohelmMedicalDoctor + gloves: ClothingHandsGlovesEnviroglovesWhite diff --git a/Resources/Prototypes/Roles/Jobs/Medical/medical_intern.yml b/Resources/Prototypes/Roles/Jobs/Medical/medical_intern.yml index 5492d02e09e..03badbf4c49 100644 --- a/Resources/Prototypes/Roles/Jobs/Medical/medical_intern.yml +++ b/Resources/Prototypes/Roles/Jobs/Medical/medical_intern.yml @@ -1,4 +1,4 @@ -- type: job +- type: job id: MedicalIntern name: job-name-intern description: job-description-intern @@ -9,6 +9,11 @@ # time: 54000 # 15 hrs # inverted: true # stop playing intern if you're good at med! startingGear: MedicalInternGear + conditionalStartingGear: # TODO: medical intern plasmaman gear + - id: DoctorPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconMedicalIntern" supervisors: job-supervisors-medicine canBeAntag: true # DeltaV - Can be antagonist diff --git a/Resources/Prototypes/Roles/Jobs/Medical/paramedic.yml b/Resources/Prototypes/Roles/Jobs/Medical/paramedic.yml index 92c5b1857c5..9914c887254 100644 --- a/Resources/Prototypes/Roles/Jobs/Medical/paramedic.yml +++ b/Resources/Prototypes/Roles/Jobs/Medical/paramedic.yml @@ -14,6 +14,11 @@ # - !type:OverallPlaytimeRequirement # DeltaV - No playtime requirement # time: 54000 # 15 hrs startingGear: ParamedicGear + conditionalStartingGear: + - id: ParamedicPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconParamedic" supervisors: job-supervisors-cmo access: @@ -44,3 +49,11 @@ innerClothingSkirt: ClothingUniformJumpskirtParamedic satchel: ClothingBackpackSatchelParamedicFilledDV duffelbag: ClothingBackpackDuffelParamedicFilledDV + +- type: startingGear + id: ParamedicPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitParamedic + head: ClothingHeadEnvirohelmParamedic + gloves: ClothingHandsGlovesEnviroglovesNitrile diff --git a/Resources/Prototypes/Roles/Jobs/Medical/senior_physician.yml b/Resources/Prototypes/Roles/Jobs/Medical/senior_physician.yml index 4ff52e14490..b2514582e8d 100644 --- a/Resources/Prototypes/Roles/Jobs/Medical/senior_physician.yml +++ b/Resources/Prototypes/Roles/Jobs/Medical/senior_physician.yml @@ -14,6 +14,11 @@ department: Medical min: 216000 # 60 hrs startingGear: SeniorPhysicianGear + conditionalStartingGear: + - id: DoctorPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconSeniorPhysician" supervisors: job-supervisors-cmo access: diff --git a/Resources/Prototypes/Roles/Jobs/Science/research_assistant.yml b/Resources/Prototypes/Roles/Jobs/Science/research_assistant.yml index 4d4038d7c02..5b65ea63ea4 100644 --- a/Resources/Prototypes/Roles/Jobs/Science/research_assistant.yml +++ b/Resources/Prototypes/Roles/Jobs/Science/research_assistant.yml @@ -1,4 +1,4 @@ -- type: job +- type: job id: ResearchAssistant name: job-name-research-assistant description: job-description-research-assistant @@ -9,6 +9,11 @@ # time: 54000 #15 hrs # inverted: true # stop playing intern if you're good at science! startingGear: ResearchAssistantGear + conditionalStartingGear: # TODO: research assistant plasmaman gear + - id: ScientistPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconResearchAssistant" supervisors: job-supervisors-science canBeAntag: true # DeltaV - Can be antagonist diff --git a/Resources/Prototypes/Roles/Jobs/Science/research_director.yml b/Resources/Prototypes/Roles/Jobs/Science/research_director.yml index 46d91ee00ee..2a0e3d3e341 100644 --- a/Resources/Prototypes/Roles/Jobs/Science/research_director.yml +++ b/Resources/Prototypes/Roles/Jobs/Science/research_director.yml @@ -21,6 +21,11 @@ - AnomalousPositronics weight: 10 startingGear: ResearchDirectorGear + conditionalStartingGear: + - id: ScientistPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconResearchDirector" requireAdminNotify: true supervisors: job-supervisors-captain diff --git a/Resources/Prototypes/Roles/Jobs/Science/roboticist.yml b/Resources/Prototypes/Roles/Jobs/Science/roboticist.yml index 1d2434a4e0c..34423aa6b0d 100644 --- a/Resources/Prototypes/Roles/Jobs/Science/roboticist.yml +++ b/Resources/Prototypes/Roles/Jobs/Science/roboticist.yml @@ -8,6 +8,11 @@ department: Epistemics min: 14400 # 4 hours - same as scientist startingGear: RoboticistGear + conditionalStartingGear: + - id: RoboticistPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconRoboticist" supervisors: job-supervisors-rd access: @@ -26,3 +31,11 @@ innerClothingSkirt: ClothingUniformJumpskirtRoboticist satchel: ClothingBackpackSatchelRoboticsFilled duffelbag: ClothingBackpackDuffelRoboticsFilled + +- type: startingGear + id: RoboticistPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitRoboticist + head: ClothingHeadEnvirohelmRoboticist + gloves: ClothingHandsGlovesEnviroglovesRoboticist diff --git a/Resources/Prototypes/Roles/Jobs/Science/scientist.yml b/Resources/Prototypes/Roles/Jobs/Science/scientist.yml index 2d91e0e6ef9..a1b7d566069 100644 --- a/Resources/Prototypes/Roles/Jobs/Science/scientist.yml +++ b/Resources/Prototypes/Roles/Jobs/Science/scientist.yml @@ -8,6 +8,11 @@ department: Epistemics # DeltaV - Epistemics Department replacing Science min: 14400 #4 hrs startingGear: ScientistGear + conditionalStartingGear: + - id: ScientistPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconScientist" supervisors: job-supervisors-rd access: @@ -26,3 +31,11 @@ innerClothingSkirt: ClothingUniformJumpskirtScientist satchel: ClothingBackpackSatchelScienceFilled duffelbag: ClothingBackpackDuffelScienceFilled + +- type: startingGear + id: ScientistPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitScientist + head: ClothingHeadEnvirohelmScientist + gloves: ClothingHandsGlovesEnviroglovesWhite diff --git a/Resources/Prototypes/Roles/Jobs/Science/senior_researcher.yml b/Resources/Prototypes/Roles/Jobs/Science/senior_researcher.yml index ecb61b36f4a..618a6a276c0 100644 --- a/Resources/Prototypes/Roles/Jobs/Science/senior_researcher.yml +++ b/Resources/Prototypes/Roles/Jobs/Science/senior_researcher.yml @@ -8,6 +8,11 @@ department: Epistemics # DeltaV - Epistemics Department replacing Science min: 216000 #60 hrs startingGear: SeniorResearcherGear + conditionalStartingGear: + - id: ScientistPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconSeniorResearcher" supervisors: job-supervisors-rd access: diff --git a/Resources/Prototypes/Roles/Jobs/Security/detective.yml b/Resources/Prototypes/Roles/Jobs/Security/detective.yml index 04dc55bc1f0..46cd9034cb2 100644 --- a/Resources/Prototypes/Roles/Jobs/Security/detective.yml +++ b/Resources/Prototypes/Roles/Jobs/Security/detective.yml @@ -8,6 +8,11 @@ department: Security min: 36000 # DeltaV - 10 hours startingGear: DetectiveGear + conditionalStartingGear: + - id: DetectivePlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconDetective" supervisors: job-supervisors-hos canBeAntag: false @@ -38,3 +43,11 @@ innerClothingSkirt: ClothingUniformJumpskirtDetective satchel: ClothingBackpackSatchelSecurity duffelbag: ClothingBackpackDuffelSecurity + +- type: startingGear + id: DetectivePlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitEnviroslacks + head: ClothingHeadEnvirohelmWhite + gloves: ClothingHandsGlovesEnviroglovesWhite diff --git a/Resources/Prototypes/Roles/Jobs/Security/head_of_security.yml b/Resources/Prototypes/Roles/Jobs/Security/head_of_security.yml index a815ed32e6d..8bc54188a61 100644 --- a/Resources/Prototypes/Roles/Jobs/Security/head_of_security.yml +++ b/Resources/Prototypes/Roles/Jobs/Security/head_of_security.yml @@ -18,6 +18,11 @@ - !type:CharacterWhitelistRequirement weight: 10 startingGear: HoSGear + conditionalStartingGear: + - id: HoSPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconHeadOfSecurity" requireAdminNotify: true supervisors: job-supervisors-captain @@ -55,3 +60,11 @@ innerClothingSkirt: ClothingUniformJumpskirtHoS satchel: ClothingBackpackSatchelHOSFilled duffelbag: ClothingBackpackDuffelHOSFilled + +- type: startingGear + id: HoSPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitHoS + head: ClothingHeadEnvirohelmHoS + gloves: ClothingHandsGlovesEnviroglovesBlack diff --git a/Resources/Prototypes/Roles/Jobs/Security/security_cadet.yml b/Resources/Prototypes/Roles/Jobs/Security/security_cadet.yml index 6596c2142d0..9e3846cdf49 100644 --- a/Resources/Prototypes/Roles/Jobs/Security/security_cadet.yml +++ b/Resources/Prototypes/Roles/Jobs/Security/security_cadet.yml @@ -11,6 +11,11 @@ # time: 54000 #15 hrs # inverted: true # stop playing intern if you're good at security! startingGear: SecurityCadetGear + conditionalStartingGear: # TODO: technical assistant plasmaman gear + - id: SecurityOfficerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconSecurityCadet" supervisors: job-supervisors-security canBeAntag: false diff --git a/Resources/Prototypes/Roles/Jobs/Security/security_officer.yml b/Resources/Prototypes/Roles/Jobs/Security/security_officer.yml index 18f6d04022c..b1d2eacf7fa 100644 --- a/Resources/Prototypes/Roles/Jobs/Security/security_officer.yml +++ b/Resources/Prototypes/Roles/Jobs/Security/security_officer.yml @@ -7,6 +7,11 @@ - !type:CharacterDepartmentTimeRequirement department: Security startingGear: SecurityOfficerGear + conditionalStartingGear: + - id: SecurityOfficerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconSecurityOfficer" supervisors: job-supervisors-hos canBeAntag: false @@ -36,3 +41,11 @@ innerClothingSkirt: ClothingUniformJumpskirtSec satchel: ClothingBackpackSatchelSecurity duffelbag: ClothingBackpackDuffelSecurity + +- type: startingGear + id: SecurityOfficerPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitSec + head: ClothingHeadEnvirohelmSec + gloves: ClothingHandsGlovesEnviroglovesBlack diff --git a/Resources/Prototypes/Roles/Jobs/Security/senior_officer.yml b/Resources/Prototypes/Roles/Jobs/Security/senior_officer.yml index d395e0f5cdc..69565c174f5 100644 --- a/Resources/Prototypes/Roles/Jobs/Security/senior_officer.yml +++ b/Resources/Prototypes/Roles/Jobs/Security/senior_officer.yml @@ -18,6 +18,11 @@ department: Security min: 216000 # 60 hrs startingGear: SeniorOfficerGear + conditionalStartingGear: + - id: SecurityOfficerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconSeniorOfficer" supervisors: job-supervisors-hos canBeAntag: false diff --git a/Resources/Prototypes/Roles/Jobs/Security/warden.yml b/Resources/Prototypes/Roles/Jobs/Security/warden.yml index 5f68518b084..253b5d4f8d0 100644 --- a/Resources/Prototypes/Roles/Jobs/Security/warden.yml +++ b/Resources/Prototypes/Roles/Jobs/Security/warden.yml @@ -12,6 +12,11 @@ min: 14400 # DeltaV - 4 hours - !type:CharacterWhitelistRequirement startingGear: WardenGear + conditionalStartingGear: + - id: WardenPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconWarden" supervisors: job-supervisors-hos canBeAntag: false @@ -43,3 +48,11 @@ innerClothingSkirt: ClothingUniformJumpskirtWarden satchel: ClothingBackpackSatchelSecurity duffelbag: ClothingBackpackDuffelSecurity + +- type: startingGear + id: WardenPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitWarden + head: ClothingHeadEnvirohelmWarden + gloves: ClothingHandsGlovesEnviroglovesBlack diff --git a/Resources/Prototypes/Roles/Jobs/Wildcards/boxer.yml b/Resources/Prototypes/Roles/Jobs/Wildcards/boxer.yml index 33def38bb08..cf3f5f95f93 100644 --- a/Resources/Prototypes/Roles/Jobs/Wildcards/boxer.yml +++ b/Resources/Prototypes/Roles/Jobs/Wildcards/boxer.yml @@ -7,6 +7,11 @@ - !type:CharacterOverallTimeRequirement min: 7200 #DeltaV 2 hours startingGear: BoxerGear + conditionalStartingGear: + - id: BoxerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconBoxer" supervisors: job-supervisors-hop access: @@ -36,3 +41,11 @@ innerClothingSkirt: UniformShortsRedWithTop satchel: ClothingBackpackSatchelFilled duffelbag: ClothingBackpackDuffelFilled + +- type: startingGear + id: BoxerPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuit + head: ClothingHeadEnvirohelm + # No envirogloves, use the boxing gloves diff --git a/Resources/Prototypes/Roles/Jobs/Wildcards/psychologist.yml b/Resources/Prototypes/Roles/Jobs/Wildcards/psychologist.yml index a2974c6eb7a..05d3bc8ebae 100644 --- a/Resources/Prototypes/Roles/Jobs/Wildcards/psychologist.yml +++ b/Resources/Prototypes/Roles/Jobs/Wildcards/psychologist.yml @@ -10,6 +10,11 @@ department: Medical min: 14400 #DeltaV 4 hrs startingGear: PsychologistGear + conditionalStartingGear: + - id: PsychologistPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconPsychologist" supervisors: job-supervisors-cmo access: @@ -30,3 +35,11 @@ innerClothingSkirt: ClothingUniformJumpsuitPsychologist satchel: ClothingBackpackSatchelPsychologistFilled #DeltaV - stamp included duffelbag: ClothingBackpackDuffelPsychologistFilled #DeltaV - stamp included + +- type: startingGear + id: PsychologistPlasmamanGear + parent: BasePlasmamanGear + equipment: + jumpsuit: ClothingUniformEnvirosuitEnviroslacks + head: ClothingHeadEnvirohelmMedicalDoctor + gloves: ClothingHandsGlovesEnviroglovesWhite diff --git a/Resources/Prototypes/Roles/Jobs/Wildcards/reporter.yml b/Resources/Prototypes/Roles/Jobs/Wildcards/reporter.yml index ad810e970e9..b2b2ad0dfe4 100644 --- a/Resources/Prototypes/Roles/Jobs/Wildcards/reporter.yml +++ b/Resources/Prototypes/Roles/Jobs/Wildcards/reporter.yml @@ -7,6 +7,11 @@ - !type:CharacterOverallTimeRequirement min: 7200 #DeltaV 2 hours startingGear: ReporterGear + conditionalStartingGear: + - id: PassengerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconReporter" supervisors: job-supervisors-hop access: diff --git a/Resources/Prototypes/Roles/Jobs/Wildcards/zookeeper.yml b/Resources/Prototypes/Roles/Jobs/Wildcards/zookeeper.yml index 1686e3290fa..d08b9570538 100644 --- a/Resources/Prototypes/Roles/Jobs/Wildcards/zookeeper.yml +++ b/Resources/Prototypes/Roles/Jobs/Wildcards/zookeeper.yml @@ -7,6 +7,11 @@ - !type:CharacterOverallTimeRequirement min: 7200 #DeltaV 2 hours startingGear: ZookeeperGear + conditionalStartingGear: + - id: PassengerPlasmamanGear + requirements: + - !type:CharacterSpeciesRequirement + species: [ Plasmaman ] icon: "JobIconZookeeper" supervisors: job-supervisors-hop access: