Ejemplo n.º 1
0
        public TaxCollectorItem CreateTaxCollectorItem(TaxCollectorNpc owner, ItemTemplate template, uint amount)
        {
            int id = AutoAssignedRecord <TaxCollectorItemRecord> .PopNextId();

            TaxCollectorItemRecord record = new TaxCollectorItemRecord
            {
                Id       = id,
                OwnerId  = owner.Id,
                Template = template,
                Stack    = amount,
                Effects  = this.GenerateItemEffects(template, false),
                IsNew    = true
            };

            return(new TaxCollectorItem(record));
        }
        public void GiveTo(CharacterRecord record)
        {
            System.Collections.Generic.List <EffectBase> effects = Singleton <ItemManager> .Instance.GenerateItemEffects(this.ItemTemplate, this.MaxEffects);

            PlayerItemRecord poco = new PlayerItemRecord
            {
                Id       = AutoAssignedRecord <PlayerItemRecord> .PopNextId(),
                OwnerId  = record.Id,
                Template = this.ItemTemplate,
                Stack    = this.Amount,
                Position = CharacterInventoryPositionEnum.INVENTORY_POSITION_NOT_EQUIPED,
                Effects  = effects
            };

            ServerBase <WorldServer> .Instance.DBAccessor.Database.Insert(poco);
        }
Ejemplo n.º 3
0
        public BasePlayerItem CreatePlayerItem(Character owner, ItemTemplate template, uint amount, System.Collections.Generic.List <EffectBase> effects)
        {
            int id = AutoAssignedRecord <PlayerItemRecord> .PopNextId();

            PlayerItemRecord record = new PlayerItemRecord
            {
                Id       = id,
                OwnerId  = owner.Id,
                Template = template,
                Stack    = amount,
                Position = CharacterInventoryPositionEnum.INVENTORY_POSITION_NOT_EQUIPED,
                Effects  = effects,
                IsNew    = true
            };

            return(this.CreateItemInstance(owner, record));
        }
Ejemplo n.º 4
0
        public PlayerItemRecord GenerateItemRecord(CharacterRecord character)
        {
            ItemTemplate itemTemplate = Singleton <ItemManager> .Instance.TryGetTemplate(this.ItemId);

            if (itemTemplate == null)
            {
                throw new System.InvalidOperationException(string.Format("itemId {0} doesn't exists", this.ItemId));
            }
            System.Collections.Generic.List <EffectBase> effects = Singleton <ItemManager> .Instance.GenerateItemEffects(itemTemplate, this.MaxEffects);

            return(new PlayerItemRecord
            {
                Id = AutoAssignedRecord <PlayerItemRecord> .PopNextId(),
                OwnerId = character.Id,
                Template = itemTemplate,
                Stack = this.Amount,
                Position = CharacterInventoryPositionEnum.INVENTORY_POSITION_NOT_EQUIPED,
                Effects = effects
            });
        }
Ejemplo n.º 5
0
        public MerchantItem CreateMerchantItem(BasePlayerItem item, uint quantity, uint price)
        {
            int guid = AutoAssignedRecord <PlayerItemRecord> .PopNextId();

            return(new MerchantItem(item.Owner, guid, item.Template, item.Effects, quantity, price));
        }