Esempio n. 1
0
	def Packet0x23(self, buff):
		Location = buff.readPosition();
		BlockID = buff.readVarInt();
		
		block = Block();
		block.location = Location;
		block.blockID = BlockID;
		self.bot.world.blocks[Location.get()] = block;
		print("block: " + str(BlockID) + " - location: " + str(Location.get()));
Esempio n. 2
0
	def Packet0x22(self, buff):
		ChunkX = buff.readInt()
		ChunkZ = buff.readInt()
		Recordcount = buff.readVarInt()
		
		for i in range(Recordcount):
			position = buff.readShort();
			x = position & 0xF000;
			y = position & 0x00FF;
			z = position & 0x0F00;
			BlockID = buff.readVarInt();
			block = Block();
			block.location.set(x+ChunkX, y, z+ChunkZ);
			block.blockID = BlockID;
			self.bot.world.blocks[(x+ChunkX, y, z+ChunkZ)] = block;
Esempio n. 3
0
	def Packet0x21(self, buff):
		ChunkX = buff.readInt();
		ChunkZ = buff.readInt();
		GroundUpcontinuous = buff.readBool();	
		Primarybitmap = buff.readUnsignedByte();
		Size = buff.readVarInt();
		Data = "";
		for i in range(Size/12288):
			if Primarybitmap & (1 << i):
				for j in range(4096):
					blockID = (buff.readByte() << 8) + buff.readByte();
					metaData = BlockID & 15;
					blockID <<= 4;
					x = ChunckX+(j-(j%256)%4096);
					y = (i*16)+(j%16);
					z = ChunckZ+(j-(j%16)%256)-(j%256);
					z = position & 0x0F00;
					block = Block();
					block.location.set(x+ChunkX, y, z+ChunkZ);
					block.blockID = blockID;
					block.metaData = metaData;
					self.bot.world.blocks[(x+ChunkX, y, z+ChunkZ)] = block;