Proto-kinetic crusher (#16277)

Co-authored-by: AJCM-git <60196617+AJCM-git@users.noreply.github.com>
This commit is contained in:
metalgearsloth
2023-05-14 13:15:18 +10:00
committed by GitHub
parent 356bf96039
commit 6417bb4fa0
68 changed files with 926 additions and 312 deletions

View File

@@ -0,0 +1,30 @@
using Content.Shared.Damage;
using Content.Shared.Whitelist;
using Robust.Shared.GameStates;
namespace Content.Shared.Weapons.Marker;
/// <summary>
/// Applies <see cref="DamageMarkerComponent"/> when colliding with an entity.
/// </summary>
[RegisterComponent, NetworkedComponent, AutoGenerateComponentState, Access(typeof(SharedDamageMarkerSystem))]
public sealed partial class DamageMarkerOnCollideComponent : Component
{
[DataField("whitelist"), AutoNetworkedField]
public EntityWhitelist? Whitelist = new();
[ViewVariables(VVAccess.ReadWrite), DataField("duration"), AutoNetworkedField]
public TimeSpan Duration = TimeSpan.FromSeconds(5);
/// <summary>
/// Additional damage to be applied.
/// </summary>
[ViewVariables(VVAccess.ReadWrite), DataField("damage")]
public DamageSpecifier Damage = new();
/// <summary>
/// How many more times we can apply it.
/// </summary>
[ViewVariables(VVAccess.ReadWrite), DataField("amount"), AutoNetworkedField]
public int Amount = 1;
}