- Casting a Cascaded card is optional now.

- Added Intimidate keyword.
- Added Guul Draz Vampire, Bladetusk Boar.
This commit is contained in:
jendave
2011-08-06 03:14:55 +00:00
parent bcad2b734f
commit fe1bbcb64d
6 changed files with 73 additions and 2 deletions

View File

@@ -1,3 +1,16 @@
Guul Draz Vampire
B
Creature Vampire Rogue
As long as an opponent has 10 or less life, Guul Draz Vampire gets +2/+1 and has intimidate. (It can't be blocked except by artifact creatures and/or creatures that share a color with it.)
1/1
Bladetusk Boar
3 R
Creature Boar
no text
3/2
Intimidate
Bituminous Blast
3 B R
Instant

View File

@@ -1,6 +1,6 @@
program/mail=mtgerror@yahoo.com
program/forum=http://www.slightlymagic.net/forum/viewforum.php?f=26
program/version=Forge -- official beta: 10/01/17, SVN revision: 287
program/version=Forge -- official beta: 10/01/17, SVN revision: 288
tokens--file=AllTokens.txt

View File

@@ -10460,6 +10460,10 @@ public class CardFactory implements NewConstants {
//move to top of library
AllZone.Computer_Library.remove(c);
AllZone.Computer_Library.add(c, 0);
CardList l = new CardList();
l.add(c);
AllZone.Display.getChoiceOptional("Computer picked:", l.toArray());
}
}//computerResolve()
public void humanResolve()

View File

@@ -134,6 +134,13 @@ public class CombatUtil
return false;
}
if (attacker.getKeyword().contains("Intimidate"))
{
if (!blocker.getType().contains("Artifact") &&
!CardFactoryUtil.sharesColorWith(attacker, blocker))
return false;
}
if (attacker.getName().equals("Barrenton Cragtreads"))
{
if (CardUtil.getColors(blocker).contains(Constant.Color.Red))

View File

@@ -185,8 +185,16 @@ public class GameActionUtil
if (cascadedCard.getController().equals(Constant.Player.Human))
{
String[] choices = { "Yes", "No" };
Object q = null;
q = AllZone.Display.getChoiceOptional("Cast " + cascadedCard.getName() + "?", choices);
if (q != null) {
if (q.equals("Yes"))
AllZone.GameAction.playCardNoCost(cascadedCard);
}
}
else
{
ArrayList<SpellAbility> choices = cascadedCard.getBasicSpells();
@@ -11034,6 +11042,43 @@ public class GameActionUtil
}
};
public static Command Guul_Draz_Vampire = new Command()
{
private static final long serialVersionUID = -4252257530318024113L;
public void execute()
{
// get all creatures
CardList list = new CardList();
list.addAll(AllZone.Human_Play.getCards());
list.addAll(AllZone.Computer_Play.getCards());
list = list.getName("Guul Draz Vampire");
for (int i = 0; i < list.size(); i++)
{
Card c = list.get(i);
if (oppLess10Life(c)) {
if (!c.getIntrinsicKeyword().contains("Intimidate"))
c.addIntrinsicKeyword("Intimidate");
c.setBaseAttack(3);
c.setBaseDefense(2);
}
else {
c.removeIntrinsicKeyword("Haste");
c.setBaseAttack(1);
c.setBaseDefense(1);
}
}
}// execute()
//does opponent have 10 or less life?
private boolean oppLess10Life(Card c)
{
String opp = AllZone.GameAction.getOpponent(c.getController());
return AllZone.GameAction.getPlayerLife(opp).getLife() <= 10;
}
};
public static Command Bloodghast = new Command()
{
private static final long serialVersionUID = -4252257530318024113L;
@@ -16292,6 +16337,7 @@ public class GameActionUtil
commands.put("Wild_Nacatl", Wild_Nacatl);
commands.put("Liu_Bei", Liu_Bei);
commands.put("Mystic_Enforcer", Mystic_Enforcer);
commands.put("Guul_Draz_Vampire", Guul_Draz_Vampire);
commands.put("Bloodghast", Bloodghast);
commands.put("Bant_Sureblade", Bant_Sureblade);
commands.put("Esper_Stormblade", Esper_Stormblade);

View File

@@ -61,6 +61,7 @@ public class StateBasedEffects
cardToEffectsList.put("Hedge Troll", new String[] {"Hedge_Troll"});
cardToEffectsList.put("Wild Nacatl", new String[] {"Wild_Nacatl"});
cardToEffectsList.put("Liu Bei, Lord of Shu", new String[] {"Liu_Bei"});
cardToEffectsList.put("Guul Draz Vampire", new String[] {"Guul_Draz_Vampire"});
cardToEffectsList.put("Bloodghast", new String[] {"Bloodghast"});
cardToEffectsList.put("Bant Sureblade", new String[] {"Bant_Sureblade"});
cardToEffectsList.put("Esper Stormblade", new String[] {"Esper_Stormblade"});