Class EnemyAttackEntry

Namespace
SurvivorsMaker.Data
Assembly
SurvivorsMaker.Data.dll

Serializable enemy attack authoring data whose summon target is an enemy asset reference.

public sealed class EnemyAttackEntry
Inheritance
EnemyAttackEntry
Inherited Members

Constructors

EnemyAttackEntry()

public EnemyAttackEntry()

Fields

Behaviour

Registered attack id; empty = the built-in behaviour of Kind.

[Tooltip("Registered behaviour id; empty = the built-in behaviour selected by Kind.")]
public string Behaviour

Field Value

string

ChargeSeconds

Positive charge travel duration in seconds.

[Tooltip("Positive charge travel duration in seconds.")]
public float ChargeSeconds

Field Value

float

ChargeSpeed

Charging speed in world units per second; nonnegative.

[Tooltip("Charging speed in world units per second; nonnegative.")]
public float ChargeSpeed

Field Value

float

ChargeTarget

How a charge destination is sampled at windup start.

[Tooltip("How a charge destination is sampled at windup start.")]
public ChargeTarget ChargeTarget

Field Value

ChargeTarget

ChargeTargetRadius

Charge destination sampling radius in world units; 0 targets the centre.

[Tooltip("Charge destination sampling radius in world units; 0 targets the centre.")]
public float ChargeTargetRadius

Field Value

float

CooldownJitterTicks

Symmetric cooldown variation in ticks; nonnegative and less than Cooldown Ticks. 0 = fixed.

[Tooltip("Symmetric cooldown variation in ticks; nonnegative and less than Cooldown Ticks. 0 = fixed.")]
public int CooldownJitterTicks

Field Value

int

CooldownTicks

Positive combat ticks between special attacks.

[Tooltip("Positive combat ticks between special attacks.")]
public int CooldownTicks

Field Value

int

FirstDelayTicks

Ticks before the first shooting attack; 0 permits an immediate first shot.

[Tooltip("Ticks before the first shooting attack; 0 permits an immediate first shot.")]
public int FirstDelayTicks

Field Value

int

Kind

Built-in attack used when Behaviour is empty; None disables special attacks.

[Tooltip("Built-in attack used when Behaviour is empty; None disables special attacks.")]
public SpecialAttackKind Kind

Field Value

SpecialAttackKind

MaxRange

Maximum attack distance in world units; must be at least Min Range.

[Tooltip("Maximum attack distance in world units; must be at least Min Range.")]
public float MaxRange

Field Value

float

MaxSummonAttacks

Maximum summon executions per enemy; 0 = unlimited.

[Tooltip("Maximum summon executions per enemy; 0 = unlimited.")]
public int MaxSummonAttacks

Field Value

int

MinRange

Minimum attack distance in world units; nonnegative.

[Tooltip("Minimum attack distance in world units; nonnegative.")]
public float MinRange

Field Value

float

Origin

Where shooting projectiles originate: enemy, player ring or arena positions.

[Tooltip("Where shooting projectiles originate: enemy, player ring or arena positions.")]
public ShotOrigin Origin

Field Value

ShotOrigin

OriginRadius

Shot origin ring radius in world units; 0 = ring centre.

[Tooltip("Shot origin ring radius in world units; 0 = ring centre.")]
public float OriginRadius

Field Value

float

Parameters

Named values read by the selected behaviour. Empty = its own defaults.

[Tooltip("Named values read by the selected behaviour. Empty = its own defaults.")]
public List<BehaviourParameter> Parameters

Field Value

List<BehaviourParameter>

ProjectileCount

Positive projectile count per shooting attack.

[Tooltip("Positive projectile count per shooting attack.")]
public int ProjectileCount

Field Value

int

ProjectileDamage

Damage points scaled by wave, then clamped to the authored minimum.

[Tooltip("Damage points scaled by wave, then clamped to the authored minimum.")]
public Scaled ProjectileDamage

Field Value

Scaled

ProjectileRadius

Projectile collision radius in world units; nonnegative.

[Tooltip("Projectile collision radius in world units; nonnegative.")]
public float ProjectileRadius

Field Value

float

ProjectileSpeed

Projectile speed in world units per second; nonnegative.

[Tooltip("Projectile speed in world units per second; nonnegative.")]
public float ProjectileSpeed

Field Value

float

SpreadRadians

Total shot fan angle in radians; 0 aims all shots in one direction.

[Tooltip("Total shot fan angle in radians; 0 aims all shots in one direction.")]
public float SpreadRadians

Field Value

float

SummonCount

Children per summon attack; nonnegative, 0 creates none.

[Tooltip("Children per summon attack; nonnegative, 0 creates none.")]
public int SummonCount

Field Value

int

SummonEnemy

Enemy asset created by summon attacks. Required when summoning is enabled.

[Tooltip("Enemy asset created by summon attacks. Required when summoning is enabled.")]
public EnemyAsset SummonEnemy

Field Value

EnemyAsset

SummonRadius

Child spawn radius in world units; 0 uses the summoner position.

[Tooltip("Child spawn radius in world units; 0 uses the summoner position.")]
public float SummonRadius

Field Value

float

WindupSeconds

Charge warning duration in seconds; 0 = no windup.

[Tooltip("Charge warning duration in seconds; 0 = no windup.")]
public float WindupSeconds

Field Value

float

Methods

ToDef()

Converts this authoring entry to a runtime definition, resolving asset references through their caches.

public SpecialAttackDef ToDef()

Returns

SpecialAttackDef