mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-15 10:18:01 +00:00
Merge branch 'mentor' into 'master'
Mentor See merge request core-developers/forge!894
This commit is contained in:
@@ -1626,7 +1626,8 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
|| keyword.equals("Exalted") || keyword.equals("Extort")|| keyword.equals("Flanking")
|
||||
|| keyword.equals("Horsemanship") || keyword.equals("Infect")|| keyword.equals("Persist")
|
||||
|| keyword.equals("Phasing") || keyword.equals("Shadow")|| keyword.equals("Skulk")
|
||||
|| keyword.equals("Undying") || keyword.equals("Wither") || keyword.equals("Cascade")) {
|
||||
|| keyword.equals("Undying") || keyword.equals("Wither") || keyword.equals("Cascade")
|
||||
|| keyword.equals("Mentor")) {
|
||||
if (sb.length() != 0) {
|
||||
sb.append("\r\n");
|
||||
}
|
||||
@@ -1644,7 +1645,7 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
|| keyword.startsWith("Surge") || keyword.startsWith("Transmute") || keyword.startsWith("Suspend")
|
||||
|| keyword.equals("Undaunted") || keyword.startsWith("Monstrosity") || keyword.startsWith("Embalm")
|
||||
|| keyword.startsWith("Level up") || keyword.equals("Prowess") || keyword.startsWith("Eternalize")
|
||||
|| keyword.startsWith("Reinforce") || keyword.startsWith("Champion")
|
||||
|| keyword.startsWith("Reinforce") || keyword.startsWith("Champion") || keyword.startsWith("Prowl")
|
||||
|| keyword.startsWith("Amplify") || keyword.startsWith("Ninjutsu")
|
||||
|| keyword.startsWith("Cycling") || keyword.startsWith("TypeCycling")) {
|
||||
// keyword parsing takes care of adding a proper description
|
||||
@@ -1968,7 +1969,8 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
} else if (keyword.startsWith("Dredge")) {
|
||||
sbAfter.append(TextUtil.fastReplace(keyword, ":", " ") + " (" + inst.getReminderText() + ")");
|
||||
sbAfter.append("\r\n");
|
||||
} else if (keyword.startsWith("Escalate") || keyword.startsWith("Buyback")) {
|
||||
} else if (keyword.startsWith("Escalate") || keyword.startsWith("Buyback")
|
||||
|| keyword.startsWith("Prowl")) {
|
||||
final String[] k = keyword.split(":");
|
||||
final String manacost = k[1];
|
||||
final Cost cost = new Cost(manacost, false);
|
||||
|
||||
@@ -2653,6 +2653,21 @@ public class CardFactoryUtil {
|
||||
sa.setIntrinsic(intrinsic);
|
||||
trigger.setOverridingAbility(sa);
|
||||
|
||||
inst.addTrigger(trigger);
|
||||
} else if (keyword.equals("Mentor")) {
|
||||
final String trigStr = "Mode$ Attacks | ValidCard$ Card.Self | Secondary$ True " +
|
||||
" | TriggerDescription$ Mentor (" + inst.getReminderText() + ")";
|
||||
|
||||
final String effect = "DB$ PutCounter | CounterType$ P1P1 | CounterNum$ 1"
|
||||
+ " | ValidTgts$ Creature.attacking+powerLTX"
|
||||
+ " | TgtPrompt$ Select target attacking creature with less power";
|
||||
final Trigger trigger = TriggerHandler.parseTrigger(trigStr.toString(), card, intrinsic);
|
||||
|
||||
SpellAbility sa = AbilityFactory.getAbility(effect, card);
|
||||
sa.setSVar("X", "Count$CardPower");
|
||||
sa.setIntrinsic(intrinsic);
|
||||
trigger.setOverridingAbility(sa);
|
||||
|
||||
inst.addTrigger(trigger);
|
||||
} else if (keyword.startsWith("Miracle")) {
|
||||
final String[] k = keyword.split(":");
|
||||
|
||||
@@ -90,6 +90,7 @@ public enum Keyword {
|
||||
LIVING_WEAPON(SimpleKeyword.class, true, "When this Equipment enters the battlefield, create a 0/0 black Germ creature token, then attach this to it."),
|
||||
MADNESS(KeywordWithCost.class, true, "If you discard this card, discard it into exile. When you do, cast it for %s or put it into your graveyard."),
|
||||
MELEE(SimpleKeyword.class, false, "Whenever this creature attacks, it gets +1/+1 until end of turn for each opponent you attacked with a creature this combat."),
|
||||
MENTOR(SimpleKeyword.class, false, "Whenever this creature attacks, put a +1/+1 counter on target attacking creature with lesser power."),
|
||||
MENACE(SimpleKeyword.class, true, "This creature can't be blocked except by two or more creatures."),
|
||||
MEGAMORPH(KeywordWithCost.class, false, "You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its megamorph cost and put a +1/+1 counter on it."),
|
||||
MIRACLE(KeywordWithCost.class, false, "You may cast this card for its miracle cost when you draw it if it's the first card you drew this turn."),
|
||||
|
||||
12
forge-gui/res/cardsfolder/upcoming/legion_warboss.txt
Normal file
12
forge-gui/res/cardsfolder/upcoming/legion_warboss.txt
Normal file
@@ -0,0 +1,12 @@
|
||||
Name:Legion Warboss
|
||||
ManaCost:2 R
|
||||
Types:Creature Goblin Soldier
|
||||
PT:2/2
|
||||
K:Mentor
|
||||
T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ At the beginning of combat on your turn, create a 1/1 red Goblin creature token. That token gains haste until end of turn and attacks this combat if able.
|
||||
SVar:TrigToken:DB$ Token | TokenOwner$ You | TokenAmount$ 1 | | TokenPower$ 1 | TokenToughness$ 1 | TokenColors$ Red | TokenName$ Goblin | TokenTypes$ Goblin,Creature | TokenImage$ r 1 1 goblin grn | RememberTokens$ True | SubAbility$ DBPump
|
||||
SVar:DBPump:DB$ Pump | Defined$ Remembered | KW$ Haste & HIDDEN CARDNAME attacks each combat if able. | SubAbility$ DBCleanup
|
||||
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
|
||||
DeckHas:Ability$Counters & Ability$Token
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/legion_warboss.jpg
|
||||
Oracle:Mentor (Whenever this creature attacks, put a +1/+1 counter on target attacking creature with lesser power.)\nAt the beginning of combat on your turn, create a 1/1 red Goblin creature token. That token gains haste until end of turn and attacks this combat if able.
|
||||
Reference in New Issue
Block a user