void NFCCreateRoleModule::SaveData(const NFGUID & self) { NF_SHARE_PTR<NFIObject> xObject = m_pKernelModule->GetObject(self); if (xObject) { NF_SHARE_PTR<NFIPropertyManager> xPropManager = xObject->GetPropertyManager(); NF_SHARE_PTR<NFIRecordManager> xRecordManager = xObject->GetRecordManager(); NFMsg::RoleDataPack xDataPack; *xDataPack.mutable_id() = NFINetModule::NFToPB(self); *(xDataPack.mutable_property()->mutable_player_id()) = NFINetModule::NFToPB(self); *(xDataPack.mutable_record()->mutable_player_id()) = NFINetModule::NFToPB(self); if (xPropManager) { ConvertPropertyManagerToPB(xPropManager, xDataPack.mutable_property()); } if (xRecordManager) { ConvertRecordManagerToPB(xRecordManager, xDataPack.mutable_record()); } m_pNetClientModule->SendSuitByPB(NF_SERVER_TYPES::NF_ST_DB, self.GetData(), NFMsg::EGMI_REQ_SAVE_ROLE_DATA, xDataPack); } }
void NFDBNet_ServerModule::OnLoadRoleDataProcess(const NFSOCK nSockIndex, const int nMsgID, const char * msg, const uint32_t nLen) { NFGUID nClientID; NFMsg::ReqEnterGameServer xMsg; if (!m_pNetModule->ReceivePB(nMsgID, msg, nLen, xMsg, nClientID)) { return; } NFGUID nRoleID = NFINetModule::PBToNF(xMsg.id()); NFMsg::RoleDataPack xRoleDataxMsg; xRoleDataxMsg.mutable_id()->CopyFrom(xMsg.id()); NFPlayerRedisModule* pPlayerRedisModule = (NFPlayerRedisModule*)m_pPlayerRedisModule; pPlayerRedisModule->LoadPlayerData(nRoleID, xRoleDataxMsg); m_pNetModule->SendMsgPB(NFMsg::EGMI_ACK_LOAD_ROLE_DATA, xRoleDataxMsg, nSockIndex); }