mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-14 17:58:01 +00:00
Added Oran-Rief, the Vastwood, and Transguild Courier; Keyworded colors (e.g. "Crookshank Kobolds is red.", "Ghostfire is colorless.").
This commit is contained in:
@@ -1,3 +1,21 @@
|
||||
Transguild Courier
|
||||
4
|
||||
Artifact Creature Golem
|
||||
no text
|
||||
3/3
|
||||
Transguild courier is white.
|
||||
Transguild courier is blue.
|
||||
Transguild courier is black.
|
||||
Transguild courier is red.
|
||||
Transguild courier is green.
|
||||
|
||||
Oran-Rief, the Vastwood
|
||||
no cost
|
||||
Land
|
||||
no text
|
||||
tap: add G
|
||||
Comes into play tapped.
|
||||
|
||||
Sek'Kuar, Deathkeeper
|
||||
2 B R G
|
||||
Legendary Creature Orc Shaman
|
||||
@@ -6402,8 +6420,9 @@ spDamageCP:3
|
||||
Ghostfire
|
||||
2 R
|
||||
Instant
|
||||
Ghostfire is colorless. (NOTE: This card is currently treated as red.)
|
||||
no text
|
||||
spDamageCP:3
|
||||
Ghostfire is colorless.
|
||||
|
||||
Lightning Blast
|
||||
3 R
|
||||
@@ -11497,6 +11516,7 @@ Land Creature Forest Dryad
|
||||
no text
|
||||
1/1
|
||||
tap: add G
|
||||
Dryad Arbor is green.
|
||||
|
||||
Sliversmith
|
||||
2
|
||||
@@ -14167,14 +14187,16 @@ tap: add G
|
||||
Crimson Kobolds
|
||||
0
|
||||
Creature Kobold
|
||||
Crimson Kobolds is red. (NOTE: This card is currently treated as colorless.)
|
||||
no text
|
||||
0/1
|
||||
Crimson Kobolds is red.
|
||||
|
||||
Crookshank Kobolds
|
||||
0
|
||||
Creature Kobold
|
||||
Crookshank Kobolds is red. (NOTE: This card is currently treated as colorless.)
|
||||
no text
|
||||
0/1
|
||||
Crookshank Kobolds is red.
|
||||
|
||||
Cylian Elf
|
||||
1 G
|
||||
@@ -14277,8 +14299,9 @@ Reach
|
||||
Kobolds of Kher Keep
|
||||
0
|
||||
Creature Kobold
|
||||
Kobolds of Kher Keep is red. (NOTE: This card is currently treated as colorless.)
|
||||
no text
|
||||
0/1
|
||||
Kobolds of Kher Keep is red.
|
||||
|
||||
Leaden Myr
|
||||
2
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
program/mail=mtgrares@yahoo.com
|
||||
program/forum=http://www.slightlymagic.net/forum/viewforum.php?f=26
|
||||
program/version=MTG Forge -- official beta: 09/11/02, SVN revision: 68
|
||||
program/version=MTG Forge -- official beta: 09/11/02, SVN revision: 70
|
||||
|
||||
tokens--file=AllTokens.txt
|
||||
|
||||
|
||||
@@ -278,7 +278,7 @@ public class Card extends MyObservable
|
||||
//presumes the first SpellAbility added to this card, is the "main" spell
|
||||
//skip the first SpellAbility for creatures, since it says "Summon this creature"
|
||||
//looks bad on the Gui card detail
|
||||
if(isPermanent() && i != 0 && !(manaAbility.contains(sa[i]) && ((Ability_Mana) sa[i]).isBasic()))//prevent mana ability duplication
|
||||
if(isPermanent() && (isLand() || i != 0) && !(manaAbility.contains(sa[i]) && ((Ability_Mana) sa[i]).isBasic()))//prevent mana ability duplication
|
||||
s += sa[i].toString() +"\r\n";
|
||||
}
|
||||
|
||||
|
||||
@@ -5,8 +5,55 @@ class CardFactory_Lands {
|
||||
|
||||
// computer plays 2 land of these type instead of just 1 per turn
|
||||
|
||||
//*************** START *********** START **************************
|
||||
//Ravinca Duel Lands
|
||||
|
||||
//*************** START *********** START **************************
|
||||
if(cardName.equals("Oran-Rief, the Vastwood"))
|
||||
{
|
||||
card.clearSpellKeepManaAbility();
|
||||
|
||||
final CardListFilter targets = new CardListFilter()
|
||||
{
|
||||
|
||||
public boolean addCard(Card c) {
|
||||
return AllZone.GameAction.isCardInPlay(c) && c.isCreature()
|
||||
&& c.getTurnInZone() == AllZone.Phase.getTurn()
|
||||
&& CardUtil.getColors(c).contains(Constant.Color.Green);
|
||||
}
|
||||
|
||||
};
|
||||
Ability_Tap ability = new Ability_Tap(card)
|
||||
{
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = 1416258136308898492L;
|
||||
|
||||
CardList inPlay = new CardList();
|
||||
public boolean canPlayAI()
|
||||
{
|
||||
if(!(AllZone.Phase.getPhase().equals(Constant.Phase.Main1)
|
||||
&& AllZone.Phase.getActivePlayer().equals(Constant.Player.Computer)))
|
||||
return false;
|
||||
inPlay.clear();
|
||||
inPlay.addAll(AllZone.Computer_Play.getCards());
|
||||
return (inPlay.filter(targets).size() > 1);
|
||||
}
|
||||
public void resolve() {
|
||||
inPlay.clear();
|
||||
inPlay.addAll(AllZone.Human_Play.getCards());
|
||||
inPlay.addAll(AllZone.Computer_Play.getCards());
|
||||
for(Card targ : inPlay.filter(targets))
|
||||
targ.addCounter(Counters.P1P1, 1);
|
||||
}
|
||||
};
|
||||
ability.setDescription("tap: Put a +1/+1 counter on each green creature that entered the battlefield this turn.");
|
||||
ability.setStackDescription("Put a +1/+1 counter on each green creature that entered the battlefield this turn.");
|
||||
card.addSpellAbility(ability);
|
||||
}
|
||||
//*************** END ************ END **************************
|
||||
|
||||
//*************** START *********** START **************************
|
||||
//Ravinca Dual Lands
|
||||
if(cardName.equals("Blood Crypt") || cardName.equals("Breeding Pool") || cardName.equals("Godless Shrine") || cardName.equals("Hallowed Fountain") || cardName.equals("Overgrown Tomb") || cardName.equals("Sacred Foundry") || cardName.equals("Steam Vents") || cardName.equals("Stomping Ground") || cardName.equals("Temple Garden") || cardName.equals("Watery Grave"))
|
||||
{
|
||||
//if this isn't done, computer plays more than 1 copy
|
||||
|
||||
@@ -123,6 +123,13 @@ public class CardUtil {
|
||||
break;
|
||||
}
|
||||
}
|
||||
for(String kw : c.getKeyword())
|
||||
if(kw.startsWith(c.getName()+" is "))
|
||||
for(String color : Constant.Color.Colors)
|
||||
if(kw.endsWith(color+"."))
|
||||
colors.add(color);
|
||||
if(colors.contains(Constant.Color.Colorless))
|
||||
colors.clear();
|
||||
if(colors.isEmpty()) colors.add(Constant.Color.Colorless);
|
||||
|
||||
return new ArrayList<String>(colors);
|
||||
|
||||
Reference in New Issue
Block a user