public ImpactRandomWeightExecutor(FormulaLogic formulaLogic, ConditionController condition, ImpactController impactLogic, SettingsAccessor settings, ImpactType type) { _condition = condition; _formulaLogic = formulaLogic; _impactLogic = impactLogic; _settings = settings; Id = type; }
public ImpactManaExecutor(FormulaLogic logic, ExplorerAccessor explorer, ScorersAccessor scorers, BattleAccessor battle, SettingsAccessor settings) { _logic = logic; _scorers = scorers; _battle = battle; _explorer = explorer; _settings = settings; }
public UnitImpactBuffTypeExecutor(ImpactController impacts, ContextLogic context, FormulaLogic logic, BuffLogic buffs, BattleAccessor battle) { _impacts = impacts; _context = context; _buffs = buffs; _logic = logic; _battle = battle; }
//public FormulaLogic Logic { get;set; } //[Query] //public int Stamina => State.Values["stamina"]; //[Query] //public IReadOnlyDictionary<int, IScorer> Scorers => Static.Scorers; public void Spend(IPrice price, FormulaLogic logic) { var value = (int)logic.Calculate(price.Value); var scorerId = Static.MoneyTypes[price.MoneyType].ScorerId; State.Values.TryGetValue(scorerId, out var count); if (count < value) { throw new Exception($"Недостаточно ресурсов type = {price.MoneyType} для покупки ({count} < {value})"); } State.Values[scorerId] = count - value; }
public InternalAdditionalLogics(InternalAccessors accessors, IApplyManager storage, LogicData data, IServerAPI api) { ImpactController = new ImpactController(data.IsEmulate); ContextLogic = ContextLogic.CreateClient(accessors.BattleAccessor, accessors.UnitsAccessor); DropLogic = DropLogic.CreateClient(accessors.ScorersAccessor, accessors.InventoryAccessor, accessors.UnitsAccessor, accessors.ExplorerAccessor, accessors.FormulaController, ImpactController); ScorersLogic = ScorersLogic.CreateClient(accessors.BattleAccessor, accessors.ScorersAccessor, accessors.ExplorerAccessor); ShopLogic = ShopLogic.CreateClient(accessors.SettingsAccessor, accessors.ShopAccessor, accessors.FormulaController); ApplyChangeLogic = ApplyChangeLogic.CreateClient(storage, ContextLogic); FormulaLogic = FormulaLogic.CreateClient(ContextLogic, accessors.ScorersAccessor, accessors.UnitsAccessor, accessors.BattleAccessor, accessors.ExplorerAccessor, data, accessors.PlayerAccessor, accessors.SettingsAccessor, accessors.ConditionController, accessors.FormulaController, ScorersLogic); BuffLogic = BuffLogic.CreateClient(accessors.BattleAccessor, ContextLogic, ApplyChangeLogic); ExplorerLogic = ExplorerLogic.CreateClient(accessors.ScorersAccessor, accessors.ExplorerAccessor, accessors.UnitsAccessor, accessors.FormulaController, ScorersLogic, ContextLogic, DropLogic, ImpactController); TriggerLogic = TriggerLogic.CreateClient(accessors.BattleAccessor, FormulaLogic); ConditionLogic = ConditionLogic.CreateClient(accessors.InventoryAccessor, accessors.ScorersAccessor, accessors.PlayerAccessor, accessors.UnitsAccessor, accessors.BattleAccessor, accessors.ExplorerAccessor, accessors.SettingsAccessor, accessors.AchievementAccessor, FormulaLogic, ContextLogic, ScorersLogic, data, accessors.ConditionController); BattleLogic = BattleLogic.CreateClient(ApplyChangeLogic, ContextLogic, ConditionLogic, accessors.FormulaController, accessors.BattleAccessor, accessors.ScorersAccessor, accessors.UnitsAccessor, accessors.ExplorerAccessor, accessors.SettingsAccessor); ImpactLogic = ImpactLogic.CreateClient(accessors.ScorersAccessor, accessors.PlayerAccessor, accessors.InventoryAccessor, accessors.ExplorerAccessor, accessors.UnitsAccessor, accessors.BattleAccessor, accessors.SettingsAccessor, accessors.AchievementAccessor, BattleLogic, FormulaLogic, accessors.ConditionController, ApplyChangeLogic, BuffLogic, ScorersLogic, ContextLogic, ImpactController, data); }
public ConditionPlayerLevelChecker(FormulaLogic logic, PlayerAccessor player) { _player = player; _logic = logic; }
public UnitImpactDelayExecutor(ApplyChangeLogic logic, FormulaLogic formula) { _logic = logic; _formula = formula; }
public static UnitProgressModule CreateClient(UnitsAccessor _units, ScorersAccessor _scorers, BattleAccessor _battle, FormulaLogic _formuls, PlayerAccessor _player, ImpactController _impact) { return(new UnitProgressModule { _units = _units, _scorers = _scorers, _battle = _battle, _formuls = _formuls, _player = _player, _impact = _impact, } ); }
public ConditionUnitBuffTypeChecker(ContextLogic context, FormulaLogic formula, BattleAccessor battle) { _battle = battle; _context = context; _formula = formula; }
public static EquipmentModule CreateClient(InventoryAccessor _resources, ScorersAccessor _scorers, UnitsAccessor _units, ImpactController _impact, FormulaLogic _formula) { return(new EquipmentModule { _resources = _resources, _scorers = _scorers, _units = _units, _impact = _impact, _formula = _formula, } ); }
public static GachaModule CreateClient(ImpactController _impactLogic, ScorersAccessor _scorers, InventoryAccessor _resources, UnitsAccessor _units, ExplorerAccessor _explorer, DropLogic _dropLogic, ConditionController _condition, FormulaLogic _formuls) { return(new GachaModule { _impactLogic = _impactLogic, _scorers = _scorers, _resources = _resources, _units = _units, _explorer = _explorer, _dropLogic = _dropLogic, _condition = _condition, _formuls = _formuls, } ); }
public ImpactStaminaExecutor(FormulaLogic logic, ExplorerAccessor explorer, ScorersAccessor scorers) { _logic = logic; _scorers = scorers; _explorer = explorer; }
public ConditionUnitBuffChecker(ContextLogic contextLogic, FormulaLogic formula) { _contextLogic = contextLogic; _formula = formula; }
public TriggerHpChecker(FormulaLogic formula, BattleAccessor accessor) { _formula = formula; _accessor = accessor; }
public ImpactBuffExecutor(FormulaLogic logic, ExplorerAccessor explorer) { _logic = logic; _explorer = explorer; }
public ConditionRandChecker(FormulaLogic formula, LogicData data) { _data = data; _formula = formula; }
public TriggerBuffChecker(FormulaLogic formula, BattleAccessor battle) { _battle = battle; _formula = formula; }
public ImpactScorerDataExecutor(FormulaLogic logic, ScorersLogic scorers, ExplorerAccessor explorer) { _scorers = scorers; _logic = logic; _explorer = explorer; }
public ConditionScorerChecker(FormulaLogic logic, ScorersLogic scorers) { _scorers = scorers; _logic = logic; }
public FormulaConstantCalculator(FormulaLogic logic, ScorersAccessor scorer) { _logic = logic; _scorer = scorer; }
public ImpactPlayerExpExecutor(ImpactController logic, FormulaLogic formula, PlayerAccessor accessor) { _formula = formula; _logic = logic; _accessor = accessor; }
public ImpactUnitShardExecutor(UnitsAccessor accessor, FormulaLogic logic) { _accessor = accessor; _logic = logic; }
public UnitImpactAnimFrameExecutor(ApplyChangeLogic logic, FormulaLogic formula) { _formula = formula; _logic = logic; }
public ImpactItemDataExecutor(FormulaLogic logic, InventoryAccessor inventory, ExplorerAccessor explorer) { _inventory = inventory; _explorer = explorer; _logic = logic; }
public static ExplorerProgressModule CreateClient(ExplorerAccessor _explorer, InventoryAccessor _inventory, UnitsAccessor _units, SettingsAccessor _settings, ScorersAccessor _scorers, BattleAccessor _battle, ExplorerLogic _explorerLogic, FormulaLogic _formula, ImpactController _impactLogic) { return(new ExplorerProgressModule { _explorer = _explorer, _inventory = _inventory, _units = _units, _settings = _settings, _scorers = _scorers, _battle = _battle, _explorerLogic = _explorerLogic, _formula = _formula, _impactLogic = _impactLogic, } ); }
public ImpactPerkChargesExecutor(FormulaLogic logic, UnitsAccessor units) { _logic = logic; _units = units; }
public static ShopModule CreateClient(ScorersAccessor _scorers, ShopAccessor _shop, FormulaLogic _formula, ImpactController _impacts, ShopLogic _shopLogic, DropLogic _dropLogic) { return(new ShopModule { _scorers = _scorers, _shop = _shop, _formula = _formula, _impacts = _impacts, _shopLogic = _shopLogic, _dropLogic = _dropLogic, } ); }
public ConditionIntentoryChecker(FormulaLogic logic, InventoryAccessor inventory) { _inventory = inventory; _logic = logic; }
public static AutowinModule CreateClient(ImpactController Impact, ExplorerAccessor _explorer, ScorersAccessor Scorers, FormulaLogic Formula, ExplorerLogic _explorerLogic) { return(new AutowinModule { Impact = Impact, _explorer = _explorer, Scorers = Scorers, Formula = Formula, _explorerLogic = _explorerLogic, } ); }
public ImpactChangeMoneyExecutor(FormulaLogic logic, ScorersAccessor scorers, ExplorerAccessor explorer) { _scorers = scorers; _logic = logic; _explorer = explorer; }