* Added return code to addCounter method.

This commit is contained in:
LevelX2 2016-08-11 17:40:51 +02:00
parent 5ee29a14e6
commit 058d25fa56
5 changed files with 52 additions and 31 deletions

View file

@ -333,12 +333,13 @@ public abstract class PermanentImpl extends CardImpl implements Permanent {
}
@Override
public void addCounters(String name, int amount, Game game) {
addCounters(name, amount, game, null);
public boolean addCounters(String name, int amount, Game game) {
return addCounters(name, amount, game, null);
}
@Override
public void addCounters(String name, int amount, Game game, ArrayList<UUID> appliedEffects) {
public boolean addCounters(String name, int amount, Game game, ArrayList<UUID> appliedEffects) {
boolean returnCode = true;
GameEvent countersEvent = GameEvent.getEvent(GameEvent.EventType.ADD_COUNTERS, objectId, controllerId, name, amount);
countersEvent.setAppliedEffects(appliedEffects);
if (!game.replaceEvent(countersEvent)) {
@ -348,14 +349,20 @@ public abstract class PermanentImpl extends CardImpl implements Permanent {
if (!game.replaceEvent(event)) {
counters.addCounter(name, 1);
game.fireEvent(GameEvent.getEvent(GameEvent.EventType.COUNTER_ADDED, objectId, controllerId, name, 1));
} else {
returnCode = false;
}
}
game.fireEvent(GameEvent.getEvent(GameEvent.EventType.COUNTERS_ADDED, objectId, controllerId, name, amount));
} else {
returnCode = false;
}
return returnCode;
}
@Override
public void addCounters(Counter counter, Game game, ArrayList<UUID> appliedEffects) {
public boolean addCounters(Counter counter, Game game, ArrayList<UUID> appliedEffects) {
boolean returnCode = true;
GameEvent countersEvent = GameEvent.getEvent(GameEvent.EventType.ADD_COUNTERS, objectId, controllerId, counter.getName(), counter.getCount());
countersEvent.setAppliedEffects(appliedEffects);
if (!game.replaceEvent(countersEvent)) {
@ -368,10 +375,15 @@ public abstract class PermanentImpl extends CardImpl implements Permanent {
if (!game.replaceEvent(event)) {
counters.addCounter(eventCounter);
game.fireEvent(GameEvent.getEvent(GameEvent.EventType.COUNTER_ADDED, objectId, controllerId, counter.getName(), 1));
} else {
returnCode = false;
}
}
game.fireEvent(GameEvent.getEvent(GameEvent.EventType.COUNTERS_ADDED, objectId, controllerId, counter.getName(), amount));
} else {
returnCode = false;
}
return returnCode;
}
@Override