mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 03:38:01 +00:00
- Added Thoughtbound Primoc and Wild Mammoth
This commit is contained in:
2
.gitattributes
vendored
2
.gitattributes
vendored
@@ -11186,6 +11186,7 @@ res/cardsfolder/t/thought_prison.txt -text svneol=unset#text/plain
|
||||
res/cardsfolder/t/thought_reflection.txt -text
|
||||
res/cardsfolder/t/thought_scour.txt -text
|
||||
res/cardsfolder/t/thoughtbind.txt svneol=native#text/plain
|
||||
res/cardsfolder/t/thoughtbound_primoc.txt -text
|
||||
res/cardsfolder/t/thoughtcast.txt svneol=native#text/plain
|
||||
res/cardsfolder/t/thoughtcutter_agent.txt svneol=native#text/plain
|
||||
res/cardsfolder/t/thoughtflare.txt -text
|
||||
@@ -12422,6 +12423,7 @@ res/cardsfolder/w/wild_guess.txt -text
|
||||
res/cardsfolder/w/wild_hunger.txt -text
|
||||
res/cardsfolder/w/wild_jhovall.txt svneol=native#text/plain
|
||||
res/cardsfolder/w/wild_leotau.txt svneol=native#text/plain
|
||||
res/cardsfolder/w/wild_mammoth.txt -text
|
||||
res/cardsfolder/w/wild_might.txt -text
|
||||
res/cardsfolder/w/wild_mongrel.txt svneol=native#text/plain
|
||||
res/cardsfolder/w/wild_nacatl.txt svneol=native#text/plain
|
||||
|
||||
12
res/cardsfolder/t/thoughtbound_primoc.txt
Normal file
12
res/cardsfolder/t/thoughtbound_primoc.txt
Normal file
@@ -0,0 +1,12 @@
|
||||
Name:Thoughtbound Primoc
|
||||
ManaCost:2 R
|
||||
Types:Creature Bird Beast
|
||||
PT:2/3
|
||||
K:Flying
|
||||
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | CheckDefinedPlayer$ Player.withMostTypeWizardOnly | Execute$ TrigGain | TriggerDescription$ At the beginning of your upkeep, if a player controls more Wizards than each other player, the player who controls the most Wizards gains control of CARDNAME.
|
||||
SVar:TrigGain:AB$ GainControl | Cost$ 0 | Defined$ Self | NewController$ Player.withMostTypeWizardOnly
|
||||
SVar:RemRandomDeck:True
|
||||
DeckHints:Type$Wizard
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/thoughtbound_primoc.jpg
|
||||
Oracle:Flying\nAt the beginning of your upkeep, if a player controls more Wizards than each other player, the player who controls the most Wizards gains control of Thoughtbound Primoc.
|
||||
SetInfo:ONS Uncommon
|
||||
10
res/cardsfolder/w/wild_mammoth.txt
Normal file
10
res/cardsfolder/w/wild_mammoth.txt
Normal file
@@ -0,0 +1,10 @@
|
||||
Name:Wild Mammoth
|
||||
ManaCost:2 G
|
||||
Types:Creature Elephant
|
||||
PT:3/4
|
||||
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | CheckDefinedPlayer$ Player.withMostTypeCreatureOnly | Execute$ TrigGain | TriggerDescription$ At the beginning of your upkeep, if a player controls more creatures than each other player, the player who controls the most creatures gains control of CARDNAME.
|
||||
SVar:TrigGain:AB$ GainControl | Cost$ 0 | Defined$ Self | NewController$ Player.withMostTypeCreatureOnly
|
||||
SVar:RemRandomDeck:True
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/wild_mammoth.jpg
|
||||
Oracle:At the beginning of your upkeep, if a player controls more creatures than each other player, the player who controls the most creatures gains control of Wild Mammoth.
|
||||
SetInfo:NMS Uncommon
|
||||
@@ -3773,7 +3773,7 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
|
||||
total += this.getCounters(CounterType.P1P1) + this.getCounters(CounterType.P1P2) + this.getCounters(CounterType.P1P0)
|
||||
- this.getCounters(CounterType.M1M1) + 2 * this.getCounters(CounterType.P2P2) - 2 * this.getCounters(CounterType.M2M1)
|
||||
- 2 * this.getCounters(CounterType.M2M2) - this.getCounters(CounterType.M1M0);
|
||||
- 2 * this.getCounters(CounterType.M2M2) - this.getCounters(CounterType.M1M0) + 2 * this.getCounters(CounterType.P2P0);
|
||||
return total;
|
||||
}
|
||||
|
||||
@@ -3827,7 +3827,8 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
|
||||
total += this.getCounters(CounterType.P1P1) + 2 * this.getCounters(CounterType.P1P2) - this.getCounters(CounterType.M1M1)
|
||||
+ this.getCounters(CounterType.P0P1) - 2 * this.getCounters(CounterType.M0M2) + 2 * this.getCounters(CounterType.P2P2)
|
||||
- this.getCounters(CounterType.M0M1) - this.getCounters(CounterType.M2M1) - 2 * this.getCounters(CounterType.M2M2);
|
||||
- this.getCounters(CounterType.M0M1) - this.getCounters(CounterType.M2M1) - 2 * this.getCounters(CounterType.M2M2)
|
||||
+ 2 * this.getCounters(CounterType.P0P2);
|
||||
return total;
|
||||
}
|
||||
|
||||
|
||||
@@ -279,6 +279,22 @@ public abstract class TriggerReplacementBase {
|
||||
}
|
||||
}
|
||||
|
||||
if (params.containsKey("CheckDefinedPlayer")) {
|
||||
final String sIsPresent = params.get("CheckDefinedPlayer");
|
||||
int playersize = AbilityUtils.getDefinedPlayers(game.getCardState(this.getHostCard()), sIsPresent,
|
||||
this.getHostCard().getFirstSpellAbility()).size();
|
||||
String comparator = "GE1";
|
||||
if (params.containsKey("DefinedPlayerCompare")) {
|
||||
comparator = params.get("DefinedPlayerCompare");
|
||||
}
|
||||
final String svarOperator = comparator.substring(0, 2);
|
||||
final String svarOperand = comparator.substring(2);
|
||||
final int operandValue = AbilityUtils.calculateAmount(game.getCardState(this.getHostCard()), svarOperand, null);
|
||||
if (!Expressions.compare(playersize, svarOperator, operandValue)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (params.containsKey("CheckSVar")) {
|
||||
final int sVar = AbilityUtils.calculateAmount(game.getCardState(this.getHostCard()), params.get("CheckSVar"), null);
|
||||
String comparator = "GE1";
|
||||
|
||||
@@ -2448,6 +2448,32 @@ public class Player extends GameEntity implements Comparable<Player> {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else if (property.substring(8).startsWith("Type")) {
|
||||
String type = property.split("Type")[1];
|
||||
boolean checkOnly = false;
|
||||
if (type.endsWith("Only")) {
|
||||
checkOnly = true;
|
||||
type = type.replace("Only", "");
|
||||
}
|
||||
int typeNum = 0;
|
||||
List<Player> controlmost = new ArrayList<Player>();
|
||||
for (final Player p : game.getPlayers()) {
|
||||
final int num = CardLists.getType(p.getCardsIn(ZoneType.Battlefield), type).size();
|
||||
if (num > typeNum) {
|
||||
typeNum = num;
|
||||
controlmost.clear();
|
||||
}
|
||||
if (num == typeNum) {
|
||||
controlmost.add(p);
|
||||
}
|
||||
}
|
||||
if (checkOnly && controlmost.size() != 1) {
|
||||
return false;
|
||||
}
|
||||
if (!controlmost.contains(this)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
} else if (property.startsWith("withLowest")) {
|
||||
if (property.substring(10).equals("Life")) {
|
||||
int lowestLife = 1000;
|
||||
|
||||
Reference in New Issue
Block a user