Пример #1
0
 protected override void PerformOfflineAction(OfflineDatabase offlineDatabase, IOfflineDefinitionLoader offlineDefinitions)
 {
     ClubPenguin.Net.Offline.ConsumableInventory value = offlineDatabase.Read <ClubPenguin.Net.Offline.ConsumableInventory>();
     if (value.Inventory.ContainsKey(Type))
     {
         value.Inventory[Type].itemCount += Count;
     }
     else
     {
         value.Inventory[Type] = new InventoryItemStock
         {
             itemCount = Count
         };
     }
     value.Inventory[Type].lastPurchaseTimestamp = DateTime.UtcNow.GetTimeInMilliseconds();
     offlineDatabase.Write(value);
     offlineDefinitions.SubtractConsumableCost(Type, Count);
     Response = new PurchaseConsumableResponse
     {
         assets    = offlineDatabase.Read <ClubPenguin.Net.Offline.PlayerAssets>().Assets,
         inventory = new SignedResponse <ClubPenguin.Net.Domain.ConsumableInventory>
         {
             Data = new ClubPenguin.Net.Domain.ConsumableInventory
             {
                 inventoryMap = value.Inventory
             }
         }
     };
 }
Пример #2
0
        private void onPurchaseConsumableResponse(PurchaseConsumableOperation operation, HttpResponse httpResponse)
        {
            PurchaseConsumableResponse response = operation.Response;

            Service.Get <EventDispatcher>().DispatchEvent(new RewardServiceEvents.MyAssetsReceived(response.assets));
            inventoryDataReturned(response.inventory);
            handleCPResponse(response);
        }