Merge remote-tracking branch 'origin/master'

This commit is contained in:
marcin.sciesinski
2018-01-04 05:57:17 -08:00
11 changed files with 41 additions and 40 deletions

View File

@@ -29,7 +29,7 @@ public class Card30_003 extends AbstractEvent {
final PlayEventAction action = new PlayEventAction(self);
action.appendEffect(
new ChooseAndAddUntilEOPStrengthBonusEffect(action, self, playerId,
new CardMatchesEvaluator(3, 4, Filters.hasAttached(CardType.FOLLOWER)), Race.DWARF, Filters.or(CardType.COMPANION, CardType.ALLY)));
new CardMatchesEvaluator(3, 4, Filters.hasAttached(Filters.and(CardType.FOLLOWER, Culture.DWARVEN))), Race.DWARF, Filters.or(CardType.COMPANION, CardType.ALLY)));
return action;
}
}
}

View File

@@ -30,7 +30,7 @@ import java.util.List;
*/
public class Card30_008 extends AbstractFollower {
public Card30_008() {
super(Side.FREE_PEOPLE, 2, 1, 0, 0, Culture.DWARVEN, "Dori", "Really a Decent Fellow", true);
super(Side.FREE_PEOPLE, 1, 1, 0, 0, Culture.DWARVEN, "Dori", "Really a Decent Fellow", true);
}
@Override
@@ -53,4 +53,4 @@ public class Card30_008 extends AbstractFollower {
return Collections.singletonList(
new OverwhelmedByMultiplierModifier(self, Filters.hasAttached(self), 3));
}
}
}

View File

@@ -22,7 +22,7 @@ import java.util.List;
* Strength: 7
* Vitality: 3
* Resistance: 6
* Game Text: Skirmish: Exert Nori twice and discard a [DWARVEN] follower to discard a possession
* Game Text: Maneuver: Exert Nori twice and discard a [DWARVEN] follower to discard a possession
*/
public class Card30_015 extends AbstractCompanion {
public Card30_015() {
@@ -32,7 +32,7 @@ public class Card30_015 extends AbstractCompanion {
@Override
protected List<ActivateCardAction> getExtraInPlayPhaseActions(String playerId, LotroGame game, PhysicalCard self) {
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self)
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.MANEUVER, self)
&& PlayConditions.canExert(self, game, 2, self)
&& PlayConditions.canDiscardFromPlay(self, game, Culture.DWARVEN, CardType.FOLLOWER)) {
ActivateCardAction action = new ActivateCardAction(self);
@@ -48,4 +48,4 @@ public class Card30_015 extends AbstractCompanion {
}
return null;
}
}
}

View File

@@ -6,6 +6,7 @@ import com.gempukku.lotro.cards.TriggerConditions;
import com.gempukku.lotro.cards.effects.AddUntilEndOfPhaseModifierEffect;
import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect;
import com.gempukku.lotro.cards.modifiers.evaluator.CardPhaseLimitEvaluator;
import com.gempukku.lotro.cards.modifiers.evaluator.NegativeEvaluator;
import com.gempukku.lotro.common.*;
import com.gempukku.lotro.filters.Filters;
import com.gempukku.lotro.game.PhysicalCard;
@@ -65,11 +66,12 @@ public class Card30_045 extends AbstractCompanion {
action.insertEffect(
new AddUntilEndOfPhaseModifierEffect(
new StrengthModifier(self, Filters.sameCard(card), null,
new CardPhaseLimitEvaluator(game, self, Phase.SKIRMISH, -4, new ConstantEvaluator(-2)))));
new NegativeEvaluator(new CardPhaseLimitEvaluator(
game, self, Phase.SKIRMISH, 4, new ConstantEvaluator(2))))));
}
});
});
return Collections.singletonList(action);
}
return null;
}
}
}

View File

@@ -30,7 +30,7 @@ import java.util.List;
*/
public class Card31_002 extends AbstractEvent {
public Card31_002() {
super(Side.FREE_PEOPLE, 1, Culture.DWARVEN, "Dwarven Song", Phase.REGROUP);
super(Side.FREE_PEOPLE, 3, Culture.DWARVEN, "Dwarven Song", Phase.REGROUP);
}
@Override
@@ -70,4 +70,4 @@ public class Card31_002 extends AbstractEvent {
});
return action;
}
}
}

View File

