* added opcode handler for SMSG_DESTROY_OBJECT
* added new conf option: ShowMyOpcodes=0/1 (show opcodes pseuwow sends) * made the logo look better :)
This commit is contained in:
parent
3d1a0e3d4d
commit
710de3d5e1
@ -73,6 +73,8 @@ PseuInstance::~PseuInstance()
|
|||||||
|
|
||||||
bool PseuInstance::Init(void) {
|
bool PseuInstance::Init(void) {
|
||||||
log_prepare("logfile.txt",this);
|
log_prepare("logfile.txt",this);
|
||||||
|
log("\n");
|
||||||
|
log("--- Initializing Instance ---");
|
||||||
|
|
||||||
if(_confdir.empty())
|
if(_confdir.empty())
|
||||||
_confdir="./conf/";
|
_confdir="./conf/";
|
||||||
@ -91,10 +93,8 @@ bool PseuInstance::Init(void) {
|
|||||||
_scp->SetParentMethod((void*)this);
|
_scp->SetParentMethod((void*)this);
|
||||||
_conf=new PseuInstanceConf();
|
_conf=new PseuInstanceConf();
|
||||||
|
|
||||||
logdebug("Setting up DefScripts path '%s'",_scpdir.c_str());
|
|
||||||
_scp->SetPath(_scpdir);
|
_scp->SetPath(_scpdir);
|
||||||
|
|
||||||
logdebug("Setting up predefined DefScript macros...");
|
|
||||||
_scp->variables.Set("@version_short",_ver_short);
|
_scp->variables.Set("@version_short",_ver_short);
|
||||||
_scp->variables.Set("@version",_ver);
|
_scp->variables.Set("@version",_ver);
|
||||||
|
|
||||||
@ -252,6 +252,7 @@ void PseuInstanceConf::ApplyFromVarSet(VarSet &v)
|
|||||||
allowgamecmd=(bool)atoi(v.Get("ALLOWGAMECMD").c_str());
|
allowgamecmd=(bool)atoi(v.Get("ALLOWGAMECMD").c_str());
|
||||||
enablechatai=(bool)atoi(v.Get("ENABLECHATAI").c_str());
|
enablechatai=(bool)atoi(v.Get("ENABLECHATAI").c_str());
|
||||||
notifyping=(bool)atoi(v.Get("NOTIFYPING").c_str());
|
notifyping=(bool)atoi(v.Get("NOTIFYPING").c_str());
|
||||||
|
showmyopcodes=(bool)atoi(v.Get("SHOWMYOPCODES").c_str());
|
||||||
|
|
||||||
// clientversion is a bit more complicated to add
|
// clientversion is a bit more complicated to add
|
||||||
{
|
{
|
||||||
|
|||||||
@ -44,6 +44,7 @@ class PseuInstanceConf
|
|||||||
bool enablecli;
|
bool enablecli;
|
||||||
bool enablechatai;
|
bool enablechatai;
|
||||||
bool notifyping;
|
bool notifyping;
|
||||||
|
bool showmyopcodes;
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|||||||
@ -162,7 +162,7 @@ void RealmSocket::_HandleRealmList(void)
|
|||||||
{
|
{
|
||||||
realmAddr=realms[i].addr_port;
|
realmAddr=realms[i].addr_port;
|
||||||
}
|
}
|
||||||
log("Realm: %s (%s)",realms[i].name.c_str(),realms[i].addr_port.c_str());
|
logcustom(0,LGREEN,"Realm: %s (%s)",realms[i].name.c_str(),realms[i].addr_port.c_str());
|
||||||
logdetail(" [chars:%d][population:%f][timezone:%d]",realms[i].chars_here,realms[i].population,realms[i].timezone);
|
logdetail(" [chars:%d][population:%f][timezone:%d]",realms[i].chars_here,realms[i].population,realms[i].timezone);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -51,7 +51,6 @@ void WorldSession::SendPing(uint32 ping){
|
|||||||
packet << ping;
|
packet << ping;
|
||||||
packet.SetOpcode(CMSG_PING);
|
packet.SetOpcode(CMSG_PING);
|
||||||
SendWorldPacket(packet);
|
SendWorldPacket(packet);
|
||||||
logdebug("Sent CMSG_PING, clock=%u",ping);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void WorldSession::SendEmote(uint32 id){
|
void WorldSession::SendEmote(uint32 id){
|
||||||
|
|||||||
@ -49,3 +49,11 @@ void WorldObject::SetPosition(float x, float y, float z, float o, uint16 _map)
|
|||||||
_m = _map;
|
_m = _map;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void WorldSession::_HandleDestroyObjectOpcode(WorldPacket& recvPacket)
|
||||||
|
{
|
||||||
|
uint64 guid;
|
||||||
|
recvPacket >> guid;
|
||||||
|
logdebug("Destroy Object "I64FMT,guid);
|
||||||
|
objmgr.RemoveObject(guid);
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@ -15,6 +15,7 @@
|
|||||||
|
|
||||||
WorldSession::WorldSession(PseuInstance *in)
|
WorldSession::WorldSession(PseuInstance *in)
|
||||||
{
|
{
|
||||||
|
logdebug("-> Starting WorldSession");
|
||||||
_instance = in;
|
_instance = in;
|
||||||
_valid=_authed=_logged=false;
|
_valid=_authed=_logged=false;
|
||||||
_socket=new WorldSocket(_sh,this);
|
_socket=new WorldSocket(_sh,this);
|
||||||
@ -72,6 +73,8 @@ void WorldSession::AddToPktQueue(WorldPacket *pkt)
|
|||||||
|
|
||||||
void WorldSession::SendWorldPacket(WorldPacket &pkt)
|
void WorldSession::SendWorldPacket(WorldPacket &pkt)
|
||||||
{
|
{
|
||||||
|
if(GetInstance()->GetConf()->showmyopcodes)
|
||||||
|
logcustom(0,BROWN,"<< Opcode %u [%s]", pkt.GetOpcode(), LookupName(pkt.GetOpcode(),g_worldOpcodeNames));
|
||||||
_socket->SendWorldPacket(pkt);
|
_socket->SendWorldPacket(pkt);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -160,6 +163,7 @@ OpcodeHandler *WorldSession::_GetOpcodeHandlerTable() const
|
|||||||
{SMSG_COMPRESSED_UPDATE_OBJECT, &WorldSession::_HandleCompressedUpdateObjectOpcode},
|
{SMSG_COMPRESSED_UPDATE_OBJECT, &WorldSession::_HandleCompressedUpdateObjectOpcode},
|
||||||
{SMSG_CAST_RESULT, &WorldSession::_HandleCastResultOpcode},
|
{SMSG_CAST_RESULT, &WorldSession::_HandleCastResultOpcode},
|
||||||
{SMSG_ITEM_QUERY_SINGLE_RESPONSE, &WorldSession::_HandleItemQuerySingleResponseOpcode},
|
{SMSG_ITEM_QUERY_SINGLE_RESPONSE, &WorldSession::_HandleItemQuerySingleResponseOpcode},
|
||||||
|
{SMSG_DESTROY_OBJECT, &WorldSession::_HandleDestroyObjectOpcode},
|
||||||
|
|
||||||
// table termination
|
// table termination
|
||||||
{ 0, NULL }
|
{ 0, NULL }
|
||||||
@ -316,7 +320,7 @@ void WorldSession::_HandleCharEnumOpcode(WorldPacket& recvPacket)
|
|||||||
int playerNum = 0;
|
int playerNum = 0;
|
||||||
|
|
||||||
for(unsigned int i=0;i<num;i++){
|
for(unsigned int i=0;i<num;i++){
|
||||||
log("## %s (%u) [%s/%s]",
|
logcustom(0,LGREEN,"## %s (%u) [%s/%s]",
|
||||||
plr[i]._name.c_str(),plr[i]._level,raceName[plr[i]._race],className[plr[i]._class]);
|
plr[i]._name.c_str(),plr[i]._level,raceName[plr[i]._race],className[plr[i]._class]);
|
||||||
logdetail("-> coords: map=%u zone=%u x=%f y=%f z=%f",
|
logdetail("-> coords: map=%u zone=%u x=%f y=%f z=%f",
|
||||||
plr[i]._mapId,plr[i]._zoneId,plr[i]._x,plr[i]._y,plr[i]._z);
|
plr[i]._mapId,plr[i]._zoneId,plr[i]._x,plr[i]._y,plr[i]._z);
|
||||||
|
|||||||
@ -89,6 +89,7 @@ private:
|
|||||||
void _HandleCompressedUpdateObjectOpcode(WorldPacket& recvPacket);
|
void _HandleCompressedUpdateObjectOpcode(WorldPacket& recvPacket);
|
||||||
void _HandleUpdateObjectOpcode(WorldPacket& recvPacket);
|
void _HandleUpdateObjectOpcode(WorldPacket& recvPacket);
|
||||||
void _HandleItemQuerySingleResponseOpcode(WorldPacket& recvPacket);
|
void _HandleItemQuerySingleResponseOpcode(WorldPacket& recvPacket);
|
||||||
|
void _HandleDestroyObjectOpcode(WorldPacket& recvPacket);
|
||||||
|
|
||||||
PseuInstance *_instance;
|
PseuInstance *_instance;
|
||||||
WorldSocket *_socket;
|
WorldSocket *_socket;
|
||||||
|
|||||||
@ -71,7 +71,11 @@ void abortproc(void)
|
|||||||
int main(int argc, char* argv[]) {
|
int main(int argc, char* argv[]) {
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
printf("\n (C) 2006,2007 Snowstorm Software\n\n\n");
|
_log_setcolor(true,LGREEN);
|
||||||
|
printf("+----------------------------------+\n"
|
||||||
|
"| (C) 2006,2007 Snowstorm Software |\n"
|
||||||
|
"+----------------------------------+\n");
|
||||||
|
_log_resetcolor(true);
|
||||||
|
|
||||||
_HookSignals();
|
_HookSignals();
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user