mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-17 19:28:01 +00:00
All game.event.* named in a single fashion, more changes to come
This commit is contained in:
@@ -64,11 +64,11 @@ import forge.card.trigger.TriggerType;
|
||||
import forge.card.trigger.ZCTrigger;
|
||||
import forge.game.GameState;
|
||||
import forge.game.GlobalRuleChange;
|
||||
import forge.game.event.CardDamagedEvent;
|
||||
import forge.game.event.CardEquippedEvent;
|
||||
import forge.game.event.CounterAddedEvent;
|
||||
import forge.game.event.CounterRemovedEvent;
|
||||
import forge.game.event.SetTappedEvent;
|
||||
import forge.game.event.GameEventCardDamaged;
|
||||
import forge.game.event.GameEventCardEquipped;
|
||||
import forge.game.event.GameEventCounterAdded;
|
||||
import forge.game.event.GameEventCounterRemoved;
|
||||
import forge.game.event.GameEventCardTapped;
|
||||
import forge.game.phase.Combat;
|
||||
import forge.game.player.Player;
|
||||
import forge.game.zone.ZoneType;
|
||||
@@ -1154,7 +1154,7 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
}
|
||||
|
||||
// play the Add Counter sound
|
||||
getGame().getEvents().post(new CounterAddedEvent(addAmount));
|
||||
getGame().getEvents().post(new GameEventCounterAdded(addAmount));
|
||||
|
||||
this.updateObservers();
|
||||
}
|
||||
@@ -1235,7 +1235,7 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
}
|
||||
|
||||
// Play the Subtract Counter sound
|
||||
getGame().getEvents().post(new CounterRemovedEvent(delta));
|
||||
getGame().getEvents().post(new GameEventCounterRemoved(delta));
|
||||
|
||||
this.updateObservers();
|
||||
}
|
||||
@@ -3184,7 +3184,7 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
c.addEquippedBy(this);
|
||||
|
||||
// Play the Equip sound
|
||||
getGame().getEvents().post(new CardEquippedEvent());
|
||||
getGame().getEvents().post(new GameEventCardEquipped());
|
||||
// run trigger
|
||||
final HashMap<String, Object> runParams = new HashMap<String, Object>();
|
||||
runParams.put("AttachSource", this);
|
||||
@@ -4078,7 +4078,7 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
this.setTapped(true);
|
||||
|
||||
// Play the Tap sound
|
||||
getGame().getEvents().post(new SetTappedEvent(true));
|
||||
getGame().getEvents().post(new GameEventCardTapped(true));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -4094,7 +4094,7 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
getGame().getTriggerHandler().runTrigger(TriggerType.Untaps, runParams, false);
|
||||
|
||||
// Play the Untap sound
|
||||
getGame().getEvents().post(new SetTappedEvent(false));
|
||||
getGame().getEvents().post(new GameEventCardTapped(false));
|
||||
}
|
||||
|
||||
for (final Command var : this.untapCommandList) {
|
||||
@@ -7406,7 +7406,7 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
}
|
||||
|
||||
// Play the Damage sound
|
||||
game.getEvents().post(new CardDamagedEvent());
|
||||
game.getEvents().post(new GameEventCardDamaged());
|
||||
}
|
||||
|
||||
getGame().getGameLog().add(GameEventType.DAMAGE, String.format("Dealing %d damage to %s. %s", damageToAdd, this.getName(), additionalLog));
|
||||
|
||||
@@ -24,7 +24,7 @@ import java.util.List;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import com.google.common.eventbus.Subscribe;
|
||||
|
||||
import forge.game.event.Event;
|
||||
import forge.game.event.GameEvent;
|
||||
import forge.game.phase.Combat;
|
||||
import forge.util.MyObservable;
|
||||
|
||||
@@ -110,7 +110,7 @@ public class GameLog extends MyObservable {
|
||||
// Special methods
|
||||
|
||||
@Subscribe
|
||||
public void receiveGameEvent(Event ev) {
|
||||
public void receiveGameEvent(GameEvent ev) {
|
||||
GameLogEntry record = GameLogFormatter.logEvent(ev, this);
|
||||
if( null != record ) {
|
||||
add(record);
|
||||
|
||||
@@ -5,10 +5,10 @@ import java.util.List;
|
||||
import java.util.Map.Entry;
|
||||
|
||||
import forge.game.GameOutcome;
|
||||
import forge.game.event.DuelOutcomeEvent;
|
||||
import forge.game.event.Event;
|
||||
import forge.game.event.PhaseEvent;
|
||||
import forge.game.event.PlayerControlEvent;
|
||||
import forge.game.event.GameEventDuelOutcome;
|
||||
import forge.game.event.GameEvent;
|
||||
import forge.game.event.GameEventTurnPhase;
|
||||
import forge.game.event.GameEventPlayerControl;
|
||||
import forge.game.phase.Combat;
|
||||
import forge.game.phase.PhaseType;
|
||||
import forge.game.player.LobbyPlayer;
|
||||
@@ -19,13 +19,13 @@ import forge.util.Lang;
|
||||
public class GameLogFormatter {
|
||||
|
||||
// Some events produce several log entries. I've let them added into log directly
|
||||
static GameLogEntry logEvent(Event ev, GameLog log) {
|
||||
if(ev instanceof DuelOutcomeEvent) {
|
||||
return GameLogFormatter.fillOutcome(log, ((DuelOutcomeEvent) ev).result, ((DuelOutcomeEvent) ev).history );
|
||||
static GameLogEntry logEvent(GameEvent ev, GameLog log) {
|
||||
if(ev instanceof GameEventDuelOutcome) {
|
||||
return GameLogFormatter.fillOutcome(log, ((GameEventDuelOutcome) ev).result, ((GameEventDuelOutcome) ev).history );
|
||||
|
||||
} else if ( ev instanceof PlayerControlEvent ) {
|
||||
LobbyPlayer newController = ((PlayerControlEvent) ev).getNewController();
|
||||
Player p = ((PlayerControlEvent) ev).getPlayer();
|
||||
} else if ( ev instanceof GameEventPlayerControl ) {
|
||||
LobbyPlayer newController = ((GameEventPlayerControl) ev).newController;
|
||||
Player p = ((GameEventPlayerControl) ev).player;
|
||||
|
||||
final String message;
|
||||
if( newController == null )
|
||||
@@ -34,10 +34,10 @@ public class GameLogFormatter {
|
||||
message = String.format("%s is controlled by %s", p.getName(), newController.getName());
|
||||
|
||||
return new GameLogEntry(GameEventType.PLAYER_CONROL, message);
|
||||
} else if ( ev instanceof PhaseEvent ) {
|
||||
Player p = ((PhaseEvent) ev).playerTurn;
|
||||
PhaseType ph = ((PhaseEvent) ev).phase;
|
||||
return new GameLogEntry(GameEventType.PHASE, ((PhaseEvent) ev).phaseDesc + Lang.getPossesive(p.getName()) + " " + ph.nameForUi);
|
||||
} else if ( ev instanceof GameEventTurnPhase ) {
|
||||
Player p = ((GameEventTurnPhase) ev).playerTurn;
|
||||
PhaseType ph = ((GameEventTurnPhase) ev).phase;
|
||||
return new GameLogEntry(GameEventType.PHASE, ((GameEventTurnPhase) ev).phaseDesc + Lang.getPossesive(p.getName()) + " " + ph.nameForUi);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ import forge.card.ability.SpellAbilityEffect;
|
||||
import forge.card.spellability.AbilitySub;
|
||||
import forge.card.spellability.SpellAbility;
|
||||
import forge.card.trigger.TriggerType;
|
||||
import forge.game.event.FlipCoinEvent;
|
||||
import forge.game.event.GameEventFlipCoin;
|
||||
import forge.game.player.Player;
|
||||
import forge.gui.GuiDialog;
|
||||
import forge.util.MyRandom;
|
||||
@@ -131,7 +131,7 @@ public class FlipCoinEffect extends SpellAbilityEffect {
|
||||
public static boolean flipCoinNoCall(final Card source, final Player flipper) {
|
||||
final boolean resultIsHeads = MyRandom.getRandom().nextBoolean();
|
||||
|
||||
flipper.getGame().getEvents().post(new FlipCoinEvent());
|
||||
flipper.getGame().getEvents().post(new GameEventFlipCoin());
|
||||
final StringBuilder result = new StringBuilder();
|
||||
result.append(flipper.getName());
|
||||
result.append("'s flip comes up");
|
||||
|
||||
@@ -31,7 +31,7 @@ import forge.card.spellability.SpellAbility;
|
||||
import forge.card.trigger.Trigger;
|
||||
import forge.card.trigger.TriggerHandler;
|
||||
import forge.game.GameState;
|
||||
import forge.game.event.TokenCreatedEvent;
|
||||
import forge.game.event.GameEventTokenCreated;
|
||||
import forge.game.player.Player;
|
||||
import forge.gui.GuiChoose;
|
||||
import forge.item.CardToken;
|
||||
@@ -209,7 +209,7 @@ public class TokenEffect extends SpellAbilityEffect {
|
||||
for(Card tok : tokens) {
|
||||
controller.getGame().getAction().moveToPlay(tok);
|
||||
}
|
||||
controller.getGame().getEvents().post(new TokenCreatedEvent());
|
||||
controller.getGame().getEvents().post(new GameEventTokenCreated());
|
||||
|
||||
// Grant rule changes
|
||||
if (this.tokenHiddenKeywords != null) {
|
||||
|
||||
@@ -43,11 +43,11 @@ import forge.control.KeyboardShortcuts.Shortcut;
|
||||
import forge.control.input.InputQueue;
|
||||
import forge.game.GameState;
|
||||
import forge.game.ai.AiProfileUtil;
|
||||
import forge.game.event.CardsAntedEvent;
|
||||
import forge.game.event.DuelFinishedEvent;
|
||||
import forge.game.event.Event;
|
||||
import forge.game.event.PhaseEvent;
|
||||
import forge.game.event.PlayerControlEvent;
|
||||
import forge.game.event.GameEventCardsAnted;
|
||||
import forge.game.event.GameEventDuelFinished;
|
||||
import forge.game.event.GameEvent;
|
||||
import forge.game.event.GameEventTurnPhase;
|
||||
import forge.game.event.GameEventPlayerControl;
|
||||
import forge.game.phase.PhaseType;
|
||||
import forge.game.phase.PhaseUtil;
|
||||
import forge.game.player.LobbyPlayer;
|
||||
@@ -417,23 +417,23 @@ public enum FControl {
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
public void receiveGameEvent(final Event ev) {
|
||||
public void receiveGameEvent(final GameEvent ev) {
|
||||
|
||||
if( ev instanceof DuelFinishedEvent ) {
|
||||
if( ev instanceof GameEventDuelFinished ) {
|
||||
FThreads.invokeInEdtNowOrLater(new Runnable() { @Override public void run() {
|
||||
getInputQueue().onGameOver();
|
||||
new ViewWinLose(game.getMatch());
|
||||
SOverlayUtils.showOverlay();
|
||||
} });
|
||||
} else if ( ev instanceof CardsAntedEvent ) {
|
||||
} else if ( ev instanceof GameEventCardsAnted ) {
|
||||
// Require EDT here?
|
||||
final String nl = System.getProperty("line.separator");
|
||||
final StringBuilder msg = new StringBuilder();
|
||||
for (final Pair<Player, Card> kv : ((CardsAntedEvent) ev).cards) {
|
||||
for (final Pair<Player, Card> kv : ((GameEventCardsAnted) ev).cards) {
|
||||
msg.append(kv.getKey().getName()).append(" ante: ").append(kv.getValue()).append(nl);
|
||||
}
|
||||
GuiDialog.message(msg.toString(), "Ante");
|
||||
} else if ( ev instanceof PlayerControlEvent ) {
|
||||
} else if ( ev instanceof GameEventPlayerControl ) {
|
||||
FThreads.invokeInEdtNowOrLater(new Runnable() { @Override public void run() {
|
||||
CMatchUI.SINGLETON_INSTANCE.initHandViews(getLobby().getGuiPlayer());
|
||||
VMatchUI.SINGLETON_INSTANCE.populate();
|
||||
@@ -441,10 +441,10 @@ public enum FControl {
|
||||
h.getLayoutControl().updateHand();
|
||||
}
|
||||
} });
|
||||
} else if ( ev instanceof PhaseEvent ) {
|
||||
} else if ( ev instanceof GameEventTurnPhase ) {
|
||||
FThreads.invokeInEdtNowOrLater(new Runnable() { @Override public void run() {
|
||||
Player p = ((PhaseEvent) ev).playerTurn;
|
||||
PhaseType ph = ((PhaseEvent) ev).phase;
|
||||
Player p = ((GameEventTurnPhase) ev).playerTurn;
|
||||
PhaseType ph = ((GameEventTurnPhase) ev).phase;
|
||||
PhaseUtil.visuallyActivatePhase(p, ph);
|
||||
} });
|
||||
}
|
||||
|
||||
@@ -59,9 +59,9 @@ import forge.card.trigger.TriggerType;
|
||||
import forge.card.trigger.ZCTrigger;
|
||||
import forge.game.ai.ComputerUtil;
|
||||
import forge.game.ai.ComputerUtilCost;
|
||||
import forge.game.event.CardDestroyedEvent;
|
||||
import forge.game.event.CardRegeneratedEvent;
|
||||
import forge.game.event.CardSacrificedEvent;
|
||||
import forge.game.event.GameEventCardDestroyed;
|
||||
import forge.game.event.GameEventCardRegenerated;
|
||||
import forge.game.event.GameEventCardSacrificed;
|
||||
import forge.game.player.GameLossReason;
|
||||
import forge.game.player.HumanPlay;
|
||||
import forge.game.player.Player;
|
||||
@@ -1110,7 +1110,7 @@ public class GameAction {
|
||||
if (c.getCounters(CounterType.LOYALTY) <= 0) {
|
||||
moveToGraveyard(c);
|
||||
// Play the Destroy sound
|
||||
game.getEvents().post(new CardDestroyedEvent());
|
||||
game.getEvents().post(new GameEventCardDestroyed());
|
||||
recheck = true;
|
||||
}
|
||||
|
||||
@@ -1164,7 +1164,7 @@ public class GameAction {
|
||||
}
|
||||
recheck = true;
|
||||
// Play the Destroy sound
|
||||
game.getEvents().post(new CardDestroyedEvent());
|
||||
game.getEvents().post(new GameEventCardDestroyed());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1179,7 +1179,7 @@ public class GameAction {
|
||||
this.sacrificeDestroy(c);
|
||||
|
||||
// Play the Sacrifice sound
|
||||
game.getEvents().post(new CardSacrificedEvent());
|
||||
game.getEvents().post(new GameEventCardSacrificed());
|
||||
|
||||
// Run triggers
|
||||
final HashMap<String, Object> runParams = new HashMap<String, Object>();
|
||||
@@ -1211,7 +1211,7 @@ public class GameAction {
|
||||
game.getCombat().removeFromCombat(c);
|
||||
|
||||
// Play the Regen sound
|
||||
game.getEvents().post(new CardRegeneratedEvent());
|
||||
game.getEvents().post(new GameEventCardRegenerated());
|
||||
|
||||
return false;
|
||||
}
|
||||
@@ -1263,7 +1263,7 @@ public class GameAction {
|
||||
card.setDamage(0);
|
||||
|
||||
// Play the Destroy sound
|
||||
game.getEvents().post(new CardDestroyedEvent());
|
||||
game.getEvents().post(new GameEventCardDestroyed());
|
||||
}
|
||||
};
|
||||
|
||||
@@ -1280,7 +1280,7 @@ public class GameAction {
|
||||
}
|
||||
|
||||
// Play the Destroy sound
|
||||
game.getEvents().post(new CardDestroyedEvent());
|
||||
game.getEvents().post(new GameEventCardDestroyed());
|
||||
// Run triggers
|
||||
final HashMap<String, Object> runParams = new HashMap<String, Object>();
|
||||
runParams.put("Card", c);
|
||||
|
||||
@@ -9,10 +9,10 @@ import com.google.common.collect.Lists;
|
||||
|
||||
import forge.Card;
|
||||
import forge.Singletons;
|
||||
import forge.game.event.CardsAntedEvent;
|
||||
import forge.game.event.DuelFinishedEvent;
|
||||
import forge.game.event.DuelOutcomeEvent;
|
||||
import forge.game.event.FlipCoinEvent;
|
||||
import forge.game.event.GameEventCardsAnted;
|
||||
import forge.game.event.GameEventDuelFinished;
|
||||
import forge.game.event.GameEventDuelOutcome;
|
||||
import forge.game.event.GameEventFlipCoin;
|
||||
import forge.game.player.LobbyPlayer;
|
||||
import forge.game.player.Player;
|
||||
import forge.properties.ForgePreferences.FPref;
|
||||
@@ -88,10 +88,10 @@ public class MatchState {
|
||||
gamesPlayed.add(result);
|
||||
|
||||
// The log shall listen to events and generate text internally
|
||||
game.getEvents().post(new DuelOutcomeEvent(result, gamesPlayedRo));
|
||||
game.getEvents().post(new GameEventDuelOutcome(result, gamesPlayedRo));
|
||||
|
||||
// will pull UI
|
||||
game.getEvents().post(new DuelFinishedEvent());
|
||||
game.getEvents().post(new GameEventDuelFinished());
|
||||
}
|
||||
|
||||
|
||||
@@ -110,7 +110,7 @@ public class MatchState {
|
||||
if (useAnte) { // Deciding which cards go to ante
|
||||
List<Pair<Player, Card>> list = GameNew.chooseCardsForAnte(currentGame);
|
||||
GameNew.moveCardsToAnte(list);
|
||||
currentGame.getEvents().post(new CardsAntedEvent(list));
|
||||
currentGame.getEvents().post(new GameEventCardsAnted(list));
|
||||
}
|
||||
|
||||
// This code was run from EDT.
|
||||
@@ -229,7 +229,7 @@ public class MatchState {
|
||||
|
||||
boolean isFirstGame = lastGameOutcome == null;
|
||||
if (isFirstGame) {
|
||||
game.getEvents().post(new FlipCoinEvent()); // Play the Flip Coin sound
|
||||
game.getEvents().post(new GameEventFlipCoin()); // Play the Flip Coin sound
|
||||
goesFirst = Aggregates.random(game.getPlayers());
|
||||
} else {
|
||||
for(Player p : game.getPlayers()) {
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class BlockerAssignedEvent extends Event {
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class CardDamagedEvent extends Event {
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class CardDestroyedEvent extends Event {
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class CardDiscardedEvent extends Event {
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class CardEquippedEvent extends Event {
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class CardRegeneratedEvent extends Event {
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class CardSacrificedEvent extends Event {
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class CounterAddedEvent extends Event {
|
||||
public final int Amount;
|
||||
|
||||
public CounterAddedEvent(int n) {
|
||||
Amount = n;
|
||||
}
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
*/
|
||||
public class CounterRemovedEvent extends Event {
|
||||
public final int Amount;
|
||||
|
||||
public CounterRemovedEvent(int n) {
|
||||
Amount = n;
|
||||
}
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class DrawCardEvent extends Event {
|
||||
}
|
||||
@@ -1,3 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class DuelFinishedEvent extends Event {} // need this class to launch after log was built via previous event
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class EndOfTurnEvent extends Event {
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public abstract class Event {
|
||||
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class FlipCoinEvent extends Event {
|
||||
}
|
||||
5
src/main/java/forge/game/event/GameEvent.java
Normal file
5
src/main/java/forge/game/event/GameEvent.java
Normal file
@@ -0,0 +1,5 @@
|
||||
package forge.game.event;
|
||||
|
||||
public abstract class GameEvent {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventBlockerAssigned extends GameEvent {
|
||||
}
|
||||
4
src/main/java/forge/game/event/GameEventCardDamaged.java
Normal file
4
src/main/java/forge/game/event/GameEventCardDamaged.java
Normal file
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventCardDamaged extends GameEvent {
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventCardDestroyed extends GameEvent {
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventCardDiscarded extends GameEvent {
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventCardEquipped extends GameEvent {
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventCardRegenerated extends GameEvent {
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventCardSacrificed extends GameEvent {
|
||||
}
|
||||
9
src/main/java/forge/game/event/GameEventCardTapped.java
Normal file
9
src/main/java/forge/game/event/GameEventCardTapped.java
Normal file
@@ -0,0 +1,9 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventCardTapped extends GameEvent {
|
||||
public final boolean Tapped;
|
||||
|
||||
public GameEventCardTapped(boolean tapped) {
|
||||
Tapped = tapped;
|
||||
}
|
||||
}
|
||||
@@ -5,9 +5,9 @@ import org.apache.commons.lang3.tuple.Pair;
|
||||
import forge.Card;
|
||||
import forge.game.player.Player;
|
||||
|
||||
public class CardsAntedEvent extends Event {
|
||||
public class GameEventCardsAnted extends GameEvent {
|
||||
public final Iterable<Pair<Player,Card>> cards;
|
||||
public CardsAntedEvent(Iterable<Pair<Player,Card>> cardz) {
|
||||
public GameEventCardsAnted(Iterable<Pair<Player,Card>> cardz) {
|
||||
cards = cardz;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventCounterAdded extends GameEvent {
|
||||
public final int Amount;
|
||||
|
||||
public GameEventCounterAdded(int n) {
|
||||
Amount = n;
|
||||
}
|
||||
}
|
||||
13
src/main/java/forge/game/event/GameEventCounterRemoved.java
Normal file
13
src/main/java/forge/game/event/GameEventCounterRemoved.java
Normal file
@@ -0,0 +1,13 @@
|
||||
package forge.game.event;
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
*/
|
||||
public class GameEventCounterRemoved extends GameEvent {
|
||||
public final int Amount;
|
||||
|
||||
public GameEventCounterRemoved(int n) {
|
||||
Amount = n;
|
||||
}
|
||||
}
|
||||
4
src/main/java/forge/game/event/GameEventDrawCard.java
Normal file
4
src/main/java/forge/game/event/GameEventDrawCard.java
Normal file
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventDrawCard extends GameEvent {
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventDuelFinished extends GameEvent {} // need this class to launch after log was built via previous event
|
||||
@@ -4,11 +4,11 @@ import java.util.List;
|
||||
|
||||
import forge.game.GameOutcome;
|
||||
|
||||
public class DuelOutcomeEvent extends Event {
|
||||
public class GameEventDuelOutcome extends GameEvent {
|
||||
public final GameOutcome result;
|
||||
public final List<GameOutcome> history;
|
||||
|
||||
public DuelOutcomeEvent(GameOutcome lastOne, List<GameOutcome> history) {
|
||||
public GameEventDuelOutcome(GameOutcome lastOne, List<GameOutcome> history) {
|
||||
this.result = lastOne;
|
||||
this.history = history;
|
||||
}
|
||||
4
src/main/java/forge/game/event/GameEventEndOfTurn.java
Normal file
4
src/main/java/forge/game/event/GameEventEndOfTurn.java
Normal file
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventEndOfTurn extends GameEvent {
|
||||
}
|
||||
4
src/main/java/forge/game/event/GameEventFlipCoin.java
Normal file
4
src/main/java/forge/game/event/GameEventFlipCoin.java
Normal file
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventFlipCoin extends GameEvent {
|
||||
}
|
||||
@@ -6,11 +6,11 @@ import forge.game.player.Player;
|
||||
* TODO: Write javadoc for this type.
|
||||
*
|
||||
*/
|
||||
public class GameRestartedEvent extends Event {
|
||||
public class GameEventGameRestarted extends GameEvent {
|
||||
|
||||
public final Player whoRestarted;
|
||||
|
||||
public GameRestartedEvent(Player playerTurn) {
|
||||
public GameEventGameRestarted(Player playerTurn) {
|
||||
whoRestarted = playerTurn;
|
||||
}
|
||||
|
||||
@@ -3,12 +3,12 @@ package forge.game.event;
|
||||
import forge.Card;
|
||||
import forge.game.player.Player;
|
||||
|
||||
public class LandPlayedEvent extends Event {
|
||||
public class GameEventLandPlayed extends GameEvent {
|
||||
|
||||
public final Player Player;
|
||||
public final Card Land;
|
||||
|
||||
public LandPlayedEvent(Player player, Card land) {
|
||||
public GameEventLandPlayed(Player player, Card land) {
|
||||
Player = player;
|
||||
Land = land;
|
||||
|
||||
4
src/main/java/forge/game/event/GameEventLifeLoss.java
Normal file
4
src/main/java/forge/game/event/GameEventLifeLoss.java
Normal file
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventLifeLoss extends GameEvent {
|
||||
}
|
||||
4
src/main/java/forge/game/event/GameEventManaBurn.java
Normal file
4
src/main/java/forge/game/event/GameEventManaBurn.java
Normal file
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventManaBurn extends GameEvent {
|
||||
}
|
||||
@@ -6,10 +6,10 @@ import forge.game.player.Player;
|
||||
* TODO: Write javadoc for this type.
|
||||
*
|
||||
*/
|
||||
public class MulliganEvent extends Event {
|
||||
public class GameEventMulligan extends GameEvent {
|
||||
|
||||
public final Player player;
|
||||
public MulliganEvent(Player p) {
|
||||
public GameEventMulligan(Player p) {
|
||||
player = p;
|
||||
}
|
||||
}
|
||||
16
src/main/java/forge/game/event/GameEventPlayerControl.java
Normal file
16
src/main/java/forge/game/event/GameEventPlayerControl.java
Normal file
@@ -0,0 +1,16 @@
|
||||
package forge.game.event;
|
||||
|
||||
import forge.game.player.LobbyPlayer;
|
||||
import forge.game.player.Player;
|
||||
|
||||
public class GameEventPlayerControl extends GameEvent {
|
||||
public final Player player;
|
||||
public final LobbyPlayer oldController;
|
||||
public final LobbyPlayer newController;
|
||||
|
||||
public GameEventPlayerControl(Player p, LobbyPlayer old, LobbyPlayer new1) {
|
||||
player = p;
|
||||
oldController = old;
|
||||
newController = new1;
|
||||
}
|
||||
}
|
||||
@@ -7,18 +7,18 @@ import forge.game.player.Player;
|
||||
*
|
||||
*
|
||||
*/
|
||||
public class PoisonCounterEvent extends Event {
|
||||
public class GameEventPoisonCounter extends GameEvent {
|
||||
public final Player Receiver;
|
||||
public final Card Source;
|
||||
public final int Amount;
|
||||
|
||||
public PoisonCounterEvent(Player recv, Card src, int n) {
|
||||
public GameEventPoisonCounter(Player recv, Card src, int n) {
|
||||
Receiver = recv;
|
||||
Source = src;
|
||||
Amount = n;
|
||||
}
|
||||
|
||||
public PoisonCounterEvent(Player recv, Card src) {
|
||||
public GameEventPoisonCounter(Player recv, Card src) {
|
||||
this(recv, src, 1);
|
||||
}
|
||||
}
|
||||
4
src/main/java/forge/game/event/GameEventShuffle.java
Normal file
4
src/main/java/forge/game/event/GameEventShuffle.java
Normal file
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventShuffle extends GameEvent {
|
||||
}
|
||||
@@ -7,7 +7,7 @@ import forge.card.spellability.SpellAbility;
|
||||
* TODO: Write javadoc for this type.
|
||||
*
|
||||
*/
|
||||
public class SpellResolvedEvent extends Event {
|
||||
public class GameEventSpellResolved extends GameEvent {
|
||||
|
||||
public final Card Source;
|
||||
public final SpellAbility Spell;
|
||||
@@ -17,7 +17,7 @@ public class SpellResolvedEvent extends Event {
|
||||
* @param source
|
||||
* @param sa
|
||||
*/
|
||||
public SpellResolvedEvent(Card source, SpellAbility sa) {
|
||||
public GameEventSpellResolved(Card source, SpellAbility sa) {
|
||||
// TODO Auto-generated constructor stub
|
||||
Source = source;
|
||||
Spell = sa;
|
||||
@@ -0,0 +1,4 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class GameEventTokenCreated extends GameEvent {
|
||||
}
|
||||
@@ -7,13 +7,13 @@ import forge.game.player.Player;
|
||||
* TODO: Write javadoc for this type.
|
||||
*
|
||||
*/
|
||||
public class PhaseEvent extends Event {
|
||||
public class GameEventTurnPhase extends GameEvent {
|
||||
|
||||
public final Player playerTurn;
|
||||
public final PhaseType phase;
|
||||
public final String phaseDesc;
|
||||
|
||||
public PhaseEvent(Player player, PhaseType ph, String desc) {
|
||||
public GameEventTurnPhase(Player player, PhaseType ph, String desc) {
|
||||
playerTurn = player;
|
||||
phase = ph;
|
||||
phaseDesc = desc;
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class LifeLossEvent extends Event {
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class ManaBurnEvent extends Event {
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
import forge.game.player.LobbyPlayer;
|
||||
import forge.game.player.Player;
|
||||
|
||||
public class PlayerControlEvent extends Event {
|
||||
private final Player player;
|
||||
private final LobbyPlayer oldController;
|
||||
private final LobbyPlayer newController;
|
||||
|
||||
public PlayerControlEvent(Player p, LobbyPlayer old, LobbyPlayer new1) {
|
||||
player = p;
|
||||
oldController = old;
|
||||
newController = new1;
|
||||
}
|
||||
|
||||
public final Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
|
||||
public final LobbyPlayer getOldController() {
|
||||
return oldController;
|
||||
}
|
||||
|
||||
public final LobbyPlayer getNewController() {
|
||||
return newController;
|
||||
}
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class SetTappedEvent extends Event {
|
||||
public final boolean Tapped;
|
||||
|
||||
public SetTappedEvent(boolean tapped) {
|
||||
Tapped = tapped;
|
||||
}
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class ShuffleEvent extends Event {
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package forge.game.event;
|
||||
|
||||
public class TokenCreatedEvent extends Event {
|
||||
}
|
||||
@@ -33,7 +33,7 @@ import forge.CardLists;
|
||||
import forge.CardPredicates;
|
||||
import forge.GameEntity;
|
||||
import forge.card.trigger.TriggerType;
|
||||
import forge.game.event.BlockerAssignedEvent;
|
||||
import forge.game.event.GameEventBlockerAssigned;
|
||||
import forge.game.player.Player;
|
||||
import forge.game.zone.ZoneType;
|
||||
|
||||
@@ -374,7 +374,7 @@ public class Combat {
|
||||
} else {
|
||||
this.blockerMap.get(blocker).add(attacker);
|
||||
}
|
||||
attacker.getGame().getEvents().post(new BlockerAssignedEvent());
|
||||
attacker.getGame().getEvents().post(new GameEventBlockerAssigned());
|
||||
}
|
||||
|
||||
public final void removeBlockAssignment(final Card attacker, final Card blocker) {
|
||||
|
||||
@@ -33,10 +33,10 @@ import forge.card.trigger.TriggerType;
|
||||
import forge.game.GameAge;
|
||||
import forge.game.GameState;
|
||||
import forge.game.GameType;
|
||||
import forge.game.event.EndOfTurnEvent;
|
||||
import forge.game.event.GameRestartedEvent;
|
||||
import forge.game.event.ManaBurnEvent;
|
||||
import forge.game.event.PhaseEvent;
|
||||
import forge.game.event.GameEventEndOfTurn;
|
||||
import forge.game.event.GameEventGameRestarted;
|
||||
import forge.game.event.GameEventManaBurn;
|
||||
import forge.game.event.GameEventTurnPhase;
|
||||
import forge.game.player.Player;
|
||||
import forge.game.zone.ZoneType;
|
||||
import forge.gui.framework.SDisplayUtil;
|
||||
@@ -200,7 +200,7 @@ public class PhaseHandler extends MyObservable implements java.io.Serializable {
|
||||
game.getGameLog().add(GameEventType.TURN, "Turn " + this.turn + " (" + this.getPlayerTurn() + ")");
|
||||
}
|
||||
|
||||
game.getEvents().post(new PhaseEvent(this.getPlayerTurn(), this.getPhase(), phaseType));
|
||||
game.getEvents().post(new GameEventTurnPhase(this.getPlayerTurn(), this.getPhase(), phaseType));
|
||||
|
||||
}
|
||||
|
||||
@@ -393,7 +393,7 @@ public class PhaseHandler extends MyObservable implements java.io.Serializable {
|
||||
p.loseLife(burn);
|
||||
|
||||
// Play the Mana Burn sound
|
||||
game.getEvents().post(new ManaBurnEvent());
|
||||
game.getEvents().post(new GameEventManaBurn());
|
||||
}
|
||||
p.updateObservers();
|
||||
}
|
||||
@@ -426,7 +426,7 @@ public class PhaseHandler extends MyObservable implements java.io.Serializable {
|
||||
}
|
||||
this.planarDiceRolledthisTurn = 0;
|
||||
// Play the End Turn sound
|
||||
game.getEvents().post(new EndOfTurnEvent());
|
||||
game.getEvents().post(new GameEventEndOfTurn());
|
||||
break;
|
||||
default: // no action
|
||||
}
|
||||
@@ -716,7 +716,7 @@ public class PhaseHandler extends MyObservable implements java.io.Serializable {
|
||||
// If ever the karn's ultimate resolved
|
||||
if( game.getAge() == GameAge.RestartedByKarn) {
|
||||
phase = null;
|
||||
game.getEvents().post(new GameRestartedEvent(playerTurn));
|
||||
game.getEvents().post(new GameEventGameRestarted(playerTurn));
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -57,14 +57,14 @@ import forge.card.trigger.TriggerType;
|
||||
import forge.game.GameActionUtil;
|
||||
import forge.game.GameState;
|
||||
import forge.game.GlobalRuleChange;
|
||||
import forge.game.event.CardDiscardedEvent;
|
||||
import forge.game.event.DrawCardEvent;
|
||||
import forge.game.event.LandPlayedEvent;
|
||||
import forge.game.event.LifeLossEvent;
|
||||
import forge.game.event.MulliganEvent;
|
||||
import forge.game.event.PlayerControlEvent;
|
||||
import forge.game.event.PoisonCounterEvent;
|
||||
import forge.game.event.ShuffleEvent;
|
||||
import forge.game.event.GameEventCardDiscarded;
|
||||
import forge.game.event.GameEventDrawCard;
|
||||
import forge.game.event.GameEventLandPlayed;
|
||||
import forge.game.event.GameEventLifeLoss;
|
||||
import forge.game.event.GameEventMulligan;
|
||||
import forge.game.event.GameEventPlayerControl;
|
||||
import forge.game.event.GameEventPoisonCounter;
|
||||
import forge.game.event.GameEventShuffle;
|
||||
import forge.game.phase.PhaseHandler;
|
||||
import forge.game.phase.PhaseType;
|
||||
import forge.game.zone.PlayerZone;
|
||||
@@ -509,7 +509,7 @@ public class Player extends GameEntity implements Comparable<Player> {
|
||||
if (toLose > 0) {
|
||||
this.subtractLife(toLose);
|
||||
lifeLost = toLose;
|
||||
game.getEvents().post(new LifeLossEvent());
|
||||
game.getEvents().post(new GameEventLifeLoss());
|
||||
this.updateObservers();
|
||||
} else if (toLose == 0) {
|
||||
// Rule 118.4
|
||||
@@ -656,7 +656,7 @@ public class Player extends GameEntity implements Comparable<Player> {
|
||||
source.getController().gainLife(damageToDo, source);
|
||||
}
|
||||
source.getDamageHistory().registerDamage(this);
|
||||
this.getGame().getEvents().post(new LifeLossEvent());
|
||||
this.getGame().getEvents().post(new GameEventLifeLoss());
|
||||
|
||||
if (isCombat) {
|
||||
final ArrayList<String> types = source.getType();
|
||||
@@ -1020,7 +1020,7 @@ public class Player extends GameEntity implements Comparable<Player> {
|
||||
if (!this.hasKeyword("You can't get poison counters")) {
|
||||
this.poisonCounters += num;
|
||||
|
||||
game.getEvents().post(new PoisonCounterEvent(this, source, num));
|
||||
game.getEvents().post(new GameEventPoisonCounter(this, source, num));
|
||||
game.getGameLog().add(GameEventType.DAMAGE_POISON, this + " receives a poison counter from " + source);
|
||||
|
||||
this.updateObservers();
|
||||
@@ -1267,7 +1267,7 @@ public class Player extends GameEntity implements Comparable<Player> {
|
||||
}
|
||||
|
||||
// Play the Draw sound
|
||||
game.getEvents().post(new DrawCardEvent());
|
||||
game.getEvents().post(new GameEventDrawCard());
|
||||
|
||||
return drawn;
|
||||
}
|
||||
@@ -1605,13 +1605,13 @@ public class Player extends GameEntity implements Comparable<Player> {
|
||||
if (discardToTopOfLibrary) {
|
||||
game.getAction().moveToLibrary(c, 0);
|
||||
// Play the Discard sound
|
||||
game.getEvents().post(new CardDiscardedEvent());
|
||||
game.getEvents().post(new GameEventCardDiscarded());
|
||||
this.numDiscardedThisTurn++;
|
||||
} else {
|
||||
game.getAction().moveToGraveyard(c);
|
||||
|
||||
// Play the Discard sound
|
||||
game.getEvents().post(new CardDiscardedEvent());
|
||||
game.getEvents().post(new GameEventCardDiscarded());
|
||||
this.numDiscardedThisTurn++;
|
||||
}
|
||||
|
||||
@@ -1738,7 +1738,7 @@ public class Player extends GameEntity implements Comparable<Player> {
|
||||
game.getTriggerHandler().runTrigger(TriggerType.Shuffled, runParams, false);
|
||||
|
||||
// Play the shuffle sound
|
||||
game.getEvents().post(new ShuffleEvent());
|
||||
game.getEvents().post(new GameEventShuffle());
|
||||
} // shuffle
|
||||
// //////////////////////////////
|
||||
|
||||
@@ -1771,7 +1771,7 @@ public class Player extends GameEntity implements Comparable<Player> {
|
||||
game.getGameLog().add(GameEventType.LAND, this + " played " + land);
|
||||
|
||||
// play a sound
|
||||
game.getEvents().post(new LandPlayedEvent(this, land));
|
||||
game.getEvents().post(new GameEventLandPlayed(this, land));
|
||||
|
||||
// Run triggers
|
||||
final HashMap<String, Object> runParams = new HashMap<String, Object>();
|
||||
@@ -2719,13 +2719,13 @@ public class Player extends GameEntity implements Comparable<Player> {
|
||||
|
||||
public final void releaseControl() {
|
||||
controller = controllerCreator;
|
||||
game.getEvents().post(new PlayerControlEvent(this, getLobbyPlayer(), null));
|
||||
game.getEvents().post(new GameEventPlayerControl(this, getLobbyPlayer(), null));
|
||||
}
|
||||
|
||||
public final void obeyNewMaster(PlayerController pc) {
|
||||
LobbyPlayer oldController = getLobbyPlayer();
|
||||
controller = pc;
|
||||
game.getEvents().post(new PlayerControlEvent(this, oldController, pc.getLobbyPlayer()));
|
||||
game.getEvents().post(new GameEventPlayerControl(this, oldController, pc.getLobbyPlayer()));
|
||||
}
|
||||
|
||||
|
||||
@@ -3126,7 +3126,7 @@ public class Player extends GameEntity implements Comparable<Player> {
|
||||
* TODO: Write javadoc for this method.
|
||||
*/
|
||||
public void onMulliganned() {
|
||||
game.getEvents().post(new MulliganEvent(this)); // quest listener may interfere here
|
||||
game.getEvents().post(new GameEventMulligan(this)); // quest listener may interfere here
|
||||
final int newHand = getCardsIn(ZoneType.Hand).size();
|
||||
game.getGameLog().add(GameEventType.MULLIGAN, this + " has mulliganed down to " + newHand + " cards.");
|
||||
stats.notifyHasMulliganed();
|
||||
|
||||
@@ -58,7 +58,7 @@ import forge.game.GameState;
|
||||
import forge.game.ai.ComputerUtil;
|
||||
import forge.game.ai.ComputerUtilCard;
|
||||
import forge.game.ai.ComputerUtilCost;
|
||||
import forge.game.event.SpellResolvedEvent;
|
||||
import forge.game.event.GameEventSpellResolved;
|
||||
import forge.game.player.HumanPlay;
|
||||
import forge.game.player.Player;
|
||||
import forge.gui.GuiChoose;
|
||||
@@ -617,7 +617,7 @@ public class MagicStack extends MyObservable implements Iterable<SpellAbilitySta
|
||||
}
|
||||
sa.getSourceCard().setXManaCostPaid(0);
|
||||
|
||||
game.getEvents().post(new SpellResolvedEvent(source, sa));
|
||||
game.getEvents().post(new GameEventSpellResolved(source, sa));
|
||||
|
||||
if (source.hasStartOfKeyword("Haunt") && !source.isCreature()
|
||||
&& game.getZoneOf(source).is(ZoneType.Graveyard)) {
|
||||
|
||||
@@ -10,7 +10,7 @@ import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import forge.Card;
|
||||
import forge.FThreads;
|
||||
import forge.game.event.FlipCoinEvent;
|
||||
import forge.game.event.GameEventFlipCoin;
|
||||
import forge.game.player.Player;
|
||||
import forge.gui.match.CMatchUI;
|
||||
import forge.util.MyRandom;
|
||||
@@ -100,7 +100,7 @@ public class GuiDialog {
|
||||
final String winMsg = winFlip ? " wins flip." : " loses flip.";
|
||||
|
||||
// Play the Flip A Coin sound
|
||||
caller.getGame().getEvents().post(new FlipCoinEvent());
|
||||
caller.getGame().getEvents().post(new GameEventFlipCoin());
|
||||
|
||||
JOptionPane.showMessageDialog(null, source.getName() + " - " + caller + winMsg, source.getName(),
|
||||
JOptionPane.PLAIN_MESSAGE);
|
||||
|
||||
@@ -29,8 +29,8 @@ import com.google.common.eventbus.Subscribe;
|
||||
import forge.Singletons;
|
||||
import forge.deck.Deck;
|
||||
import forge.game.GameFormat;
|
||||
import forge.game.event.Event;
|
||||
import forge.game.event.MulliganEvent;
|
||||
import forge.game.event.GameEvent;
|
||||
import forge.game.event.GameEventMulligan;
|
||||
import forge.item.CardPrinted;
|
||||
import forge.item.PreconDeck;
|
||||
import forge.properties.NewConstants;
|
||||
@@ -426,9 +426,9 @@ public class QuestController {
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
public void receiveGameEvent(Event ev) { // Receives events only during quest games
|
||||
if ( ev instanceof MulliganEvent ) {
|
||||
MulliganEvent mev = (MulliganEvent)ev;
|
||||
public void receiveGameEvent(GameEvent ev) { // Receives events only during quest games
|
||||
if ( ev instanceof GameEventMulligan ) {
|
||||
GameEventMulligan mev = (GameEventMulligan)ev;
|
||||
// First mulligan is free
|
||||
if (mev.player.getLobbyPlayer() == Singletons.getControl().getLobby().getQuestPlayer()
|
||||
&& getAssets().hasItem(QuestItemType.SLEIGHT) && mev.player.getStats().getMulliganCount() == 0) {
|
||||
|
||||
@@ -7,27 +7,27 @@ import java.util.Map;
|
||||
import forge.Card;
|
||||
import forge.Singletons;
|
||||
import forge.card.spellability.SpellAbility;
|
||||
import forge.game.event.BlockerAssignedEvent;
|
||||
import forge.game.event.CardDamagedEvent;
|
||||
import forge.game.event.CardDestroyedEvent;
|
||||
import forge.game.event.CardDiscardedEvent;
|
||||
import forge.game.event.CardEquippedEvent;
|
||||
import forge.game.event.CardRegeneratedEvent;
|
||||
import forge.game.event.CardSacrificedEvent;
|
||||
import forge.game.event.CounterAddedEvent;
|
||||
import forge.game.event.CounterRemovedEvent;
|
||||
import forge.game.event.DrawCardEvent;
|
||||
import forge.game.event.DuelOutcomeEvent;
|
||||
import forge.game.event.EndOfTurnEvent;
|
||||
import forge.game.event.Event;
|
||||
import forge.game.event.FlipCoinEvent;
|
||||
import forge.game.event.LandPlayedEvent;
|
||||
import forge.game.event.LifeLossEvent;
|
||||
import forge.game.event.PoisonCounterEvent;
|
||||
import forge.game.event.SetTappedEvent;
|
||||
import forge.game.event.ShuffleEvent;
|
||||
import forge.game.event.SpellResolvedEvent;
|
||||
import forge.game.event.TokenCreatedEvent;
|
||||
import forge.game.event.GameEventBlockerAssigned;
|
||||
import forge.game.event.GameEventCardDamaged;
|
||||
import forge.game.event.GameEventCardDestroyed;
|
||||
import forge.game.event.GameEventCardDiscarded;
|
||||
import forge.game.event.GameEventCardEquipped;
|
||||
import forge.game.event.GameEventCardRegenerated;
|
||||
import forge.game.event.GameEventCardSacrificed;
|
||||
import forge.game.event.GameEventCounterAdded;
|
||||
import forge.game.event.GameEventCounterRemoved;
|
||||
import forge.game.event.GameEventDrawCard;
|
||||
import forge.game.event.GameEventDuelOutcome;
|
||||
import forge.game.event.GameEventEndOfTurn;
|
||||
import forge.game.event.GameEvent;
|
||||
import forge.game.event.GameEventFlipCoin;
|
||||
import forge.game.event.GameEventLandPlayed;
|
||||
import forge.game.event.GameEventLifeLoss;
|
||||
import forge.game.event.GameEventPoisonCounter;
|
||||
import forge.game.event.GameEventCardTapped;
|
||||
import forge.game.event.GameEventShuffle;
|
||||
import forge.game.event.GameEventSpellResolved;
|
||||
import forge.game.event.GameEventTokenCreated;
|
||||
|
||||
/**
|
||||
* This class is in charge of converting any forge.game.event.Event to a SoundEffectType.
|
||||
@@ -38,50 +38,50 @@ public class EventVisualizer {
|
||||
static final Map<Class<?>, SoundEffectType> matchTable = new HashMap<Class<?>, SoundEffectType>();
|
||||
|
||||
public EventVisualizer() {
|
||||
matchTable.put(CounterAddedEvent.class, SoundEffectType.AddCounter);
|
||||
matchTable.put(BlockerAssignedEvent.class, SoundEffectType.Block);
|
||||
matchTable.put(CardDamagedEvent.class, SoundEffectType.Damage);
|
||||
matchTable.put(CardDestroyedEvent.class, SoundEffectType.Destroy);
|
||||
matchTable.put(CardDiscardedEvent.class, SoundEffectType.Discard);
|
||||
matchTable.put(DrawCardEvent.class, SoundEffectType.Draw);
|
||||
matchTable.put(EndOfTurnEvent.class, SoundEffectType.EndOfTurn);
|
||||
matchTable.put(CardEquippedEvent.class, SoundEffectType.Equip);
|
||||
matchTable.put(FlipCoinEvent.class, SoundEffectType.FlipCoin);
|
||||
matchTable.put(LifeLossEvent.class, SoundEffectType.LifeLoss);
|
||||
matchTable.put(PoisonCounterEvent.class, SoundEffectType.Poison);
|
||||
matchTable.put(CardRegeneratedEvent.class, SoundEffectType.Regen);
|
||||
matchTable.put(CounterRemovedEvent.class, SoundEffectType.RemoveCounter);
|
||||
matchTable.put(CardSacrificedEvent.class, SoundEffectType.Sacrifice);
|
||||
matchTable.put(ShuffleEvent.class, SoundEffectType.Shuffle);
|
||||
matchTable.put(TokenCreatedEvent.class, SoundEffectType.Token);
|
||||
matchTable.put(GameEventCounterAdded.class, SoundEffectType.AddCounter);
|
||||
matchTable.put(GameEventBlockerAssigned.class, SoundEffectType.Block);
|
||||
matchTable.put(GameEventCardDamaged.class, SoundEffectType.Damage);
|
||||
matchTable.put(GameEventCardDestroyed.class, SoundEffectType.Destroy);
|
||||
matchTable.put(GameEventCardDiscarded.class, SoundEffectType.Discard);
|
||||
matchTable.put(GameEventDrawCard.class, SoundEffectType.Draw);
|
||||
matchTable.put(GameEventEndOfTurn.class, SoundEffectType.EndOfTurn);
|
||||
matchTable.put(GameEventCardEquipped.class, SoundEffectType.Equip);
|
||||
matchTable.put(GameEventFlipCoin.class, SoundEffectType.FlipCoin);
|
||||
matchTable.put(GameEventLifeLoss.class, SoundEffectType.LifeLoss);
|
||||
matchTable.put(GameEventPoisonCounter.class, SoundEffectType.Poison);
|
||||
matchTable.put(GameEventCardRegenerated.class, SoundEffectType.Regen);
|
||||
matchTable.put(GameEventCounterRemoved.class, SoundEffectType.RemoveCounter);
|
||||
matchTable.put(GameEventCardSacrificed.class, SoundEffectType.Sacrifice);
|
||||
matchTable.put(GameEventShuffle.class, SoundEffectType.Shuffle);
|
||||
matchTable.put(GameEventTokenCreated.class, SoundEffectType.Token);
|
||||
}
|
||||
|
||||
|
||||
public final SoundEffectType getSoundForEvent(Event evt) {
|
||||
public final SoundEffectType getSoundForEvent(GameEvent evt) {
|
||||
SoundEffectType fromMap = matchTable.get(evt.getClass());
|
||||
|
||||
// call methods copied from Utils here
|
||||
if (evt instanceof SpellResolvedEvent) {
|
||||
return getSoundEffectForResolve(((SpellResolvedEvent) evt).Source, ((SpellResolvedEvent) evt).Spell);
|
||||
if (evt instanceof GameEventSpellResolved) {
|
||||
return getSoundEffectForResolve(((GameEventSpellResolved) evt).Source, ((GameEventSpellResolved) evt).Spell);
|
||||
}
|
||||
if (evt instanceof LandPlayedEvent) {
|
||||
return getSoundEffectForLand(((LandPlayedEvent) evt).Land);
|
||||
if (evt instanceof GameEventLandPlayed) {
|
||||
return getSoundEffectForLand(((GameEventLandPlayed) evt).Land);
|
||||
}
|
||||
if (evt instanceof CounterAddedEvent) {
|
||||
if (((CounterAddedEvent) evt).Amount == 0) {
|
||||
if (evt instanceof GameEventCounterAdded) {
|
||||
if (((GameEventCounterAdded) evt).Amount == 0) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
if (evt instanceof CounterRemovedEvent) {
|
||||
if (((CounterRemovedEvent) evt).Amount == 0) {
|
||||
if (evt instanceof GameEventCounterRemoved) {
|
||||
if (((GameEventCounterRemoved) evt).Amount == 0) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
if (evt instanceof SetTappedEvent) {
|
||||
return getSoundEffectForTapState(((SetTappedEvent) evt).Tapped);
|
||||
if (evt instanceof GameEventCardTapped) {
|
||||
return getSoundEffectForTapState(((GameEventCardTapped) evt).Tapped);
|
||||
}
|
||||
if (evt instanceof DuelOutcomeEvent) {
|
||||
return getSoundEffectForDuelOutcome(((DuelOutcomeEvent) evt).result.getWinner() == Singletons.getControl().getLobby().getGuiPlayer());
|
||||
if (evt instanceof GameEventDuelOutcome) {
|
||||
return getSoundEffectForDuelOutcome(((GameEventDuelOutcome) evt).result.getWinner() == Singletons.getControl().getLobby().getGuiPlayer());
|
||||
}
|
||||
|
||||
return fromMap;
|
||||
@@ -217,13 +217,13 @@ public class EventVisualizer {
|
||||
* @return a string containing the SoundEffect SVar, or empty string if
|
||||
* SVar:SoundEffect does not exist.
|
||||
*/
|
||||
public String getScriptedSoundEffectName(Event evt) {
|
||||
public String getScriptedSoundEffectName(GameEvent evt) {
|
||||
Card c = null;
|
||||
|
||||
if (evt instanceof SpellResolvedEvent) {
|
||||
c = ((SpellResolvedEvent) evt).Source;
|
||||
} else if (evt instanceof LandPlayedEvent) {
|
||||
c = ((LandPlayedEvent) evt).Land;
|
||||
if (evt instanceof GameEventSpellResolved) {
|
||||
c = ((GameEventSpellResolved) evt).Source;
|
||||
} else if (evt instanceof GameEventLandPlayed) {
|
||||
c = ((GameEventLandPlayed) evt).Land;
|
||||
}
|
||||
|
||||
return c != null ? c.getSVar("SoundEffect") : "";
|
||||
|
||||
@@ -7,7 +7,7 @@ import java.util.Map;
|
||||
import com.google.common.eventbus.Subscribe;
|
||||
|
||||
import forge.Singletons;
|
||||
import forge.game.event.Event;
|
||||
import forge.game.event.GameEvent;
|
||||
import forge.properties.ForgePreferences.FPref;
|
||||
|
||||
/**
|
||||
@@ -150,7 +150,7 @@ public class SoundSystem {
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
public void receiveEvent(Event evt) {
|
||||
public void receiveEvent(GameEvent evt) {
|
||||
SoundEffectType effect = visualizer.getSoundForEvent(evt);
|
||||
if (null == effect) {
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user