diff options
Diffstat (limited to 'api/src')
| -rw-r--r-- | api/src/main/java/akkamon/api/MessagingEngine.java | 12 | ||||
| -rw-r--r-- | api/src/main/java/akkamon/api/models/BattleInitEvent.java | 7 |
2 files changed, 14 insertions, 5 deletions
diff --git a/api/src/main/java/akkamon/api/MessagingEngine.java b/api/src/main/java/akkamon/api/MessagingEngine.java index 1c3a2b5..cdb9a27 100644 --- a/api/src/main/java/akkamon/api/MessagingEngine.java +++ b/api/src/main/java/akkamon/api/MessagingEngine.java @@ -4,6 +4,7 @@ import akka.actor.typed.ActorRef; import akka.actor.typed.ActorSystem; import akkamon.api.models.*; import akkamon.domain.AkkamonMessageEngine; +import akkamon.domain.actors.AkkamonBattle; import akkamon.domain.actors.AkkamonNexus; import akkamon.domain.AkkamonSession; import akkamon.domain.InteractionHandshaker; @@ -178,16 +179,19 @@ public class MessagingEngine implements AkkamonMessageEngine { } @Override - public void broadCastBattleStart(Set<AkkamonNexus.TrainerID> participants) { + public void broadCastBattleStart(AkkamonBattle.BattleCreatedResponse response) { System.out.println("Sending battle start event!!"); - for (AkkamonNexus.TrainerID trainerID : participants) { + for (AkkamonNexus.TrainerID trainerID : response.participants) { AkkamonSession session = trainerIDToAkkamonSessions.get(trainerID); - Set<AkkamonNexus.TrainerID> withoutself = new HashSet<>(participants); + Set<AkkamonNexus.TrainerID> withoutself = new HashSet<>(response.participants); withoutself.remove(trainerID); if (session != null) { session.send( gson.toJson( - new BattleInitEvent(new ArrayList<>(withoutself)) + new BattleInitEvent( + new ArrayList<>(withoutself), + response.initState.get(trainerID) + ) ) ); } diff --git a/api/src/main/java/akkamon/api/models/BattleInitEvent.java b/api/src/main/java/akkamon/api/models/BattleInitEvent.java index 71402c2..c0f2fbe 100644 --- a/api/src/main/java/akkamon/api/models/BattleInitEvent.java +++ b/api/src/main/java/akkamon/api/models/BattleInitEvent.java @@ -1,15 +1,20 @@ package akkamon.api.models; import akkamon.domain.actors.AkkamonNexus; +import akkamon.domain.model.battle.BattleMessage; +import akkamon.domain.model.battle.state.BattleState; import java.util.ArrayList; +import java.util.Map; public class BattleInitEvent extends Event { public ArrayList<AkkamonNexus.TrainerID> participants; + public BattleMessage message; - public BattleInitEvent(ArrayList<AkkamonNexus.TrainerID> participants) { + public BattleInitEvent(ArrayList<AkkamonNexus.TrainerID> participants, BattleMessage introductionMessage) { this.type = EventType.BATTLE_INIT; this.participants = participants; + this.message = introductionMessage; } } |
