mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 19:58:00 +00:00
Small fixes
This commit is contained in:
@@ -82,7 +82,7 @@ public class ReplaceManaEffect extends SpellAbilityEffect {
|
|||||||
|
|
||||||
// need to log Updated events there, or the log is wrong order
|
// need to log Updated events there, or the log is wrong order
|
||||||
String message = sa.getReplacementEffect().toString();
|
String message = sa.getReplacementEffect().toString();
|
||||||
if ( !StringUtils.isEmpty(message)) {
|
if (!StringUtils.isEmpty(message)) {
|
||||||
message = TextUtil.fastReplace(message, "CARDNAME", card.getName());
|
message = TextUtil.fastReplace(message, "CARDNAME", card.getName());
|
||||||
game.getGameLog().add(GameLogEntryType.EFFECT_REPLACED, message);
|
game.getGameLog().add(GameLogEntryType.EFFECT_REPLACED, message);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1086,7 +1086,7 @@ public class CardView extends GameEntityView {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public CardTypeView getType() {
|
public CardTypeView getType() {
|
||||||
if (isFaceDown() && !isInZone(EnumSet.of(ZoneType.Battlefield, ZoneType.Stack))) {
|
if (getState() != CardStateName.Original && isFaceDown() && !isInZone(EnumSet.of(ZoneType.Battlefield, ZoneType.Stack))) {
|
||||||
return CardType.EMPTY;
|
return CardType.EMPTY;
|
||||||
}
|
}
|
||||||
return get(TrackableProperty.Type);
|
return get(TrackableProperty.Type);
|
||||||
|
|||||||
@@ -31,7 +31,6 @@ public class ReplaceProduceMana extends ReplacementEffect {
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public boolean canReplace(Map<AbilityKey, Object> runParams) {
|
public boolean canReplace(Map<AbilityKey, Object> runParams) {
|
||||||
|
|
||||||
if (!matchesValidParam("ValidCard", runParams.get(AbilityKey.Affected))) {
|
if (!matchesValidParam("ValidCard", runParams.get(AbilityKey.Affected))) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -195,7 +195,6 @@ public class SpellAbilityRestriction extends SpellAbilityVariables {
|
|||||||
* @return a boolean.
|
* @return a boolean.
|
||||||
*/
|
*/
|
||||||
public final boolean checkZoneRestrictions(final Card c, final SpellAbility sa) {
|
public final boolean checkZoneRestrictions(final Card c, final SpellAbility sa) {
|
||||||
|
|
||||||
final Player activator = sa.getActivatingPlayer();
|
final Player activator = sa.getActivatingPlayer();
|
||||||
final Zone cardZone = c.getLastKnownZone();
|
final Zone cardZone = c.getLastKnownZone();
|
||||||
Card cp = c;
|
Card cp = c;
|
||||||
|
|||||||
@@ -366,7 +366,6 @@ public class TargetRestrictions {
|
|||||||
return this.saValidTargeting;
|
return this.saValidTargeting;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
* canOnlyTgtOpponent.
|
* canOnlyTgtOpponent.
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ Name:Saprazzan Breaker
|
|||||||
ManaCost:4 U
|
ManaCost:4 U
|
||||||
Types:Creature Beast
|
Types:Creature Beast
|
||||||
PT:3/3
|
PT:3/3
|
||||||
A:AB$ Dig | Cost$ U | DigNum$ 1 | Reveal$ True | ChangeNum$ All | RememberRevealed$ True | DestinationZone$ Graveyard | SubAbility$ DBPump | SpellDescription$ Mill a card. If a land card was milled this way, CARDNAME can't be blocked this turn.
|
A:AB$ Mill | Cost$ U | Defined$ You | NumCards$ 1 | RememberMilled$ True | SubAbility$ DBPump | SpellDescription$ Mill a card. If a land card was milled this way, CARDNAME can't be blocked this turn.
|
||||||
SVar:DBPump:DB$ Pump | Defined$ Self | KW$ HIDDEN Unblockable | ConditionDefined$ Remembered | ConditionPresent$ Card.Land | ConditionCompare$ EQ1 | SubAbility$ DBCleanup
|
SVar:DBPump:DB$ Pump | Defined$ Self | KW$ HIDDEN Unblockable | ConditionDefined$ Remembered | ConditionPresent$ Card.Land | ConditionCompare$ EQ1 | SubAbility$ DBCleanup
|
||||||
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
|
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
|
||||||
AI:RemoveDeck:All
|
AI:RemoveDeck:All
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
Name:Spectral Deluge
|
Name:Spectral Deluge
|
||||||
ManaCost:4 U U
|
ManaCost:4 U U
|
||||||
Types:Sorcery
|
Types:Sorcery
|
||||||
A:SP$ ChangeZoneAll | Cost$ 4 U U | ChangeType$ Creature.toughnessLEX+OppCtrl | Origin$ Battlefield | Destination$ Hand | TriggerDescription$ Return each creature your opponents control with toughness X or less to its owner's hand, where X is the number of Islands you control.
|
A:SP$ ChangeZoneAll | Cost$ 4 U U | ChangeType$ Creature.toughnessLEX+OppCtrl | Origin$ Battlefield | Destination$ Hand | SpellDescription$ Return each creature your opponents control with toughness X or less to its owner's hand, where X is the number of Islands you control.
|
||||||
SVar:X:Count$Valid Island.YouCtrl
|
SVar:X:Count$Valid Island.YouCtrl
|
||||||
K:Foretell:1 U U
|
K:Foretell:1 U U
|
||||||
Oracle:Return each creature your opponents control with toughness X or less to its owner's hand, where X is the number of Islands you control.\nForetell {1}{U}{U} (During your turn, you may pay {2} and exile this card from your hand face down. Cast it on a later turn for its foretell cost.)
|
Oracle:Return each creature your opponents control with toughness X or less to its owner's hand, where X is the number of Islands you control.\nForetell {1}{U}{U} (During your turn, you may pay {2} and exile this card from your hand face down. Cast it on a later turn for its foretell cost.)
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ bg_1_1_insect | TokenOwne
|
|||||||
SVar:DBMill:DB$ Mill | Defined$ You | NumCards$ 1 | RememberMilled$ True | SubAbility$ DBPutCounter
|
SVar:DBMill:DB$ Mill | Defined$ You | NumCards$ 1 | RememberMilled$ True | SubAbility$ DBPutCounter
|
||||||
SVar:DBPutCounter:DB$PutCounter | Defined$ Self | CounterType$ LOYALTY | CounterNum$ 1 | ConditionDefined$ Remembered | ConditionPresent$ Card.Insect | ConditionCompare$ EQ1
|
SVar:DBPutCounter:DB$PutCounter | Defined$ Self | CounterType$ LOYALTY | CounterNum$ 1 | ConditionDefined$ Remembered | ConditionPresent$ Card.Insect | ConditionCompare$ EQ1
|
||||||
SVar:MaxRepeats:Count$InYourLibrary
|
SVar:MaxRepeats:Count$InYourLibrary
|
||||||
SVar:MilledInsect:RememberedLKI$Valid Card.Insect
|
SVar:MilledInsect:Remembered$Valid Card.Insect
|
||||||
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
|
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
|
||||||
A:AB$ ImmediateTrigger | Cost$ SubCounter<2/LOYALTY> | Planeswalker$ True | Execute$ TrigDestroy | UnlessCost$ Sac<1/Creature> | UnlessPayer$ You | UnlessSwitched$ True | SpellDescription$ You may sacrifice a creature. When you do, destroy target creature or planeswalker.
|
A:AB$ ImmediateTrigger | Cost$ SubCounter<2/LOYALTY> | Planeswalker$ True | Execute$ TrigDestroy | UnlessCost$ Sac<1/Creature> | UnlessPayer$ You | UnlessSwitched$ True | SpellDescription$ You may sacrifice a creature. When you do, destroy target creature or planeswalker.
|
||||||
SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature,Planeswalker | TgtPrompt$ Select target creature or planeswalker
|
SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature,Planeswalker | TgtPrompt$ Select target creature or planeswalker
|
||||||
|
|||||||
@@ -2,6 +2,6 @@ Name:Moderation
|
|||||||
ManaCost:1 W U
|
ManaCost:1 W U
|
||||||
Types:Enchantment
|
Types:Enchantment
|
||||||
S:Mode$ CantBeCast | ValidCard$ Card | Caster$ You | NumLimitEachTurn$ 1 | Description$ You can't cast more than one spell each turn.
|
S:Mode$ CantBeCast | ValidCard$ Card | Caster$ You | NumLimitEachTurn$ 1 | Description$ You can't cast more than one spell each turn.
|
||||||
T:Mode$ SpellCast | ValidActivatingPlayer$ You | Execute$ TrigDraw | TriggerDescription$ Whenever you cast a spell, draw a card.
|
T:Mode$ SpellCast | ValidActivatingPlayer$ You | Execute$ TrigDraw | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a spell, draw a card.
|
||||||
SVar:TrigDraw:DB$ Draw | NumCards$ 1
|
SVar:TrigDraw:DB$ Draw | NumCards$ 1
|
||||||
Oracle:You can't cast more than one spell each turn.\nWhenever you cast a spell, draw a card.
|
Oracle:You can't cast more than one spell each turn.\nWhenever you cast a spell, draw a card.
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ Types:Creature Merfolk Wizard
|
|||||||
PT:1/1
|
PT:1/1
|
||||||
K:Kicker:1
|
K:Kicker:1
|
||||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigAnimate | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked, target land becomes an Island for as long as CARDNAME remains on the battlefield.
|
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigAnimate | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked, target land becomes an Island for as long as CARDNAME remains on the battlefield.
|
||||||
S:Mode$ Continuous | Affected$ Card.Self | AddPower$ 1 | AddToughness$ 1 | CheckSVar$ X | SVarCompare$ GE1 | Description$ CARDNAME gets +1/+1 as long as an opponent controls an Island.
|
S:Mode$ Continuous | Affected$ Card.Self | AddPower$ 1 | AddToughness$ 1 | IsPresent$ Island.OppCtrl | Description$ CARDNAME gets +1/+1 as long as an opponent controls an Island.
|
||||||
SVar:X:Count$Valid Island.OppCtrl
|
|
||||||
SVar:TrigAnimate:DB$ Animate | ValidTgts$ Land | AITgts$ Land.OppCtrl | Types$ Island | RemoveLandTypes$ True | Duration$ UntilHostLeavesPlay | IsCurse$ True
|
SVar:TrigAnimate:DB$ Animate | ValidTgts$ Land | AITgts$ Land.OppCtrl | Types$ Island | RemoveLandTypes$ True | Duration$ UntilHostLeavesPlay | IsCurse$ True
|
||||||
Oracle:Kicker {1} (You may pay an additional {1} as you cast this spell.)\nWhen Tide Shaper enters the battlefield, if it was kicked, target land becomes an Island for as long as Tide Shaper remains on the battlefield.\nTide Shaper gets +1/+1 as long as an opponent controls an Island.
|
Oracle:Kicker {1} (You may pay an additional {1} as you cast this spell.)\nWhen Tide Shaper enters the battlefield, if it was kicked, target land becomes an Island for as long as Tide Shaper remains on the battlefield.\nTide Shaper gets +1/+1 as long as an opponent controls an Island.
|
||||||
|
|||||||
@@ -184,11 +184,11 @@ public abstract class AbstractGuiGame implements IGuiGame, IMayViewCards {
|
|||||||
if (!hasLocalPlayers()) {
|
if (!hasLocalPlayers()) {
|
||||||
return true; //if not in game, card can be shown
|
return true; //if not in game, card can be shown
|
||||||
}
|
}
|
||||||
if(GuiBase.getInterface().isLibgdxPort()){
|
if (GuiBase.getInterface().isLibgdxPort()){
|
||||||
if(gameView != null && gameView.isGameOver()) {
|
if (gameView != null && gameView.isGameOver()) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if(spectator!=null) { //workaround fix!! this is needed on above code or it will
|
if (spectator!=null) { //workaround fix!! this is needed on above code or it will
|
||||||
for (Map.Entry<PlayerView, IGameController> e : gameControllers.entrySet()) {
|
for (Map.Entry<PlayerView, IGameController> e : gameControllers.entrySet()) {
|
||||||
if (e.getValue().equals(spectator)) {
|
if (e.getValue().equals(spectator)) {
|
||||||
gameControllers.remove(e.getKey());
|
gameControllers.remove(e.getKey());
|
||||||
@@ -197,7 +197,7 @@ public abstract class AbstractGuiGame implements IGuiGame, IMayViewCards {
|
|||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
try{
|
try {
|
||||||
if (getGameController().mayLookAtAllCards()) { // when it bugged here, the game thinks the spectator (null)
|
if (getGameController().mayLookAtAllCards()) { // when it bugged here, the game thinks the spectator (null)
|
||||||
return true; // is the humancontroller here (maybe because there is an existing game thread???)
|
return true; // is the humancontroller here (maybe because there is an existing game thread???)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user