LEAP Documentation 40220
Documentation for the LEAP project
AWaveSpawner Class Reference

#include <WaveSpawner.h>

Inheritance diagram for AWaveSpawner:
IReactsToMatchEvents ISpawnInterface

Public Member Functions

 AWaveSpawner ()
 
FORCEINLINE int32 GetCurrentWave () const
 
FORCEINLINE int32 GetTotalWaves () const
 
FORCEINLINE int32 GetTotalKills () const
 
FORCEINLINE float GetWaveProgress () const
 
FORCEINLINE EWaveSpawnerState GetWaveSpawnerState () const
 
FORCEINLINE bool IsADefeatEnemyWave (int32 Wave) const
 
int32 GetNumberOfEnemiesNeededToProgress (int32 Wave) const
 
virtual void SpawnWave ()
 
virtual void EndWave ()
 
void RegisterActiveObjective (AProjectXSpawnerObjective *const Objective)
 
virtual int32 GetPackedWaveState ()
 
virtual void SetWaveSpawnerState (const EWaveSpawnerState NewState)
 
virtual void BroadcastWaveStateToPlayer (APlayerController *const SpecificPlayer)
 
virtual void NextWave ()
 
virtual void BeginSpawning_Implementation () override
 
virtual void MatchStarted () override
 
virtual void BeginPlay () override
 
virtual bool ImplementsSpawnCompleteCallback () const override
 
virtual void RespawnMobs (const FVector Location, TArray< TSubclassOf< AActor > > MobList)
 
virtual void CancelRespawns ()
 
virtual void GameOver (const bool bVictory)
 
virtual int32 GetPlayerTeam () const
 
virtual void WipeMobs ()
 
bool HasWaveBeenDefeated () const
 
bool EnemiesRemainingToEndWave () const
 
void RespawnerFinsished (AActor *Actor, EEndPlayReason::Type EndPlayReason)
 
void EventComplete (bool bSuccess)
 
void OnMobSpawned (AProjectXCharacter *SpawnedPlayerState)
 
void OnMobDestroyed (AProjectXCharacter *SpawnedPlayerState, FVector SpawnLocation)
 
void OnSpawnerCompleted (UObject *Spawner)
 
void ApplyWaveAffliction ()
 
- Public Member Functions inherited from IReactsToMatchEvents
void OnMatchStarted ()
 
virtual void MatchStarted ()
 
void OnMatchEnded ()
 
virtual void MatchEnded ()
 
- Public Member Functions inherited from ISpawnInterface
void K2_BeginSpawning (const TArray< TSubclassOf< AActor > > &SpawnOverrideList)
 
void BeginSpawning ()
 
void StopSpawning ()
 
TArray< TScriptInterface< ISpawnInterface > > GetSpawnChildren ()
 
virtual bool IsAnObjective () const
 
virtual AProjectXSpawnerObjectiveGetObjective ()
 
virtual bool ImplementsSpawnCompleteCallback () const
 
virtual FSpawnProgressSignature & GetSpawnCompleteEvent ()
 
virtual FSpawnEventCompleteSignature & GetEventCompleteEvent ()
 

Static Public Member Functions

static void GetWaveSpawnerStateFromPackedInt (const int32 Data, int32 &Wave, EWaveSpawnerState &State)
 

Public Attributes

bool bExecuteOnMatchStart = true
 
bool bExecutesOnBeginPlay = false
 
float StartTimeDelay = 0.0f
 
float WaveCooldownTime = 15.0f
 
bool bEndGameWithVictoryIfAllWavesCompleted = false
 
TSubclassOf< AActor > RespawnActor = nullptr
 
int32 EnemyTeam = 99
 
bool bDebug = false
 
bool bVerboseDebug = false
 
TArray< FWaveSpawnInfoWaves
 
bool bPrimarySpawner = false
 
float SurviveTimeMultiplier = 1.0f
 
float WaveFailureTimeMultiplier = 1.0f
 
