protected override void PerformOfflineAction(OfflineDatabase offlineDatabase, IOfflineDefinitionLoader offlineDefinitions)
    {
        CustomEquipmentCollection customEquipmentCollection = offlineDatabase.Read <CustomEquipmentCollection>();

        ClubPenguin.Net.Offline.PlayerOutfitDetails value = default(ClubPenguin.Net.Offline.PlayerOutfitDetails);
        value.Init();
        long[] parts = RequestBody.parts;
        foreach (long num in parts)
        {
            foreach (CustomEquipment item in customEquipmentCollection.Equipment)
            {
                CustomEquipment current = item;
                if (current.equipmentId == num)
                {
                    value.Parts.Add(current);
                    break;
                }
            }
        }
        offlineDatabase.Write(value);
        ResponseBody = new SignedResponse <ClubPenguin.Net.Domain.PlayerOutfitDetails>
        {
            Data = new ClubPenguin.Net.Domain.PlayerOutfitDetails
            {
                parts = value.Parts.ToArray()
            }
        };
    }
        protected override void SetOfflineData(OfflineDatabase offlineDatabase, IOfflineDefinitionLoader offlineDefinitions)
        {
            TubeData value = offlineDatabase.Read <TubeData>();

            value.EquippedTubeId = SignedJoinRoomData.Data.selectedTubeId;
            offlineDatabase.Write(value);
            ClubPenguin.Net.Offline.ConsumableInventory value2 = offlineDatabase.Read <ClubPenguin.Net.Offline.ConsumableInventory>();
            value2.Inventory = SignedJoinRoomData.Data.playerRoomData.consumableInventory.inventoryMap;
            offlineDatabase.Write(value2);
            ClubPenguin.Net.Offline.PlayerAssets value3 = offlineDatabase.Read <ClubPenguin.Net.Offline.PlayerAssets>();
            value3.Assets = SignedJoinRoomData.Data.playerRoomData.assets;
            offlineDatabase.Write(value3);
            ClubPenguin.Net.Offline.PlayerOutfitDetails value4 = offlineDatabase.Read <ClubPenguin.Net.Offline.PlayerOutfitDetails>();
            value4.Parts = new List <CustomEquipment>(SignedJoinRoomData.Data.playerRoomData.outfit.parts);
            offlineDatabase.Write(value4);
            ClubPenguin.Net.Offline.Profile value5 = offlineDatabase.Read <ClubPenguin.Net.Offline.Profile>();
            value5.Colour      = SignedJoinRoomData.Data.playerRoomData.profile.colour;
            value5.DateCreated = DateTime.UtcNow.AddDays(-1 * SignedJoinRoomData.Data.playerRoomData.profile.daysOld).GetTimeInMilliseconds();
            offlineDatabase.Write(value5);
            SetProgressOperation.SetOfflineQuestStateCollection(offlineDatabase, SignedJoinRoomData.Data.playerRoomData.quests);
        }
        protected override void SetOfflineData(OfflineDatabase offlineDatabase, IOfflineDefinitionLoader offlineDefinitions)
        {
            BreadcrumbCollection value = offlineDatabase.Read <BreadcrumbCollection>();

            value.breadcrumbs = ResponseBody.breadcrumbs.breadcrumbs;
            offlineDatabase.Write(value);
            ClaimableRewardData value2 = offlineDatabase.Read <ClaimableRewardData>();

            value2.ClimedRewards = ResponseBody.claimedRewardIds;
            offlineDatabase.Write(value2);
            ClubPenguin.Net.Offline.DailySpinData value3 = offlineDatabase.Read <ClubPenguin.Net.Offline.DailySpinData>();
            value3.CurrentChestId = ResponseBody.dailySpinData.currentChestId;
            value3.NumChestsReceivedOfCurrentChestId = ResponseBody.dailySpinData.numChestsReceivedOfCurrentChestId;
            value3.NumPunchesOnCurrentChest          = ResponseBody.dailySpinData.numPunchesOnCurrentChest;
            value3.TimeOfLastSpinInMilliseconds      = ResponseBody.dailySpinData.timeOfLastSpinInMilliseconds;
            offlineDatabase.Write(value3);
            ClubPenguin.Net.Offline.PlayerOutfitDetails value4 = offlineDatabase.Read <ClubPenguin.Net.Offline.PlayerOutfitDetails>();
            value4.Parts = ResponseBody.outfit;
            offlineDatabase.Write(value4);
            ClubPenguin.Net.Offline.Profile value5 = offlineDatabase.Read <ClubPenguin.Net.Offline.Profile>();
            value5.Colour      = ResponseBody.profile.colour;
            value5.DateCreated = DateTime.UtcNow.AddDays(-1 * ResponseBody.profile.daysOld).GetTimeInMilliseconds();
            offlineDatabase.Write(value5);
            SetProgressOperation.SetOfflineQuestStateCollection(offlineDatabase, ResponseBody.quests);
            TutorialData value6 = offlineDatabase.Read <TutorialData>();

            for (int i = 0; i < value6.Bytes.Length; i++)
            {
                sbyte b = 0;
                if (i < ResponseBody.tutorialData.Count)
                {
                    b = ResponseBody.tutorialData[i];
                }
                value6.Bytes[i] = b;
            }
            offlineDatabase.Write(value6);
        }
 protected override void SetOfflineData(OfflineDatabase offlineDatabase, IOfflineDefinitionLoader offlineDefinitions)
 {
     ClubPenguin.Net.Offline.PlayerOutfitDetails value = offlineDatabase.Read <ClubPenguin.Net.Offline.PlayerOutfitDetails>();
     value.Parts = new List <CustomEquipment>(ResponseBody.Data.parts);
     offlineDatabase.Write(value);
 }