@@ -34,7 +34,7 @@ import java.util.List;
*/
public class Card31_004 extends AbstractPermanent {
public Card31_004() {
super(Side.FREE_PEOPLE, 1, CardType.POSSESSION, Culture.DWARVEN, Zone.SUPPORT, "Great Barricade", null, true);
super(Side.FREE_PEOPLE, 2, CardType.POSSESSION, Culture.DWARVEN, Zone.SUPPORT, "Great Barricade", null, true);
addKeyword(Keyword.FORTIFICATION);
}
@@ -86,4 +86,4 @@ public class Card31_004 extends AbstractPermanent {
}
return null;
}
}
}

View File

@@ -42,13 +42,7 @@ public class Card31_010 extends AbstractAlly {
action.appendCost(
new SelfExertEffect(action, self));
action.appendEffect(
new ChooseOpponentEffect(playerId) {
@Override
protected void opponentChosen(String opponentId) {
action.appendEffect(
new ChooseAndReturnCardsToHandEffect(action, opponentId, 1, 1, Race.ORC, Filters.lessStrengthThan(8)));
}
});
new ChooseAndReturnCardsToHandEffect(action, playerId, 1, 1, Race.ORC, Filters.lessStrengthThan(8)));
return Collections.singletonList(action);
}
return null;

View File

@@ -8,6 +8,7 @@ import com.gempukku.lotro.cards.effects.DiscardBottomCardFromDeckEffect;
import com.gempukku.lotro.cards.effects.choose.ChooseAndDiscardCardsFromPlayEffect;
import com.gempukku.lotro.cards.effects.choose.ChooseAndExertCharactersEffect;
import com.gempukku.lotro.cards.modifiers.AllyParticipatesInArcheryFireAndSkirmishesModifier;
import com.gempukku.lotro.cards.modifiers.CantTakeArcheryWoundsModifier;
import com.gempukku.lotro.common.*;
import com.gempukku.lotro.filters.Filters;
import com.gempukku.lotro.game.PhysicalCard;
@@ -15,8 +16,7 @@ import com.gempukku.lotro.game.state.GameState;
import com.gempukku.lotro.game.state.LotroGame;
import com.gempukku.lotro.logic.actions.ActivateCardAction;
import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect;
import com.gempukku.lotro.logic.modifiers.ModifiersQuerying;
import com.gempukku.lotro.logic.modifiers.StrengthModifier;
import com.gempukku.lotro.logic.modifiers.*;
import com.gempukku.lotro.logic.timing.Effect;
import com.gempukku.lotro.logic.timing.Action;
@@ -35,7 +35,7 @@ import java.util.List;
* Vitality: 4
* Site: 5
* Game Text: Maneuver: Exert Thorin twice or discard a [DWARVEN] artifact to allow Thranduil
* to participate in archery fire and skirmishes until the regroup phase.
* to participate in skirmishes until the regroup phase.
*/
public class Card31_012 extends AbstractAlly {
public Card31_012() {
@@ -68,8 +68,11 @@ public class Card31_012 extends AbstractAlly {
action.appendEffect(
new AddUntilStartOfPhaseModifierEffect(
new AllyParticipatesInArcheryFireAndSkirmishesModifier(self, self), Phase.REGROUP));
action.appendEffect(
new AddUntilStartOfPhaseModifierEffect(
new CantTakeArcheryWoundsModifier(self, self), Phase.ASSIGNMENT));
return Collections.singletonList(action);
}
return null;
}
}
}

View File

@@ -11,8 +11,9 @@ import com.gempukku.lotro.filters.Filters;
import com.gempukku.lotro.game.PhysicalCard;
import com.gempukku.lotro.game.state.LotroGame;
import com.gempukku.lotro.logic.actions.OptionalTriggerAction;
import com.gempukku.lotro.logic.modifiers.CantDiscardFromPlayByPlayerModifier;
import com.gempukku.lotro.logic.modifiers.CantDiscardFromPlayModifier;
import com.gempukku.lotro.logic.modifiers.Modifier;
import com.gempukku.lotro.logic.modifiers.SpotCondition;
import com.gempukku.lotro.logic.timing.Action;
import com.gempukku.lotro.logic.timing.Effect;
import com.gempukku.lotro.logic.timing.EffectResult;
@@ -37,19 +38,20 @@ public class Card31_013 extends AbstractFollower {
super(Side.FREE_PEOPLE, 3, 2, 1, 0, Culture.GANDALF, "Beorn", "Skin-Changer", true);
}
@Override
public Race getRace() {
return Race.MAN;
}
@Override
public Race getRace() {
return Race.MAN;
}
@Override
@Override
public Modifier getAlwaysOnModifier(LotroGame game, PhysicalCard self) {
return new CantDiscardFromPlayByPlayerModifier(self, "Can't be discarded by opponent", self, self.getOwner());
}
return new CantDiscardFromPlayModifier(self, "Cannot be discarded from play by Shadow cards",
new SpotCondition(Filters.hasAttached(self)), self, Side.SHADOW);
}
@Override
protected boolean canPayAidCost(LotroGame game, PhysicalCard self) {
return PlayConditions.canExert(self, game, Filters.gandalf);
return PlayConditions.canExert(self, game, Filters.gandalf);
}
@Override

