Merge branch 'cleanup' into 'master'

Remove some redundancy

See merge request core-developers/forge!5945
This commit is contained in:
Michael Kamensky
2021-12-16 06:38:21 +00:00
22 changed files with 37 additions and 95 deletions

View File

@@ -955,7 +955,6 @@ public class Game {
Multimap<Player, Card> anteed = ArrayListMultimap.create();
if (matchRarity) {
boolean onePlayerHasTimeShifted = false;
List<CardRarity> validRarities = new ArrayList<>(Arrays.asList(CardRarity.values()));
@@ -1018,7 +1017,6 @@ public class Game {
} else {
chooseRandomCardsForAnte(player, anteed);
}
}
}
else {

View File

@@ -43,7 +43,6 @@ public class GameView extends TrackableObject {
set(TrackableProperty.GameLog, game.getGameLog());
set(TrackableProperty.NumPlayedGamesInMatch, game.getMatch().getOutcomes().size());
}
public Match getMatch() {

View File

@@ -176,16 +176,12 @@ public class AnimateEffect extends AnimateEffectBase {
// give Remembered
if (animateRemembered != null) {
for (final Object o : AbilityUtils.getDefinedObjects(source, animateRemembered, sa)) {
c.addRemembered(o);
}
c.addRemembered(AbilityUtils.getDefinedObjects(source, animateRemembered, sa));
}
// give Imprinted
if (animateImprinted != null) {
for (final Card imprintedCard : AbilityUtils.getDefinedCards(source, animateImprinted, sa)) {
c.addImprintedCard(imprintedCard);
}
c.addImprintedCards(AbilityUtils.getDefinedCards(source, animateImprinted, sa));
}
game.fireEvent(new GameEventCardStatsChanged(c));

View File

@@ -212,19 +212,13 @@ public class ChooseCardEffect extends SpellAbilityEffect {
}
host.setChosenCards(chosen);
if (sa.hasParam("RememberChosen")) {
for (final Card rem : chosen) {
host.addRemembered(rem);
}
host.addRemembered(chosen);
}
if (sa.hasParam("ForgetChosen")) {
for (final Card rem : chosen) {
host.removeRemembered(rem);
}
host.removeRemembered(chosen);
}
if (sa.hasParam("ImprintChosen")) {
for (final Card imp : chosen) {
host.addImprintedCard(imp);
}
host.addImprintedCards(chosen);
}
}
}

View File

@@ -56,9 +56,7 @@ public class DelayedTriggerEffect extends SpellAbilityEffect {
if (sa.hasParam("RememberObjects")) {
for (final String rem : sa.getParam("RememberObjects").split(",")) {
for (final Object o : AbilityUtils.getDefinedEntities(sa.getHostCard(), rem, sa)) {
delTrig.addRemembered(o);
}
delTrig.addRemembered(AbilityUtils.getDefinedEntities(sa.getHostCard(), rem, sa));
}
}

View File

@@ -177,14 +177,10 @@ public class DigEffect extends SpellAbilityEffect {
}
if (sa.hasParam("RememberRevealed") && !sa.hasParam("RevealValid") && hasRevealed) {
for (final Card one : top) {
host.addRemembered(one);
}
host.addRemembered(top);
}
if (sa.hasParam("ImprintRevealed") && hasRevealed) {
for (final Card one : top) {
host.addImprintedCard(one);
}
host.addImprintedCards(top);
}
if (sa.hasParam("Choser")) {
final FCollectionView<Player> choosers = AbilityUtils.getDefinedPlayers(host, sa.getParam("Choser"), sa);

View File

@@ -204,14 +204,10 @@ public class DigUntilEffect extends SpellAbilityEffect {
}
if (sa.hasParam("RememberRevealed")) {
for (final Card c : revealed) {
host.addRemembered(c);
}
host.addRemembered(revealed);
}
if (sa.hasParam("ImprintRevealed")) {
for (final Card c : revealed) {
host.addImprintedCard(c);
}
host.addImprintedCards(revealed);
}
if (sa.hasParam("RevealRandomOrder")) {
Collections.shuffle(revealed, MyRandom.getRandom());

View File

@@ -127,9 +127,6 @@ public class DiscardEffect extends SpellAbilityEffect {
for (final Player p : discarders) {
CardCollectionView toBeDiscarded = new CardCollection();
if ((mode.equals("RevealTgtChoose") && firstTarget != null) || !sa.usesTargeting() || p.canBeTargetedBy(sa)) {
if (sa.hasParam("RememberDiscarder") && p.canDiscardBy(sa, true)) {
source.addRemembered(p);
}
final int numCardsInHand = p.getCardsIn(ZoneType.Hand).size();
if (mode.equals("Defined")) {
if (!p.canDiscardBy(sa, true)) {

View File

@@ -79,9 +79,7 @@ public class DrawEffect extends SpellAbilityEffect {
}
}
if (sa.hasParam("RememberDrawn")) {
for (final Card c : drawn) {
source.addRemembered(c);
}
source.addRemembered(drawn);
}
sa.setSVar("AFNotDrawnNum_" + p.getId(), "Number$" + drawn.size());
}

View File

@@ -53,10 +53,7 @@ public class FightEffect extends DamageBaseEffect {
}
if (sa.hasParam("RememberObjects")) {
final String remembered = sa.getParam("RememberObjects");
for (final Object o : AbilityUtils.getDefinedObjects(host, remembered, sa)) {
host.addRemembered(o);
}
host.addRemembered(AbilityUtils.getDefinedObjects(host, sa.getParam("RememberObjects"), sa));
}
Player controller = host.getController();

View File

@@ -59,9 +59,7 @@ public class ImmediateTriggerEffect extends SpellAbilityEffect {
if (sa.hasParam("RememberObjects")) {
for (final String rem : sa.getParam("RememberObjects").split(",")) {
for (final Object o : AbilityUtils.getDefinedEntities(sa.getHostCard(), rem, sa)) {
immediateTrig.addRemembered(o);
}
immediateTrig.addRemembered(AbilityUtils.getDefinedEntities(sa.getHostCard(), rem, sa));
}
}

View File

@@ -68,14 +68,10 @@ public class MillEffect extends SpellAbilityEffect {
}
}
if (sa.hasParam("RememberMilled")) {
for (final Card c : milled) {
source.addRemembered(c);
}
source.addRemembered(milled);
}
if (sa.hasParam("Imprint")) {
for (final Card c : milled) {
source.addImprintedCard(c);
}
source.addImprintedCards(milled);
}
}
}

View File

@@ -86,7 +86,6 @@ public class MustAttackEffect extends SpellAbilityEffect {
}
}
}
} // mustAttackResolve()
}

View File

@@ -324,9 +324,7 @@ public class PumpEffect extends SpellAbilityEffect {
}
if (sa.hasParam("RememberObjects")) {
for (final Object o : AbilityUtils.getDefinedObjects(host, sa.getParam("RememberObjects"), sa)) {
host.addRemembered(o);
}
host.addRemembered(AbilityUtils.getDefinedObjects(host, sa.getParam("RememberObjects"), sa));
}
if (sa.hasParam("NoteCardsFor")) {
@@ -338,21 +336,15 @@ public class PumpEffect extends SpellAbilityEffect {
}
if (sa.hasParam("ForgetObjects")) {
for (final Object o : AbilityUtils.getDefinedObjects(host, sa.getParam("ForgetObjects"), sa)) {
host.removeRemembered(o);
}
host.removeRemembered(AbilityUtils.getDefinedObjects(host, sa.getParam("ForgetObjects"), sa));
}
if (sa.hasParam("ImprintCards")) {
for (final Card c : AbilityUtils.getDefinedCards(host, sa.getParam("ImprintCards"), sa)) {
host.addImprintedCard(c);
}
host.addImprintedCards(AbilityUtils.getDefinedCards(host, sa.getParam("ImprintCards"), sa));
}
if (sa.hasParam("ForgetImprinted")) {
for (final Card c : AbilityUtils.getDefinedCards(host, sa.getParam("ForgetImprinted"), sa)) {
host.removeImprintedCard(c);
}
host.removeImprintedCards(AbilityUtils.getDefinedCards(host, sa.getParam("ForgetImprinted"), sa));
}
final ZoneType pumpZone = sa.hasParam("PumpZone") ? ZoneType.smartValueOf(sa.getParam("PumpZone"))

View File

@@ -50,14 +50,10 @@ public class RevealHandEffect extends SpellAbilityEffect {
}
sa.getActivatingPlayer().getController().reveal(hand, ZoneType.Hand, p);
if (sa.hasParam("RememberRevealed")) {
for (final Card c : hand) {
host.addRemembered(c);
}
host.addRemembered(hand);
}
if (sa.hasParam("ImprintRevealed")) {
for (final Card c : hand) {
host.addImprintedCard(c);
}
host.addImprintedCards(hand);
}
if (sa.hasParam("RememberRevealedPlayer")) {
host.addRemembered(p);

View File

@@ -203,10 +203,7 @@ public abstract class TokenEffectBase extends SpellAbilityEffect {
moved.addRemembered(host);
}
if (sa.hasParam("TokenRemembered")) {
final String remembered = sa.getParam("TokenRemembered");
for (final Object o : AbilityUtils.getDefinedObjects(host, remembered, sa)) {
moved.addRemembered(o);
}
moved.addRemembered(AbilityUtils.getDefinedObjects(host, sa.getParam("TokenRemembered"), sa));
}
allTokens.add(moved);
}

View File

@@ -142,9 +142,7 @@ public class TwoPilesEffect extends SpellAbilityEffect {
// take action on the chosen pile
if (sa.hasParam("ChosenPile")) {
for (final Card z : chosenPile) {
card.addRemembered(z);
}
card.addRemembered(chosenPile);
SpellAbility sub = sa.getAdditionalAbility("ChosenPile");
if (sub != null) {
@@ -155,9 +153,7 @@ public class TwoPilesEffect extends SpellAbilityEffect {
// take action on the unchosen pile
if (sa.hasParam("UnchosenPile")) {
card.clearRemembered();
for (final Card z : unchosenPile) {
card.addRemembered(z);
}
card.addRemembered(unchosenPile);
SpellAbility sub = sa.getAdditionalAbility("UnchosenPile");
if (sub != null) {

View File

@@ -333,7 +333,6 @@ public class Player extends GameEntity implements Comparable<Player> {
game.getTriggerHandler().runTrigger(TriggerType.SetInMotion, runParams, false);
}
/**
* returns all opponents.
* Should keep player relations somewhere in the match structure
@@ -533,8 +532,7 @@ public class Player extends GameEntity implements Comparable<Player> {
game.getTriggerHandler().runTrigger(TriggerType.LifeGained, runParams, false);
game.fireEvent(new GameEventPlayerLivesChanged(this, oldLife, life));
}
else {
} else {
System.out.println("Player - trying to gain negative or 0 life");
}
return newLifeSet;
@@ -616,7 +614,7 @@ public class Player extends GameEntity implements Comparable<Player> {
if (lifePayment > 0 && life < lifePayment) {
return false;
}
return (lifePayment <= 0) || !StaticAbilityCantGainLosePayLife.anyCantPayLife(this, effect, cause);
return lifePayment <= 0 || !StaticAbilityCantGainLosePayLife.anyCantPayLife(this, effect, cause);
}
public final boolean payLife(final int lifePayment, final SpellAbility cause, final boolean effect) {
@@ -2019,7 +2017,7 @@ public class Player extends GameEntity implements Comparable<Player> {
}
public final boolean cantLoseForZeroOrLessLife() {
return (hasKeyword("You don't lose the game for having 0 or less life."));
return hasKeyword("You don't lose the game for having 0 or less life.");
}
public final boolean cantWin() {

View File

@@ -107,7 +107,7 @@ public class TriggerSpellAbilityCastOrCopy extends Trigger {
}
if (hasParam("ActivatorThisTurnCast")) {
final String compare = getParam("ActivatorThisTurnCast");
final String valid = hasParam("ValidCard") ? getParam("ValidCard") : "Card";
final String valid = getParamOrDefault("ValidCard", "Card");
List<Card> thisTurnCast = CardUtil.getThisTurnCast(valid, getHostCard(), this);
thisTurnCast = CardLists.filterControlledBy(thisTurnCast, si.getSpellAbility(true).getActivatingPlayer());
int left = thisTurnCast.size();

View File

@@ -51,11 +51,12 @@ public enum VSubmenuOnlineLobby implements IVSubmenu<CSubmenuOnlineLobby>, IOnli
}
public void reset() {
onClosing(null);
if (onClosing(null)) {
this.client = null;
this.lobby = null;
populate();
}
}
public void setClient(final FGameClient client) {
this.client = client;

View File

@@ -2,8 +2,8 @@ Name:Tsabo's Decree
ManaCost:5 B
Types:Instant
A:SP$ ChooseType | Cost$ 5 B | Defined$ You | Type$ Creature | SubAbility$ TsabosDiscard | StackDescription$ None | SpellDescription$ Choose a creature type. Target player reveals their hand and discards all creature cards of that type. Then destroy all creatures of that type that player controls. They can't be regenerated.
SVar:TsabosDiscard:DB$ Discard | ValidTgts$ Player | ForgetOtherTargets$ True | RememberTargets$ True | RememberDiscarder$ True | Mode$ RevealDiscardAll | DiscardValid$ Creature.ChosenType | SubAbility$ TsabosDestroy
SVar:TsabosDestroy:DB$ DestroyAll | ValidCards$ Creature.ChosenType+RememberedPlayerCtrl | NoRegen$ True
SVar:TsabosDiscard:DB$ Discard | ValidTgts$ Player | Mode$ RevealDiscardAll | DiscardValid$ Creature.ChosenType | SubAbility$ TsabosDestroy
SVar:TsabosDestroy:DB$ DestroyAll | ValidCards$ Creature.ChosenType+TargetedPlayerCtrl | NoRegen$ True
AI:RemoveDeck:All
SVar:Picture:http://www.wizards.com/global/images/magic/general/tsabos_decree.jpg
Oracle:Choose a creature type. Target player reveals their hand and discards all creature cards of that type. Then destroy all creatures of that type that player controls. They can't be regenerated.