mirror of
https://github.com/WWhiteDreamProject/wwdpublic.git
synced 2026-04-23 16:48:10 +03:00
# Description This is a port of https://github.com/Fansana/floofstation1/pull/445 Except I despise that this wasn't upstreamed so much that I didn't even cherrypick it. # Changelog 🆑 - add: Footprints are now cleaned in a small radius around the mouse cursor when mopping them. (cherry picked from commit 11678af96950f6af75f7effef40fc92a7af33350)
78 lines
2.0 KiB
C#
78 lines
2.0 KiB
C#
using System.Numerics;
|
|
using Content.Shared.Chemistry.Components;
|
|
using Content.Shared.FixedPoint;
|
|
using Robust.Shared.Prototypes;
|
|
using Robust.Shared.Utility;
|
|
|
|
namespace Content.Shared.FootPrint;
|
|
|
|
[RegisterComponent]
|
|
public sealed partial class FootPrintsComponent : Component
|
|
{
|
|
[DataField]
|
|
public ResPath RsiPath = new("/Textures/Effects/footprints.rsi");
|
|
|
|
[DataField]
|
|
public string
|
|
LeftBarePrint = "footprint-left-bare-human",
|
|
RightBarePrint = "footprint-right-bare-human",
|
|
ShoesPrint = "footprint-shoes",
|
|
SuitPrint = "footprint-suit";
|
|
|
|
[DataField]
|
|
public string[] DraggingPrint =
|
|
[
|
|
"dragging-1",
|
|
"dragging-2",
|
|
"dragging-3",
|
|
"dragging-4",
|
|
"dragging-5",
|
|
];
|
|
|
|
[DataField]
|
|
public EntProtoId<FootPrintComponent> StepProtoId = "Footstep";
|
|
|
|
/// <summary>
|
|
/// The size scaling factor for footprint steps. Must be positive.
|
|
/// </summary>
|
|
[DataField]
|
|
public float StepSize = 0.7f;
|
|
|
|
/// <summary>
|
|
/// The size scaling factor for drag marks. Must be positive.
|
|
/// </summary>
|
|
[DataField]
|
|
public float DragSize = 0.5f;
|
|
|
|
/// <summary>
|
|
/// Horizontal offset of the created footprints relative to the center.
|
|
/// </summary>
|
|
[DataField]
|
|
public Vector2 OffsetPrint = new(0.1f, 0f);
|
|
|
|
/// <summary>
|
|
/// Tracks which foot should make the next print. True for right foot, false for left.
|
|
/// </summary>
|
|
public bool RightStep = true;
|
|
|
|
/// <summary>
|
|
/// The position of the last footprint in world coordinates.
|
|
/// </summary>
|
|
public Vector2 LastStepPos = Vector2.Zero;
|
|
|
|
[DataField]
|
|
public HashSet<string> DNAs = new();
|
|
|
|
/// <summary>
|
|
/// Reagent volume used for footprints.
|
|
/// </summary>
|
|
[DataField]
|
|
public Solution ContainedSolution = new(3) { CanReact = true, MaxVolume = 5f, };
|
|
|
|
/// <summary>
|
|
/// Amount of reagents used per footprint.
|
|
/// </summary>
|
|
[DataField]
|
|
public FixedPoint2 FootprintVolume = 1f;
|
|
}
|