Working on Mount Doom (again).

This commit is contained in:
marcins78@gmail.com
2012-03-26 13:19:33 +00:00
parent 9aa7e717b0
commit f278f70b16
4 changed files with 56 additions and 6 deletions

View File

@@ -6,6 +6,7 @@ import com.gempukku.lotro.common.Keyword;
import com.gempukku.lotro.filters.Filters;
import com.gempukku.lotro.game.PhysicalCard;
import com.gempukku.lotro.game.state.LotroGame;
import com.gempukku.lotro.logic.GameUtils;
import com.gempukku.lotro.logic.actions.RequiredTriggerAction;
import com.gempukku.lotro.logic.timing.EffectResult;
@@ -28,7 +29,7 @@ public class Card15_193 extends AbstractNewSite {
@Override
public List<RequiredTriggerAction> getRequiredAfterTriggers(LotroGame game, EffectResult effectResult, PhysicalCard self) {
if (self.getWhileInZoneData() == null) {
int region = 1 + ((self.getSiteNumber() - 1) / 3);
int region = GameUtils.getRegion(self.getSiteNumber());
self.setWhileInZoneData(new Object());
game.getModifiersEnvironment().addAlwaysOnModifier(
new CantReplaceSiteModifier(self, null, Filters.region(region)));

View File

@@ -22,6 +22,12 @@
<artifactId>log4j</artifactId>
<version>1.2.16</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,19 @@
package com.gempukku.lotro.logic;
import static org.junit.Assert.assertEquals;
import org.junit.Test;
public class GameUtilsTest {
@Test
public void testRegion() {
assertEquals(1, GameUtils.getRegion(1));
assertEquals(1, GameUtils.getRegion(2));
assertEquals(1, GameUtils.getRegion(3));
assertEquals(2, GameUtils.getRegion(4));
assertEquals(2, GameUtils.getRegion(5));
assertEquals(2, GameUtils.getRegion(6));
assertEquals(3, GameUtils.getRegion(7));
assertEquals(3, GameUtils.getRegion(8));
assertEquals(3, GameUtils.getRegion(9));
}
}

View File

@@ -3,11 +3,14 @@ package com.gempukku.lotro.at;
import com.gempukku.lotro.common.Keyword;
import com.gempukku.lotro.common.Phase;
import com.gempukku.lotro.common.Zone;
import com.gempukku.lotro.game.PhysicalCard;
import com.gempukku.lotro.game.PhysicalCardImpl;
import com.gempukku.lotro.logic.decisions.AwaitingDecision;
import com.gempukku.lotro.logic.decisions.AwaitingDecisionType;
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
import com.gempukku.lotro.logic.modifiers.KeywordModifier;
import static junit.framework.Assert.assertEquals;
import static junit.framework.Assert.assertTrue;
import org.junit.Test;
import java.util.Collection;
@@ -15,9 +18,6 @@ import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import static junit.framework.Assert.assertEquals;
import static junit.framework.Assert.assertTrue;
public class TriggersAtTest extends AbstractAtTest {
@Test
public void fpCharWinsSkirmish() throws DecisionResultInvalidException {
@@ -223,14 +223,38 @@ public class TriggersAtTest extends AbstractAtTest {
// End shadow phase
playerDecided(P2, "");
// End regroup phase
playerDecided(P1, "");
playerDecided(P2, "");
playerDecided(P1, "1");
// Reconcile
playerDecided(P1, "");
playerDecided(P2, "");
playerDecided(P1, "");
playerDecided(P2, "");
playerDecided(P1, "");
// Reconcile
playerDecided(P1, "");
playerDecided(P2, "1");
playerDecided(P1, "");
playerDecided(P2, "");
final AwaitingDecision regroupActionDecision = _userFeedback.getAwaitingDecision(P1);
assertEquals(AwaitingDecisionType.CARD_ACTION_CHOICE, regroupActionDecision.getDecisionType());
validateContents(new String[]{"" + traveledLeader.getCardId()}, (String[]) regroupActionDecision.getDecisionParameters().get("cardId"));
playerDecided(P1, "0");
playerDecided(P1, "" + mountDoom.getCardId());
PhysicalCard siteOne = _game.getGameState().getSite(1);
assertEquals(mountDoom, _game.getGameState().getSite(2));
playerDecided(P1, "" + siteOne.getCardId());
assertEquals(siteOne, _game.getGameState().getSite(1));
}
}