mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-10-13 16:23:44 +00:00
feat(combat): destroyables keep their attack priority
DestructibleComponent.attack_priority is loaded onto the DestroyableComponent as a signed value. The client's LWODestroyableComponent (LoadDataFromTemplate, 0x00c9f900) starts it at 1 and keeps 1 when the column is empty, and answers GetAttackPriority with it; the server now does the same so TacArcs can order their targets by it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -253,6 +253,12 @@ public:
|
||||
void SetIsNPC(bool value) { m_IsNPC = value; }
|
||||
bool GetIsNPC() const { return m_IsNPC; }
|
||||
|
||||
/**
|
||||
* The DestructibleComponent's attack_priority: TacArcs that use attack priority target lower values first
|
||||
*/
|
||||
void SetAttackPriority(const int32_t value) { m_AttackPriority = value; }
|
||||
int32_t GetAttackPriority() const { return m_AttackPriority; }
|
||||
|
||||
/**
|
||||
* Returns the current is-dead value, this is mostly unused
|
||||
* @return the current is-dead value, this is mostly unused
|
||||
@@ -606,6 +612,9 @@ private:
|
||||
|
||||
bool m_IsNPC = false;
|
||||
|
||||
// The client's LWODestroyableComponent starts at 1 and keeps it when the column is empty
|
||||
int32_t m_AttackPriority = 1;
|
||||
|
||||
/**
|
||||
* Whether this entity is dead. Unused, here for serialization
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user