Class WeaponTierTools

Namespace
SurvivorsMaker.Editor
Assembly
SurvivorsMaker.Editor.dll
public static class WeaponTierTools
Inheritance
WeaponTierTools
Inherited Members

Methods

CanCreate(WeaponAsset, int, float, out string)

public static bool CanCreate(WeaponAsset source, int price, float damageMultiplier, out string issue)

Parameters

source WeaponAsset
price int
damageMultiplier float
issue string

Returns

bool

CanCreateTier(WeaponAsset, NextTierCreationSettings, out string)

public static bool CanCreateTier(WeaponAsset source, NextTierCreationSettings settings, out string issue)

Parameters

source WeaponAsset
settings NextTierCreationSettings
issue string

Returns

bool

Chain(WeaponAsset, IEnumerable<WeaponAsset>, out bool, out bool)

Finds incoming NextTier links before following the entire chain, including the selected tier.

public static List<WeaponAsset> Chain(WeaponAsset selected, IEnumerable<WeaponAsset> candidates, out bool cycle, out bool branches)

Parameters

selected WeaponAsset
candidates IEnumerable<WeaponAsset>
cycle bool
branches bool

Returns

List<WeaponAsset>

CreateNextTier(WeaponAsset, string, NextTierCreationSettings)

Creates the next tier as a new asset and links it from source, all as one undo step. The tier takes Tier + 1, an id "<family>_<tier>" and scaled numbers; its name and description stay empty so the UI inherits the previous tier's text. Optionally registers it next to the source in content lists and copies the source's view entry. Never overwrites a file or an existing NextTier link.

public static WeaponAsset CreateNextTier(WeaponAsset source, string requestedPath, NextTierCreationSettings settings)

Parameters

source WeaponAsset
requestedPath string
settings NextTierCreationSettings

Returns

WeaponAsset

CreateNextTier(WeaponAsset, string, int, float)

Legacy entry: explicit price and damage multiplier, everything else unchanged.

public static WeaponAsset CreateNextTier(WeaponAsset source, string requestedPath, int price, float damageMultiplier)

Parameters

source WeaponAsset
requestedPath string
price int
damageMultiplier float

Returns

WeaponAsset

FamilyId(string, int)

The id without its tier suffix: "blade_0" at tier 0 → "blade". Matches TieredName(string, int, UiStrings), which hides a separate numeric suffix equal to the zero-based tier.

public static string FamilyId(string id, int tier)

Parameters

id string
tier int

Returns

string

NextTierId(WeaponAsset, ICollection<string>)

"<family id>_<zero-based tier>", made unique against taken by extending the family part.

public static string NextTierId(WeaponAsset source, ICollection<string> taken)

Parameters

source WeaponAsset
taken ICollection<string>

Returns

string

NextTierName(WeaponAsset)

Default file name: the source name with its tier number replaced (or appended).

public static string NextTierName(WeaponAsset source)

Parameters

source WeaponAsset

Returns

string

Scale(WeaponAsset, WeaponAsset, NextTierCreationSettings)

Applies the tier numbers to next (a copy of source). Exposed for tests and wizards.

public static void Scale(WeaponAsset next, WeaponAsset source, NextTierCreationSettings settings)

Parameters

next WeaponAsset
source WeaponAsset
settings NextTierCreationSettings

ScaledPrice(int, float)

public static int ScaledPrice(int price, float multiplier)

Parameters

price int
multiplier float

Returns

int