Add in SharedTaskState::MemberZoned hooks

This should be all of them ... at least where raid/group is done ...
This commit is contained in:
Michael Cook (mackal) 2019-06-09 17:59:30 -04:00
parent 8dc25c838b
commit fa2b5166fb
4 changed files with 29 additions and 0 deletions

View File

@ -1877,6 +1877,10 @@ bool Client::Death(Mob* killerMob, int32 damage, uint16 spell, EQEmu::skills::Sk
if (r)
r->MemberZoned(this);
auto shared_task = GetSharedTask();
if (shared_task)
shared_task->MemberZoned(this);
dead_timer.Start(5000, true);
m_pp.zone_id = m_pp.binds[0].zoneId;
m_pp.zoneInstance = m_pp.binds[0].instance_id;

View File

@ -3396,6 +3396,11 @@ void Client::LinkDead()
if(raid){
raid->MemberZoned(this);
}
auto shared_task = GetSharedTask();
if (shared_task)
shared_task->MemberZoned(this);
// save_timer.Start(2500);
linkdead_timer.Start(RuleI(Zone,ClientLinkdeadMS));
SendAppearancePacket(AT_Linkdead, 1);

View File

@ -149,6 +149,9 @@ bool Client::Process() {
{
myraid->MemberZoned(this);
}
auto shared_task = GetSharedTask();
if (shared_task)
shared_task->MemberZoned(this);
return(false);
}
@ -171,6 +174,9 @@ bool Client::Process() {
if (myraid) {
myraid->MemberZoned(this);
}
auto shared_task = GetSharedTask();
if (shared_task)
shared_task->MemberZoned(this);
return false; //delete client
}
@ -653,6 +659,9 @@ bool Client::Process() {
myraid->MemberZoned(this);
}
}
auto shared_task = GetSharedTask();
if (shared_task)
shared_task->MemberZoned(this);
OnDisconnect(false);
return false;
}
@ -694,6 +703,10 @@ void Client::OnDisconnect(bool hard_disconnect) {
if (MyRaid)
MyRaid->MemberZoned(this);
auto shared_task = GetSharedTask();
if (shared_task)
shared_task->MemberZoned(this);
parse->EventPlayer(EVENT_DISCONNECT, this, "", 0);
/* QS: PlayerLogConnectDisconnect */
@ -2101,6 +2114,10 @@ void Client::HandleRespawnFromHover(uint32 Option)
if(r)
r->MemberZoned(this);
auto shared_task = GetSharedTask();
if (shared_task)
shared_task->MemberZoned(this);
m_pp.zone_id = chosen->zone_id;
m_pp.zoneInstance = chosen->instance_id;
database.MoveCharacterToZone(CharacterID(), database.GetZoneName(chosen->zone_id));

View File

@ -537,6 +537,9 @@ void EntityList::MobProcess()
Log(Logs::General, Logs::Error, "About to delete a client still in a raid.");
r->MemberZoned(mob->CastToClient());
}
auto shared_task = mob->CastToClient()->GetSharedTask();
if (shared_task)
shared_task->MemberZoned(mob);
entity_list.RemoveClient(id);
}