All pastes #543262 Raw Edit

Miscellany

public java v1 · immutable
·published 2007-06-06 01:20 UTC
rendered paste body
package bomberman.network;import java.util.Map;import java.util.TreeMap;import bomberman.client.BombermanClient;public class BombermanNetworkDecoder {		BombermanClient bc;	Map<Integer,BNetworkOperation> operations;		public BombermanNetworkDecoder(BombermanClient bc) {		this.bc = bc;		this.operations = new TreeMap<Integer,BNetworkOperation>();		put(new BNetworkOpText(bc));		put(new BNetworkOpArena(bc));		put(new BNetworkOpPlayer(bc));		put(new BNetworkOpAnimation(bc));		put(new BNetworkOpPoints(bc));		put(new BNetworkOpTime(bc));	}		private void put(BNetworkOperation op) {		operations.put(op.getID(), op);	}		// decide qual operação é e chama a classe responsável	public boolean process(byte[] data) {		int op = data[0];		operations.get(op).decode(data);		return false;			}}//--------------------------------------------------------------------------------package bomberman.network;import bomberman.client.BombermanClient;public abstract class BNetworkOperation {		BombermanClient bc;	public BNetworkOperation(BombermanClient bc) {		this.bc = bc;	}		public abstract int getID();		public abstract void decode(byte[] data);	}//--------------------------------------------------------------------------------package bomberman.network;import utilities.Conversion;import bomberman.client.BombermanClient;import bomberman.geral.BombermanConstants;public class BNetworkOpTime extends BNetworkOperation {	public BNetworkOpTime(BombermanClient bc) {		super(bc);	}		@Override	public int getID() {		return BombermanConstants.BOMBERMAN_TIME;	}	@Override	public void decode(byte[] data) {		bc.bTime = Conversion.byteArrayToInt(data, 2); 	}}