FWaveSpawnerCompletedSignature OnWaveSpawnerEventsCompletedEvent
 
FWaveSpawnerCompletedSignature OnWaveCompletedEvent
 
FWaveSpawnerWaveStartedSignature OnWaveStartedEvent
 
FWaveSpawnerMobDefeatedSignature OnMobsDefeatedEvent
 
FWaveSpawnerCompletedSignature OnTimedWaveCompletedEvent
 
FWaveSpawnerMobCountUpdatedSignature OnMobCountUpdatedSignature
 
FWaveSpawnerWaveStartedSignature OnWaveProgress
 

Protected Attributes

TSubclassOf< UAfflictionInstance > SpawnedCharacterAffliction = NULL
 
float CharacterAfflictionTriggerPercentage = 0.5f
 

Constructor & Destructor Documentation

◆ AWaveSpawner()

AWaveSpawner::AWaveSpawner ( )

Member Function Documentation

◆ ApplyWaveAffliction()

void AWaveSpawner::ApplyWaveAffliction ( )

◆ BeginPlay()

void AWaveSpawner::BeginPlay ( )
overridevirtual

◆ BeginSpawning_Implementation()

void AWaveSpawner::BeginSpawning_Implementation ( )
overridevirtual

◆ BroadcastWaveStateToPlayer()

void AWaveSpawner::BroadcastWaveStateToPlayer ( APlayerController *const  SpecificPlayer)
virtual

◆ CancelRespawns()

void AWaveSpawner::CancelRespawns ( )
virtual

◆ EndWave()

void AWaveSpawner::EndWave ( )
virtual

◆ EnemiesRemainingToEndWave()

bool AWaveSpawner::EnemiesRemainingToEndWave ( ) const

◆ EventComplete()

void AWaveSpawner::EventComplete ( bool  bSuccess)

◆ GameOver()

void AWaveSpawner::GameOver ( const bool  bVictory)
virtual

◆ GetCurrentWave()

FORCEINLINE int32 AWaveSpawner::GetCurrentWave ( ) const
inline

◆ GetNumberOfEnemiesNeededToProgress()

int32 AWaveSpawner::GetNumberOfEnemiesNeededToProgress ( int32  Wave) const

◆ GetPackedWaveState()

int32 AWaveSpawner::GetPackedWaveState ( )
virtual

◆ GetPlayerTeam()

int32 AWaveSpawner::GetPlayerTeam ( ) const
virtual

◆ GetTotalKills()

FORCEINLINE int32 AWaveSpawner::GetTotalKills ( ) const
inline

◆ GetTotalWaves()

FORCEINLINE int32 AWaveSpawner::GetTotalWaves ( ) const
inline

◆ GetWaveProgress()

FORCEINLINE float AWaveSpawner::GetWaveProgress ( ) const
inline

◆ GetWaveSpawnerState()

FORCEINLINE EWaveSpawnerState AWaveSpawner::GetWaveSpawnerState ( ) const
inline

◆ GetWaveSpawnerStateFromPackedInt()

void AWaveSpawner::GetWaveSpawnerStateFromPackedInt ( const int32  Data,
int32 &  Wave,
EWaveSpawnerState State 
)
static

◆ HasWaveBeenDefeated()

bool AWaveSpawner::HasWaveBeenDefeated ( ) const

◆ ImplementsSpawnCompleteCallback()

virtual bool AWaveSpawner::ImplementsSpawnCompleteCallback ( ) const
inlineoverridevirtual

Reimplemented from ISpawnInterface.

◆ IsADefeatEnemyWave()

FORCEINLINE bool AWaveSpawner::IsADefeatEnemyWave ( int32  Wave) const
inline

◆ MatchStarted()

void AWaveSpawner::MatchStarted ( )
overridevirtual

Reimplemented from IReactsToMatchEvents.

◆ NextWave()

void AWaveSpawner::NextWave ( )
virtual

◆ OnMobDestroyed()

