mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-16 18:58:00 +00:00
- Added Undiscovered Paradise
- Fixed issue with Gemstone Mine being used consecutively (should only be able to tap if it's untapped)
This commit is contained in:
@@ -38,6 +38,7 @@ snow_covered_mountain.jpg http://www.wizards.com/global/images/magic/gene
|
|||||||
snow_covered_mountain1.jpg http://www.wizards.com/global/images/magic/general/snow_covered_mountain.jpg
|
snow_covered_mountain1.jpg http://www.wizards.com/global/images/magic/general/snow_covered_mountain.jpg
|
||||||
snow_covered_mountain2.jpg http://www.magickartenmarkt.de/img/cards/Ice_Age/snow_covered_mountain.jpg
|
snow_covered_mountain2.jpg http://www.magickartenmarkt.de/img/cards/Ice_Age/snow_covered_mountain.jpg
|
||||||
snow_covered_mountain3.jpg http://www.magickartenmarkt.de/img/cards/Ice_Age/snow_covered_mountain.jpg
|
snow_covered_mountain3.jpg http://www.magickartenmarkt.de/img/cards/Ice_Age/snow_covered_mountain.jpg
|
||||||
|
undiscovered_paradise.jpg http://www.wizards.com/global/images/magic/general/undiscovered_paradise.jpg
|
||||||
hagra_crocodile.jpg http://www.wizards.com/global/images/magic/general/hagra_crocodile.jpg
|
hagra_crocodile.jpg http://www.wizards.com/global/images/magic/general/hagra_crocodile.jpg
|
||||||
ancient_runes.jpg http://www.wizards.com/global/images/magic/general/ancient_runes.jpg
|
ancient_runes.jpg http://www.wizards.com/global/images/magic/general/ancient_runes.jpg
|
||||||
vivid_crag.jpg http://www.wizards.com/global/images/magic/general/vivid_crag.jpg
|
vivid_crag.jpg http://www.wizards.com/global/images/magic/general/vivid_crag.jpg
|
||||||
|
|||||||
@@ -1,3 +1,13 @@
|
|||||||
|
Undiscovered Paradise
|
||||||
|
no cost
|
||||||
|
Land
|
||||||
|
Whenever you tap CARDNAME for mana, return it to it's owner's hand during the controller's next untap phase.
|
||||||
|
tap: add W
|
||||||
|
tap: add B
|
||||||
|
tap: add U
|
||||||
|
tap: add R
|
||||||
|
tap: add G
|
||||||
|
|
||||||
Ancient Runes
|
Ancient Runes
|
||||||
2 R
|
2 R
|
||||||
Enchantment
|
Enchantment
|
||||||
|
|||||||
@@ -842,6 +842,7 @@ Undead Gladiator
|
|||||||
Underground River
|
Underground River
|
||||||
Underground Sea
|
Underground Sea
|
||||||
Undermine
|
Undermine
|
||||||
|
Undiscovered Paradise
|
||||||
Undying Beast
|
Undying Beast
|
||||||
Uril, the Miststalker
|
Uril, the Miststalker
|
||||||
Ursapine
|
Ursapine
|
||||||
|
|||||||
@@ -109,6 +109,21 @@ abstract public class Ability_Mana extends SpellAbility implements java.io.Seria
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (sourceCard.getName().equals("Undiscovered Paradise"))
|
||||||
|
{
|
||||||
|
final Card crd = sourceCard;
|
||||||
|
runcommands.add(new Command() {
|
||||||
|
private static final long serialVersionUID = 1365329719980281985L;
|
||||||
|
|
||||||
|
public void execute()
|
||||||
|
{
|
||||||
|
// The computer can now use this card. A version of the
|
||||||
|
// line of code below was added to ComputerUtil.payManaCost()
|
||||||
|
crd.setBounceAtUntap(true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
if(isBasic())//lowers memory usage drastically
|
if(isBasic())//lowers memory usage drastically
|
||||||
{
|
{
|
||||||
Mana = "" + orig.charAt(9);
|
Mana = "" + orig.charAt(9);
|
||||||
|
|||||||
@@ -60,6 +60,7 @@ public class Card extends MyObservable {
|
|||||||
private boolean kicked = false;
|
private boolean kicked = false;
|
||||||
private boolean reflectedLand = false;
|
private boolean reflectedLand = false;
|
||||||
private boolean levelUp = false;
|
private boolean levelUp = false;
|
||||||
|
private boolean bounceAtUntap = false;
|
||||||
|
|
||||||
private boolean firstStrike = false;
|
private boolean firstStrike = false;
|
||||||
private boolean doubleStrike = false;
|
private boolean doubleStrike = false;
|
||||||
@@ -262,6 +263,14 @@ public class Card extends MyObservable {
|
|||||||
this.sacrificeAtEOT = sacrificeAtEOT;
|
this.sacrificeAtEOT = sacrificeAtEOT;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean getBounceAtUntap() {
|
||||||
|
return bounceAtUntap;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBounceAtUntap(boolean bounce) {
|
||||||
|
this.bounceAtUntap = bounce;
|
||||||
|
}
|
||||||
|
|
||||||
public boolean hasFirstStrike() {
|
public boolean hasFirstStrike() {
|
||||||
return firstStrike || getKeyword().contains("First Strike");
|
return firstStrike || getKeyword().contains("First Strike");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -343,11 +343,14 @@ class CardFactory_Lands {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void showMessage() {
|
public void showMessage() {
|
||||||
|
if (card.isUntapped())
|
||||||
|
{
|
||||||
mine.choices_made[0] = Input_PayManaCostUtil.getShortColorString(AllZone.Display.getChoiceOptional(
|
mine.choices_made[0] = Input_PayManaCostUtil.getShortColorString(AllZone.Display.getChoiceOptional(
|
||||||
"Select a Color", Constant.Color.onlyColors));
|
"Select a Color", Constant.Color.onlyColors));
|
||||||
if (mine.choices_made[0] != null){
|
if (mine.choices_made[0] != null){
|
||||||
AllZone.Stack.add(mine);
|
AllZone.Stack.add(mine);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
stop();
|
stop();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -93,7 +93,11 @@ public class Input_Untap extends Input {
|
|||||||
});
|
});
|
||||||
|
|
||||||
for(Card c : list) {
|
for(Card c : list) {
|
||||||
if(c.getKeyword().contains("You may choose not to untap CARDNAME during your untap step.")) {
|
if (c.getBounceAtUntap() && c.getName().contains("Undiscovered Paradise") )
|
||||||
|
{
|
||||||
|
AllZone.GameAction.moveToHand(c);
|
||||||
|
}
|
||||||
|
else if(c.getKeyword().contains("You may choose not to untap CARDNAME during your untap step.")) {
|
||||||
if(c.isTapped()) {
|
if(c.isTapped()) {
|
||||||
if(c.getController().equals(Constant.Player.Human)) {
|
if(c.getController().equals(Constant.Player.Human)) {
|
||||||
String[] choices = {"Yes", "No"};
|
String[] choices = {"Yes", "No"};
|
||||||
|
|||||||
Reference in New Issue
Block a user