Exemplo n.º 1
0
		public void StateConstruction()
		{
			var blueHand = new PlayHand(new[]
			                            	{
			                            		new PlayCard(CardInfo.CardPool["Squall"]),
			                            		new PlayCard(CardInfo.CardPool["Krysta"]),
			                            		new PlayCard(CardInfo.CardPool["Wendigo"]),
			                            		new PlayCard(CardInfo.CardPool["Behemoth"]),
			                            		new PlayCard(CardInfo.CardPool["Tonberry"]),
			                            	}, true);
			var redHand = new PlayHand(new[]
			                           	{
			                           		new PlayCard(CardInfo.CardPool["Torama"]),
			                           		new PlayCard(CardInfo.CardPool["Gerogero"]),
			                           		new PlayCard(CardInfo.CardPool["Buel"]),
			                           		new PlayCard(CardInfo.CardPool["Bomb"]),
			                           		new PlayCard(CardInfo.CardPool["Diablos"]),
			                           	}, false);
			var state = new State(new PlayField(), RuleModifier.None, blueHand, redHand, true);

			Assert.That(state.bluePoints, Is.EqualTo(5));
			state.bluePoints--;
			Assert.That(state.bluePoints, Is.EqualTo(4));
			State clone = state.Clone();
			Assert.That(clone.bluePoints, Is.EqualTo(4));
			clone.bluePoints--;
			Assert.That(state.bluePoints, Is.EqualTo(4));
			Assert.That(clone.bluePoints, Is.EqualTo(3));
		}
Exemplo n.º 2
0
		public void SimpleGame()
		{
			var redHand = new PlayHand(new[]
			                           	{
			                           		new PlayCard(CardInfo.CardPool["Shumi Tribe"]),
			                           		new PlayCard(CardInfo.CardPool["BGH251F2"]),
			                           		new PlayCard(CardInfo.CardPool["Squall"]),
			                           		new PlayCard(CardInfo.CardPool["Fastitocalon"]),
			                           		new PlayCard(CardInfo.CardPool["Pandemona"]),
			                           	}, false);
			var blueHand = new PlayHand(new[]
			                            	{
			                            		new PlayCard(CardInfo.CardPool["Quistis"]),
			                            		new PlayCard(CardInfo.CardPool["Granaldo"]),
			                            		new PlayCard(CardInfo.CardPool["Blue Dragon"]),
			                            		new PlayCard(CardInfo.CardPool["Oilboyle"]),
			                            		new PlayCard(CardInfo.CardPool["Tiamat"]),
			                            	}, true);
			var state = new State(new PlayField(), RuleModifier.None, blueHand, redHand, true);

			//Turn 1
			var playCard = blueHand.hand[0].cardInfo;
			state = state.PlayCard(playCard, 0, 0);

			//Turn 2
			playCard = redHand.hand[0].cardInfo;
			state = state.PlayCard(playCard, 1, 0);

			//Turn 3
			playCard = blueHand.hand[1].cardInfo;
			state = state.PlayCard(playCard, 2, 0);

			//Turn 4
			playCard = redHand.hand[1].cardInfo;
			state = state.PlayCard(playCard, 0, 1);

			//Turn 5
			playCard = blueHand.hand[2].cardInfo;
			state = state.PlayCard(playCard, 1, 1);

			//Turn 6
			playCard = redHand.hand[2].cardInfo;
			state = state.PlayCard(playCard, 2, 1);

			//Turn 7
			playCard = blueHand.hand[3].cardInfo;
			state = state.PlayCard(playCard, 0, 2);

			//Turn 8
			playCard = redHand.hand[3].cardInfo;
			state = state.PlayCard(playCard, 1, 2);

			//Turn 9
			playCard = blueHand.hand[4].cardInfo;
			state = state.PlayCard(playCard, 2, 2);

			Assert.That(state.GameIsOver);
			Assert.That(state.Balance, Is.EqualTo(2));
		}