forked from External/mage
[LCI] Implement The Millennium Calendar (#11359)
new UNTAPPED_BATCH event.
This commit is contained in:
parent
9ff307cefa
commit
0c485ec593
9 changed files with 319 additions and 6 deletions
56
Mage/src/main/java/mage/game/events/UntappedBatchEvent.java
Normal file
56
Mage/src/main/java/mage/game/events/UntappedBatchEvent.java
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
package mage.game.events;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import java.util.UUID;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @author Susucr
|
||||
*/
|
||||
public class UntappedBatchEvent extends GameEvent implements BatchGameEvent<UntappedEvent> {
|
||||
|
||||
private final Set<UntappedEvent> events = new HashSet<>();
|
||||
|
||||
public UntappedBatchEvent() {
|
||||
super(EventType.UNTAPPED_BATCH, null, null, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set<UntappedEvent> getEvents() {
|
||||
return events;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set<UUID> getTargets() {
|
||||
return events.stream()
|
||||
.map(GameEvent::getTargetId)
|
||||
.filter(Objects::nonNull)
|
||||
.collect(Collectors.toSet());
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getAmount() {
|
||||
return events
|
||||
.stream()
|
||||
.mapToInt(GameEvent::getAmount)
|
||||
.sum();
|
||||
}
|
||||
|
||||
@Override
|
||||
@Deprecated // events can store a diff value, so search it from events list instead
|
||||
public UUID getTargetId() {
|
||||
throw new IllegalStateException("Wrong code usage. Must search value from a getEvents list or use CardUtil.getEventTargets(event)");
|
||||
}
|
||||
|
||||
@Override
|
||||
@Deprecated // events can store a diff value, so search it from events list instead
|
||||
public UUID getSourceId() {
|
||||
throw new IllegalStateException("Wrong code usage. Must search value from a getEvents list.");
|
||||
}
|
||||
|
||||
public void addEvent(UntappedEvent event) {
|
||||
this.events.add(event);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue