mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-10-02 19:03:43 +00:00
L_BASE_ENEMY_SPIDERLING was excluded, so the 7 spiderlings in Avant Gardens and 3 in Venture Explorer had none of the immunities its onStartup pushes: stun immunity to attack, interrupt, move, turn, use item, equip and interact, and status immunity to pull-to-point and knockback. BaseEnemySpiderling does the same. Check: stun and knock back a spiderling: nothing happens. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
22 lines
964 B
C++
22 lines
964 B
C++
#include "BaseEnemySpiderling.h"
|
|
|
|
#include "ControllablePhysicsComponent.h"
|
|
#include "DestroyableComponent.h"
|
|
#include "Entity.h"
|
|
#include "eStateChangeType.h"
|
|
|
|
void BaseEnemySpiderling::OnStartup(Entity* self) {
|
|
// SetStunImmunity: attack, interrupt, move, turn, use item, equip, interact
|
|
auto* controllablePhysicsComponent = self->GetComponent<ControllablePhysicsComponent>();
|
|
if (controllablePhysicsComponent) {
|
|
controllablePhysicsComponent->SetStunImmunity(eStateChangeType::PUSH, self->GetObjectID(),
|
|
true, true, true, false, true, true, true); // attack, equip, interact, jump, move, turn, use item
|
|
}
|
|
|
|
// SetStatusImmunity: pull to point and knockback; the interrupt immunity of SetStunImmunity lives here in DLU
|
|
auto* destroyableComponent = self->GetComponent<DestroyableComponent>();
|
|
if (destroyableComponent) {
|
|
destroyableComponent->SetStatusImmunity(eStateChangeType::PUSH, false, false, true, true, false, false, false, false, true);
|
|
}
|
|
}
|