Exemple #1
0
        /// <summary>
        /// Get vendor inventory XML.
        /// </summary>
        /// <param name="container">The inventory name.</param>
        /// <returns>The vendor inventory XML.</returns>
        public string ToXml(string container)
        {
            if (Itemsets.Itemset.Items.Items.Count > 0)
            {
                ModelInventoryInventory ObjInventory = new ModelInventoryInventory()
                {
                    Container = container
                };

                int ListPosition = 1;

                foreach (ModelVendorItem ObjVendorItem in Itemsets.Itemset.Items.Items)
                {
                    ModelInventoryInventoryItem ObjInventoryItem = ConvertVendorToInventoryItem(ObjVendorItem, ListPosition);

                    ListPosition = ListPosition + 1;

                    ObjInventory.Items.Items.Add(ListPosition, ObjInventoryItem);
                }

                return(ObjInventory.ToXml);
            }

            return("<inventory />");
        }
Exemple #2
0
        /// <summary>
        /// Convert item to inventory item
        /// </summary>
        /// <param name="key">The item key.</param>
        /// <param name="position">The inventory position.</param>
        /// <param name="level">The item level.</param>
        /// <param name="index">The item inventory index.</param>
        /// <param name="count">The number of items.</param>
        /// <param name="seed">The item seed.</param>
        /// <param name="serializationData">The item serialization data.</param>
        /// <param name="sellable">Flag if the item is sellable.</param>
        /// <param name="tradeable">Flag if the item is tradeable.</param>
        /// <param name="destroyable">Flag if the item is destroyable.</param>
        /// <param name="isBound">Flag if the item is bound.</param>
        /// <returns>The inventory item.</returns>
        public ModelInventoryInventoryItem ToInventoryItem(string key, int position, int level, int index, int count = 1, int seed = 0, string serializationData = "addsilent", string sellable = "false", string tradeable = "false", string destroyable = "false", string isBound = "false")
        {
            ModelInventoryInventoryItem Item = new ModelInventoryInventoryItem()
            {
                Id = key, Type = InventoryItemTypes.Consumable, Itempos = position, Count = count, Index = index, Sellable = sellable, Tradeable = tradeable, Destroyable = destroyable, Isbound = isBound, Level = level, Seed = seed, SerializationData = serializationData
            };

            return(Item);
        }
Exemple #3
0
        public ModelInventoryInventoryItem ConvertVendorToInventoryItem(ModelVendorItem ObjVendorItem, int ListPosition = 0)
        {
            ModelInventoryInventoryItem ObjInventoryItem = new ModelInventoryInventoryItem();

            if (ObjVendorItem.Purchase.Trait != null)
            {
                ObjInventoryItem = Database.Traits[ObjVendorItem.Purchase.Trait.Text].ToInventoryItem(ObjVendorItem.Purchase.Trait.Text, ListPosition, ObjVendorItem.Purchase.Trait.Level, ListPosition);
            }
            else if (ObjVendorItem.Purchase.Consumable != null)
            {
                ObjInventoryItem = Database.Consumables[ObjVendorItem.Purchase.Consumable.Text].ToInventoryItem(ObjVendorItem.Purchase.Consumable.Text, ListPosition, 0, ListPosition, ObjVendorItem.Purchase.Consumable.Quantity);
            }
            else if (ObjVendorItem.Purchase.Material != null)
            {
                ObjInventoryItem = Database.Materials[ObjVendorItem.Purchase.Material.Text].ToInventoryItem(ObjVendorItem.Purchase.Material.Text, ListPosition, 0, ListPosition, ObjVendorItem.Purchase.Material.Quantity);
            }
            else if (ObjVendorItem.Purchase.Blueprint != null)
            {
                ObjInventoryItem = Database.Blueprints[ObjVendorItem.Purchase.Blueprint.Text].ToInventoryItem(ObjVendorItem.Purchase.Blueprint.Text, ListPosition, 0, ListPosition, ObjVendorItem.Purchase.Blueprint.Quantity);
            }
            else if (ObjVendorItem.Purchase.Design != null)
            {
                ObjInventoryItem = Database.Designs[ObjVendorItem.Purchase.Design.Text].ToInventoryItem(ObjVendorItem.Purchase.Design.Text, ListPosition, 0, ListPosition, ObjVendorItem.Purchase.Design.Quantity);
            }
            else if (ObjVendorItem.Purchase.Advisor != null)
            {
                ObjInventoryItem = Database.Advisors[ObjVendorItem.Purchase.Advisor.Text].ToInventoryItem(ObjVendorItem.Purchase.Advisor.Text, ListPosition, 0, ListPosition, ObjVendorItem.Purchase.Advisor.Quantity);
            }
            else if (ObjVendorItem.Purchase.Lootroll != null)
            {
                ObjInventoryItem = Database.Lootrolls[ObjVendorItem.Purchase.Lootroll.Text].ToInventoryItem(ObjVendorItem.Purchase.Lootroll.Text, ListPosition, 0, ListPosition, ObjVendorItem.Purchase.Lootroll.Quantity);
            }
            else
            {
                throw new ArgumentOutOfRangeException($"Vendor::GetInventoryXml - Unknown vendor item");
            }

            ObjInventoryItem.Cost = new ModelInventoryInventoryItemCost()
            {
                Capitalresource = new ModelGenericCapitalresource()
                {
                    Type = CapitalResourceTypes.cCapResCoin, Quantity = 200
                }
            };

            return(ObjInventoryItem);
        }