当前位置: 首页>>代码示例>>Java>>正文


Java PacketBuffer.writeBytes方法代码示例

本文整理汇总了Java中io.gomint.jraknet.PacketBuffer.writeBytes方法的典型用法代码示例。如果您正苦于以下问题:Java PacketBuffer.writeBytes方法的具体用法?Java PacketBuffer.writeBytes怎么用?Java PacketBuffer.writeBytes使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在io.gomint.jraknet.PacketBuffer的用法示例。


在下文中一共展示了PacketBuffer.writeBytes方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: serialize

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
@Override
public void serialize( PacketBuffer buffer ) {
    // Block position
    writeBlockPosition( this.position, buffer );

    // NBT Tag
    NBTTagCompound compound = new NBTTagCompound( "" );
    this.tileEntity.toCompound( compound );

    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    NBTWriter nbtWriter = new NBTWriter( baos, ByteOrder.LITTLE_ENDIAN );
    nbtWriter.setUseVarint( true );
    try {
        nbtWriter.write( compound );
    } catch ( IOException e ) {
        e.printStackTrace();
    }

    buffer.writeBytes( baos.toByteArray() );
}
 
开发者ID:GoMint,项目名称:GoMint,代码行数:21,代码来源:PacketTileEntityData.java

示例2: serialize

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
@Override
public void serialize( PacketBuffer buffer ) {
    buffer.writeString( this.commandName );
    buffer.writeString( this.overloadName );

    buffer.writeUnsignedVarInt( this.unknown1 );
    buffer.writeUnsignedVarInt( this.unknown2 );

    buffer.writeBoolean( this.hasOutput );
    buffer.writeUnsignedVarLong( this.clientGuid );

    buffer.writeString( this.input );
    buffer.writeString( this.output );

    buffer.writeBytes( this.data );
}
 
开发者ID:GoMint,项目名称:Proxy,代码行数:17,代码来源:PacketCommandStep.java

示例3: serialize

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
@Override
public void serialize( PacketBuffer buffer ) {
    buffer.writeSignedVarInt( this.x );
    buffer.writeSignedVarInt( this.z );
    buffer.writeUnsignedVarInt( this.data.length );
    buffer.writeBytes( this.data );
}
 
开发者ID:GoMint,项目名称:GoMint,代码行数:8,代码来源:PacketWorldChunk.java

示例4: writeItemStack

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
/**
 * Write a item stack to the packet buffer
 *
 * @param itemStack which should be written
 * @param buffer    which should be used to write to
 */
public static void writeItemStack( ItemStack itemStack, PacketBuffer buffer ) {
    if ( itemStack == null || itemStack instanceof ItemAir ) {
        buffer.writeSignedVarInt( 0 );
        return;
    }

    buffer.writeSignedVarInt( ( (io.gomint.server.inventory.item.ItemStack) itemStack ).getMaterial() );
    buffer.writeSignedVarInt( ( itemStack.getData() << 8 ) + ( itemStack.getAmount() & 0xff ) );

    NBTTagCompound compound = itemStack.getNbtData();
    if ( compound == null ) {
        buffer.writeLShort( (short) 0 );
    } else {
        try {
            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
            compound.writeTo( byteArrayOutputStream, false, ByteOrder.LITTLE_ENDIAN );
            buffer.writeLShort( (short) byteArrayOutputStream.size() );
            buffer.writeBytes( byteArrayOutputStream.toByteArray() );
        } catch ( IOException e ) {
            e.printStackTrace();
            buffer.writeLShort( (short) 0 );
        }
    }

    // canPlace and canBreak
    buffer.writeSignedVarInt( 0 );
    buffer.writeSignedVarInt( 0 );
}
 
开发者ID:GoMint,项目名称:GoMint,代码行数:35,代码来源:Packet.java

示例5: writeItemStack

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
public static void writeItemStack( ItemStack itemStack, PacketBuffer buffer ) {
	if ( itemStack == null || itemStack.getMaterial() == Material.AIR ) {
		buffer.writeSignedVarInt( 0 );
		return;
	}

	buffer.writeSignedVarInt( EnumConnectors.MATERIAL_CONNECTOR.convert( itemStack.getMaterial() ).getOldId() );
	buffer.writeSignedVarInt( ( itemStack.getData() << 8 ) + ( itemStack.getAmount() & 0xff ) );

	NBTTagCompound compound = itemStack.getNbtData();
	if ( compound == null ) {
		buffer.writeLShort( (short) 0 );
	} else {
		try {
			ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
			compound.writeTo( byteArrayOutputStream, false, ByteOrder.LITTLE_ENDIAN );
			buffer.writeLShort( (short) byteArrayOutputStream.size() );
			buffer.writeBytes( byteArrayOutputStream.toByteArray() );
		} catch ( IOException e ) {
			e.printStackTrace();
			buffer.writeLShort( (short) 0 );
		}
	}

	// canPlace and canBreak
	buffer.writeSignedVarInt( 0 );
	buffer.writeSignedVarInt( 0 );
}
 
开发者ID:GoMint,项目名称:Proxy,代码行数:29,代码来源:Packet.java

示例6: serialize

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
@Override
public void serialize( PacketBuffer buffer ) {
	buffer.writeInt( this.protocol );

	buffer.writeUnsignedVarInt( this.payload.length );
	buffer.writeBytes( this.payload );
}
 
开发者ID:GoMint,项目名称:Proxy,代码行数:8,代码来源:PacketClientHandshake.java

示例7: serialize

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
@Override
public void serialize( PacketBuffer buffer ) {
    buffer.writeSignedVarLong( this.entityId );
    buffer.writeUnsignedVarLong( this.entityId );

    buffer.writeBytes( this.data );
}
 
开发者ID:GoMint,项目名称:ProxProx,代码行数:8,代码来源:PacketAddItem.java

示例8: serialize

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
@Override
public void serialize( PacketBuffer buffer ) {
    buffer.writeByte( (byte) this.mode );
    buffer.writeByte( (byte) this.channel );

    if ( this.mode == 0 ) {
        buffer.writeString( this.channelName );
    }

    if ( this.mode == 2 ) {
        buffer.writeShort( (short) this.data.length );
        buffer.writeBytes( this.data );
    }
}
 
开发者ID:GoMint,项目名称:ProxProx,代码行数:15,代码来源:PacketCustomProtocol.java

示例9: serialize

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
@Override
public void serialize( PacketBuffer buffer ) {
    buffer.writeSignedVarInt( this.chunkX );
    buffer.writeSignedVarInt( this.chunkZ );
    buffer.writeUnsignedVarInt( this.chunkData.length );
    buffer.writeBytes( this.chunkData );
}
 
开发者ID:GoMint,项目名称:ProxProx,代码行数:8,代码来源:PacketFullChunkData.java

示例10: serialize

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
@Override
public void serialize( PacketBuffer buffer ) {
    buffer.writeUUID( this.uuid );
    buffer.writeString( this.name );
    buffer.writeSignedVarLong( this.entityId );
    buffer.writeUnsignedVarLong( this.entityId );

    buffer.writeBytes( this.data );
}
 
开发者ID:GoMint,项目名称:ProxProx,代码行数:10,代码来源:PacketAddPlayer.java

示例11: send

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
public void send( byte packetId, PacketBuffer buffer ) {
    this.debugger.addPacket( "UpStream", "Client", packetId, buffer );

    byte[] data = new byte[buffer.getRemaining()];
    buffer.readBytes( data );

    PacketBuffer packetBuffer = new PacketBuffer( 64 );
    packetBuffer.writeByte( packetId );
    packetBuffer.writeShort( (short) 0 );
    packetBuffer.writeBytes( data );

    this.packetQueue.add( packetBuffer );
}
 
开发者ID:GoMint,项目名称:ProxProx,代码行数:14,代码来源:UpstreamConnection.java

示例12: writeItemStack

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
/**
 * Write a item stack to the packet buffer
 *
 * @param itemStack which should be written
 * @param buffer    which should be used to write to
 */