void AWaveSpawner::OnMobDestroyed ( AProjectXCharacter SpawnedPlayerState,
FVector  SpawnLocation 
)

◆ OnMobSpawned()

void AWaveSpawner::OnMobSpawned ( AProjectXCharacter SpawnedPlayerState)

◆ OnSpawnerCompleted()

void AWaveSpawner::OnSpawnerCompleted ( UObject *  Spawner)

◆ RegisterActiveObjective()

void AWaveSpawner::RegisterActiveObjective ( AProjectXSpawnerObjective *const  Objective)

◆ RespawnerFinsished()

void AWaveSpawner::RespawnerFinsished ( AActor *  Actor,
EEndPlayReason::Type  EndPlayReason 
)

◆ RespawnMobs()

void AWaveSpawner::RespawnMobs ( const FVector  Location,
TArray< TSubclassOf< AActor > >  MobList 
)
virtual

◆ SetWaveSpawnerState()

void AWaveSpawner::SetWaveSpawnerState ( const EWaveSpawnerState  NewState)
virtual

◆ SpawnWave()

void AWaveSpawner::SpawnWave ( )
virtual

◆ WipeMobs()

void AWaveSpawner::WipeMobs ( )
virtual

Member Data Documentation

◆ bDebug

bool AWaveSpawner::bDebug = false

◆ bEndGameWithVictoryIfAllWavesCompleted

bool AWaveSpawner::bEndGameWithVictoryIfAllWavesCompleted = false

◆ bExecuteOnMatchStart

bool AWaveSpawner::bExecuteOnMatchStart = true

◆ bExecutesOnBeginPlay

bool AWaveSpawner::bExecutesOnBeginPlay = false

◆ bPrimarySpawner

bool AWaveSpawner::bPrimarySpawner = false

◆ bVerboseDebug

bool AWaveSpawner::bVerboseDebug = false

◆ CharacterAfflictionTriggerPercentage

float AWaveSpawner::CharacterAfflictionTriggerPercentage = 0.5f
protected

◆ EnemyTeam

int32 AWaveSpawner::EnemyTeam = 99

◆ OnMobCountUpdatedSignature

FWaveSpawnerMobCountUpdatedSignature AWaveSpawner::OnMobCountUpdatedSignature

◆ OnMobsDefeatedEvent

FWaveSpawnerMobDefeatedSignature AWaveSpawner::OnMobsDefeatedEvent

◆ OnTimedWaveCompletedEvent

FWaveSpawnerCompletedSignature AWaveSpawner::OnTimedWaveCompletedEvent

◆ OnWaveCompletedEvent

FWaveSpawnerCompletedSignature AWaveSpawner::OnWaveCompletedEvent

◆ OnWaveProgress

FWaveSpawnerWaveStartedSignature AWaveSpawner::OnWaveProgress

◆ OnWaveSpawnerEventsCompletedEvent

FWaveSpawnerCompletedSignature AWaveSpawner::OnWaveSpawnerEventsCompletedEvent

◆ OnWaveStartedEvent

FWaveSpawnerWaveStartedSignature AWaveSpawner::OnWaveStartedEvent

◆ RespawnActor

TSubclassOf<AActor> AWaveSpawner::RespawnActor = nullptr

◆ SpawnedCharacterAffliction

TSubclassOf<UAfflictionInstance> AWaveSpawner::SpawnedCharacterAffliction = NULL
protected

◆ StartTimeDelay

float AWaveSpawner::StartTimeDelay = 0.0f

◆ SurviveTimeMultiplier

float AWaveSpawner::SurviveTimeMultiplier = 1.0f

◆ WaveCooldownTime

float AWaveSpawner::WaveCooldownTime = 15.0f

◆ WaveFailureTimeMultiplier

float AWaveSpawner::WaveFailureTimeMultiplier = 1.0f

◆ Waves

TArray<FWaveSpawnInfo> AWaveSpawner::Waves

The documentation for this class was generated from the following files: