package NET.worlds.network; import NET.worlds.scape.Drone; import java.io.IOException; public class longLocCmd extends receivedNetPacket { public static final byte LONGLOCCMD = 1; protected short _x; protected short _y; protected short _z; protected short _dir; public longLocCmd() { this._commandType = 1; } public longLocCmd(short x, short y, short z, short dir) { super(null, 1); this._x = x; this._y = y; this._z = z; this._dir = dir; } @Override void parseNetData(ServerInputStream data) throws IOException { this._x = data.readShort(); this._y = data.readShort(); this._z = data.readShort(); this._dir = data.readShort(); } @Override int packetSize() { return 8 + super.packetSize(); } @Override void send(ServerOutputStream o) throws IOException { super.send(o); o.writeShort(this._x); o.writeShort(this._y); o.writeShort(this._z); o.writeShort(this._dir); } @Override void process(WorldServer _serv) throws Exception { NetworkObject o = _serv.getObject(this._objID); if (o instanceof Drone) { this._dir = (short)(90 - this._dir); this._dir = (short)(360 - this._dir); if (o == null) { System.out.println("error in message: " + this.toString(_serv)); } ((Drone)o).longLoc(this._x, this._y, this._z, this._dir); } } @Override public String toString(WorldServer serv) { return "LONGLOC " + this._objID.toString(serv) + " @ " + this._x + "," + this._y + "," + this._z + "," + this._dir; } }