2012-10-04 06:16:35 -07:00
|
|
|
package magic.model;
|
|
|
|
|
2013-07-08 19:52:50 -07:00
|
|
|
public interface MagicObject extends MagicCopyable {
|
2015-10-29 06:18:04 -07:00
|
|
|
boolean isToken();
|
2012-10-04 06:16:35 -07:00
|
|
|
boolean isSpell();
|
2015-10-29 06:18:04 -07:00
|
|
|
boolean isSpell(MagicType type);
|
|
|
|
boolean isSpell(MagicSubType subType);
|
|
|
|
boolean isInstantOrSorcerySpell();
|
2013-10-07 20:02:26 -07:00
|
|
|
boolean isPlayer();
|
2012-10-04 06:16:35 -07:00
|
|
|
boolean isPermanent();
|
2016-02-17 18:03:15 -08:00
|
|
|
boolean isCreaturePermanent();
|
|
|
|
boolean isPlaneswalkerPermanent();
|
2012-10-12 20:15:28 -07:00
|
|
|
boolean hasColor(final MagicColor color);
|
2016-07-11 20:51:53 -07:00
|
|
|
int getColorFlags();
|
|
|
|
boolean shareColor(final MagicObject other);
|
2012-10-26 18:18:12 -07:00
|
|
|
boolean hasAbility(final MagicAbility ability);
|
|
|
|
boolean hasType(final MagicType type);
|
|
|
|
boolean hasSubType(final MagicSubType subType);
|
2015-10-29 06:18:04 -07:00
|
|
|
boolean hasCounters(final MagicCounterType counterType);
|
2015-06-09 21:52:47 -07:00
|
|
|
int getCounters(final MagicCounterType counterType);
|
|
|
|
void changeCounters(final MagicCounterType counterType,final int amount);
|
2012-10-04 06:16:35 -07:00
|
|
|
String getName();
|
|
|
|
MagicPlayer getController();
|
2015-10-29 06:18:04 -07:00
|
|
|
MagicPlayer getOpponent();
|
|
|
|
boolean isFriend(final MagicObject other);
|
|
|
|
boolean isEnemy(final MagicObject other);
|
2014-04-02 06:55:20 -07:00
|
|
|
long getId();
|
2017-07-28 08:11:32 -07:00
|
|
|
long getStateId();
|
2013-07-08 23:41:55 -07:00
|
|
|
MagicCardDefinition getCardDefinition();
|
2012-10-04 06:16:35 -07:00
|
|
|
}
|