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


Java CPacketEntityAction.getAction方法代码示例

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


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

示例1: processEntityAction

import net.minecraft.network.play.client.CPacketEntityAction; //导入方法依赖的package包/类
@Hook("net.minecraft.network.NetHandlerPlayServer#func_147357_a")
public static Hook.Result processEntityAction(NetHandlerPlayServer handler, CPacketEntityAction action) {
	if (action.getAction() == Action.START_FALL_FLYING) {
		PacketThreadUtil.checkThreadAndEnqueue(action, handler, handler.player.getServerWorld());
		handler.player.markPlayerActive();
		if (!handler.player.onGround && handler.player.motionY < 0.0D &&
				!handler.player.isElytraFlying() && !handler.player.isInWater()) {
			ItemStack item = getFormLiving0(handler.player);
			if (item.getItem() == Items.ELYTRA && ItemElytra.isUsable(item))
				handler.player.setElytraFlying();
		} else
			handler.player.clearElytraFlying();
		return Hook.Result.NULL;
	}
	return Hook.Result.VOID;
}
 
开发者ID:NekoCaffeine,项目名称:Alchemy,代码行数:17,代码来源:ExItemElytra.java

示例2: processEntityAction

import net.minecraft.network.play.client.CPacketEntityAction; //导入方法依赖的package包/类
/**
 * Processes a range of action-types: sneaking, sprinting, waking from sleep, opening the inventory or setting jump
 * height of the horse the player is riding
 */
public void processEntityAction(CPacketEntityAction packetIn)
{
    PacketThreadUtil.checkThreadAndEnqueue(packetIn, this, this.playerEntity.getServerWorld());
    this.playerEntity.markPlayerActive();

    switch (packetIn.getAction())
    {
        case START_SNEAKING:
            this.playerEntity.setSneaking(true);
            break;
        case STOP_SNEAKING:
            this.playerEntity.setSneaking(false);
            break;
        case START_SPRINTING:
            this.playerEntity.setSprinting(true);
            break;
        case STOP_SPRINTING:
            this.playerEntity.setSprinting(false);
            break;
        case STOP_SLEEPING:
            this.playerEntity.wakeUpPlayer(false, true, true);
            this.targetPos = new Vec3d(this.playerEntity.posX, this.playerEntity.posY, this.playerEntity.posZ);
            break;
        case START_RIDING_JUMP:

            if (this.playerEntity.getRidingEntity() instanceof IJumpingMount)
            {
                IJumpingMount ijumpingmount1 = (IJumpingMount)this.playerEntity.getRidingEntity();
                int i = packetIn.getAuxData();

                if (ijumpingmount1.canJump() && i > 0)
                {
                    ijumpingmount1.handleStartJump(i);
                }
            }

            break;
        case STOP_RIDING_JUMP:

            if (this.playerEntity.getRidingEntity() instanceof IJumpingMount)
            {
                IJumpingMount ijumpingmount = (IJumpingMount)this.playerEntity.getRidingEntity();
                ijumpingmount.handleStopJump();
            }

            break;
        case OPEN_INVENTORY:

            if (this.playerEntity.getRidingEntity() instanceof EntityHorse)
            {
                ((EntityHorse)this.playerEntity.getRidingEntity()).openGUI(this.playerEntity);
            }

            break;
        case START_FALL_FLYING:

            if (!this.playerEntity.onGround && this.playerEntity.motionY < 0.0D && !this.playerEntity.isElytraFlying() && !this.playerEntity.isInWater())
            {
                ItemStack itemstack = this.playerEntity.getItemStackFromSlot(EntityEquipmentSlot.CHEST);

                if (itemstack != null && itemstack.getItem() == Items.ELYTRA && ItemElytra.isBroken(itemstack))
                {
                    this.playerEntity.setElytraFlying();
                }
            }
            else
            {
                this.playerEntity.clearElytraFlying();
            }

            break;
        default:
            throw new IllegalArgumentException("Invalid client command!");
    }
}
 
开发者ID:F1r3w477,项目名称:CustomWorldGen,代码行数:80,代码来源:NetHandlerPlayServer.java


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