@Override
	protected ERGameEvent readEventStream(InputStream inputStream)
			throws IOException {
		ObjectInputStream ois = new ObjectInputStream(inputStream);
		
		switch(ois.readInt()){
			case (ERGameEvent.EVENT_MESSAGE_C):
				return ERGameEvent.EventMessageClient(ois.readUTF());
			case (ERGameEvent.EVENT_MESSAGE):
				return ERGameEvent.EventMessage(
						ois.readUTF(),
						ois.readUTF());
			case (ERGameEvent.EVENT_UPDATE_C):
				return  ERGameEvent.EventUpdateClient(
						 ois.readFloat(),
						 ois.readFloat() );
			case (ERGameEvent.EVENT_UPDATE):
				return ERGameEvent.EventUpdate(
						ois.readInt(),
						ois.readFloat(), 
						ois.readFloat(),
						ois.readFloat(),
						ois.readFloat() );
			case (ERGameEvent.EVENT_DESTROY):
				return ERGameEvent.EventDestroy(
						ois.readInt() );
			case (ERGameEvent.EVENT_INTERACT_C):
				return ERGameEvent.EventInteractClient(
						ois.readInt() );
			case (ERGameEvent.EVENT_INTERACT):
				return ERGameEvent.EventInteract(
						ois.readInt(),
						ois.readInt() );
			default:
				return null;
		}
	}