public function getCurrentSpellAttack(): ?SpellAttack
    {
        $spellAttackWithAddition = $this->getSpellAttackWithAddition();
        if (!$spellAttackWithAddition) {
            return null;
        }

        return new SpellAttack(
            [
                $spellAttackWithAddition->getValue()
                + (int)$this->getParameterBonusFromModifiers(ModifierMutableSpellParameterCode::SPELL_ATTACK),
                0 // no addition
            ],
            Tables::getIt()
        );
    }
public function getCurrentSpellAttack(): ?SpellAttack
    {
        $spellAttackWithAddition = $this->getSpellAttackWithAddition();
        if (!$spellAttackWithAddition) {
            return null;
        }

        return new SpellAttack(
            [
                $spellAttackWithAddition->getValue()
                + (int)$this->getParameterBonusFromModifiers(ModifierMutableSpellParameterCode::SPELL_ATTACK),
                0 // no addition
            ],
            Tables::getIt()
        );
    }
public function getCurrentSpellAttack ( ) : ? SpellAttack { $ spellAttackWithAddition = $ this -> getSpellAttackWithAddition ( ) ; if ( ! $ spellAttackWithAddition ) { return null ; } return new SpellAttack ( [ $ spellAttackWithAddition -> getValue ( ) + ( int ) $ this -> getParameterBonusFromModifiers ( ModifierMutableSpellParameterCode :: SPELL_ATTACK ) , 0 // no addition ] , Tables :: getIt ( ) ) ; }
Attack can be only increased, not added.

@return SpellAttack|null
Attack can be only increased not added .