From cc985e57be66726930c82d3c1874127fe1f0a8bd Mon Sep 17 00:00:00 2001 From: rhailrake <49613070+rhailrake@users.noreply.github.com> Date: Mon, 1 May 2023 17:32:16 +0600 Subject: [PATCH] [feat] Custom ghost sprite --- .../CustomGhostVisualizer.cs | 25 +++++++ .../CustomGhostSpriteSystem.cs | 61 ++++++++++++++++++ .../CustomGhostSystem/CustomGhostPrototype.cs | 38 +++++++++++ .../White/Sponsors/MsgSponsorInfo.cs | 9 +++ .../Prototypes/White/Ghosts/custom_ghosts.yml | 23 +++++++ .../Ghosts/merkkaa-ghost.rsi/animated.png | Bin 0 -> 11720 bytes .../White/Ghosts/merkkaa-ghost.rsi/meta.json | 32 +++++++++ .../Ghosts/nairsark-ghost.rsi/animated.png | Bin 0 -> 30569 bytes .../White/Ghosts/nairsark-ghost.rsi/meta.json | 57 ++++++++++++++++ .../Ghosts/ravmorgan-ghost.rsi/animated.png | Bin 0 -> 2278 bytes .../Ghosts/ravmorgan-ghost.rsi/meta.json | 14 ++++ 11 files changed, 259 insertions(+) create mode 100644 Content.Client/White/CustomGhostSpriteSystem/CustomGhostVisualizer.cs create mode 100644 Content.Server/White/CustomGhostSpriteSystem/CustomGhostSpriteSystem.cs create mode 100644 Content.Shared/White/CustomGhostSystem/CustomGhostPrototype.cs create mode 100644 Resources/Prototypes/White/Ghosts/custom_ghosts.yml create mode 100644 Resources/Textures/White/Ghosts/merkkaa-ghost.rsi/animated.png create mode 100644 Resources/Textures/White/Ghosts/merkkaa-ghost.rsi/meta.json create mode 100644 Resources/Textures/White/Ghosts/nairsark-ghost.rsi/animated.png create mode 100644 Resources/Textures/White/Ghosts/nairsark-ghost.rsi/meta.json create mode 100644 Resources/Textures/White/Ghosts/ravmorgan-ghost.rsi/animated.png create mode 100644 Resources/Textures/White/Ghosts/ravmorgan-ghost.rsi/meta.json diff --git a/Content.Client/White/CustomGhostSpriteSystem/CustomGhostVisualizer.cs b/Content.Client/White/CustomGhostSpriteSystem/CustomGhostVisualizer.cs new file mode 100644 index 0000000000..634d80c513 --- /dev/null +++ b/Content.Client/White/CustomGhostSpriteSystem/CustomGhostVisualizer.cs @@ -0,0 +1,25 @@ +using Content.Client.Ghost; +using Content.Shared.White.CustomGhostSystem; +using Robust.Client.GameObjects; + +namespace Content.Client.White.CustomGhostSpriteSystem; + +public sealed class CustomGhostVisualizer : VisualizerSystem +{ + protected override void OnAppearanceChange(EntityUid uid, GhostComponent component, ref AppearanceChangeEvent args) + { + base.OnAppearanceChange(uid, component, ref args); + + if(args.Sprite == null) return; + + if (AppearanceSystem.TryGetData(uid, CustomGhostAppearance.Sprite, out var rsiPath, args.Component)) + { + args.Sprite.LayerSetRSI(0, rsiPath); + } + + if(AppearanceSystem.TryGetData(uid, CustomGhostAppearance.AlphaOverride, out var alpha, args.Component)) + { + args.Sprite.Color = args.Sprite.Color.WithAlpha(alpha); + } + } +} diff --git a/Content.Server/White/CustomGhostSpriteSystem/CustomGhostSpriteSystem.cs b/Content.Server/White/CustomGhostSpriteSystem/CustomGhostSpriteSystem.cs new file mode 100644 index 0000000000..3e6ae1f836 --- /dev/null +++ b/Content.Server/White/CustomGhostSpriteSystem/CustomGhostSpriteSystem.cs @@ -0,0 +1,61 @@ +using Content.Server.Ghost.Components; +using Content.Shared.White.CustomGhostSystem; +using Robust.Server.GameObjects; +using Robust.Server.Player; +using Robust.Shared.Prototypes; + +namespace Content.Server.White.CustomGhostSpriteSystem; + +public sealed class CustomGhostSpriteSystem : EntitySystem +{ + [Dependency] private readonly IPrototypeManager _prototypeManager = default!; + [Dependency] private readonly SharedAppearanceSystem _appearanceSystem = default!; + [Dependency] private readonly IPlayerManager _playerManager = default!; + + + public override void Initialize() + { + base.Initialize(); + SubscribeLocalEvent(OnShit); + } + + private void OnShit(EntityUid uid, GhostComponent component, PlayerAttachedEvent args) + { + if(!_playerManager.TryGetSessionByEntity(uid, out var session)) + return; + + TrySetCustomSprite(uid, session.Name); + } + + + public void TrySetCustomSprite(EntityUid ghostUid, string ckey) + { + var prototypes = _prototypeManager.EnumeratePrototypes(); + + foreach (var customGhostPrototype in prototypes) + { + if (string.Equals(customGhostPrototype.Ckey, ckey, StringComparison.CurrentCultureIgnoreCase)) + { + _appearanceSystem.SetData(ghostUid, CustomGhostAppearance.Sprite, customGhostPrototype.CustomSpritePath.ToString()); + + if(customGhostPrototype.AlphaOverride > 0) + { + _appearanceSystem.SetData(ghostUid, CustomGhostAppearance.AlphaOverride, customGhostPrototype.AlphaOverride); + } + + if (customGhostPrototype.GhostName != string.Empty) + { + MetaData(ghostUid).EntityName = customGhostPrototype.GhostName; + } + + if (customGhostPrototype.GhostDescription != string.Empty) + { + MetaData(ghostUid).EntityDescription = customGhostPrototype.GhostDescription; + } + + return; + } + + } + } +} diff --git a/Content.Shared/White/CustomGhostSystem/CustomGhostPrototype.cs b/Content.Shared/White/CustomGhostSystem/CustomGhostPrototype.cs new file mode 100644 index 0000000000..67921d5742 --- /dev/null +++ b/Content.Shared/White/CustomGhostSystem/CustomGhostPrototype.cs @@ -0,0 +1,38 @@ +using Robust.Shared.Prototypes; +using Robust.Shared.Serialization; +using Robust.Shared.Utility; + +namespace Content.Shared.White.CustomGhostSystem; + +/// +/// This is a prototype for... +/// +[Prototype("customGhost")] +public sealed class CustomGhostPrototype : IPrototype +{ + /// + [IdDataField] + public string ID { get; } = default!; + + [DataField("ckey", required: true)] + public string Ckey { get; } = default!; + + [DataField("sprite", required: true)] + public ResPath CustomSpritePath { get; } = default!; + + [DataField("alpha")] + public float AlphaOverride { get; } = -1; + + [DataField("ghostName")] + public string GhostName = string.Empty; + + [DataField("ghostDescription")] + public string GhostDescription = string.Empty; +} + +[Serializable, NetSerializable] +public enum CustomGhostAppearance +{ + Sprite, + AlphaOverride +} diff --git a/Content.Shared/White/Sponsors/MsgSponsorInfo.cs b/Content.Shared/White/Sponsors/MsgSponsorInfo.cs index f197b3ecc8..dd9aaa32c3 100644 --- a/Content.Shared/White/Sponsors/MsgSponsorInfo.cs +++ b/Content.Shared/White/Sponsors/MsgSponsorInfo.cs @@ -7,6 +7,15 @@ using Robust.Shared.Utility; namespace Content.Shared.White.Sponsors; +public enum WhiteSponsorTier +{ + DJ = 5, + ROBUSTER = 4, + CLOWN = 3, + PRIKOLIST = 2, + MEATYORE = 1 +} + [Serializable, NetSerializable] public sealed class SponsorInfo { diff --git a/Resources/Prototypes/White/Ghosts/custom_ghosts.yml b/Resources/Prototypes/White/Ghosts/custom_ghosts.yml new file mode 100644 index 0000000000..3d931d2285 --- /dev/null +++ b/Resources/Prototypes/White/Ghosts/custom_ghosts.yml @@ -0,0 +1,23 @@ +- type: customGhost + id: ravmorgan-ghost + ckey: ravmorgan + sprite: White/Ghosts/ravmorgan-ghost.rsi + alpha: 0.9 + ghostName: Яйцо + ghostDescription: Большое... + +- type: customGhost + id: merkkaa-ghost + ckey: merkkaa + sprite: White/Ghosts/merkkaa-ghost.rsi + alpha: 0.9 + ghostName: Мурка + ghostDescription: Ня... + +- type: customGhost + id: nairsark-ghost + ckey: nairsark + sprite: White/Ghosts/nairsark-ghost.rsi + alpha: 1 + ghostName: Maid + ghostDescription: Not a fucking fumo diff --git a/Resources/Textures/White/Ghosts/merkkaa-ghost.rsi/animated.png b/Resources/Textures/White/Ghosts/merkkaa-ghost.rsi/animated.png new file mode 100644 index 0000000000000000000000000000000000000000..bd8d9f4d189633f4de514c78d6c7aefe40512686 GIT binary patch literal 11720 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 OjGUCRWQDj%(EkFA^E2ZB literal 0 HcmV?d00001 diff --git a/Resources/Textures/White/Ghosts/nairsark-ghost.rsi/meta.json b/Resources/Textures/White/Ghosts/nairsark-ghost.rsi/meta.json new file mode 100644 index 0000000000..6edddc1c9c --- /dev/null +++ b/Resources/Textures/White/Ghosts/nairsark-ghost.rsi/meta.json @@ -0,0 +1,57 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", +"copyright": "Created by MOYAMAMA", + "size": { + "x": 48, + "y": 64 + }, + "states": [ + { + "name": "animated", + "directions": 4, + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.3, + 0.2, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.3, + 0.2, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.3, + 0.2, + 0.1, + 0.1 + ], + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.3, + 0.2, + 0.1, + 0.1 + ] + ] + } + ] +} diff --git a/Resources/Textures/White/Ghosts/ravmorgan-ghost.rsi/animated.png b/Resources/Textures/White/Ghosts/ravmorgan-ghost.rsi/animated.png new file mode 100644 index 0000000000000000000000000000000000000000..433e10e71890f871e2b95fbb7dffed5bb8b40732 GIT binary patch literal 2278 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