Table of Contents

Class WhitelistService

Namespace
Uncreated.Warfare.Kits.Whitelists
Assembly
Uncreated.Warfare.dll
public class WhitelistService : IAsyncEventListener<ISalvageBuildableRequestedEvent>, IAsyncEventListener<IPlaceBuildableRequestedEvent>, IAsyncEventListener<ChangeSignTextRequested>, IAsyncEventListener<ItemPickupRequested>, IAsyncEventListener<ItemMoveRequested>, IDisposable
Inheritance
WhitelistService
Implements
Inherited Members

Constructors

WhitelistService(IWhitelistDbContext, ZoneStore, ChatService, WarfareModule, TranslationInjection<WhitelistTranslations>, IKitItemResolver, ILogger<WhitelistService>)

public WhitelistService(IWhitelistDbContext dbContext, ZoneStore zoneStore, ChatService chatService, WarfareModule module, TranslationInjection<WhitelistTranslations> translations, IKitItemResolver kitItemResolver, ILogger<WhitelistService> logger)

Parameters

dbContext IWhitelistDbContext
zoneStore ZoneStore
chatService ChatService
module WarfareModule
translations TranslationInjection<WhitelistTranslations>
kitItemResolver IKitItemResolver
logger ILogger<WhitelistService>

Fields

PermissionChangeSignText

public static readonly PermissionLeaf PermissionChangeSignText

Field Value

PermissionLeaf

PermissionDestroyBuildable

public static readonly PermissionLeaf PermissionDestroyBuildable

Field Value

PermissionLeaf

PermissionPickUpAnyItem

public static readonly PermissionLeaf PermissionPickUpAnyItem

Field Value

PermissionLeaf

PermissionPlaceBuildable

public static readonly PermissionLeaf PermissionPlaceBuildable

Field Value

PermissionLeaf

Methods

GetWhitelistAsync(ItemAsset, CancellationToken)

Retreive the whitelist model for the given SDG.Unturned.ItemAsset.

public Task<ItemWhitelist?> GetWhitelistAsync(ItemAsset asset, CancellationToken token = default)

Parameters

asset ItemAsset
token CancellationToken

Returns

Task<ItemWhitelist>

GetWhitelistAsync(Guid, CancellationToken)

Retreive the whitelist model for the given item Guid.

public Task<ItemWhitelist?> GetWhitelistAsync(Guid guid, CancellationToken token = default)

Parameters

guid Guid
token CancellationToken

Returns

Task<ItemWhitelist>

GetWhitelistAsync(IAssetContainer, CancellationToken)

Retreive the whitelist model for the given Uncreated.Framework.UI.IAssetContainer or IAssetLink<TAsset>.

public Task<ItemWhitelist?> GetWhitelistAsync(IAssetContainer assetContainer, CancellationToken token = default)

Parameters

assetContainer IAssetContainer
token CancellationToken

Returns

Task<ItemWhitelist>

GetWhitelistedAmount(ItemAsset, CancellationToken)

Get the amount value on whitelists. Takes IWhitelistExceptionProvider's into account.

public Task<int> GetWhitelistedAmount(ItemAsset asset, CancellationToken token = default)

Parameters

asset ItemAsset
token CancellationToken

Returns

Task<int>

0 if the item isn't whitelisted, -1 if it's infinite, otherwise the amount.

GetWhitelistedAmount(IAssetContainer, CancellationToken)

Get the amount value on whitelists. Takes IWhitelistExceptionProvider's into account.

public Task<int> GetWhitelistedAmount(IAssetContainer assetContainer, CancellationToken token = default)

Parameters

assetContainer IAssetContainer
token CancellationToken

Returns

Task<int>

0 if the item isn't whitelisted, -1 if it's infinite, otherwise the amount.

HandleEventAsync(ItemMoveRequested, IServiceProvider, CancellationToken)

public UniTask HandleEventAsync(ItemMoveRequested e, IServiceProvider serviceProvider, CancellationToken token = default)

Parameters

e ItemMoveRequested
serviceProvider IServiceProvider
token CancellationToken

Returns

UniTask

IsWhitelisted(IAssetContainer, CancellationToken)

Checks if an item is whitelisted and can be picked up by the player, regardless of the whitelisted max amount. Takes IWhitelistExceptionProvider's into account.

public Task<bool> IsWhitelisted(IAssetContainer assetContainer, CancellationToken token = default)

Parameters

assetContainer IAssetContainer
token CancellationToken

Returns

Task<bool>

true if the item can be picked up by the player, false otherwise.

Remove an item's whitelist if it exists.

public Task<bool> RemoveWhitelistedItem(IAssetLink<ItemAsset> item, CancellationToken token = default)

Parameters

item IAssetLink<ItemAsset>
token CancellationToken

Returns

Task<bool>

true if the whitelist was removed, otherwise false.

Add an item's whitelist if it doesn't already exist, or update it's amount if it does.

public Task<bool> WhitelistItem(IAssetLink<ItemAsset> item, int amount = -1, CancellationToken token = default)

Parameters

item IAssetLink<ItemAsset>
amount int
token CancellationToken

Returns

Task<bool>

true if the whitelist was added or it's amount was updated, otherwise false.