public void TestCreatureModifierPhaseSkillActivation() { Player DummyPlayer1 = new Player("Player 1", "Human", true, false, 0, new Card[0]); Player DummyPlayer2 = new Player("Player 2", "Human", true, false, 0, new Card[0]); CreatureCard DummyInvaderCard = new CreatureCard(40, 20); CreatureCard DummyDefenderCard = new CreatureCard(40, 20); SorcererStreetMap DummyMap = CreateDummyMap(); SorcererStreetBattleParams BattleParams = new SorcererStreetBattleParams(DummyMap.GlobalSorcererStreetBattleContext); TerrainSorcererStreet DummyTerrain = DummyMap.GetTerrain(DummyPlayer2.GamePiece); DummyTerrain.DefendingCreature = DummyDefenderCard; DummyTerrain.Owner = DummyPlayer2; ActionPanelBattleStartPhase BattleStartPhase = new ActionPanelBattleStartPhase(DummyMap, 0, DummyInvaderCard); BattleStartPhase.Load(); BaseEffect SkillEffect = new IncreaseHPEffect(BattleParams); BaseSkillRequirement Requirement = new SorcererStreetCreaturePhaseRequirement(DummyMap.GlobalSorcererStreetBattleContext); AutomaticSkillTargetType Target = new SorcererStreetSelfTargetType(DummyMap.GlobalSorcererStreetBattleContext); BaseAutomaticSkill HPIncreaseSkill = new BaseAutomaticSkill(); HPIncreaseSkill.Name = "Dummy"; HPIncreaseSkill.ListSkillLevel.Add(new BaseSkillLevel()); HPIncreaseSkill.CurrentLevel = 1; BaseSkillActivation NewActivation = new BaseSkillActivation(); HPIncreaseSkill.CurrentSkillLevel.ListActivation.Add(NewActivation); NewActivation.ListRequirement.Add(Requirement); NewActivation.ListEffect.Add(SkillEffect); NewActivation.ListEffectTargetReal.Add(new List <AutomaticSkillTargetType>()); NewActivation.ListEffectTargetReal[0].Add(Target); DummyInvaderCard.ListSkill.Add(HPIncreaseSkill); ActionPanelBattleCreatureModifierPhase CreaturePhase = new ActionPanelBattleCreatureModifierPhase(DummyMap.ListActionMenuChoice, DummyMap); CreaturePhase.OnSelect(); Assert.AreEqual(DummyInvaderCard.CurrentHP + 30, DummyMap.GlobalSorcererStreetBattleContext.InvaderFinalHP); }
public void TestManualActivationHPBonus() { CreatureCard DummyInvaderCard = new CreatureCard(40, 20); CreatureCard DummyDefenderCard = new CreatureCard(40, 20); SorcererStreetBattleContext GlobalSorcererStreetBattleContext = new SorcererStreetBattleContext(); GlobalSorcererStreetBattleContext.Invader = DummyInvaderCard; GlobalSorcererStreetBattleContext.Defender = DummyDefenderCard; GlobalSorcererStreetBattleContext.Invader.ResetBonuses(); GlobalSorcererStreetBattleContext.Defender.ResetBonuses(); GlobalSorcererStreetBattleContext.InvaderFinalHP = GlobalSorcererStreetBattleContext.Invader.CurrentHP; GlobalSorcererStreetBattleContext.DefenderFinalHP = GlobalSorcererStreetBattleContext.Defender.CurrentHP; GlobalSorcererStreetBattleContext.InvaderFinalST = GlobalSorcererStreetBattleContext.Invader.CurrentST; GlobalSorcererStreetBattleContext.DefenderFinalST = GlobalSorcererStreetBattleContext.Defender.CurrentST; GlobalSorcererStreetBattleContext.UserCreature = GlobalSorcererStreetBattleContext.Invader; GlobalSorcererStreetBattleContext.OpponentCreature = GlobalSorcererStreetBattleContext.Defender; SorcererStreetBattleParams BattleParams = new SorcererStreetBattleParams(GlobalSorcererStreetBattleContext); BaseEffect SkillEffect = new IncreaseHPEffect(BattleParams); BaseSkillRequirement Requirement = new SorcererStreetCreaturePhaseRequirement(GlobalSorcererStreetBattleContext); AutomaticSkillTargetType Target = new SorcererStreetSelfTargetType(GlobalSorcererStreetBattleContext); BaseAutomaticSkill HPIncreaseSkill = new BaseAutomaticSkill(); HPIncreaseSkill.Name = "Dummy"; HPIncreaseSkill.ListSkillLevel.Add(new BaseSkillLevel()); HPIncreaseSkill.CurrentLevel = 1; BaseSkillActivation NewActivation = new BaseSkillActivation(); HPIncreaseSkill.CurrentSkillLevel.ListActivation.Add(NewActivation); NewActivation.ListRequirement.Add(Requirement); NewActivation.ListEffect.Add(SkillEffect); NewActivation.ListEffectTargetReal.Add(new List <AutomaticSkillTargetType>()); NewActivation.ListEffectTargetReal[0].Add(Target); HPIncreaseSkill.AddSkillEffectsToTarget(Requirement.SkillRequirementName); Assert.AreEqual(DummyInvaderCard.CurrentHP + 30, GlobalSorcererStreetBattleContext.InvaderFinalHP); }