public static List readWatchableObjects(DataInputStream datainputstream) { ArrayList arraylist = null; for (byte byte0 = datainputstream.readByte(); byte0 != 127; byte0 = datainputstream.readByte()) { if (arraylist == null) { arraylist = new ArrayList(); } int i = (byte0 & 0xe0) >> 5; int j = byte0 & 0x1f; WatchableObject watchableobject = null; switch (i) { case 0: // '\0' watchableobject = new WatchableObject(i, j, Byte.valueOf(datainputstream.readByte())); break; case 1: // '\001' watchableobject = new WatchableObject(i, j, Short.valueOf(datainputstream.readShort())); break; case 2: // '\002' watchableobject = new WatchableObject(i, j, Integer.valueOf(datainputstream.readInt())); break; case 3: // '\003' watchableobject = new WatchableObject(i, j, Float.valueOf(datainputstream.readFloat())); break; case 4: // '\004' watchableobject = new WatchableObject(i, j, datainputstream.readUTF()); break; case 5: // '\005' short word0 = datainputstream.readShort(); byte byte1 = datainputstream.readByte(); short word1 = datainputstream.readShort(); watchableobject = new WatchableObject(i, j, new ItemStack(word0, byte1, word1)); // fall through (not.. c#..) int k2 = datainputstream.readInt(); int l2 = datainputstream.readInt(); int i12 = datainputstream.readInt(); watchableobject = new WatchableObject(i, j, new ChunkCoordinates(k2, l2, i12)); break; case 6: // '\006' int k = datainputstream.readInt(); int l = datainputstream.readInt(); int i1 = datainputstream.readInt(); watchableobject = new WatchableObject(i, j, new ChunkCoordinates(k, l, i1)); break; } arraylist.add(watchableobject); } return arraylist; }
public void addObject(int i, object obj) { var integer = (Integer)dataTypes.get(obj.GetType()); if (integer == null) { throw new IllegalArgumentException( (new StringBuilder()).append("Unknown data type: ").append(obj.GetType()).toString()); } if (i > 31) { throw new IllegalArgumentException( (new StringBuilder()).append("Data value id is too big with ").append(i).append("! (Max is ").append (31).append(")").toString()); } if (watchedObjects.containsKey(Integer.valueOf(i))) { throw new IllegalArgumentException( (new StringBuilder()).append("Duplicate id value for ").append(i).append("!").toString()); } else { var watchableobject = new WatchableObject(integer.intValue(), i, obj); watchedObjects.put(Integer.valueOf(i), watchableobject); return; } }
private static void writeWatchableObject(DataOutputStream dataoutputstream, WatchableObject watchableobject) { int i = (watchableobject.getObjectType() << 5 | watchableobject.getDataValueId() & 0x1f) & 0xff; dataoutputstream.writeByte(i); switch (watchableobject.getObjectType()) { case 0: // '\0' try { dataoutputstream.writeByte(((Byte)watchableobject.getObject()).byteValue()); } catch { dataoutputstream.writeByte((sbyte)(watchableobject.getObject())); } break; case 1: // '\001' dataoutputstream.writeShort(((Short)watchableobject.getObject()).shortValue()); break; case 2: // '\002' dataoutputstream.writeInt(((Integer)watchableobject.getObject()).intValue()); break; case 3: // '\003' dataoutputstream.writeFloat(((Float)watchableobject.getObject()).floatValue()); break; case 4: // '\004' dataoutputstream.writeUTF((string)watchableobject.getObject()); break; case 5: // '\005' var itemstack = (ItemStack)watchableobject.getObject(); dataoutputstream.writeShort(itemstack.getItem().shiftedIndex); dataoutputstream.writeByte(itemstack.stackSize); dataoutputstream.writeShort(itemstack.getItemDamage()); // fall through (cant.. c# ...) var chunkcoordinates2 = (ChunkCoordinates)watchableobject.getObject(); dataoutputstream.writeInt(chunkcoordinates2.posX); dataoutputstream.writeInt(chunkcoordinates2.posY); dataoutputstream.writeInt(chunkcoordinates2.posZ); break; case 6: // '\006' var chunkcoordinates = (ChunkCoordinates)watchableobject.getObject(); dataoutputstream.writeInt(chunkcoordinates.posX); dataoutputstream.writeInt(chunkcoordinates.posY); dataoutputstream.writeInt(chunkcoordinates.posZ); break; } }
private static void writeWatchableObject(DataOutputStream dataoutputstream, WatchableObject watchableobject) { int i = (watchableobject.getObjectType() << 5 | watchableobject.getDataValueId() & 0x1f) & 0xff; dataoutputstream.writeByte(i); switch (watchableobject.getObjectType()) { case 0: // '\0' try { dataoutputstream.writeByte(((Byte) watchableobject.getObject()).byteValue()); } catch { dataoutputstream.writeByte((sbyte) (watchableobject.getObject())); } break; case 1: // '\001' dataoutputstream.writeShort(((Short) watchableobject.getObject()).shortValue()); break; case 2: // '\002' dataoutputstream.writeInt(((Integer) watchableobject.getObject()).intValue()); break; case 3: // '\003' dataoutputstream.writeFloat(((Float) watchableobject.getObject()).floatValue()); break; case 4: // '\004' dataoutputstream.writeUTF((string) watchableobject.getObject()); break; case 5: // '\005' var itemstack = (ItemStack) watchableobject.getObject(); dataoutputstream.writeShort(itemstack.getItem().shiftedIndex); dataoutputstream.writeByte(itemstack.stackSize); dataoutputstream.writeShort(itemstack.getItemDamage()); // fall through (cant.. c# ...) var chunkcoordinates2 = (ChunkCoordinates) watchableobject.getObject(); dataoutputstream.writeInt(chunkcoordinates2.posX); dataoutputstream.writeInt(chunkcoordinates2.posY); dataoutputstream.writeInt(chunkcoordinates2.posZ); break; case 6: // '\006' var chunkcoordinates = (ChunkCoordinates) watchableobject.getObject(); dataoutputstream.writeInt(chunkcoordinates.posX); dataoutputstream.writeInt(chunkcoordinates.posY); dataoutputstream.writeInt(chunkcoordinates.posZ); break; } }
public void addObject(int i, object obj) { var integer = (Integer) dataTypes.get(obj.GetType()); if (integer == null) { throw new IllegalArgumentException( (new StringBuilder()).append("Unknown data type: ").append(obj.GetType()).toString()); } if (i > 31) { throw new IllegalArgumentException( (new StringBuilder()).append("Data value id is too big with ").append(i).append("! (Max is ").append (31).append(")").toString()); } if (watchedObjects.containsKey(Integer.valueOf(i))) { throw new IllegalArgumentException( (new StringBuilder()).append("Duplicate id value for ").append(i).append("!").toString()); } else { var watchableobject = new WatchableObject(integer.intValue(), i, obj); watchedObjects.put(Integer.valueOf(i), watchableobject); return; } }
public static List readWatchableObjects(DataInputStream datainputstream) { ArrayList arraylist = null; for (byte byte0 = datainputstream.readByte(); byte0 != 127; byte0 = datainputstream.readByte()) { if (arraylist == null) { arraylist = new ArrayList(); } int i = (byte0 & 0xe0) >> 5; int j = byte0 & 0x1f; WatchableObject watchableobject = null; switch (i) { case 0: // '\0' watchableobject = new WatchableObject(i, j, Byte.valueOf(datainputstream.readByte())); break; case 1: // '\001' watchableobject = new WatchableObject(i, j, Short.valueOf(datainputstream.readShort())); break; case 2: // '\002' watchableobject = new WatchableObject(i, j, Integer.valueOf(datainputstream.readInt())); break; case 3: // '\003' watchableobject = new WatchableObject(i, j, Float.valueOf(datainputstream.readFloat())); break; case 4: // '\004' watchableobject = new WatchableObject(i, j, datainputstream.readUTF()); break; case 5: // '\005' short word0 = datainputstream.readShort(); byte byte1 = datainputstream.readByte(); short word1 = datainputstream.readShort(); watchableobject = new WatchableObject(i, j, new ItemStack(word0, byte1, word1)); // fall through (not.. c#..) int k2 = datainputstream.readInt(); int l2 = datainputstream.readInt(); int i12 = datainputstream.readInt(); watchableobject = new WatchableObject(i, j, new ChunkCoordinates(k2, l2, i12)); break; case 6: // '\006' int k = datainputstream.readInt(); int l = datainputstream.readInt(); int i1 = datainputstream.readInt(); watchableobject = new WatchableObject(i, j, new ChunkCoordinates(k, l, i1)); break; } arraylist.add(watchableobject); } return(arraylist); }