Pipe painter (now with airlock painter) (#19031)

* Add a pipe painting function to the airlock painter

Signed-off-by: c4llv07e <kseandi@gmail.com>

* Rename engineer painter to omnipainter

Signed-off-by: c4llv07e <kseandi@gmail.com>

* review changes

Signed-off-by: c4llv07e <kseandi@gmail.com>

* fix migration duplicate

Signed-off-by: c4llv07e <kseandi@gmail.com>

---------

Signed-off-by: c4llv07e <kseandi@gmail.com>
This commit is contained in:
c4llv07e
2023-08-14 12:06:21 +00:00
committed by GitHub
parent 3b7a23bde4
commit d7eb3bfb44
36 changed files with 649 additions and 446 deletions

View File

@@ -0,0 +1,28 @@
using Robust.Shared.Audio;
namespace Content.Server.SprayPainter;
[RegisterComponent]
public sealed class SprayPainterComponent : Component
{
[DataField("spraySound")]
public SoundSpecifier SpraySound = new SoundPathSpecifier("/Audio/Effects/spray2.ogg");
[DataField("airlockSprayTime")]
public float AirlockSprayTime = 3.0f;
[DataField("pipeSprayTime")]
public float PipeSprayTime = 1.0f;
[DataField("isSpraying")]
public bool IsSpraying = false;
[ViewVariables(VVAccess.ReadWrite)]
public string? PickedColor;
[ViewVariables(VVAccess.ReadWrite)]
[DataField("colorPalette")]
public Dictionary<string, Color> ColorPalette = new();
public int Index = default!;
}