swb_base/WeaponSettings.cs
namespace SWB.Base;
/// <summary>
/// Attach this component somewhere in the root of your scene.
/// Gives control over weapon settings (host only)
/// </summary>
[Group( "SWB" )]
[Title( "Weapon Settings" )]
public class WeaponSettings : Component
{
public static WeaponSettings Instance { get; private set; }
/// <summary>Enable the weapon customization menu (Q)</summary>
[Sync( SyncFlags.FromHost ), Property] public bool Customization { get; set; } = true;
/// <summary>Reload weapons automatically when trying to shoot if clip is empty</summary>
[Sync( SyncFlags.FromHost ), Property] public bool AutoReload { get; set; } = true;
/// <summary>Enable controller aim assist</summary>
[Sync( SyncFlags.FromHost ), Property] public bool AimAssist { get; set; } = true;
protected override void OnDestroy()
{
if ( Instance == this )
Instance = null;
}
protected override void OnAwake()
{
Instance = this;
GameObject.NetworkMode = NetworkMode.Object;
}
}