/// <summary> /// Returns a new instance of <see cref="Combat"/> fit for leader wars game mode. /// </summary> /// <param name="leftHand">Left player hand.</param> /// <param name="rightHand">Right player hand.</param> /// <param name="isLeftFirstPlayer">Is left player the first one to play on first round?</param> /// <param name="randomFactor">Random factor.</param> /// <returns></returns> public static Combat GetLeaderWarsCombat(Hand leftHand, Hand rightHand, bool isLeftFirstPlayer, RandomFactor randomFactor) { throw new NotImplementedException(); }
/// <summary> /// Returns a new instance of <see cref="Combat"/> fit for solo game mode. /// </summary> /// <param name="leftHand">Left player hand.</param> /// <param name="rightHand">Right player hand.</param> /// <param name="isLeftFirstPlayer">Is left player the first one to play on first round?</param> /// <param name="randomFactor">Random factor.</param> /// <returns></returns> public static Combat GetSoloCombat(Hand leftHand, Hand rightHand, bool isLeftFirstPlayer, RandomFactor randomFactor) { return(GetNormalCombat(leftHand, rightHand, isLeftFirstPlayer, randomFactor)); }
/// <summary> /// Returns a new instance of <see cref="Combat"/> for a customized non leader wars game. /// </summary> /// <param name="leftHand">Left player hand.</param> /// <param name="rightHand">Right player hand.</param> /// <param name="initialLeftLife">Starting left player lives.</param> /// <param name="initialRightLife">Starting right player lives.</param> /// <param name="initialLeftPillz">Starting left player pillz.</param> /// <param name="initialRightPillz">Starting right player pillz.</param> /// <param name="isLeftFirstPlayer">Is left player the first one to play on first round?</param> /// <param name="randomFactor">Random factor.</param> /// <returns></returns> public static Combat GetCustomCombat(Hand leftHand, Hand rightHand, int initialLeftLife, int initialRightLife, int initialLeftPillz, int initialRightPillz, bool isLeftFirstPlayer, RandomFactor randomFactor) { return(new Combat(leftHand, rightHand, initialLeftLife, initialRightLife, initialLeftPillz, initialRightPillz, isLeftFirstPlayer, randomFactor)); }
private static Combat GetNormalCombat(Hand leftHand, Hand rightHand, bool isLeftFirstPlayer, RandomFactor randomFactor) { return(new Combat(leftHand, rightHand, 12, 12, isLeftFirstPlayer, randomFactor)); }
private void CreateCombatExecute() { Combat combat = null; RandomFactor isRandom = (IsRandom) ? RandomFactor.Random : RandomFactor.NonRandom; List <CardDrawed> leftCards = new List <CardDrawed>(); for (int i = 0; i < 4; i++) { CardInstance instance = InMemoryManager.GetFakeCardInstance(CreationLeftCards[i].CardBaseId, CreationLeftLevels[i].Value); //CardInstance instance = new CardInstance(CreationLeftCards[i], 0, CreationLeftLevels[i].Value); leftCards.Add(new CardDrawed(instance)); } Hand leftHand = new Hand(leftCards); List <CardDrawed> rightCards = new List <CardDrawed>(); for (int i = 0; i < 4; i++) { CardInstance instance = InMemoryManager.GetFakeCardInstance(CreationRightCards[i].CardBaseId, CreationRightLevels[i].Value); //CardInstance instance = new CardInstance(CreationRightCards[i], 0, CreationRightLevels[i].Value); rightCards.Add(new CardDrawed(instance)); } Hand rightHand = new Hand(rightCards); switch (GameMode) { case GameMode.Tourney: combat = CombatFactory.GetTourneyCombat(leftHand, rightHand, HasInitiative, isRandom); break; case GameMode.Classic: combat = CombatFactory.GetClassicCombat(leftHand, rightHand, HasInitiative, isRandom); break; case GameMode.Solo: combat = CombatFactory.GetSoloCombat(leftHand, rightHand, HasInitiative, isRandom); break; case GameMode.LeaderWars: throw new NotImplementedException(); //break; case GameMode.ELO: combat = CombatFactory.GetEloCombat(leftHand, rightHand, HasInitiative); break; case GameMode.Survivor: throw new NotImplementedException(); //break; case GameMode.Duel: combat = CombatFactory.GetDuelCombat(leftHand, rightHand, HasInitiative, isRandom); break; case GameMode.Custom: throw new NotImplementedException(); //break; } ((CombatCalculatorCombatModeViewModel)ViewModelLocator.Locator["CombatCalculatorCombatMode"]).Combat = combat; }