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


Java ByteEntityData类代码示例

本文整理汇总了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;
}
 
开发者ID:Rsplwe,项目名称:Nukkit-Java9,代码行数:27,代码来源:EntityMinecartAbstract.java

示例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"));
    }
}
 
开发者ID:Rsplwe,项目名称:Nukkit-Java9,代码行数:27,代码来源:EntityTameable.java

示例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;
}
 
开发者ID:JupiterDevelopmentTeam,项目名称:Jupiter,代码行数:26,代码来源:EntityMinecartAbstract.java

示例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));
    }
}
 
开发者ID:Creeperface01,项目名称:NukkitGT,代码行数:20,代码来源:Effect.java

示例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);
    }
}
 
开发者ID:Rsplwe,项目名称:Nukkit-Java9,代码行数:10,代码来源:EntityCreeper.java

示例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)));
    }
}
 
开发者ID:Rsplwe,项目名称:Nukkit-Java9,代码行数:10,代码来源:EntityTameable.java

示例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)));
    }
}
 
开发者ID:Rsplwe,项目名称:Nukkit-Java9,代码行数:10,代码来源:EntityTameable.java

示例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));
    }
}
 
开发者ID:JupiterDevelopmentTeam,项目名称:Jupiter,代码行数:30,代码来源:Entity.java

示例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);
	}
}
 
开发者ID:if-Team,项目名称:Nukkit-Plugins,代码行数:38,代码来源:VirtualItem.java

示例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));
    }
}
 
开发者ID:Creeperface01,项目名称:NukkitGT,代码行数:8,代码来源:EntityWaterAnimal.java

示例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));
    }
}
 
开发者ID:Creeperface01,项目名称:NukkitGT,代码行数:31,代码来源:Effect.java


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