aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/pokemon
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/pokemon')
-rw-r--r--src/main/java/pokemon/Server.java35
1 files changed, 33 insertions, 2 deletions
diff --git a/src/main/java/pokemon/Server.java b/src/main/java/pokemon/Server.java
index 6a555f2..9d56a27 100644
--- a/src/main/java/pokemon/Server.java
+++ b/src/main/java/pokemon/Server.java
@@ -234,9 +234,10 @@ public class Server implements Runnable {
long opponentId=Long.parseLong(msg[1]);
Game game=null;
for(Game tempGame :games) {
- if(tempGame.player1Id==opponentId)
+ if(tempGame.player1Id==opponentId) {
game=tempGame;
- break;
+ break;
+ }
}
SocketChannel opponentSocket=null;
for(Entry<SocketChannel, Long> player : players.entrySet()) {
@@ -258,6 +259,36 @@ public class Server implements Runnable {
}
+ else if(msg[0].equals("CHATMESSAGE")) {
+ long myId=players.get(sc);
+ long opponentId=Long.parseLong(msg[1]);
+ User myUser=s.getUserById(myId);
+ User opponentUser=s.getUserById(opponentId);
+
+ String message=msg[2];
+ Game game=null;
+ for(Game tempGame :games) {
+ if(tempGame.player1Id==opponentId || tempGame.player2Id==opponentId) {
+ game=tempGame;
+ break;
+ }
+ }
+ SocketChannel opponentSocket=null;
+ for(Entry<SocketChannel, Long> player : players.entrySet()) {
+ if(player.getValue()==opponentId) {
+ opponentSocket=player.getKey();
+ break;
+ }
+ }
+ String myMsg="MESSAGE:"+myUser.username+":"+message;
+ ByteBuffer buff = ByteBuffer.wrap(myMsg.getBytes());
+ opponentSocket.write(buff);
+ ByteBuffer buff1 = ByteBuffer.wrap(myMsg.getBytes());
+ sc.write(buff1);
+
+
+
+ }
}