コード例 #1
0
        private int poisonExplosion()
        {
            var multi    = getAttackMultiplier();
            var increase = getAttackModifier();
            var poison   = new PoisonExplosion();

            return(poison.Action(SpellPower, Crit, multi, increase));
        }
コード例 #2
0
    public IExplosion GetExplosion(OfensiveType type)
    {
        IExplosion explosion = null;

        if (explosions.ContainsKey(type))
        {
            explosion = explosions[type];
        }
        else
        {
            switch (type)
            {
            case OfensiveType.Buff:
                explosion = new PoisonExplosion();
                break;

            case OfensiveType.Chain:
                explosion = new ChainExplosion();
                break;

            case OfensiveType.Debuff:
                explosion = new IceExplosion();
                break;

            case OfensiveType.Direct:
                explosion = new PoisonExplosion();
                break;

            case OfensiveType.Explosion:
                explosion = new FireExplosion();
                break;

            case OfensiveType.Poison:
                explosion = new PoisonExplosion();
                break;
            }

            explosions.Add(type, explosion);
        }

        return(explosion);
    }