mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 11:48:02 +00:00
1)add LastDrawn as a valid discard target in Ability_Cost
2)add Jandor's Ring (from original base Alpha)
This commit is contained in:
1
.gitattributes
vendored
1
.gitattributes
vendored
@@ -2199,6 +2199,7 @@ res/cardsfolder/jade_statue.txt -text svneol=native#text/plain
|
||||
res/cardsfolder/jagwasp_swarm.txt -text svneol=native#text/plain
|
||||
res/cardsfolder/jalum_tome.txt -text svneol=native#text/plain
|
||||
res/cardsfolder/jamuraan_lion.txt -text svneol=native#text/plain
|
||||
res/cardsfolder/jandors_ring.txt -text svneol=native#text/plain
|
||||
res/cardsfolder/jandors_saddlebags.txt -text svneol=native#text/plain
|
||||
res/cardsfolder/jasmine_boreal.txt -text svneol=native#text/plain
|
||||
res/cardsfolder/jayemdae_tome.txt -text svneol=native#text/plain
|
||||
|
||||
9
res/cardsfolder/jandors_ring.txt
Normal file
9
res/cardsfolder/jandors_ring.txt
Normal file
@@ -0,0 +1,9 @@
|
||||
Name:Jandor's Ring
|
||||
ManaCost:6
|
||||
Types:Artifact
|
||||
Text:no text
|
||||
K:abDrawCards 2 T Discard<1/LastDrawn>:1:Draw a card.:Jandor's Ring - Draw a card.
|
||||
SVar:Rarity:Rare
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/jandors_ring.jpg
|
||||
End
|
||||
|
||||
@@ -382,6 +382,9 @@ public class Ability_Cost {
|
||||
else if (discardType.equals("Hand")){
|
||||
cost.append(" your hand");
|
||||
}
|
||||
else if(discardType.equals("LastDrawn")) {
|
||||
cost.append("last drawn card");
|
||||
}
|
||||
else{
|
||||
cost.append(discardAmount);
|
||||
if (!discardType.equals("Any") && !discardType.equals("Random")){
|
||||
|
||||
@@ -121,6 +121,11 @@ public class Cost_Payment {
|
||||
else if (discType.equals("Hand")){
|
||||
// this will always work
|
||||
}
|
||||
else if(discType.equals("LastDrawn")) {
|
||||
Card c = card.getController().getLastDrawnCard();
|
||||
CardList hand = AllZoneUtil.getPlayerHand(card.getController());
|
||||
return hand.contains(c);
|
||||
}
|
||||
else{
|
||||
if (!discType.equals("Any") && !discType.equals("Random")){
|
||||
String validType[] = discType.split(",");
|
||||
@@ -260,6 +265,13 @@ public class Cost_Payment {
|
||||
AllZone.GameAction.discardHand(card.getController(), ability);
|
||||
payDiscard = true;
|
||||
}
|
||||
else if( discType.equals("LastDrawn") ) {
|
||||
if(handList.contains(card.getController().getLastDrawnCard())) {
|
||||
AllZone.GameAction.discard(card.getController().getLastDrawnCard(), ability);
|
||||
payDiscard = true;
|
||||
}
|
||||
|
||||
}
|
||||
else{
|
||||
if (discType.equals("Random")){
|
||||
AllZone.GameAction.discardRandom(card.getController(), discAmount, ability);
|
||||
|
||||
@@ -25,6 +25,7 @@ public class Input_Untap extends Input {
|
||||
CardList lands = AllZoneUtil.getPlayerLandsInPlay(player);
|
||||
lands = lands.filter(AllZoneUtil.untapped);
|
||||
player.setNumPowerSurgeLands(lands.size());
|
||||
player.resetLastDrawnCard();
|
||||
|
||||
if(!AllZoneUtil.isCardInPlay("Stasis")) doUntap();
|
||||
|
||||
|
||||
@@ -14,6 +14,8 @@ public abstract class Player extends MyObservable{
|
||||
protected int assignedDamage;
|
||||
protected int numPowerSurgeLands;
|
||||
|
||||
protected Card lastDrawnCard;
|
||||
|
||||
public Player(String myName) {
|
||||
this(myName, 20, 0);
|
||||
}
|
||||
@@ -23,6 +25,7 @@ public abstract class Player extends MyObservable{
|
||||
life = myLife;
|
||||
poisonCounters = myPoisonCounters;
|
||||
assignedDamage = 0;
|
||||
lastDrawnCard = null;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
@@ -271,6 +274,7 @@ public abstract class Player extends MyObservable{
|
||||
Card c = library.get(0);
|
||||
library.remove(0);
|
||||
hand.add(c);
|
||||
setLastDrawnCard(c);
|
||||
|
||||
GameActionUtil.executeDrawCardTriggeredEffects(this);
|
||||
}
|
||||
@@ -379,8 +383,24 @@ public abstract class Player extends MyObservable{
|
||||
return numPowerSurgeLands;
|
||||
}
|
||||
|
||||
public void setNumPowerSurgeLands(int n) {
|
||||
public int setNumPowerSurgeLands(int n) {
|
||||
numPowerSurgeLands = n;
|
||||
return numPowerSurgeLands;
|
||||
}
|
||||
|
||||
public Card getLastDrawnCard() {
|
||||
return lastDrawnCard;
|
||||
}
|
||||
|
||||
public Card setLastDrawnCard(Card c) {
|
||||
lastDrawnCard = c;
|
||||
return lastDrawnCard;
|
||||
}
|
||||
|
||||
public Card resetLastDrawnCard() {
|
||||
Card old = lastDrawnCard;
|
||||
lastDrawnCard = null;
|
||||
return old;
|
||||
}
|
||||
|
||||
////////////////////////////////
|
||||
|
||||
Reference in New Issue
Block a user