2021-07-10 17:35:33 +02:00
|
|
|
using Content.Shared.Sound;
|
2020-05-13 20:21:03 +02:00
|
|
|
using Robust.Shared.GameObjects;
|
2021-03-05 01:08:38 +01:00
|
|
|
using Robust.Shared.Serialization.Manager.Attributes;
|
2020-05-14 16:13:25 +02:00
|
|
|
using Robust.Shared.ViewVariables;
|
2020-05-13 20:21:03 +02:00
|
|
|
|
2021-06-09 22:19:39 +02:00
|
|
|
namespace Content.Server.Stunnable.Components
|
2020-05-13 20:21:03 +02:00
|
|
|
{
|
|
|
|
|
[RegisterComponent]
|
2022-02-16 00:23:23 -07:00
|
|
|
public sealed class StunbatonComponent : Component
|
2020-05-13 20:21:03 +02:00
|
|
|
{
|
2021-06-05 00:20:52 -07:00
|
|
|
public bool Activated = false;
|
2020-05-25 14:02:59 +01:00
|
|
|
|
2020-05-14 16:13:25 +02:00
|
|
|
[ViewVariables(VVAccess.ReadWrite)]
|
2021-03-05 01:08:38 +01:00
|
|
|
[DataField("paralyzeChanceNoSlowdown")]
|
2021-06-05 00:20:52 -07:00
|
|
|
public float ParalyzeChanceNoSlowdown { get; set; } = 0.35f;
|
2020-06-23 18:35:48 +02:00
|
|
|
|
|
|
|
|
[ViewVariables(VVAccess.ReadWrite)]
|
2021-03-05 01:08:38 +01:00
|
|
|
[DataField("paralyzeChanceWithSlowdown")]
|
2021-06-05 00:20:52 -07:00
|
|
|
public float ParalyzeChanceWithSlowdown { get; set; } = 0.85f;
|
2020-05-14 15:43:49 +02:00
|
|
|
|
2020-05-14 16:13:25 +02:00
|
|
|
[ViewVariables(VVAccess.ReadWrite)]
|
2021-03-05 01:08:38 +01:00
|
|
|
[DataField("paralyzeTime")]
|
2021-06-05 00:20:52 -07:00
|
|
|
public float ParalyzeTime { get; set; } = 10f;
|
2020-05-14 16:13:25 +02:00
|
|
|
|
|
|
|
|
[ViewVariables(VVAccess.ReadWrite)]
|
2021-03-05 01:08:38 +01:00
|
|
|
[DataField("slowdownTime")]
|
2021-06-05 00:20:52 -07:00
|
|
|
public float SlowdownTime { get; set; } = 5f;
|
2020-05-25 14:02:59 +01:00
|
|
|
|
2021-06-05 00:20:52 -07:00
|
|
|
[ViewVariables(VVAccess.ReadWrite)]
|
|
|
|
|
[DataField("energyPerUse")]
|
|
|
|
|
public float EnergyPerUse { get; set; } = 50;
|
2021-07-10 17:35:33 +02:00
|
|
|
|
2022-02-20 18:17:34 -06:00
|
|
|
[ViewVariables(VVAccess.ReadWrite)]
|
|
|
|
|
[DataField("onThrowStunChance")]
|
|
|
|
|
public float OnThrowStunChance { get; set; } = 0.20f;
|
|
|
|
|
|
2021-07-10 17:35:33 +02:00
|
|
|
[DataField("stunSound")]
|
|
|
|
|
public SoundSpecifier StunSound { get; set; } = new SoundPathSpecifier("/Audio/Weapons/egloves.ogg");
|
|
|
|
|
|
|
|
|
|
[DataField("sparksSound")]
|
|
|
|
|
public SoundSpecifier SparksSound { get; set; } = new SoundCollectionSpecifier("sparks");
|
|
|
|
|
|
|
|
|
|
[DataField("turnOnFailSound")]
|
|
|
|
|
public SoundSpecifier TurnOnFailSound { get; set; } = new SoundPathSpecifier("/Audio/Machines/button.ogg");
|
2020-05-13 20:21:03 +02:00
|
|
|
}
|
|
|
|
|
}
|