Tokens and command objects reworked (part 1 of 2):

- fixed that copy effect doesn't restore original image after effect's end;
 - removed outdated availableImageSetCodes (all images auto-selected from tokens database now, related to #10139);
 - refactor command objects to use CommandObjectImpl;
 - refactor planes/emblems/etc objects to use MageObjectImpl, added copyable support;
 - refactor another game objects to remove some duplicated fields;
This commit is contained in:
Oleg Agafonov 2023-05-08 02:15:07 +04:00
parent 46f6593da8
commit 5f55c7c667
45 changed files with 517 additions and 477 deletions

View file

@ -202,6 +202,36 @@ public class Spell extends StackObjectImpl implements Card {
return GameLog.replaceNameByColoredName(card, getSpellAbility().toString());
}
@Override
public String getExpansionSetCode() {
return card.getExpansionSetCode();
}
@Override
public void setExpansionSetCode(String expansionSetCode) {
throw new IllegalStateException("Wrong code usage: you can't change set code for the spell");
}
@Override
public String getCardNumber() {
return card.getCardNumber();
}
@Override
public void setCardNumber(String cardNumber) {
throw new IllegalStateException("Wrong code usage: you can't change card number for the spell");
}
@Override
public Integer getImageNumber() {
return card.getImageNumber();
}
@Override
public void setImageNumber(Integer imageNumber) {
throw new IllegalStateException("Wrong code usage: you can't change image number for the spell");
}
@Override
public boolean resolve(Game game) {
boolean result;
@ -481,11 +511,6 @@ public class Spell extends StackObjectImpl implements Card {
return GameLog.getColoredObjectIdName(card);
}
@Override
public String getImageName() {
return card.getImageName();
}
@Override
public void setName(String name) {
}
@ -704,11 +729,6 @@ public class Spell extends StackObjectImpl implements Card {
return card.getRules(game);
}
@Override
public String getExpansionSetCode() {
return card.getExpansionSetCode();
}
@Override
public void setFaceDown(boolean value, Game game) {
faceDown = value;
@ -875,11 +895,6 @@ public class Spell extends StackObjectImpl implements Card {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public String getCardNumber() {
return card.getCardNumber();
}
@Override
public boolean getUsesVariousArt() {
return card.getUsesVariousArt();