public static void writeItemStack( ItemStack itemStack, PacketBuffer buffer ) {
	if ( itemStack == null || itemStack.getMaterial() == 0 ) {
		buffer.writeSignedVarInt( 0 );
		return;
	}

	buffer.writeSignedVarInt( itemStack.getMaterial() );
	buffer.writeSignedVarInt( ( itemStack.getData() << 8 ) + ( itemStack.getAmount() & 0xff ) );

	NBTTagCompound compound = itemStack.getNbtData();
	if ( compound == null ) {
		buffer.writeLShort( (short) 0 );
	} else {
		try {
			ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
			compound.writeTo( byteArrayOutputStream, false, ByteOrder.LITTLE_ENDIAN );
			buffer.writeLShort( (short) byteArrayOutputStream.size() );
			buffer.writeBytes( byteArrayOutputStream.toByteArray() );
		} catch ( IOException e ) {
			e.printStackTrace();
			buffer.writeLShort( (short) 0 );
		}
	}

	// canPlace and canBreak
	buffer.writeSignedVarInt( 0 );
	buffer.writeSignedVarInt( 0 );
}
 
开发者ID:GoMint,项目名称:ProxProx,代码行数:35,代码来源:Packet.java

示例13: createPackagedData

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
/**
 * Invoked by the world's asynchronous worker thread once the chunk is supposed
 * to actually pack itself into a world chunk packet.
 *
 * @return The world chunk packet that is to be sent
 */
PacketWorldChunk createPackagedData() {
    PacketBuffer buffer = new PacketBuffer( 512 );

    // Detect how much data we can skip
    int topEmpty = 16;
    for ( int i = 15; i >= 0; i-- ) {
        ChunkSlice slice = chunkSlices[i];
        if ( slice == null || slice.isAllAir() ) {
            topEmpty = i;
        } else {
            break;
        }
    }

    buffer.writeByte( (byte) topEmpty );
    for ( int i = 0; i < topEmpty; i++ ) {
        buffer.writeByte( (byte) 0 );
        buffer.writeBytes( ensureSlice( i ).getBytes() );
    }

    buffer.writeBytes( this.height );
    buffer.writeBytes( this.biomes );
    buffer.writeSignedVarInt( 0 );
    buffer.writeSignedVarInt( 0 );

    // Write tile entity data
    Collection<TileEntity> tileEntities = this.getTileEntities();
    if ( tileEntities.size() > 0 ) {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        for ( TileEntity tileEntity : tileEntities ) {
            NBTTagCompound compound = new NBTTagCompound( "" );
            tileEntity.toCompound( compound );

            NBTWriter nbtWriter = new NBTWriter( baos, ByteOrder.LITTLE_ENDIAN );
            nbtWriter.setUseVarint( true );
            try {
                nbtWriter.write( compound );
            } catch ( IOException e ) {
                e.printStackTrace();
            }
        }

        buffer.writeBytes( baos.toByteArray() );
    }

    PacketWorldChunk packet = new PacketWorldChunk();
    packet.setX( this.x );
    packet.setZ( this.z );
    packet.setData( Arrays.copyOf( buffer.getBuffer(), buffer.getPosition() ) );
    return packet;
}
 
开发者ID:GoMint,项目名称:GoMint,代码行数:58,代码来源:ChunkAdapter.java

示例14: serialize

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
@Override
public void serialize( PacketBuffer buffer ) {
    buffer.writeBytes( this.payload );
}
 
开发者ID:GoMint,项目名称:GoMint,代码行数:5,代码来源:PacketBatch.java

示例15: serialize

import io.gomint.jraknet.PacketBuffer; //导入方法依赖的package包/类
@Override
public void serialize( PacketBuffer buffer ) {
    buffer.writeBytes( this.data );
}
 
开发者ID:GoMint,项目名称:Proxy,代码行数:5,代码来源:PacketDump.java


注:本文中的io.gomint.jraknet.PacketBuffer.writeBytes方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。