Table of Contents

Class UnlockCost

Namespace
Uncreated.Warfare.Players.Costs
Assembly
Uncreated.Warfare.dll
public abstract class UnlockCost : ICloneable
Inheritance
UnlockCost
Implements
Inherited Members

Methods

AppendSignText(StringBuilder, WarfarePlayer?, LanguageInfo, CultureInfo)

Writes the text that would show on a sign for an optional player to a StringBuilder.

public abstract void AppendSignText(StringBuilder bldr, WarfarePlayer? player, LanguageInfo language, CultureInfo culture)

Parameters

bldr StringBuilder
player WarfarePlayer
language LanguageInfo
culture CultureInfo

CanApply(WarfarePlayer, Team, CancellationToken)

Check if this cost can be met by the player.

public abstract UniTask<bool> CanApply(WarfarePlayer player, Team team, CancellationToken token = default)

Parameters

player WarfarePlayer
team Team
token CancellationToken

Returns

UniTask<bool>

Remarks

May not be on main thread at start.

Clone()

Creates a new object that is a copy of the current instance.

public abstract object Clone()

Returns

object

A new object that is a copy of this instance.

ReadFromConfiguration(IConfiguration, IServiceProvider, ILogger?)

Read an UnlockCost from a IConfiguration section.

public UnlockCost? ReadFromConfiguration(IConfiguration section, IServiceProvider serviceProvider, ILogger? logger)

Parameters

section IConfiguration
serviceProvider IServiceProvider
logger ILogger

Returns

UnlockCost

TryApply(WarfarePlayer, Team, CancellationToken)

Try to subtract the cost from the player if they can afford it. If this returns false, all already applied costs need to be undone.

public abstract UniTask<bool> TryApply(WarfarePlayer player, Team team, CancellationToken token = default)

Parameters

player WarfarePlayer
team Team
token CancellationToken

Returns

UniTask<bool>

Remarks

May not be on main thread at start.

Undo(WarfarePlayer, Team, CancellationToken)

Undo subtracting the cost from the player.

public abstract UniTask Undo(WarfarePlayer player, Team team, CancellationToken token = default)

Parameters

player WarfarePlayer
team Team
token CancellationToken

Returns

UniTask