public AttackCommand(BattleChar instigator, DamageItem item) : base(instigator)
        {
            this.item = item;

            battle = game._battle;
            combat = game._combat;
            ui     = game._ui;

            typeDatabase = game._typeDatabase;

            normalDelay = battle._delay;
            smallDelay  = 0.33f * normalDelay;

            commandType = CommandType.Item;
        }
        int Damage(DamageItem item, float effectiveness)
        {
            int damageCap = game._pointsCap;

            int damage = Mathf.RoundToInt(effectiveness * item._damage);

            if (damage <= 0)
            {
                damage = 1;
            }
            if (damage > damageCap)
            {
                damage = damageCap;
            }

            return(damage);
        }