mirror of
https://github.com/DarkflameUniverse/DarkflameServer
synced 2024-08-30 18:43:58 +00:00
42 lines
1.2 KiB
C++
42 lines
1.2 KiB
C++
#include "WaveBossApe.h"
|
|
#include "BaseCombatAIComponent.h"
|
|
#include "Entity.h"
|
|
|
|
void WaveBossApe::OnStartup(Entity* self) {
|
|
BaseWavesGenericEnemy::OnStartup(self);
|
|
|
|
self->SetVar<LOT>(u"QuickbuildAnchorLOT", 12900);
|
|
self->SetVar<uint32_t>(u"GroundPoundSkill", 725);
|
|
self->SetVar<float_t>(u"reviveTime", 12);
|
|
self->SetVar<float_t>(u"AnchorDamageDelayTime", 0.5f);
|
|
self->SetVar<float_t>(u"spawnQBTime", 5.0f);
|
|
|
|
auto* combatAIComponent = self->GetComponent<BaseCombatAIComponent>();
|
|
if (combatAIComponent != nullptr) {
|
|
combatAIComponent->SetDisabled(true);
|
|
combatAIComponent->SetStunImmune(true);
|
|
}
|
|
|
|
self->AddToGroup("boss");
|
|
|
|
BaseEnemyApe::OnStartup(self);
|
|
}
|
|
|
|
void WaveBossApe::OnDie(Entity* self, Entity* killer) {
|
|
BaseWavesGenericEnemy::OnDie(self, killer);
|
|
BaseEnemyApe::OnDie(self, killer);
|
|
}
|
|
|
|
void WaveBossApe::OnFireEventServerSide(Entity* self, Entity* sender, std::string args, int32_t param1, int32_t param2,
|
|
int32_t param3) {
|
|
if (args == "startAI") {
|
|
auto* combatAIComponent = self->GetComponent<BaseCombatAIComponent>();
|
|
if (combatAIComponent != nullptr) {
|
|
combatAIComponent->SetDisabled(false);
|
|
combatAIComponent->SetStunImmune(false);
|
|
}
|
|
} else {
|
|
BaseEnemyApe::OnFireEventServerSide(self, sender, args, param1, param2, param3);
|
|
}
|
|
}
|