mirror of
https://github.com/mangosfour/server.git
synced 2025-12-14 16:37:01 +00:00
[11888] Implement FLAG_DESPAWN_ON_EVADE for creature_linking.
Thanks to Xfurry for testing Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
This commit is contained in:
parent
df9e0ebf6a
commit
f25e14fd9f
3 changed files with 6 additions and 3 deletions
|
|
@ -172,7 +172,7 @@ bool CreatureLinkingMgr::IsLinkingEntryValid(uint32 slaveEntry, CreatureLinkingI
|
|||
enum EventMask
|
||||
{
|
||||
EVENT_MASK_ON_AGGRO = FLAG_AGGRO_ON_AGGRO,
|
||||
EVENT_MASK_ON_EVADE = FLAG_RESPAWN_ON_EVADE,
|
||||
EVENT_MASK_ON_EVADE = FLAG_RESPAWN_ON_EVADE | FLAG_DESPAWN_ON_EVADE,
|
||||
EVENT_MASK_ON_DIE = FLAG_DESPAWN_ON_DEATH | FLAG_SELFKILL_ON_DEATH | FLAG_RESPAWN_ON_DEATH | FLAG_FOLLOW,
|
||||
EVENT_MASK_ON_RESPAWN = FLAG_RESPAWN_ON_RESPAWN | FLAG_DESPAWN_ON_RESPAWN | FLAG_FOLLOW,
|
||||
EVENT_MASK_TRIGGER_TO = FLAG_TO_AGGRO_ON_AGGRO | FLAG_TO_RESPAWN_ON_EVADE | FLAG_FOLLOW,
|
||||
|
|
@ -374,6 +374,8 @@ void CreatureLinkingHolder::ProcessSlave(CreatureLinkingEvent eventType, Creatur
|
|||
}
|
||||
break;
|
||||
case LINKING_EVENT_EVADE:
|
||||
if (flag & FLAG_DESPAWN_ON_EVADE && pSlave->isAlive())
|
||||
pSlave->ForcedDespawn();
|
||||
if (flag & FLAG_RESPAWN_ON_EVADE && !pSlave->isAlive())
|
||||
pSlave->Respawn();
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -62,6 +62,7 @@ enum CreatureLinkingFlags
|
|||
FLAG_TO_AGGRO_ON_AGGRO = 0x0002,
|
||||
FLAG_RESPAWN_ON_EVADE = 0x0004,
|
||||
FLAG_TO_RESPAWN_ON_EVADE = 0x0008,
|
||||
FLAG_DESPAWN_ON_EVADE = 0x1000,
|
||||
FLAG_DESPAWN_ON_DEATH = 0x0010,
|
||||
FLAG_SELFKILL_ON_DEATH = 0x0020,
|
||||
FLAG_RESPAWN_ON_DEATH = 0x0040,
|
||||
|
|
@ -75,7 +76,7 @@ enum CreatureLinkingFlags
|
|||
FLAG_CANT_SPAWN_IF_BOSS_DEAD = 0x0400,
|
||||
FLAG_CANT_SPAWN_IF_BOSS_ALIVE = 0x0800,
|
||||
|
||||
LINKING_FLAG_INVALID = 0x1000, // TODO adjust when other flags are implemented
|
||||
LINKING_FLAG_INVALID = 0x2000, // TODO adjust when other flags are implemented
|
||||
};
|
||||
|
||||
// Structure holding the information for an entry
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#ifndef __REVISION_NR_H__
|
||||
#define __REVISION_NR_H__
|
||||
#define REVISION_NR "11887"
|
||||
#define REVISION_NR "11888"
|
||||
#endif // __REVISION_NR_H__
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue