void WorldSession::HandleMoveStateChanged(WorldPacket &recvPacket) { cout << "Handle " << LookupMsgCodeName(recvPacket.getMsgCode()) << ", size: " << recvPacket.Size() << endl; uint32 id = recvPacket.ReadUInt32(); WorldPacket data(SMSG_MOVESTATE_CHANGED, 4); data << id; sWorld.SendGlobalWorldPacket(data); }
void WorldSession::HandleMoveStartBackward(WorldPacket &recvPacket) { cout << "Handle " << LookupMsgCodeName(recvPacket.getMsgCode()) << ", size: " << recvPacket.Size() << endl; uint32 id = recvPacket.ReadUInt32(); WorldPacket data(SMSG_PLAYER_MOVE, 4); data << id; sWorld.SendGlobalWorldPacket(data); }
void WorldSession::HandleMovementInfo(WorldPacket &recvPacket) { cout << "Handle " << LookupMsgCodeName(recvPacket.getMsgCode()) << ", size: " << recvPacket.Size() << endl; uint32 id = recvPacket.ReadUInt32(); WorldPacket data(SMSG_MOVEMENT_INFO, 4); data << id; sWorld.SendGlobalWorldPacket(data); }
void WorldSession::HandlePlayerLogin(WorldPacket &recvPacket) { cout << "Handle " << LookupMsgCodeName(recvPacket.getMsgCode()) << ", size: " << recvPacket.Size() << endl; uint32 id = recvPacket.ReadUInt32(); Player *pPlayer = new Player(this); pPlayer->Create(playerInfo[m_accountID].name, playerInfo[m_accountID].guid, playerInfo[m_accountID].id, playerInfo[m_accountID].level, playerInfo[m_accountID].race, playerInfo[m_accountID].classs, playerInfo[m_accountID].health, playerInfo[m_accountID].mana, playerInfo[m_accountID].speed); pPlayer->setPosition(id * 103.5f, id * 25.3f, 0); setPlayer(pPlayer); WorldPacket data(SMSG_HELLO); string msg = "欢迎登陆蘑菇王子服务器!@~~"; data << m_accountID; data << sWorld.GetActivedSessionCount(); data << msg; SendPacket(&data); sMapManager.LoadMap(pPlayer->getMapID())->Add(pPlayer); msg = "有玩家登陆啦~!@@@"; data.Initialize(SMSG_PLAYER_LOGIN, sizeof(uint32) + msg.size() + m_pPlayer->getName().size()); data << id; data << m_pPlayer->getName(); data << msg; sWorld.SendGlobalWorldPacket(data); }