Example #1
0
        protected override void OnActivate()
        {
            base.OnActivate();

            this.Call         = this.Ensage.AbilityFactory.GetAbility <axe_berserkers_call>();
            this.CullingBlade = this.Ensage.AbilityFactory.GetAbility <axe_culling_blade>();

            this.BladeMail  = this.Ensage.AbilityFactory.GetItem <item_blade_mail>();
            this.Blink      = this.Ensage.AbilityFactory.GetItem <item_blink>();
            this.LotusOrb   = this.Ensage.AbilityFactory.GetItem <item_lotus_orb>();
            this.ForceStaff = this.Ensage.AbilityFactory.GetItem <item_force_staff>();
        }
Example #2
0
        protected override void InventoryChanged(object sender, NotifyCollectionChangedEventArgs e)
        {
            if (e.Action == NotifyCollectionChangedAction.Add)
            {
                foreach (var newItem in e.NewItems.OfType <InventoryItem>())
                {
                    switch (newItem.Id)
                    {
                    case AbilityId.item_blade_mail:
                        this.BladeMail = this.Ensage.AbilityFactory.GetAbility <item_blade_mail>(newItem.Item);
                        break;

                    case AbilityId.item_blink:
                        this.Blink = this.Ensage.AbilityFactory.GetAbility <item_blink>(newItem.Item);
                        break;

                    case AbilityId.item_lotus_orb:
                        this.LotusOrb = this.Ensage.AbilityFactory.GetAbility <item_lotus_orb>(newItem.Item);
                        break;

                    case AbilityId.item_force_staff:
                        this.ForceStaff = this.Ensage.AbilityFactory.GetAbility <item_force_staff>(newItem.Item);
                        break;
                    }
                }
            }
            else if (e.Action == NotifyCollectionChangedAction.Remove)
            {
                foreach (var oldItem in e.OldItems.OfType <InventoryItem>())
                {
                    switch (oldItem.Id)
                    {
                    case AbilityId.item_blade_mail:
                        this.BladeMail = null;
                        break;

                    case AbilityId.item_blink:
                        this.Blink = null;
                        break;

                    case AbilityId.item_lotus_orb:
                        this.LotusOrb = null;
                        break;

                    case AbilityId.item_force_staff:
                        this.ForceStaff = null;
                        break;
                    }
                }
            }
        }