mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 20:28:00 +00:00
Fix Card Display on Network Client
Adventure, Flip, Transform, Manifest, Morph etc display properly on Client Side (fix #159) Also Fix Aura Display I don't encounter issue #512 anyomre but I leave it open (limited testing)
This commit is contained in:
@@ -361,6 +361,21 @@ public class FControlGameEventHandler extends IGameEventVisitor.Base<Void> {
|
||||
return processCards(event.blockers, cardsUpdate);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Void visit(final GameEventCombatUpdate event) {
|
||||
if (!GuiBase.isNetworkplay())
|
||||
return null; //not needed if single player only...
|
||||
|
||||
final CardCollection cards = new CardCollection();
|
||||
cards.addAll(event.attackers);
|
||||
cards.addAll(event.blockers);
|
||||
|
||||
refreshFieldUpdate = true;
|
||||
|
||||
processCards(cards, cardsRefreshDetails);
|
||||
return processCards(cards, cardsUpdate);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Void visit(final GameEventCardChangeZone event) {
|
||||
if(GuiBase.getInterface().isLibgdxPort()) {
|
||||
@@ -373,6 +388,7 @@ public class FControlGameEventHandler extends IGameEventVisitor.Base<Void> {
|
||||
|
||||
@Override
|
||||
public Void visit(final GameEventCardStatsChanged event) {
|
||||
refreshFieldUpdate = true;
|
||||
processCards(event.cards, cardsRefreshDetails);
|
||||
return processCards(event.cards, cardsUpdate);
|
||||
}
|
||||
@@ -397,6 +413,7 @@ public class FControlGameEventHandler extends IGameEventVisitor.Base<Void> {
|
||||
|
||||
@Override
|
||||
public Void visit(final GameEventTokenStateUpdate event) {
|
||||
refreshFieldUpdate = true;
|
||||
processCards(event.cards, cardsRefreshDetails);
|
||||
return processCards(event.cards, cardsUpdate);
|
||||
}
|
||||
|
||||
@@ -26,6 +26,7 @@ import forge.game.card.CardPredicates.Presets;
|
||||
import forge.game.combat.AttackingBand;
|
||||
import forge.game.combat.Combat;
|
||||
import forge.game.combat.CombatUtil;
|
||||
import forge.game.event.GameEventCombatUpdate;
|
||||
import forge.game.keyword.Keyword;
|
||||
import forge.game.player.Player;
|
||||
import forge.game.player.PlayerView;
|
||||
@@ -335,6 +336,9 @@ public class InputAttack extends InputSyncronizedBase {
|
||||
|
||||
updatePrompt();
|
||||
|
||||
if (combat != null)
|
||||
getController().getGame().fireEvent(new GameEventCombatUpdate(combat.getAttackers(), combat.getAllBlockers()));
|
||||
|
||||
getController().getGui().showCombat(); // redraw sword icons
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,6 +26,7 @@ import forge.game.card.CardView;
|
||||
import forge.game.combat.Combat;
|
||||
import forge.game.combat.CombatUtil;
|
||||
import forge.game.event.GameEventCombatChanged;
|
||||
import forge.game.event.GameEventCombatUpdate;
|
||||
import forge.game.player.Player;
|
||||
import forge.game.zone.ZoneType;
|
||||
import forge.player.PlayerControllerHuman;
|
||||
@@ -89,6 +90,9 @@ public class InputBlock extends InputSyncronizedBase {
|
||||
showMessage(message);
|
||||
}
|
||||
|
||||
if (combat != null)
|
||||
getController().getGame().fireEvent(new GameEventCombatUpdate(combat.getAttackers(), combat.getAllBlockers()));
|
||||
|
||||
getController().getGui().showCombat();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user