Merge pull request #785 from noudess/master

Zone header was getting ignored by RoF2 client.
This commit is contained in:
Chris Miles 2018-10-20 22:02:29 -05:00 committed by GitHub
commit 8115db3576
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1115,7 +1115,12 @@ void Client::Handle_Connect_OP_ReqNewZone(const EQApplicationPacket *app)
memcpy(outapp->pBuffer, &zone->newzone_data, sizeof(NewZone_Struct)); memcpy(outapp->pBuffer, &zone->newzone_data, sizeof(NewZone_Struct));
strcpy(nz->char_name, m_pp.name); strcpy(nz->char_name, m_pp.name);
FastQueuePacket(&outapp); // This was using FastQueuePacket and the packet was never getting sent...
// Not sure if this was timing.... but the NewZone was never logged until
// I changed it.
outapp->priority = 6;
QueuePacket(outapp);
safe_delete(outapp);
return; return;
} }
@ -1741,11 +1746,6 @@ void Client::Handle_Connect_OP_ZoneEntry(const EQApplicationPacket *app)
/* Task Packets */ /* Task Packets */
LoadClientTaskState(); LoadClientTaskState();
if (ClientVersion() >= EQEmu::versions::ClientVersion::RoF) {
outapp = new EQApplicationPacket(OP_ReqNewZone, 0);
Handle_Connect_OP_ReqNewZone(outapp);
safe_delete(outapp);
}
if (m_ClientVersionBit & EQEmu::versions::bit_UFAndLater) { if (m_ClientVersionBit & EQEmu::versions::bit_UFAndLater) {
outapp = new EQApplicationPacket(OP_XTargetResponse, 8); outapp = new EQApplicationPacket(OP_XTargetResponse, 8);
@ -1771,6 +1771,10 @@ void Client::Handle_Connect_OP_ZoneEntry(const EQApplicationPacket *app)
QueuePacket(outapp); QueuePacket(outapp);
safe_delete(outapp); safe_delete(outapp);
if (ClientVersion() >= EQEmu::versions::ClientVersion::RoF) {
Handle_Connect_OP_ReqNewZone(nullptr);
}
SetAttackTimer(); SetAttackTimer();
conn_state = ZoneInfoSent; conn_state = ZoneInfoSent;
zoneinpacket_timer.Start(); zoneinpacket_timer.Start();