View File

@@ -7,8 +7,7 @@ import com.gempukku.lotro.cards.effects.AddUntilEndOfPhaseModifierEffect;
import com.gempukku.lotro.cards.effects.RemoveTwilightEffect;
import com.gempukku.lotro.cards.effects.SelfDiscardEffect;
import com.gempukku.lotro.cards.effects.choose.ChooseAndAddUntilEOPStrengthBonusEffect;
import com.gempukku.lotro.cards.modifiers.evaluator.CountSpottableEvaluator;
import com.gempukku.lotro.cards.modifiers.evaluator.MultiplyEvaluator;
import com.gempukku.lotro.cards.modifiers.evaluator.*;
import com.gempukku.lotro.common.*;
import com.gempukku.lotro.filters.Filters;
import com.gempukku.lotro.game.PhysicalCard;
@@ -58,7 +57,8 @@ public class Card31_029 extends AbstractPermanent {
action.appendCost(new RemoveTwilightEffect(3));
action.appendEffect(
new ChooseAndAddUntilEOPStrengthBonusEffect(action, self, playerId,
new MultiplyEvaluator(-1, new CountSpottableEvaluator(3, CardType.ALLY, Culture.ELVEN)), Culture.DWARVEN, Filters.character));
new NegativeEvaluator(new CardPhaseLimitEvaluator(game, self, Phase.SKIRMISH, 3,
new CountActiveEvaluator(CardType.ALLY, Culture.ELVEN))), Filters.and(Culture.DWARVEN, Filters.character)));
return Collections.singletonList(action);
}
return null;

View File

@@ -317,9 +317,9 @@
"code":"hobbit_tsr",
"sites":"HOBBIT",
"cancelRingBearerSkirmish":true,
"restricted":["30_2", "30_5", "30_6", "30_7", "30_8", "30_9", "30_10", "30_11", "30_12", "30_15", "30_16", "30_17", "30_18", "30_19", "30_21", "30_22", "30_25", "30_26", "30_27", "30_28", "30_29", "30_43", "30_44", "30_45", "30_46", "30_47", "30_48", "30_58", "31_1", "31_4", "31_6", "31_8", "31_9", "31_10", "31_14", "31_15", "31_16", "31_24", "31_29", "31_34", "31_36", "31_39", "31_40", "31_43", "31_56", "31_58", "31_62", "31_65"],
"limit2":["30_33", "30_34", "30_36", "30_37", "30_38", "30_41", "31_2", "31_3", "31_5", "31_7", "31_11", "31_12", "31_13", "31_17", "31_18", "31_20", "31_21", "31_22", "31_23", "31_25", "31_26", "31_28", "31_33", "31_37", "31_38", "31_41", "31_42", "31_57", "31_60", "31_64", "31_66", "31_67", "31_68", "31_69"],
"limit3":["30_1", "30_3", "30_4", "30_13", "30_14", "30_20", "30_23", "30_24", "30_30", "30_31", "30_32", "30_39", "30_40", "31_19", "31_27", "31_30", "31_31", "31_32", "31_35", "31_47", "31_59", "31_61", "31_63"],
"restricted":["30_2", "30_5", "30_6", "30_7", "30_8", "30_9", "30_10", "30_11", "30_12", "30_15", "30_19", "30_25", "30_26", "30_27", "30_28", "30_29", "30_43", "30_44", "30_45", "30_46", "30_48", "30_58", "31_13", "31_14", "31_56"],
"limit2":["30_1", "31_1", "31_38"],
"limit3":[],
"set":[30, 31],
"restrictedName":["Gandalf", "Bilbo"],
"hall":true