public void StartBattle() { var encounter = new Encounter(new Goomba(), new SpikedGoomba()); var battle = new Battle.Battle(new List <Hero> { mario }, encounter); battle.Start(); Assert.IsTrue(battle.IsStarted()); Assert.IsFalse(battle.IsEnded()); }
public void jr_troopa_1() { Assert.IsTrue(!battle.IsStarted(), $"battle state = {battle.State.ToString()}"); Assert.IsTrue(!battle.ActionMenu.Showing); Assert.IsTrue(!battle.OptionsListMenu.Showing); Assert.IsTrue(battle.OptionsListMenu.Active == null); Assert.IsTrue(battle.TurnSystem.Active == Mario); //0:28 battle.Start(); Assert.IsTrue(battle.TextBubbleSystem.Showing); Assert.IsTrue(!battle.ActionMenu.Showing); battle.TextBubbleSystem.Continue(); battle.TextBubbleSystem.Continue(); battle.TextBubbleSystem.Continue(); Assert.IsTrue(@battle.TextBubbleSystem.Showing); //0:20 4th, press a battle.TextBubbleSystem.Continue(); Assert.IsTrue(!battle.TextBubbleSystem.Showing); Assert.IsTrue(battle.ActionMenu.Showing); battle.ActionMenu.MoveTargetDown(); Assert.IsTrue(battle.ActionMenu.ActiveAction.Name == "Hammer"); battle.ExecuteFromActionMenu(); Assert.IsTrue(battle.TargetSystem.Showing); Assert.IsTrue(battle.TargetSystem.Actives[0] == JrTroopa); battle.ConfirmTarget(); //0:25 mario hammers jr troopa for one -1 Assert.IsTrue(JrTroopa.Health.CurrentValue == 4); Assert.IsTrue(battle.TextBubbleSystem.Showing); //zooms into goompa for him to talk //one chat bubble battle.TextBubbleSystem.Continue(); Assert.IsTrue(!battle.TextBubbleSystem.Showing); //0:29 //then jr troopa attacks Assert.IsTrue(battle.TurnSystem.LastActive == "JrTroopa", $"{battle.TurnSystem.Active}"); //0:32 //mario takes one, mario hp = 9 Assert.IsTrue(Mario.Health.CurrentValue == 9); Assert.IsTrue(battle.ActionMenu.Showing); battle.ActionMenu.MoveTargetUp(); Assert.IsTrue(battle.ActionMenu.ActiveAction.Name == "Jump"); battle.ExecuteFromActionMenu(); Assert.IsTrue(battle.TargetSystem.Showing); Assert.IsTrue(battle.TargetSystem.Actives[0] == JrTroopa); //0:36 //mario jumps on jr troopa for one -2 battle.ConfirmTarget(); Assert.IsTrue(JrTroopa.Health.CurrentValue == 3); Assert.IsTrue(battle.TextBubbleSystem.Showing, $""); Assert.IsTrue(Mario.Health.CurrentValue == 9); Assert.IsTrue(battle.TurnSystem.LastActive == "JrTroopa", $"{battle.TurnSystem.Active}"); Assert.IsTrue(battle.TextBubbleSystem.Showing, $""); //camera resets //jr troop starts talking,//text shows //1st text battle.TextBubbleSystem.Continue(); Assert.IsTrue(!battle.TextBubbleSystem.Showing, $""); //0:39 //jrs troops turn, he jumps on mario, mario hp = 8 Assert.IsTrue(Mario.Health.CurrentValue == 8, $"mario health {Mario.Health.CurrentValue}"); //shows actions of mario,jump is selected Assert.IsTrue(battle.ActionMenu.Showing); Assert.IsTrue(battle.ActionMenu.ActiveAction.Name == "Jump"); //press a, confirm jump battle.ExecuteFromActionMenu(); //showing targeting on jr.troopa Assert.IsTrue(battle.TargetSystem.Actives[0] == JrTroopa); //press a, confirming target battle.ConfirmTarget(); //0:43 //mario jumps on jr troopa for one -3 Assert.IsTrue(JrTroopa.Health.CurrentValue == 2); //camera resets //0:46 //jr troop starts talking,//text shows Assert.IsTrue(battle.TextBubbleSystem.Showing); //0:48 //1st text press a to continue text battle.TextBubbleSystem.Continue(); //0:49 //jr troopa jumps on mario, mario hp = 7 Assert.IsTrue(Mario.Health.CurrentValue == 7, $"mario health {Mario.Health.CurrentValue}"); //shows actions of mario, jump is selected Assert.IsTrue(battle.ActionMenu.Showing); Assert.IsTrue(battle.ActionMenu.ActiveAction.Name == "Jump"); //move down actions, hammer is selected battle.ActionMenu.MoveTargetDown(); //0:52 press a, confirm hammer battle.ExecuteFromActionMenu(); //showing targeting on jr.troopa //press a, confirming target battle.ConfirmTarget(); //0:54 mario hammers jr troopa for one -4 Assert.IsTrue(JrTroopa.Health.CurrentValue == 1); //0:56 goompa tells mario he almost has it! //one chat bubble Assert.IsTrue(battle.TextBubbleSystem.Showing); //0:59 press a, chat continues battle.TextBubbleSystem.Continue(); //then jr troopa talks, zooms in //1st chat bubble Assert.IsTrue(battle.TextBubbleSystem.Showing); battle.TextBubbleSystem.Continue(); //1:04 2nd chat bubble battle.TextBubbleSystem.Continue(); // 3rd chat bubble, press a //he uses a power jump! hits mario for 2 //1:07 //mario is at 5/10 Assert.IsTrue(Mario.Health.CurrentValue == 5, $"mario health {Mario.Health.CurrentValue}"); //move up actions, jump is selected battle.ActionMenu.MoveTargetUp(); Assert.IsTrue(battle.ActionMenu.ActiveAction.Name == "Jump"); //press a, confirm jump battle.ExecuteFromActionMenu(); //showing targeting on jr.troopa //press a, confirming target battle.ConfirmTarget(); //1:12 //mario jumpd on jr troopa for one -5 //goompa talks, shows text Assert.IsTrue(battle.TextBubbleSystem.Showing); Assert.IsTrue(!battle.IsEnded()); //1:17 //1st text, press a battle.TextBubbleSystem.Continue(); //2nd text, press a battle.TextBubbleSystem.Continue(); //3rd text, press a battle.TextBubbleSystem.Continue(); //4rd text, press a battle.TextBubbleSystem.Continue(); //battle done Assert.IsTrue(battle.IsEnded()); }
public void goomba_king_tattle_fire_flower() { Assert.IsTrue(battle.TurnSystem.Active == mario); //0:28 Assert.IsTrue(battle.ActionMenu.Showing); Assert.IsTrue(battle.ActionMenu.ActiveAction != null); Assert.IsTrue(battle.ActionMenu.ActiveAction == mario.Actions[2] && battle.ActionMenu.ActiveAction.Name == "Jump"); battle.ActionMenu.MoveTargetUp(); Assert.IsTrue(battle.ActionMenu.ActiveAction == mario.Actions[1] && battle.ActionMenu.ActiveAction.Name == "Items"); battle.TurnSystem.Swap(); Assert.IsTrue(battle.TurnSystem.Active == goombario); Assert.IsTrue(battle.ActionMenu.ActiveAction == goombario.Actions[1] && battle.ActionMenu.ActiveAction.Name == "Abilities"); battle.ShowOptionsMenu(); Assert.IsTrue(battle.OptionsListMenu.Showing); Assert.IsFalse(battle.ActionMenu.Showing); Assert.IsTrue(battle.OptionsListMenu.Items.Length == 2); battle.OptionsListMenu.MoveTargetDown(); //press a (tattle is pressed) Assert.IsTrue(battle.GetActiveOptionName() == "Tattle", "was not tattle"); battle.ShowTargeting(battle.OptionsListMenu.Active); Assert.IsFalse(battle.OptionsListMenu.Showing, $"OptionsListMenu showing = {battle.OptionsListMenu.Showing}"); Assert.IsTrue(battle.TargetSystem.Actives[0] == GoombaKing, $"target is not goombaking, target = {battle.TargetSystem.Actives[0]}"); battle.ConfirmTarget(); Assert.IsTrue(battle.TextBubbleSystem.Showing); //press a(text is continued) 0:40 battle.TextBubbleSystem.Continue(); Assert.IsTrue(battle.TextBubbleSystem.Showing); battle.TextBubbleSystem.Continue(); Assert.IsTrue(battle.TextBubbleSystem.Showing); battle.TextBubbleSystem.Continue(); Assert.IsTrue(battle.TextBubbleSystem.Showing); battle.TextBubbleSystem.Continue(); Assert.IsFalse(battle.TextBubbleSystem.Showing); //this is failing somethinh anout goombario? Assert.IsTrue(battle.TurnSystem.Active == mario, $"{battle.TurnSystem.Active}"); Assert.IsTrue(battle.ActionMenu.ActiveAction == mario.Actions[1] && battle.ActionMenu.ActiveAction.Name == "Items", $"{battle.ActionMenu.ActiveAction.Name}"); battle.ShowOptionsMenu(); Assert.IsTrue(battle.OptionsListMenu.Items.Length == 3); battle.OptionsListMenu.MoveTargetDown(); Assert.IsTrue(battle.GetActiveOptionName() == "Fire Flower", $"was not Fire Flower, {battle.GetActiveOptionName()}"); //excuting option should show targeting! battle.ShowTargeting(battle.OptionsListMenu.Active); battle.ConfirmTarget(); int goombaKingHealth = battle.Enemies.First(enemy => enemy == GoombaKing).Health.CurrentValue; Assert.IsTrue(condition: goombaKingHealth == 7, message: $"was not GoombaKing, {goombaKingHealth}"); Enemy redGoomba = battle.Enemies.First(enemy => enemy is RedGoomba); Assert.IsTrue(condition: redGoomba.IsDead, message: $"redGoomba is not dead, {redGoomba}"); Enemy blueGoomba = battle.Enemies.First(enemy => enemy is NewBlueGoomba); Assert.IsTrue(condition: blueGoomba.IsDead, message: $"blueGoomba is not dead, {blueGoomba}"); Assert.IsTrue(battle.TurnSystem.LastActive == GoombaKing.GetType().Name, $"{battle.TurnSystem.Active}"); //then the enviroment hits mario with three goomnuts 1:04 Assert.IsTrue(mario.Health.CurrentValue == 8, $"{mario.Health.CurrentValue}"); Assert.IsTrue(battle.TurnSystem.Active == mario, $"{battle.TurnSystem.Active}"); Assert.IsTrue(battle.ActionMenu.Showing); battle.ActionMenu.MoveTargetDown(); battle.ActionMenu.MoveTargetDown(); Assert.IsTrue(battle.ActionMenu.ActiveAction.Name == "Hammer", $"action = {battle.ActionMenu.ActiveAction.Name}"); Assert.IsTrue(battle.ActionMenu.Showing); battle.ExecuteFromActionMenu(); Assert.IsTrue(!battle.ActionMenu.Showing && !battle.OptionsListMenu.Showing, $"{battle.OptionsListMenu.Showing}"); Assert.IsTrue(battle.TargetSystem.Actives[0] == GoombaKing, $"{battle.OptionsListMenu.Showing}"); battle.TargetSystem.MoveTargetLeft(); Assert.IsTrue(battle.TargetSystem.Actives[0] is GoomnutTree, $"{battle.OptionsListMenu.Showing}"); battle.ConfirmTarget(); //goomba king takes 3 damage 1:14 (goombaking = 4) Assert.IsTrue(condition: GetGoombaKingHealth() == 4, message: $"was not GoombaKing, {goombaKingHealth}"); Assert.IsTrue(battle.TurnSystem.Active == goombario); Assert.IsTrue(battle.ActionMenu.ActiveAction == goombario.Actions[1] && battle.ActionMenu.ActiveAction.Name == "Abilities"); battle.ExecuteFromActionMenu(); Assert.IsTrue(battle.GetActiveOptionName() == "Headbonk", $"was not Headbonk {battle.GetActiveOptionName()}"); battle.ExecuteFromOptionMenu(); Assert.IsTrue(battle.TargetSystem.Actives[0] == GoombaKing, $"{battle.OptionsListMenu.Showing}"); battle.ConfirmTarget(); Assert.IsTrue(condition: GetGoombaKingHealth() == 3, message: $"was not 3, {goombaKingHealth}"); Assert.IsTrue(battle.ActionMenu.ActiveAction.Name == "Hammer", $"action = {battle.ActionMenu.ActiveAction.Name}"); battle.ActionMenu.MoveTargetUp(); Assert.IsTrue(battle.ActionMenu.ActiveAction == mario.Actions[2] && battle.ActionMenu.ActiveAction.Name == "Jump"); battle.ExecuteFromActionMenu(); battle.OptionsListMenu.MoveTargetDown(); Assert.IsTrue(battle.GetActiveOptionName() == "Power Jump", $"was not Power Jump, {battle.GetActiveOptionName()}"); battle.ExecuteFromOptionMenu(); Assert.IsTrue(battle.TargetSystem.Showing); Assert.IsTrue(battle.TargetSystem.Actives[0] == GoombaKing, $"{battle.OptionsListMenu.Showing}"); battle.ConfirmTarget(); Assert.IsTrue(condition: GetGoombaKingHealth() == 0, message: $"was not GoombaKing, {goombaKingHealth}"); Assert.IsTrue(condition: battle.IsEnded(), message: $"was not GoombaKing, {goombaKingHealth}"); }
public void magikoopa_1() { Assert.IsTrue(!battle.IsStarted(), $"battle state = {battle.State.ToString()}"); Assert.IsTrue(!battle.ActionMenu.Showing); Assert.IsTrue(!battle.OptionsListMenu.Showing); Assert.IsTrue(battle.OptionsListMenu.Active == null); Assert.IsTrue(battle.TurnSystem.Active == Mario); //0:10 battle.Start(); Assert.IsTrue(!battle.TextBubbleSystem.Showing); //menu is shown with jump selected Assert.IsTrue(battle.ActionMenu.ActiveAction.Name == "Jump"); Assert.IsTrue(battle.TargetSystem.Actives == null); battle.Execute(); Assert.IsTrue(battle.OptionsListMenu.Showing); //0:11 jump option is chosen, and ablities are shown. Jump and power jump are shown Assert.IsTrue(battle.ActiveOptionName == "Jump"); Assert.IsTrue(battle.TargetSystem.Actives == null); battle.Execute(); //0:12 targeting system is shown with magikoop selected Assert.IsTrue(battle.TargetSystem.Actives[0] == Magikoopa); //0:14 cancel is pressed battle.Cancel(); //battle.Cancel(); Assert.IsTrue(battle.OptionsListMenu.Showing); Assert.IsTrue(battle.ActiveOptionName == "Jump"); Assert.IsTrue(battle.TargetSystem.Actives == null); //0:14 ablities are reshown. Jump and power jump are shown //0:14 cancel is pressed battle.Cancel(); //0:14 menu are reshown. Jump is selected Assert.IsTrue(!battle.OptionsListMenu.Showing); Assert.IsTrue(battle.ActionMenu.Showing); Assert.IsTrue(battle.ActionMenu.ActiveAction.Name == "Jump"); //0:16 partner swap battle.TurnSystem.Swap(); //0:16 goombario is active Assert.IsTrue(battle.TurnSystem.Active == Goombario); //0:16 ablities is highlighted Assert.IsTrue(battle.ActionMenu.Showing); Assert.IsTrue(battle.ActionMenu.ActiveAction.Name == "Abilities"); //0:17 press a Assert.IsTrue(!battle.OptionsListMenu.Showing); battle.Execute(); Assert.IsTrue(battle.OptionsListMenu.Showing); //0:17 ablities are shown. headbonk and tattle are shown Assert.IsTrue(battle.ActiveOptionName == "Headbonk"); battle.MoveTargetDown(); Assert.IsTrue(battle.ActiveOptionName == "Tattle"); battle.Execute(); Assert.IsTrue(!battle.OptionsListMenu.Showing); Assert.IsTrue(!battle.ActionMenu.Showing); Assert.IsTrue(battle.TargetSystem.Showing); Assert.IsTrue(battle.TargetSystem.Actives[0] == Magikoopa, $"{battle.TargetSystem.Actives[0]}"); //0:20 text bubble showing battle.Execute(); Assert.IsTrue(!battle.OptionsListMenu.Showing); Assert.IsTrue(!battle.ActionMenu.Showing); Assert.IsTrue(!battle.TargetSystem.Showing); Assert.IsTrue(battle.TextBubbleSystem.Showing); //0:23 press a battle.Execute(); //0:25 press a battle.Execute(); //0:29 press a battle.Execute(); //0:31 now mario is active Assert.IsTrue(!battle.TextBubbleSystem.Showing); //0:31 jump action is selected Assert.IsTrue(battle.TurnSystem.Active == Mario); //0:32 press a Assert.IsTrue(battle.ActionMenu.ActiveAction.Name == "Jump"); Assert.IsTrue(battle.ActionMenu.Showing); battle.Execute(); Assert.IsTrue(!battle.ActionMenu.Showing); Assert.IsTrue(battle.ActiveOptionName == "Jump"); //0:32 jump option is chosen, and ablities are shown. Jump and power jump are shown //down press battle.MoveTargetDown(); //0:32 power jump is highlighted Assert.IsTrue(battle.ActiveOptionName == "Power Jump"); //0:32 press a battle.Execute(); //0:32 targeting system is shown with magikoop selected Assert.IsTrue(battle.TargetSystem.Actives[0] == Magikoopa, $"{battle.TargetSystem.Actives[0]}"); //0:33 press a battle.ActionCommandCenter.AddSuccessfulPress(); battle.ActionCommandCenter.AddSuccessfulPress(); Assert.IsTrue(Magikoopa.IsFlying); battle.Execute(); //0:34 a is prssedat correct time for bonus! Nice Assert.IsTrue(Magikoopa.Health.CurrentValue == 4, $"Magikoop hp = {Magikoopa.Health.CurrentValue}"); //0:35 damage is dealt Assert.IsTrue(!Magikoopa.IsFlying); //0:36 after damage event added, magikoopa falls off broomstick, she is now on the ground //0:38 magikoopa's turn. she shoots mario with a shape blast Assert.IsTrue(Mario.Health.CurrentValue == 8); //0:40 press a, mario blocks //0:40 mario takes 2 damage //0:42 menu is shown with jump selected //0:42 move down battle.MoveTargetDown(); Assert.IsTrue(battle.ActionMenu.Showing); Assert.IsTrue(battle.ActionMenu.ActiveAction.Name == "Hammer"); //0:42 hammer action is selected //0:43 press a to go to hammer options battle.Execute(); Assert.IsTrue(battle.OptionsListMenu.Showing); Assert.IsTrue(battle.OptionsListMenu.Items.Count() == 2); Assert.IsTrue(battle.GetActiveOptionName() == "Hammer", $"ActiveOptionName == {battle.GetActiveOptionName()}"); //0:44 move down to hammer throw battle.MoveTargetDown(); Assert.IsTrue(battle.GetActiveOptionName() == "Hammer Throw", $"ActiveOptionName == {battle.GetActiveOptionName()}"); //0:46 press a battle.Execute(); //0:46 target system showing on a magikoopa Assert.IsTrue(!battle.ActionMenu.Showing); Assert.IsTrue(!battle.OptionsListMenu.Showing); Assert.IsTrue(battle.TargetSystem.Showing); Assert.IsTrue(battle.TargetSystem.Actives[0] == Magikoopa); Assert.IsTrue(Magikoopa.Health.CurrentValue == 4, $"Magi HP = {Magikoopa.Health.CurrentValue}"); //magikoopa is hit, she is now at 2 battle.ActionCommandCenter.AddSuccessfulPress(); battle.Execute(); Assert.IsTrue(Magikoopa.Health.CurrentValue == 2, $"Magi HP = {Magikoopa.Health.CurrentValue}"); //0:53 now its goombario's turn Assert.IsTrue(battle.TurnSystem.Active == Goombario); Assert.IsTrue(battle.ActionMenu.Showing); Assert.IsTrue(battle.ActionMenu.ActiveAction.Name == "Abilities"); battle.Execute(); //0:54 press a, abblities options with headbonk selected Assert.IsTrue(!battle.ActionMenu.Showing); Assert.IsTrue(battle.OptionsListMenu.Showing); Assert.IsTrue(!battle.TargetSystem.Showing); Assert.IsTrue(battle.ActiveOptionName == "Headbonk"); //0:55 press a, headbonl selected, now targeting shows battle.Execute(); Assert.IsTrue(battle.TargetSystem.Showing); Assert.IsTrue(battle.TargetSystem.Actives[0] == Magikoopa); //0:55 press a, goombario is about to hit magijoopa battle.ActionCommandCenter.AddSuccessfulPress(); battle.Execute(); //0:56 press a, a is pressed at the right time of action command so goombario gets second bounce //0:59 magikoopa is dead Assert.IsTrue(Magikoopa.Health.CurrentValue == 0, $"Magi HP = {Magikoopa.Health.CurrentValue}"); Assert.IsTrue(battle.IsEnded()); }