using Wizard; using Wizard.Battle; public class SkillFilterVariable { private readonly BattlePlayerReadOnlyInfoPair m_playerInfoPair; private readonly IReadOnlyBattleCardInfo m_ownerCardInfo; private readonly SkillConditionCheckerOption _checkerOption; private readonly bool _isPrePlay; private readonly SkillBase _skill; public SkillFilterVariable(BattlePlayerReadOnlyInfoPair playerInfoPair, IReadOnlyBattleCardInfo ownerCardInfo, bool isPrePlay, SkillBase skill, SkillConditionCheckerOption checkerOption = null) { m_playerInfoPair = playerInfoPair; m_ownerCardInfo = ownerCardInfo; _checkerOption = ((checkerOption != null) ? checkerOption : new SkillConditionCheckerOption()); _isPrePlay = isPrePlay; _skill = skill; } public int Parse(string text) { VariableSkillFilterCollection variableSkillFilterCollection = new VariableSkillFilterCollection(_checkerOption.IsSkipPrivateCardCheck); SkillFilterCreator.SetupVariable(variableSkillFilterCollection, text, m_ownerCardInfo, _skill); return variableSkillFilterCollection.Filtering(m_playerInfoPair, _checkerOption, _isPrePlay); } }