本文整理汇总了Java中cn.nukkit.entity.data.ByteEntityData类的典型用法代码示例。如果您正苦于以下问题:Java ByteEntityData类的具体用法?Java ByteEntityData怎么用?Java ByteEntityData使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ByteEntityData类属于cn.nukkit.entity.data包,在下文中一共展示了ByteEntityData类的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: setDisplayBlock
import cn.nukkit.entity.data.ByteEntityData; //导入依赖的package包/类
/**
* Set the minecart display block!
*
* @param block The block that will changed. Set {@code null} for BlockAir
* @return {@code true} if the block is normal block
*/
@API(usage = Usage.MAINTAINED, definition = Definition.UNIVERSAL)
public boolean setDisplayBlock(Block block) {
if (block != null) {
if (block.isNormalBlock()) {
blockInside = block;
int display = blockInside.getId()
| blockInside.getDamage() << 16;
setDataProperty(new ByteEntityData(DATA_MINECART_HAS_DISPLAY, 1));
setDataProperty(new IntEntityData(DATA_MINECART_DISPLAY_BLOCK, display));
setDisplayBlockOffset(6);
}
} else {
// Set block to air (default).
blockInside = null;
setDataProperty(new ByteEntityData(DATA_MINECART_HAS_DISPLAY, 0));
setDataProperty(new IntEntityData(DATA_MINECART_DISPLAY_BLOCK, 0));
setDisplayBlockOffset(0);
}
return true;
}
示例2: initEntity
import cn.nukkit.entity.data.ByteEntityData; //导入依赖的package包/类
@Override
protected void initEntity() {
super.initEntity();
if (getDataProperty(DATA_TAMED_FLAG) == null) {
setDataProperty(new ByteEntityData(DATA_TAMED_FLAG, (byte) 0));
}
if (getDataProperty(DATA_OWNER_NAME) == null) {
setDataProperty(new StringEntityData(DATA_OWNER_NAME, ""));
}
String ownerName = "";
if (namedTag != null) {
if (namedTag.contains("Owner")) {
ownerName = namedTag.getString("Owner");
}
if (ownerName.length() > 0) {
this.setOwnerName(ownerName);
this.setTamed(true);
}
this.setSitting(namedTag.getBoolean("Sitting"));
}
}
示例3: setDisplayBlock
import cn.nukkit.entity.data.ByteEntityData; //导入依赖的package包/类
/**
* Set the minecart display block!
*
* @param block The block that will changed. Set {@code null} for BlockAir
* @return {@code true} if the block is normal block
*/
public boolean setDisplayBlock(Block block) {
if (block != null) {
if (block.isNormalBlock()) {
blockInside = block;
int display = blockInside.getId()
| blockInside.getDamage() << 16;
setDataProperty(new ByteEntityData(DATA_MINECART_HAS_DISPLAY, 1));
setDataProperty(new IntEntityData(DATA_MINECART_DISPLAY_BLOCK, display));
setDisplayBlockOffset(6);
}
} else {
// Set block to air (default).
blockInside = null;
setDataProperty(new ByteEntityData(DATA_MINECART_HAS_DISPLAY, 0));
setDataProperty(new IntEntityData(DATA_MINECART_DISPLAY_BLOCK, 0));
setDisplayBlockOffset(0);
}
return true;
}
示例4: remove
import cn.nukkit.entity.data.ByteEntityData; //导入依赖的package包/类
public void remove(Entity entity) {
if (entity instanceof Player) {
MobEffectPacket pk = new MobEffectPacket();
pk.eid = 0;
pk.effectId = this.getId();
pk.eventId = MobEffectPacket.EVENT_REMOVE;
((Player) entity).dataPacket(pk);
if (this.id == Effect.SPEED || this.id == Effect.SLOWNESS) {
((Player) entity).setMovementSpeed(0.1f);
}
}
if (this.id == Effect.INVISIBILITY) {
entity.setDataFlag(Entity.DATA_FLAGS, Entity.DATA_FLAG_INVISIBLE, false);
entity.setDataProperty(new ByteEntityData(Entity.DATA_SHOW_NAMETAG, 1));
}
}
示例5: setPowered
import cn.nukkit.entity.data.ByteEntityData; //导入依赖的package包/类
public void setPowered(EntityLightningStrike bolt) {
CreeperPowerEvent ev = new CreeperPowerEvent(this, bolt, CreeperPowerEvent.PowerCause.LIGHTNING);
this.getServer().getPluginManager().callEvent(ev);
if (!ev.isCancelled()) {
this.setDataProperty(new ByteEntityData(DATA_POWERED, 1));
this.namedTag.putBoolean("powered", true);
}
}
示例6: setTamed
import cn.nukkit.entity.data.ByteEntityData; //导入依赖的package包/类
public void setTamed(boolean flag) {
int var = getDataPropertyByte(DATA_TAMED_FLAG); // ?
if (flag) {
setDataProperty(new ByteEntityData(DATA_TAMED_FLAG, (byte) (var | 4)));
} else {
setDataProperty(new ByteEntityData(DATA_TAMED_FLAG, (byte) (var & -5)));
}
}
示例7: setSitting
import cn.nukkit.entity.data.ByteEntityData; //导入依赖的package包/类
public void setSitting(boolean flag) {
int var = getDataPropertyByte(DATA_TAMED_FLAG); // ?
if (flag) {
setDataProperty(new ByteEntityData(DATA_TAMED_FLAG, (byte) (var | 1)));
} else {
setDataProperty(new ByteEntityData(DATA_TAMED_FLAG, (byte) (var & -2)));
}
}
示例8: recalculateEffectColor
import cn.nukkit.entity.data.ByteEntityData; //导入依赖的package包/类
protected void recalculateEffectColor() {
int[] color = new int[3];
int count = 0;
boolean ambient = true;
for (Effect effect : this.effects.values()) {
if (effect.isVisible()) {
int[] c = effect.getColor();
color[0] += c[0] * (effect.getAmplifier() + 1);
color[1] += c[1] * (effect.getAmplifier() + 1);
color[2] += c[2] * (effect.getAmplifier() + 1);
count += effect.getAmplifier() + 1;
if (!effect.isAmbient()) {
ambient = false;
}
}
}
if (count > 0) {
int r = (color[0] / count) & 0xff;
int g = (color[1] / count) & 0xff;
int b = (color[2] / count) & 0xff;
this.setDataProperty(new IntEntityData(Entity.DATA_POTION_COLOR, (r << 16) + (g << 8) + b));
this.setDataProperty(new ByteEntityData(Entity.DATA_POTION_AMBIENT, ambient ? 1 : 0));
} else {
this.setDataProperty(new IntEntityData(Entity.DATA_POTION_COLOR, 0));
this.setDataProperty(new ByteEntityData(Entity.DATA_POTION_AMBIENT, 0));
}
}
示例9: spawnTo
import cn.nukkit.entity.data.ByteEntityData; //导入依赖的package包/类
public void spawnTo(Player player){
if(!this.isSpawned(player) && this.canSee(player)){
this.viewers.put(player.getLoaderId(), player);
AddItemEntityPacket addItemEntityPk = new AddItemEntityPacket();
addItemEntityPk.eid = this.id;
addItemEntityPk.x = (float) this.x + 0.5f;
addItemEntityPk.y = (float) this.y;
addItemEntityPk.z = (float) this.z + 0.5f;
addItemEntityPk.speedX = 0;
addItemEntityPk.speedY = 0;
addItemEntityPk.speedZ = 0;
addItemEntityPk.item = this.getItem();
AddEntityPacket addEntityPk = new AddEntityPacket();
addEntityPk.type = 69;
addEntityPk.eid = this.riderId;
addEntityPk.x = addItemEntityPk.x;
addEntityPk.y = addItemEntityPk.y;
addEntityPk.z = addItemEntityPk.z;
addEntityPk.speedX = 0;
addEntityPk.speedY = 0;
addEntityPk.speedZ = 0;
EntityMetadata metadata = new EntityMetadata();
metadata.put(new ByteEntityData(Entity.DATA_NO_AI, 1));
if(ItemDisplay.getInstance().isNametagViewer(player)){
metadata.put(new ByteEntityData(Entity.DATA_SHOW_NAMETAG, 1));
metadata.put(new StringEntityData(Entity.DATA_NAMETAG, Translation.translate("showNametag.toViewer", new String[]{this.name, String.valueOf(this.item.getId()), String.valueOf(this.item.getDamage())})));
}
addEntityPk.metadata = metadata;
SetEntityLinkPacket setEntityLinkPk = new SetEntityLinkPacket();
setEntityLinkPk.rider = this.riderId;
setEntityLinkPk.riding = this.id;
setEntityLinkPk.type = 1;
player.dataPacket(addItemEntityPk);
player.dataPacket(addEntityPk);
player.dataPacket(setEntityLinkPk);
}
}
示例10: initEntity
import cn.nukkit.entity.data.ByteEntityData; //导入依赖的package包/类
@Override
protected void initEntity() {
super.initEntity();
if (this.getDataProperty(DATA_AGEABLE_FLAGS) == null) {
this.setDataProperty(new ByteEntityData(DATA_AGEABLE_FLAGS, 0));
}
}
示例11: add
import cn.nukkit.entity.data.ByteEntityData; //导入依赖的package包/类
public void add(Entity entity, boolean modify) {
if (entity instanceof Player) {
MobEffectPacket pk = new MobEffectPacket();
pk.eid = 0;
pk.effectId = this.getId();
pk.amplifier = this.getAmplifier();
pk.particles = this.isVisible();
pk.duration = this.getDuration();
if (modify) {
pk.eventId = MobEffectPacket.EVENT_MODIFY;
} else {
pk.eventId = MobEffectPacket.EVENT_ADD;
}
((Player) entity).dataPacket(pk);
if (this.id == Effect.SPEED) {
((Player) entity).setMovementSpeed((float) (((this.amplifier + 1) * 0.2 + 1) * 0.1));
}
if (this.id == Effect.SLOWNESS) {
((Player) entity).setMovementSpeed((float) (((this.amplifier + 1) * -0.15 + 1) * 0.1));
}
}
if (this.id == Effect.INVISIBILITY) {
entity.setDataFlag(Entity.DATA_FLAGS, Entity.DATA_FLAG_INVISIBLE, true);
entity.setDataProperty(new ByteEntityData(Entity.DATA_SHOW_NAMETAG, 0));
}
}