Adding V2 Fortress of My Fathers. Fixing Royal Guard requiring both theoden and 3 rohan companions, instead of "or"
This commit is contained in:
@@ -794,6 +794,8 @@ var PCCards = {
|
||||
'102_71' : 'https://i.lotrtcgpc.net/sets/v02/LOTR-ENV2S071.0_card.jpg',
|
||||
// Palantir of Orthanc, Corrupted Relic (V2R72) [Playtest]
|
||||
'102_72' : 'https://i.lotrtcgpc.net/sets/v02/LOTR-ENV2S072.0_card.jpg',
|
||||
// Fortress of My Fathers (V249)
|
||||
'102_73' : 'https://i.lotrtcgpc.net/sets/V2/LOTR-ENV2S073.0_card.jpg',
|
||||
|
||||
//V2-associated Errata
|
||||
// Erethon, Naith Lieutenant (4R65) [Errata]
|
||||
|
||||
@@ -140,17 +140,20 @@
|
||||
effects: [
|
||||
{
|
||||
type: ToPlay
|
||||
requires: [
|
||||
{
|
||||
type: CanSpot
|
||||
filter: name(Theoden)
|
||||
}
|
||||
{
|
||||
type: CanSpot
|
||||
filter: culture(Rohan), Man
|
||||
count: 3
|
||||
}
|
||||
]
|
||||
requires: {
|
||||
type: Or
|
||||
requires: [
|
||||
{
|
||||
type: CanSpot
|
||||
filter: name(Theoden)
|
||||
}
|
||||
{
|
||||
type: CanSpot
|
||||
filter: culture(Rohan), Man
|
||||
count: 3
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
type: Activated
|
||||
@@ -749,10 +752,6 @@
|
||||
twilight: 2
|
||||
type: Event
|
||||
timewords: Skirmish
|
||||
/*requires: {
|
||||
|
||||
}
|
||||
*/
|
||||
effects: {
|
||||
type: event
|
||||
requires: {
|
||||
@@ -808,4 +807,92 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
102_73: {
|
||||
cardInfo: {
|
||||
imagePath: sets/V2/LOTR-ENV2S049.0_card.jpg
|
||||
//parentId: 102_49
|
||||
//One of: Variant, Errata, Reprint
|
||||
//parentType: Variant
|
||||
//parentPath: alts/promo
|
||||
version: 0
|
||||
collInfo: V249
|
||||
rarity:
|
||||
setNum: "V2"
|
||||
cardNum: 49
|
||||
style: Standard
|
||||
}
|
||||
title: Fortress of My Fathers
|
||||
unique: false
|
||||
side: Free Peoples
|
||||
culture: Rohan
|
||||
twilight: 1
|
||||
type: Possession
|
||||
keywords: [
|
||||
Support Area
|
||||
Fortification
|
||||
]
|
||||
effects: [
|
||||
{
|
||||
type: ToPlay
|
||||
requires: {
|
||||
type: Or
|
||||
requires: [
|
||||
{
|
||||
type: CanSpot
|
||||
filter: valiant,companion
|
||||
count: 2
|
||||
}
|
||||
{
|
||||
type: CanSpot
|
||||
filter: culture(Rohan), Companion
|
||||
count: 3
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
type: Response
|
||||
trigger: {
|
||||
type: aboutToTakeWound
|
||||
filter: culture(rohan),companion
|
||||
}
|
||||
cost: {
|
||||
type: Choice
|
||||
texts: [
|
||||
Discard Fortress of My Fathers
|
||||
Discard 2 other {rohan} possessions
|
||||
]
|
||||
effects: [
|
||||
{
|
||||
type: discard
|
||||
select: self
|
||||
}
|
||||
{
|
||||
type: discard
|
||||
select: other,culture(rohan),possession
|
||||
count: 2
|
||||
}
|
||||
]
|
||||
}
|
||||
effect: [
|
||||
{
|
||||
type: preventWound
|
||||
select: choose(culture(rohan),companion)
|
||||
}
|
||||
]
|
||||
|
||||
}
|
||||
]
|
||||
gametext: Fortification. To play, spot 3 [rohan] companions (or 2 valiant companions).<br>Response: If a [rohan] companion is about to take a wound, discard this or 2 other [rohan] possessions to prevent that wound.
|
||||
lore: "'Is it not said that no foe has ever taken the Hornburg, if men defended it?'"
|
||||
promotext: ""
|
||||
alts: {
|
||||
promos: {
|
||||
}
|
||||
errata: {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
package com.gempukku.lotro.cards.unofficial.pc.vsets.set_v02;
|
||||
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.*;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class Card_V2_073_Tests
|
||||
{
|
||||
|
||||
protected GenericCardTestHelper GetScenario() throws CardNotFoundException, DecisionResultInvalidException {
|
||||
return new GenericCardTestHelper(
|
||||
new HashMap<>()
|
||||
{{
|
||||
put("card", "102_73");
|
||||
// put other cards in here as needed for the test case
|
||||
}},
|
||||
GenericCardTestHelper.FellowshipSites,
|
||||
GenericCardTestHelper.FOTRFrodo,
|
||||
GenericCardTestHelper.RulingRing
|
||||
);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void FortressofMyFathersStatsAndKeywordsAreCorrect() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
/**
|
||||
* Set: V2
|
||||
* Name: Fortress of My Fathers
|
||||
* Unique: False
|
||||
* Side: Free Peoples
|
||||
* Culture: Rohan
|
||||
* Twilight Cost: 1
|
||||
* Type: Possession
|
||||
* Subtype: Support area
|
||||
* Game Text: 73
|
||||
*/
|
||||
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
|
||||
assertEquals("Fortress of My Fathers", card.getBlueprint().getTitle());
|
||||
assertNull(card.getBlueprint().getSubtitle());
|
||||
assertFalse(card.getBlueprint().isUnique());
|
||||
assertEquals(Side.FREE_PEOPLE, card.getBlueprint().getSide());
|
||||
assertEquals(Culture.ROHAN, card.getBlueprint().getCulture());
|
||||
assertEquals(CardType.POSSESSION, card.getBlueprint().getCardType());
|
||||
assertTrue(scn.hasKeyword(card, Keyword.SUPPORT_AREA));
|
||||
assertEquals(1, card.getBlueprint().getTwilightCost());
|
||||
}
|
||||
|
||||
// Uncomment any @Test markers below once this is ready to be used
|
||||
//@Test
|
||||
public void FortressofMyFathersTest1() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
scn.FreepsMoveCardToHand(card);
|
||||
|
||||
scn.StartGame();
|
||||
scn.FreepsPlayCard(card);
|
||||
|
||||
assertEquals(1, scn.GetTwilight());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user