Merge pull request #6510 from gp66/completed-suggestions-iko-tokens

Completed suggestions iko tokens
This commit is contained in:
Oleg Agafonov 2020-05-03 20:10:11 +02:00 committed by GitHub
commit 2739391b1d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 71 additions and 34 deletions

View file

@ -350,6 +350,20 @@ public class ScryfallImageSupportTokens {
put("THB/Wolf", "https://api.scryfall.com/cards/tthb/11/en?format=image"); put("THB/Wolf", "https://api.scryfall.com/cards/tthb/11/en?format=image");
put("THB/Zombie", "https://api.scryfall.com/cards/tthb/7/en?format=image"); put("THB/Zombie", "https://api.scryfall.com/cards/tthb/7/en?format=image");
// IKO
put("IKO/Emblem Narset Of The Ancient Way", "https://api.scryfall.com/cards/tiko/12/en?format=image");
put("IKO/Beast", "https://api.scryfall.com/cards/tiko/10/en?format=image");
put("IKO/Cat Bird", "https://api.scryfall.com/cards/tiko/2/en?format=image");
put("IKO/Cat", "https://api.scryfall.com/cards/tiko/1/en?format=image");
put("IKO/Dinosaur Beast", "https://api.scryfall.com/cards/tiko/11/en?format=image");
put("IKO/Dinosaur", "https://api.scryfall.com/cards/tiko/8/en?format=image");
put("IKO/Feather", "https://api.scryfall.com/cards/tiko/9/en?format=image");
put("IKO/Human Soldier/1", "https://api.scryfall.com/cards/tiko/3/en?format=image");
put("IKO/Human Soldier/2", "https://api.scryfall.com/cards/tiko/4/en?format=image");
put("IKO/Human Soldier/3", "https://api.scryfall.com/cards/tiko/5/en?format=image");
put("IKO/Kraken", "https://api.scryfall.com/cards/tiko/6/en?format=image");
put("IKO/Shark", "https://api.scryfall.com/cards/tiko/7/en?format=image");
// PCA (planes) // PCA (planes)
put("PCA/Eldrazi", "https://api.scryfall.com/cards/tpca/1/en?format=image"); put("PCA/Eldrazi", "https://api.scryfall.com/cards/tpca/1/en?format=image");
put("PCA/Plane - Academy at Tolaria West", "https://api.scryfall.com/cards/opca/9/en?format=image"); put("PCA/Plane - Academy at Tolaria West", "https://api.scryfall.com/cards/opca/9/en?format=image");

View file

@ -101,6 +101,7 @@
|Generate|EMBLEM:DOM|Teferi, Hero of Dominaria||Emblem Teferi|TeferiHeroOfDominariaEmblem| |Generate|EMBLEM:DOM|Teferi, Hero of Dominaria||Emblem Teferi|TeferiHeroOfDominariaEmblem|
|Generate|EMBLEM:AER|Tezzeret the Schemer||Emblem Tezzeret|TezzeretTheSchemerEmblem| |Generate|EMBLEM:AER|Tezzeret the Schemer||Emblem Tezzeret|TezzeretTheSchemerEmblem|
|Generate|EMBLEM:ELD|Garruk, Cursed Huntsman||Emblem Garruk|GarrukCursedHuntsmanEmblem| |Generate|EMBLEM:ELD|Garruk, Cursed Huntsman||Emblem Garruk|GarrukCursedHuntsmanEmblem|
|Generate|EMBLEM:IKO|Narset Of The Ancient Way||Emblem Narset|NarsetOfTheAncientWayEmblem|
|Generate|PLANE:PCA|Plane - Academy at Tolaria West|||AcademyAtTolariaWestPlane| |Generate|PLANE:PCA|Plane - Academy at Tolaria West|||AcademyAtTolariaWestPlane|
|Generate|PLANE:PCA|Plane - Agyrem|||AgyremPlane| |Generate|PLANE:PCA|Plane - Agyrem|||AgyremPlane|
|Generate|PLANE:PCA|Plane - Akoum|||AkoumPlane| |Generate|PLANE:PCA|Plane - Akoum|||AkoumPlane|
@ -1357,4 +1358,15 @@
|Generate|TOK:THB|Wolf|||WolfToken| |Generate|TOK:THB|Wolf|||WolfToken|
|Generate|TOK:THB|Nightmare|||AshiokNightmareMuseToken| |Generate|TOK:THB|Nightmare|||AshiokNightmareMuseToken|
|Generate|TOK:THB|GoldToken|||Gold| |Generate|TOK:THB|GoldToken|||Gold|
|Generate|TOK:THB|ArtifactWallToken|||Wall| |Generate|TOK:THB|ArtifactWallToken|||Wall|
|Generate|TOK:IKO|Beast|||BeastToken|
|Generate|TOK:IKO|Cat Bird|||CatBirdToken|
|Generate|TOK:IKO|Cat|||CatToken|
|Generate|TOK:IKO|Dinosaur Beast|||DinosaurBeastToken|
|Generate|TOK:IKO|Dinosaur|||DinosaurHasteToken|
|Generate|TOK:IKO|Feather|||FeatherToken|
|Generate|TOK:IKO|Human Soldier|1||HumanSoldierToken|
|Generate|TOK:IKO|Human Soldier|2||HumanSoldierToken|
|Generate|TOK:IKO|Human Soldier|3||HumanSoldierToken|
|Generate|TOK:IKO|Kraken|||KrakenToken|
|Generate|TOK:IKO|Shark|||SharkToken|

View file

@ -12,7 +12,7 @@ import mage.game.Game;
import mage.game.events.DamagedPlayerEvent; import mage.game.events.DamagedPlayerEvent;
import mage.game.events.GameEvent; import mage.game.events.GameEvent;
import mage.game.permanent.Permanent; import mage.game.permanent.Permanent;
import mage.game.permanent.token.BeastXToken; import mage.game.permanent.token.DinosaurBeastToken;
import mage.target.targetpointer.FixedTarget; import mage.target.targetpointer.FixedTarget;
import mage.watchers.Watcher; import mage.watchers.Watcher;
@ -119,7 +119,7 @@ class QuartzwoodCrasherEffect extends OneShotEffect {
@Override @Override
public boolean apply(Game game, Ability source) { public boolean apply(Game game, Ability source) {
QuartzwoodCrasherWatcher watcher = game.getState().getWatcher(QuartzwoodCrasherWatcher.class); QuartzwoodCrasherWatcher watcher = game.getState().getWatcher(QuartzwoodCrasherWatcher.class);
return watcher != null && new BeastXToken( return watcher != null && new DinosaurBeastToken(
watcher.getDamage(targetPointer.getFirst(game, source), source.getControllerId()) watcher.getDamage(targetPointer.getFirst(game, source), source.getControllerId())
).putOntoBattlefield(1, game, source.getSourceId(), source.getControllerId()); ).putOntoBattlefield(1, game, source.getSourceId(), source.getControllerId());
} }

View file

@ -1,31 +0,0 @@
package mage.game.permanent.token;
import mage.MageInt;
import mage.abilities.keyword.TrampleAbility;
import mage.constants.CardType;
import mage.constants.SubType;
/**
* @author TheElk801
*/
public final class BeastXToken extends TokenImpl {
public BeastXToken(int xValue) {
super("Beast", "X/X green Beast creature token");
cardType.add(CardType.CREATURE);
color.setGreen(true);
subtype.add(SubType.BEAST);
power = new MageInt(xValue);
toughness = new MageInt(xValue);
addAbility(TrampleAbility.getInstance());
}
private BeastXToken(final BeastXToken token) {
super(token);
}
@Override
public BeastXToken copy() {
return new BeastXToken(this);
}
}

View file

@ -0,0 +1,32 @@
package mage.game.permanent.token;
import mage.MageInt;
import mage.abilities.keyword.TrampleAbility;
import mage.constants.CardType;
import mage.constants.SubType;
/**
* @author TheElk801
*/
public final class DinosaurBeastToken extends TokenImpl {
public DinosaurBeastToken(int xValue) {
super("Dinosaur Beast", "X/X green Dinosaur Beast creature token with trample");
cardType.add(CardType.CREATURE);
color.setGreen(true);
subtype.add(SubType.DINOSAUR);
subtype.add(SubType.BEAST);
power = new MageInt(xValue);
toughness = new MageInt(xValue);
addAbility(TrampleAbility.getInstance());
}
private DinosaurBeastToken(final DinosaurBeastToken token) {
super(token);
}
@Override
public DinosaurBeastToken copy() {
return new DinosaurBeastToken(this);
}
}

View file

@ -3,6 +3,7 @@ package mage.game.permanent.token;
import mage.MageInt; import mage.MageInt;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.util.RandomUtil;
public final class HumanSoldierToken extends TokenImpl { public final class HumanSoldierToken extends TokenImpl {
@ -16,6 +17,15 @@ public final class HumanSoldierToken extends TokenImpl {
toughness = new MageInt(1); toughness = new MageInt(1);
} }
@Override
public void setExpansionSetCodeForImage(String code) {
super.setExpansionSetCodeForImage(code);
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("IKO")) {
setTokenType(RandomUtil.nextInt(3) + 1); // 1...3
}
}
public HumanSoldierToken(final HumanSoldierToken token) { public HumanSoldierToken(final HumanSoldierToken token) {
super(token); super(token);
} }