mirror of
https://github.com/WWhiteDreamProject/wwdpublic.git
synced 2026-04-18 05:59:03 +03:00
Port medical patches from [Goob-Station](https://github.com/Goob-Station/Goob-Station). Prs: https://github.com/space-wizards/space-station-14/pull/30230 https://github.com/Goob-Station/Goob-Station/pull/493 https://github.com/Goob-Station/Goob-Station/pull/663 https://github.com/Goob-Station/Goob-Station/pull/1086 https://github.com/Goob-Station/Goob-Station/pull/1072 https://github.com/Goob-Station/Goob-Station/pull/1243 https://github.com/Goob-Station/Goob-Station/pull/1246 https://github.com/Goob-Station/Goob-Station/pull/1707 --- <details><summary><h1>Media</h1></summary> <p>  </p> </details> --- 🆑 deltanedas, jorgun, fishbait_x, Huffs-The-Frezone, Teapug, Speebr0, CerberusWolfie, yglop, botanySupremist, Will-Oliver-Br - add: Added medical patches - add: Added a guidebook entry for medical patches. --------- Signed-off-by: Will-Oliver-Br <164823659+Will-Oliver-Br@users.noreply.github.com> Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com> Co-authored-by: fishbait <gnesse@gmail.com> Co-authored-by: unknown <Administrator@DESKTOP-PMRIVVA.kommune.indresogn.no> Co-authored-by: Fishbait <Fishbait@git.ml> Co-authored-by: Theapug <159912420+Teapug@users.noreply.github.com> Co-authored-by: Speebro <100388782+Speebr0@users.noreply.github.com> Co-authored-by: Speebro <speebro@notreal.com> Co-authored-by: John Willis <143434770+CerberusWolfie@users.noreply.github.com> Co-authored-by: yglop <95057024+yglop@users.noreply.github.com> Co-authored-by: botanySupremist <160211017+botanySupremist@users.noreply.github.com> Co-authored-by: botanySupremist <definitelyrealBotSupremist@gmail.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
91 lines
2.6 KiB
C#
91 lines
2.6 KiB
C#
using Content.Shared.Sticky.Systems;
|
||
using Content.Shared.Whitelist;
|
||
using Robust.Shared.GameStates;
|
||
using Robust.Shared.Utility;
|
||
|
||
namespace Content.Shared.Sticky.Components;
|
||
|
||
/// <summary>
|
||
/// Items that can be stuck to other structures or entities.
|
||
/// For example, paper stickers or C4 charges.
|
||
/// </summary>
|
||
[RegisterComponent, NetworkedComponent, Access(typeof(StickySystem))]
|
||
[AutoGenerateComponentState]
|
||
public sealed partial class StickyComponent : Component
|
||
{
|
||
/// <summary>
|
||
/// What target entities are valid to be surface for sticky entity.
|
||
/// </summary>
|
||
[DataField]
|
||
public EntityWhitelist? Whitelist;
|
||
|
||
/// <summary>
|
||
/// What target entities can't be used as surface for sticky entity.
|
||
/// </summary>
|
||
[DataField]
|
||
public EntityWhitelist? Blacklist;
|
||
|
||
/// <summary>
|
||
/// How much time it takes to stick the entity to a target.
|
||
/// If zero, it will immediately be stuck.
|
||
/// </summary>
|
||
[DataField]
|
||
public TimeSpan StickDelay = TimeSpan.Zero;
|
||
|
||
/// <summary>
|
||
/// Whether users can unstick the entity after it has been stuck.
|
||
/// </summary>
|
||
[DataField]
|
||
public bool CanUnstick = true;
|
||
|
||
/// <summary>
|
||
/// How much time it takes to unstick the entity.
|
||
/// If zero, it will immediately be unstuck.
|
||
/// </summary>
|
||
[DataField]
|
||
public TimeSpan UnstickDelay = TimeSpan.Zero;
|
||
|
||
/// <summary>
|
||
/// Popup message shown when player starts sticking the entity to another entity.
|
||
/// </summary>
|
||
[DataField]
|
||
public LocId? StickPopupStart;
|
||
|
||
/// <summary>
|
||
/// Popup message shown when a player successfully sticks the entity.
|
||
/// </summary>
|
||
[DataField]
|
||
public LocId? StickPopupSuccess;
|
||
|
||
/// <summary>
|
||
/// Popup message shown when a player starts unsticking the entity from another entity.
|
||
/// </summary>
|
||
[DataField]
|
||
public LocId? UnstickPopupStart;
|
||
|
||
/// <summary>
|
||
/// Popup message shown when a player successfully unsticks the entity.
|
||
/// </summary>
|
||
[DataField]
|
||
public LocId? UnstickPopupSuccess;
|
||
|
||
/// <summary>
|
||
/// Entity that is used as a surface for the sticky entity.
|
||
/// Null if entity isn't stuck to anything.
|
||
/// </summary>
|
||
[DataField, AutoNetworkedField]
|
||
public EntityUid? StuckTo;
|
||
|
||
/// <summary>
|
||
/// Text to use for the unstick verb.
|
||
/// </summary>
|
||
[DataField]
|
||
public LocId VerbText = "comp-sticky-unstick-verb-text";
|
||
|
||
/// <summary>
|
||
/// Icon to use for the unstick verb.
|
||
/// </summary>
|
||
[DataField]
|
||
public SpriteSpecifier VerbIcon = new SpriteSpecifier.Texture(new("/Textures/Interface/VerbIcons/eject.svg.192dpi.png"));
|
||
}
|