void Item::Deserialize(ByteStream& stream) { ItemTemplate::Deserialize(stream); m_id = stream.ReadUuid(); m_uiDurability = stream.Read8(); if (m_uiDurability > ItemTemplate::MaxDurability()) throw Exception(_T("invalid durability value"), __FILE__, __LINE__); }
void AddRemoveObjectMessage::Deserialize(ByteStream& stream) { // list of objects to add size_t iMax = stream.Read32(); m_vecObjectsToAdd.reserve(iMax); for (size_t i=0; i<iMax; i++) { MobilePtr spMobile(new Mobile(Uuid::Null())); spMobile->Deserialize(stream); m_vecObjectsToAdd.push_back(spMobile); } iMax = stream.Read32(); m_vecObjectsToRemove.reserve(iMax); for (size_t i=0; i<iMax; i++) m_vecObjectsToRemove.push_back(stream.ReadUuid()); }