32 lines
1 KiB
C#
32 lines
1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using Content.Shared.Weapons.Ranged.Components;
|
|
using Content.Shared.Weapons.Ranged;
|
|
using Robust.Shared.GameStates;
|
|
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
|
|
using Robust.Shared.Audio;
|
|
using Robust.Shared.Prototypes;
|
|
|
|
namespace Content.Shared._Starlight.Weapon.Components;
|
|
[RegisterComponent, NetworkedComponent, AutoGenerateComponentState(fieldDeltas: true)]
|
|
public sealed partial class HitScanCartridgeAmmoComponent : AmmoComponent
|
|
{
|
|
[ViewVariables(VVAccess.ReadWrite), DataField("hitscan", required: true)]
|
|
public ProtoId<HitscanPrototype> Hitscan = default!;
|
|
|
|
[ViewVariables(VVAccess.ReadWrite), DataField]
|
|
[AutoNetworkedField]
|
|
public bool Spent;
|
|
|
|
/// <summary>
|
|
/// Caseless ammunition.
|
|
/// </summary>
|
|
[DataField]
|
|
public bool DeleteOnSpawn;
|
|
|
|
[DataField("soundEject")]
|
|
public SoundSpecifier? EjectSound = new SoundCollectionSpecifier("CasingEject");
|
|
}
|