Class EnemySystem

Namespace
SurvivorsMaker.Simulation
Assembly
SurvivorsMaker.Simulation.dll

Initializes and ticks enemy movement, attacks, support, phases and death-spawn requests.

public sealed class EnemySystem : IEnemySystem
Inheritance
EnemySystem
Implements
Inherited Members

Constructors

EnemySystem()

public EnemySystem()

Methods

CollectDeath(SimWorld, Enemy)

Called once by death collection, before removal. Normal copies retain the base definition.

public void CollectDeath(SimWorld world, Enemy enemy)

Parameters

world SimWorld
enemy Enemy

InitEnemy(SimWorld, Enemy)

Initializes spawn-time values (health, speed jitter, offsets, first cooldown).

public void InitEnemy(SimWorld world, Enemy enemy)

Parameters

world SimWorld
enemy Enemy

RewardValue(Enemy)

Currency/XP base for death collection, without mutating the shared enemy definition.

public static int RewardValue(Enemy enemy)

Parameters

enemy Enemy

Returns

int

Tick(SimWorld)

Step 5 (enemies): contact timer, knockback, attack, movement, support, contact damage; in list order.

public void Tick(SimWorld world)

Parameters

world SimWorld

Validate(BossPhaseDef)

Returns authored definition problems without changing the definition or consuming random values.

public static List<string> Validate(BossPhaseDef def)

Parameters

def BossPhaseDef

Returns

List<string>

Validate(DeathSpawnDef)

Returns authored definition problems without changing the definition or consuming random values.

public static List<string> Validate(DeathSpawnDef def)

Parameters

def DeathSpawnDef

Returns

List<string>

Validate(EliteDef)

Returns authored definition problems without changing the definition or consuming random values.

public static List<string> Validate(EliteDef def)

Parameters

def EliteDef

Returns

List<string>

Validate(EnemyDef)

Returns authored definition problems without changing the definition or consuming random values.

public static List<string> Validate(EnemyDef def)

Parameters

def EnemyDef

Returns

List<string>

Validate(MovementDef)

Returns authored definition problems without changing the definition or consuming random values.

public static List<string> Validate(MovementDef def)

Parameters

def MovementDef

Returns

List<string>

Validate(SpecialAttackDef)

Returns authored definition problems without changing the definition or consuming random values.

public static List<string> Validate(SpecialAttackDef def)

Parameters

def SpecialAttackDef

Returns

List<string>

Validate(SupportDef)

Returns authored definition problems without changing the definition or consuming random values.

public static List<string> Validate(SupportDef def)

Parameters

def SupportDef

Returns

List<string>