本文整理汇总了Java中cn.nukkit.network.protocol.ContainerOpenPacket类的典型用法代码示例。如果您正苦于以下问题:Java ContainerOpenPacket类的具体用法?Java ContainerOpenPacket怎么用?Java ContainerOpenPacket使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ContainerOpenPacket类属于cn.nukkit.network.protocol包,在下文中一共展示了ContainerOpenPacket类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: onOpen
import cn.nukkit.network.protocol.ContainerOpenPacket; //导入依赖的package包/类
@Override
public void onOpen(Player who) {
super.onOpen(who);
ContainerOpenPacket pk = new ContainerOpenPacket();
pk.windowId = who.getWindowId(this);
pk.type = this.getType().getNetworkType();
InventoryHolder holder = this.getHolder();
if (holder instanceof Vector3) {
pk.x = (int) ((Vector3) holder).getX();
pk.y = (int) ((Vector3) holder).getY();
pk.z = (int) ((Vector3) holder).getZ();
} else {
pk.x = pk.y = pk.z = 0;
}
who.dataPacket(pk);
this.sendContents(who);
}
示例2: onOpen
import cn.nukkit.network.protocol.ContainerOpenPacket; //导入依赖的package包/类
@Override
public void onOpen(Player who) {
super.onOpen(who);
ContainerOpenPacket pk = new ContainerOpenPacket();
pk.windowid = (byte) who.getWindowId(this);
pk.type = (byte) this.getType().getNetworkType();
pk.slots = this.getSize();
InventoryHolder holder = this.getHolder();
if (holder instanceof Vector3) {
pk.x = (int) ((Vector3) holder).getX();
pk.y = (int) ((Vector3) holder).getY();
pk.z = (int) ((Vector3) holder).getZ();
} else {
pk.x = pk.y = pk.z = 0;
}
who.dataPacket(pk);
this.sendContents(who);
}
示例3: onOpen
import cn.nukkit.network.protocol.ContainerOpenPacket; //导入依赖的package包/类
@Override
public void onOpen(Player who) {
super.onOpen(who);
ContainerOpenPacket pk = new ContainerOpenPacket();
pk.windowid = (byte) who.getWindowId(this);
pk.type = (byte) this.getType().getNetworkType();
InventoryHolder holder = this.getHolder();
if (holder instanceof Vector3) {
pk.x = (int) ((Vector3) holder).getX();
pk.y = (int) ((Vector3) holder).getY();
pk.z = (int) ((Vector3) holder).getZ();
} else {
pk.x = pk.y = pk.z = 0;
}
who.dataPacket(pk);
this.sendContents(who);
}
示例4: onOpen
import cn.nukkit.network.protocol.ContainerOpenPacket; //导入依赖的package包/类
@Override
public void onOpen(Player who) {
if (who != this.getHolder()) {
return;
}
super.onOpen(who);
ContainerOpenPacket containerOpenPacket = new ContainerOpenPacket();
containerOpenPacket.windowId = who.getWindowId(this);
containerOpenPacket.type = this.getType().getNetworkType();
BlockEnderChest chest = who.getViewingEnderChest();
if (chest != null) {
containerOpenPacket.x = (int) chest.getX();
containerOpenPacket.y = (int) chest.getY();
containerOpenPacket.z = (int) chest.getZ();
} else {
containerOpenPacket.x = containerOpenPacket.y = containerOpenPacket.z = 0;
}
who.dataPacket(containerOpenPacket);
this.sendContents(who);
if (chest != null && chest.getViewers().size() == 1) {
BlockEventPacket blockEventPacket = new BlockEventPacket();
blockEventPacket.x = (int) chest.getX();
blockEventPacket.y = (int) chest.getY();
blockEventPacket.z = (int) chest.getZ();
blockEventPacket.case1 = 1;
blockEventPacket.case2 = 2;
Level level = this.getHolder().getLevel();
if (level != null) {
level.addLevelSoundEvent(LevelSoundEventPacket.SOUND_CHEST_OPEN, 1, -1, this.getHolder().add(0.5, 0.5, 0.5));
level.addChunkPacket((int) this.getHolder().getX() >> 4, (int) this.getHolder().getZ() >> 4, blockEventPacket);
}
}
}
示例5: show
import cn.nukkit.network.protocol.ContainerOpenPacket; //导入依赖的package包/类
public void show(Player player) {
ContainerOpenPacket pk = new ContainerOpenPacket();
pk.type = InventoryNetworkId.WINDOW_COMMAND_BLOCK;
pk.windowId = 64;
pk.x = this.getFloorX();
pk.y = this.getFloorY();
pk.z = this.getFloorZ();
player.dataPacket(pk);
}
示例6: onOpen
import cn.nukkit.network.protocol.ContainerOpenPacket; //导入依赖的package包/类
@Override
public void onOpen(Player who) {
if (who != this.getHolder()) {
return;
}
super.onOpen(who);
ContainerOpenPacket containerOpenPacket = new ContainerOpenPacket();
containerOpenPacket.windowid = (byte) who.getWindowId(this);
containerOpenPacket.type = (byte) this.getType().getNetworkType();
containerOpenPacket.slots = this.getSize();
BlockEnderChest chest = who.getViewingEnderChest();
if (chest != null) {
containerOpenPacket.x = (int) chest.getX();
containerOpenPacket.y = (int) chest.getY();
containerOpenPacket.z = (int) chest.getZ();
} else {
containerOpenPacket.x = containerOpenPacket.y = containerOpenPacket.z = 0;
}
who.dataPacket(containerOpenPacket);
this.sendContents(who);
if (chest != null && chest.getViewers().size() == 1) {
BlockEventPacket blockEventPacket = new BlockEventPacket();
blockEventPacket.x = (int) chest.getX();
blockEventPacket.y = (int) chest.getY();
blockEventPacket.z = (int) chest.getZ();
blockEventPacket.case1 = 1;
blockEventPacket.case2 = 2;
Level level = this.getHolder().getLevel();
if (level != null) {
level.addChunkPacket((int) this.getHolder().getX() >> 4, (int) this.getHolder().getZ() >> 4, blockEventPacket);
}
}
}
示例7: onOpen
import cn.nukkit.network.protocol.ContainerOpenPacket; //导入依赖的package包/类
@Override
public void onOpen(Player who) {
if (who != this.getHolder()) {
return;
}
super.onOpen(who);
ContainerOpenPacket containerOpenPacket = new ContainerOpenPacket();
containerOpenPacket.windowid = (byte) who.getWindowId(this);
containerOpenPacket.type = (byte) this.getType().getNetworkType();
BlockEnderChest chest = who.getViewingEnderChest();
if (chest != null) {
containerOpenPacket.x = (int) chest.getX();
containerOpenPacket.y = (int) chest.getY();
containerOpenPacket.z = (int) chest.getZ();
} else {
containerOpenPacket.x = containerOpenPacket.y = containerOpenPacket.z = 0;
}
who.dataPacket(containerOpenPacket);
this.sendContents(who);
if (chest != null && chest.getViewers().size() == 1) {
BlockEventPacket blockEventPacket = new BlockEventPacket();
blockEventPacket.x = (int) chest.getX();
blockEventPacket.y = (int) chest.getY();
blockEventPacket.z = (int) chest.getZ();
blockEventPacket.case1 = 1;
blockEventPacket.case2 = 2;
Level level = this.getHolder().getLevel();
if (level != null) {
level.addChunkPacket((int) this.getHolder().getX() >> 4, (int) this.getHolder().getZ() >> 4, blockEventPacket);
}
}
}
示例8: onOpen
import cn.nukkit.network.protocol.ContainerOpenPacket; //导入依赖的package包/类
@Override
public void onOpen(Player who) {
super.onOpen(who);
UpdateBlockPacket updateBlockPacket = new UpdateBlockPacket();
// Place a chest block
Vector3 v = new Vector3(who.getFloorX(), who.getFloorY() + 5, who.getFloorZ());
spawnedFakeChestBlocks.put(who.getName().toLowerCase(), v.clone());
updateBlockPacket.x = (int) v.x;
updateBlockPacket.y = (int) v.y;
updateBlockPacket.z = (int) v.z;
updateBlockPacket.blockId = Item.CHEST;
updateBlockPacket.blockData = 0;
updateBlockPacket.flags = UpdateBlockPacket.FLAG_ALL_PRIORITY;
who.dataPacket(updateBlockPacket);
// Place chest data packet
BlockEntityDataPacket blockEntityDataPacket = new BlockEntityDataPacket();
blockEntityDataPacket.x = (int) v.x;
blockEntityDataPacket.y = (int) v.y;
blockEntityDataPacket.z = (int) v.z;
try {
blockEntityDataPacket.namedTag = NBTIO.write(getSpawnCompound(v), ByteOrder.LITTLE_ENDIAN);
} catch (IOException e) {
throw new RuntimeException(e);
}
who.dataPacket(blockEntityDataPacket);
// Open the chest
ContainerOpenPacket containerOpenPacket = new ContainerOpenPacket();
containerOpenPacket.windowid = (byte) who.getWindowId(this);
containerOpenPacket.type = (byte) this.getType().getNetworkType();
containerOpenPacket.x = (int) v.x;
containerOpenPacket.y = (int) v.y;
containerOpenPacket.z = (int) v.z;
who.dataPacket(containerOpenPacket);
this.sendContents(who);
}