Package si.evil.simpleg.server

Source Code of si.evil.simpleg.server.MConnection

package si.evil.simpleg.server;

import java.nio.channels.SocketChannel;


import si.evil.messages.Message;
import si.evil.server.Buffer;
import si.evil.server.Connection;
import si.evil.server.WServer;

public class MConnection extends Connection {
 
  MServer master;
 
  /**
   * Holds the player that belongs to this connection
   */
  Player player;
 
  GameServer gs;
 
  int id;

  @Override
  public void onRecv(Buffer data) {
    if(this.gs==null){//handle if dont jet belong to a GameServer
      String msg = data.getString().trim();
      String[] parts = msg.split(" ");
     
     
      if(parts.length>0){
        if(parts[0].compareToIgnoreCase("JOIN")==0){
          player = master.join(this, (parts.length>1)?parts[1]:"");
          if(player!=null){
            gs = player.gameServer;
            this.sendMessage(new Buffer("Failed\n"));
          }
        }else if(parts[0].compareToIgnoreCase("LIST")==0){
          String list = master.list("");
          this.sendMessage(new Buffer(list));
        }else if(parts[0].compareToIgnoreCase("RESTART")==0){
          master.restart();
        }else if(parts[0].compareToIgnoreCase("STOP")==0){
          master.stop();
        }else if(parts[0].compareToIgnoreCase("STATUS")==0){
          String list = master.status("");
          this.sendMessage(new Buffer(list));
        }else{//Log wierd message
          System.out.println("Wierd message: \n"+msg);

          this.sendMessage(new Buffer("Unknown command: "+parts[0].toUpperCase()+'\n'));
        }
      }else{
        //Log wierd message
        System.out.println("Wierd message: \n"+msg);

        this.sendMessage(new Buffer("Unknown command: "+parts[0].toUpperCase()+'\n'));
      }
    }else{
      gs.recvRawMessage(this, data);
      //if(msg!=null){
      //  gs.recvMessage(player, msg);
      //}
    }
  }

  public MConnection(MServer ms, SocketChannel c, WServer server) {
    super(c, server);
    master = ms;
  }

}
TOP

Related Classes of si.evil.simpleg.server.MConnection

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.