battlefield will be updated after any mana ability was played

This commit is contained in:
Maxmtg
2013-03-26 20:19:12 +00:00
parent 74aeac8b09
commit 1b6317c841
3 changed files with 5 additions and 5 deletions

View File

@@ -1,6 +1,5 @@
package forge.control.input;
import forge.gui.match.CMatchUI;
import forge.view.ButtonUtil;
/**

View File

@@ -306,7 +306,9 @@ public abstract class InputPayManaBase extends InputSyncronizedBase implements I
if ( saPaymentSrc != null) // null comes when they've paid from pool
this.manaCost = whoPays.getManaPool().payManaFromAbility(saPaidFor, manaCost, saPaymentSrc);
onManaAbilityPaid();
onManaAbilityPaid();
if ( saPaymentSrc != null )
whoPays.getZone(ZoneType.Battlefield).updateObservers();
}
protected final void checkIfAlredyPaid() {

View File

@@ -42,7 +42,6 @@ import forge.control.input.Input;
import forge.control.input.InputAttack;
import forge.control.input.InputBlock;
import forge.control.input.InputPayManaBase;
import forge.game.GameState;
import forge.game.phase.CombatUtil;
import forge.game.player.Player;
import forge.game.zone.PlayerZone;
@@ -143,6 +142,7 @@ public class CField implements ICDoc {
private final Observer observerPlay = new Observer() {
@Override
public void update(final Observable a, final Object b) {
//FThreads.checkEDT("observerPlay.update", true);
CField.this.view.getTabletop().setupPlayZone();
}
};
@@ -343,8 +343,7 @@ public class CField implements ICDoc {
if ( CField.this.player != CField.this.playerViewer )
return;
final GameState game = Singletons.getModel().getGame();
final SpellAbility ab = player.getController().getAbilityToPlay(game.getAbilitesOfCard(c, player));
final SpellAbility ab = player.getController().getAbilityToPlay(player.getGame().getAbilitesOfCard(c, player));
if ( null != ab) {
FThreads.invokeInNewThread(new Runnable(){ @Override public void run(){
player.playSpellAbility(c, ab);