diff --git a/Content.Shared/RCD/Systems/RCDSystem.cs b/Content.Shared/RCD/Systems/RCDSystem.cs index d7126716ed..402b424fb6 100644 --- a/Content.Shared/RCD/Systems/RCDSystem.cs +++ b/Content.Shared/RCD/Systems/RCDSystem.cs @@ -38,6 +38,7 @@ public sealed class RCDSystem : EntitySystem [Dependency] private readonly SharedPopupSystem _popup = default!; [Dependency] private readonly TagSystem _tag = default!; [Dependency] private readonly TurfSystem _turf = default!; + [Dependency] private readonly IGameTiming _gameTiming = default!; private readonly int RcdModeCount = Enum.GetValues(typeof(RcdMode)).Length; @@ -110,7 +111,9 @@ public sealed class RCDSystem : EntitySystem }; args.Handled = true; - _doAfter.TryStartDoAfter(doAfterArgs); + + if (_doAfter.TryStartDoAfter(doAfterArgs) && _gameTiming.IsFirstTimePredicted) + Spawn("EffectRCDConstruction", location); } private void OnDoAfterAttempt(EntityUid uid, RCDComponent comp, DoAfterAttemptEvent args) diff --git a/Resources/Prototypes/Entities/Effects/rcd.yml b/Resources/Prototypes/Entities/Effects/rcd.yml new file mode 100644 index 0000000000..adc6aa593c --- /dev/null +++ b/Resources/Prototypes/Entities/Effects/rcd.yml @@ -0,0 +1,16 @@ +- type: entity + id: EffectRCDConstruction + noSpawn: true + components: + - type: Transform + anchored: True + - type: Sprite + drawdepth: Effects + sprite: /Textures/Effects/rcd.rsi + state: construct + - type: TimedDespawn + lifetime: 3.2 + - type: Tag + tags: + - HideContextMenu + - type: AnimationPlayer diff --git a/Resources/Textures/Effects/rcd.rsi/construct.png b/Resources/Textures/Effects/rcd.rsi/construct.png new file mode 100644 index 0000000000..f4be36c9bf Binary files /dev/null and b/Resources/Textures/Effects/rcd.rsi/construct.png differ diff --git a/Resources/Textures/Effects/rcd.rsi/meta.json b/Resources/Textures/Effects/rcd.rsi/meta.json new file mode 100644 index 0000000000..5004a9c4fc --- /dev/null +++ b/Resources/Textures/Effects/rcd.rsi/meta.json @@ -0,0 +1,50 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgStation at commit https://github.com/tgstation/tgstation/commit/d75cbd0a2900fdec4c12cd5ba986b52ccff03713/icons/effects/effects_rcd.dmi", + "states": [ + { + "name": "construct", + "delays": [ + [ + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1, + 0.1 + ] + ] + } + ] +}