public void Execute() { var gameInfoFactory = new GameInfoFactory(); var requirementFactory = new RequirementFactory(); var predictors = new PredictorBase[] { new BuffPredictor(gameInfoFactory) }; var priotizer = new AbilityPriotizer( (info, priotity) => new PriotizedAbility(requirementFactory, info, priotity), predictors, gameInfoFactory); this.SetUpTestData(priotizer); var barUi = new Bar((p) => new BarButton(p)); new Timer(0.1, () => { priotizer.UpdatePriotization(); var queue = priotizer.GetQueueObjects(); barUi.DisplayQueue(queue); }); Core.print("PrioBar loaded."); }
public AbilityPriotizer(Func <AbilityPrioInfo, int, PriotizedAbility> priotizedAbilityFactory, PredictorBase[] predictors, GameInfoFactory gameInfoFactory) { this.priotizedAbilityFactory = priotizedAbilityFactory; this.predictors = predictors; this.spellInfo = gameInfoFactory.GetSpellInfo(); }
public void Setup() { _gridInfoFactoryMock = new Mock <IGridInfoFactory>(); _shipInfoFactoryMock = new Mock <IShipInfoFactory>(); _factory = new GameInfoFactory(_gridInfoFactoryMock.Object, _shipInfoFactoryMock.Object); }
public BuffPredictor(GameInfoFactory gameInfoFactory) { this.buffInfo = gameInfoFactory.GetBuffInfo(); this.RelevantConsequences = new[] { AbilityConsequenceType.ApplyBuff, AbilityConsequenceType.ConsumeBuff, }; }