mirror of
https://github.com/roflmuffin/CounterStrikeSharp.git
synced 2025-12-07 00:16:36 -08:00
Co-authored-by: B3none <ablackham2000@gmail.com> Co-authored-by: B3none <24966460+B3none@users.noreply.github.com>
25 lines
842 B
C#
25 lines
842 B
C#
namespace CounterStrikeSharp.API.Core.Capabilities;
|
|
|
|
public static class Capabilities
|
|
{
|
|
public static void RegisterPluginCapability<T>(PluginCapability<T> capability, Func<T> supplier)
|
|
{
|
|
if (!PluginCapability<T>.Providers.ContainsKey(capability.Name))
|
|
{
|
|
PluginCapability<T>.Providers.Add(capability.Name, new());
|
|
}
|
|
|
|
PluginCapability<T>.Providers[capability.Name].Add(supplier);
|
|
}
|
|
|
|
public static void RegisterPlayerCapability<T>(PlayerCapability<T> capability,
|
|
Func<CCSPlayerController, T> supplier)
|
|
{
|
|
if (!PlayerCapability<T>.Providers.ContainsKey(capability.Name))
|
|
{
|
|
PlayerCapability<T>.Providers.Add(capability.Name, new());
|
|
}
|
|
|
|
PlayerCapability<T>.Providers[capability.Name].Add(supplier);
|
|
}
|
|
} |