Esempio n. 1
0
        private void CreateAttackMap()
        {
            AttackMap.Add(ActionSlot.First, () =>
            {
                var f = new Fireball(this, GameWorld, 900);
                f.AttackBehaviors.Add(new TargetAttackBehavior(GameWorld));
                f.AttackBehaviors.Add(new SplitShotAttackBehavior(GameWorld));
                f.AttackBehaviors.Add(new NormalAttackBehavior(GameWorld));
                return f;
            });
            AttackMap.Add(ActionSlot.Second, () =>
            {
                var f = new Frostball(this, GameWorld, 900);
                f.AttackBehaviors.Add(new BuffDurationAttackBehavior(GameWorld, new Slow(30) { Duration = 3 }));
                f.AttackBehaviors.Add(new NormalAttackBehavior(GameWorld));
                return f;
            });
            AttackMap.Add(ActionSlot.Third, () =>
            {
                var nova = new SpellShieldNova(this, GameWorld, 500);
                nova.AttackBehaviors.Add(new CircleSpellAttackBehavior(GameWorld));
                nova.AttackBehaviors.Add(new NovaAttackBehavior(GameWorld));
                return nova;
            });

            SpellHandler.Cooldowns.Add(typeof(Fireball), new Cooldown(2));
            SpellHandler.Cooldowns.Add(typeof(Frostball), new Cooldown(5));
            SpellHandler.Cooldowns.Add(typeof(SpellShieldNova), new Cooldown(1));
        }
Esempio n. 2
0
 private void CreateAttackMap()
 {
     AttackMap.Add(ActionSlot.First, () =>
     {
         var f = new Fireball(this, GameWorld, 600);
         f.AttackBehaviors.Add(new NormalAttackBehavior(GameWorld));
         return f;
     });
     SpellHandler.Cooldowns.Add(typeof(Fireball), new Cooldown(2));
 }