A player is a mazeObject in the map data. Each player should has
his selfId to distinguish him from other mazeObjects in the map and a belongId to identify the
mazeObject it belongs to. Each player can move in the environment, take or drop items, and talk
to other players.
A player should has a selfId and belongId to identify himself and the mazeObject he belongs to. A player also has a Name and a Nickname of type string. The variables offsetX, offsetY indicate the position of the player.
A player has an itemTable, which is a hash table, to store items with the player.
The two PrintStream msgOutStream and mapOutStream are outgoing channels each for send action related
requests and map requests to the server.