mirror of
https://github.com/DarkflameUniverse/DarkflameServer
synced 2024-08-30 18:43:58 +00:00
b261e63233
* chore: Change entity and component logic to use bitstream references * merge
43 lines
1.2 KiB
C++
43 lines
1.2 KiB
C++
#pragma once
|
|
#include "Behavior.h"
|
|
|
|
class ImmunityBehavior final : public Behavior
|
|
{
|
|
public:
|
|
/*
|
|
* Inherited
|
|
*/
|
|
|
|
explicit ImmunityBehavior(const uint32_t behaviorId) : Behavior(behaviorId) {
|
|
}
|
|
|
|
void Handle(BehaviorContext* context, RakNet::BitStream& bitStream, BehaviorBranchContext branch) override;
|
|
|
|
void Calculate(BehaviorContext* context, RakNet::BitStream& bitStream, BehaviorBranchContext branch) override;
|
|
|
|
void Timer(BehaviorContext* context, BehaviorBranchContext branch, LWOOBJID second) override;
|
|
|
|
void Load() override;
|
|
|
|
private:
|
|
// stuns
|
|
bool m_ImmuneToStunAttack = false;
|
|
bool m_ImmuneToStunEquip = false;
|
|
bool m_ImmuneToStunInteract = false;
|
|
bool m_ImmuneToStunJump = false; // Unused
|
|
bool m_ImmuneToStunMove = false;
|
|
bool m_ImmuneToStunTurn = false;
|
|
bool m_ImmuneToStunUseItem = false; // Unused
|
|
|
|
//status
|
|
bool m_ImmuneToBasicAttack = false;
|
|
bool m_ImmuneToDamageOverTime = false;
|
|
bool m_ImmuneToKnockback = false;
|
|
bool m_ImmuneToInterrupt = false;
|
|
bool m_ImmuneToSpeed = false;
|
|
bool m_ImmuneToImaginationGain = false;
|
|
bool m_ImmuneToImaginationLoss = false;
|
|
bool m_ImmuneToQuickbuildInterrupt = false;
|
|
bool m_ImmuneToPullToPoint = false; // Unused in cdclient, but used in client
|
|
};
|