Package scotlandyard.servlets.players

Source Code of scotlandyard.servlets.players.make_move_json

package scotlandyard.servlets.players;

import java.util.Map;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletResponse;

import scotlandyard.engine.impl.BMap;
import scotlandyard.engine.impl.Engine;
import scotlandyard.engine.spec.IGame;
import scotlandyard.engine.spec.IPlayer;
import scotlandyard.servlets.HttpServletEx;
import scotlandyard.servlets.users.send_chat;
/**
* used to move a player to another position when the game has started
* @author Hussain Al-Mutawa
* @version 3.0
*/
public class make_move_json extends HttpServletEx {

  private static final long serialVersionUID = -109L;
  private String gameId,xhash;
  public make_move_json() {
    super();
  }
  public make_move_json(String gameId,String xhash) {
    super();
    this.gameId=gameId;
    this.xhash=xhash;
  }

  @Override
  public void setHeader(HttpServletResponse response) {
    response.setHeader("Content-Type", "text/plain");
  }
  @Override
  public String processRequest(Map<String, String> parameters, String sid)
      throws ServletException {
    try{
      if(parameters.get("xhash")!=null){
        xhash = parameters.get("xhash");
      }
      if(xhash==null || "".equals(xhash)){throw new Exception("Unknown HASH");}

      if(parameters.get("selected_game")!=null){
        gameId  = parameters.get("selected_game");
      }
      if(gameId==null || "".equals(gameId)){throw new Exception("Game Id is unknown");}
     
      final IGame game = Engine.instance().games.get(gameId);
      if(game==null){throw new Exception("Game is unknown");}

          final IPlayer player = game.getPlayer(xhash);
          if(player==null){throw new Exception("player is unknown");}

          final Integer newPosition = Integer.parseInt(parameters.get("newPosition"));
          if(newPosition==null){throw new Exception("New position is unknown");}

          final Integer transport = Integer.parseInt(parameters.get("transport"));
          if(transport==null){throw new Exception("Transport is unknown");}

          game.movePlayer(player.getEmail(), newPosition, transport);
         
          if(player.isMrx()){
            String msg = "<img src='http://scotlandyard.comule.com/get_icon.php?icon="+((int)Math.pow(2,transport))+"' width='32' height='32' alt='"+ BMap.convTransport(transport)+"'/>["+BMap.convTransport(transport)+"] was used by Mr X";
            new send_chat("SYSTEM",msg).processRequest(sid);
          }
         
          return ("{\"msg\" : \"OK\"}");

      }catch(Exception e){
          return ("{\"msg\" : \"EXCEPTION : "+(e.getMessage()+"").replace("\"", "'")+"\", \"className\" : \""+getClass().getName()+"\"}");
      }
   
  }

}
TOP

Related Classes of scotlandyard.servlets.players.make_move_json

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.