* added opcode handler for initial spells
* corrected opcode output together with hidefreqopcodes conf option (plz test!)
This commit is contained in:
parent
f9a8031e4f
commit
4c86eab673
@ -93,7 +93,7 @@ void WorldSession::_HandleUpdateObjectOpcode(WorldPacket& recvPacket)
|
||||
recvPacket >> objtypeid >> flags;
|
||||
logdebug("Create Object type %u with guid "I64FMT,objtypeid,uguid);
|
||||
|
||||
this->_MovementUpdate(objtypeid, uguid, recvPacket);
|
||||
//this->_MovementUpdate(objtypeid, uguid, recvPacket); // i think thats the wrong place for this [FG]
|
||||
|
||||
// (TODO) and then: Add object to objmgr
|
||||
}
|
||||
@ -105,7 +105,7 @@ void WorldSession::_HandleUpdateObjectOpcode(WorldPacket& recvPacket)
|
||||
{
|
||||
uguid = recvPacket.GetPackedGuid(); // not 100% sure if this is correct
|
||||
logdebug("GUID "I64FMT" out of range",uguid);
|
||||
// TODO: delete object from known objects list
|
||||
objmgr.RemoveObject(uguid);
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
@ -121,12 +121,12 @@ void WorldSession::Update(void)
|
||||
hideOpcode = true;
|
||||
}
|
||||
|
||||
if( ( (known && GetInstance()->GetConf()->showopcodes==1)
|
||||
if( (known && GetInstance()->GetConf()->showopcodes==1)
|
||||
|| ((!known) && GetInstance()->GetConf()->showopcodes==2)
|
||||
|| (GetInstance()->GetConf()->showopcodes==3) )
|
||||
&& (!GetInstance()->GetConf()->hidefreqopcodes || GetInstance()->GetConf()->hidefreqopcodes && !hideOpcode))
|
||||
{
|
||||
logcustom(1,YELLOW,">> Opcode %u [%s] (%s)", packet->GetOpcode(), LookupName(packet->GetOpcode(),g_worldOpcodeNames), known ? "Known" : "UNKNOWN");
|
||||
if(!(GetInstance()->GetConf()->hidefreqopcodes && hideOpcode))
|
||||
logcustom(1,YELLOW,">> Opcode %u [%s] (%s)", packet->GetOpcode(), LookupName(packet->GetOpcode(),g_worldOpcodeNames), known ? "Known" : "UNKNOWN");
|
||||
}
|
||||
delete packet;
|
||||
}
|
||||
@ -174,6 +174,7 @@ OpcodeHandler *WorldSession::_GetOpcodeHandlerTable() const
|
||||
{SMSG_CAST_RESULT, &WorldSession::_HandleCastResultOpcode},
|
||||
{SMSG_ITEM_QUERY_SINGLE_RESPONSE, &WorldSession::_HandleItemQuerySingleResponseOpcode},
|
||||
{SMSG_DESTROY_OBJECT, &WorldSession::_HandleDestroyObjectOpcode},
|
||||
{SMSG_INITIAL_SPELLS, &WorldSession::_HandleInitialSpellsOpcode},
|
||||
|
||||
// table termination
|
||||
{ 0, NULL }
|
||||
@ -598,3 +599,18 @@ void WorldSession::_HandleCastResultOpcode(WorldPacket& recvPacket)
|
||||
{
|
||||
// _playerSettings->HandleCastResultOpcode(recvPacket);
|
||||
}
|
||||
|
||||
void WorldSession::_HandleInitialSpellsOpcode(WorldPacket& recvPacket)
|
||||
{
|
||||
uint8 unk;
|
||||
uint16 spellid,spellslot,count;
|
||||
recvPacket >> unk >> count;
|
||||
logdebug("Got initial spells list, %u spells.",count);
|
||||
for(uint16 i = 0; i < count; i++)
|
||||
{
|
||||
recvPacket >> spellid >> spellslot;
|
||||
logdebug("Initial Spell: id=%u slot=%u",spellid,spellslot);
|
||||
// these data need to be added to MyCharacter later
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -90,7 +90,8 @@ private:
|
||||
void _HandleUpdateObjectOpcode(WorldPacket& recvPacket);
|
||||
void _HandleItemQuerySingleResponseOpcode(WorldPacket& recvPacket);
|
||||
void _HandleDestroyObjectOpcode(WorldPacket& recvPacket);
|
||||
|
||||
void _HandleInitialSpellsOpcode(WorldPacket& recvPacket);
|
||||
|
||||
void _MovementUpdate(uint8 objtypeid, uint64 guid, WorldPacket& recvPacket); // Helper for _HandleUpdateObjectOpcode
|
||||
|
||||
PseuInstance *_instance;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user