Search in sources :

Example 36 with EnumHand

use of net.minecraft.util.EnumHand in project ProjectE by sinkillerj.

the class GuiHandler method getServerGuiElement.

@Override
public Object getServerGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) {
    TileEntity tile = !ITEM_IDS.contains(ID) ? world.getTileEntity(new BlockPos(x, y, z)) : null;
    // if not a TE, x will hold which hand it came from. 1 for off, 0 otherwise
    EnumHand hand = ITEM_IDS.contains(ID) ? (x == 1 ? EnumHand.OFF_HAND : EnumHand.MAIN_HAND) : null;
    switch(ID) {
        case Constants.ALCH_CHEST_GUI:
            if (tile != null && tile instanceof AlchChestTile)
                return new AlchChestContainer(player.inventory, (AlchChestTile) tile);
            break;
        case Constants.ALCH_BAG_GUI:
            {
                EnumDyeColor color = EnumDyeColor.byMetadata(player.getHeldItem(hand).getItemDamage());
                IItemHandlerModifiable inventory = (IItemHandlerModifiable) player.getCapability(ProjectEAPI.ALCH_BAG_CAPABILITY, null).getBag(color);
                return new AlchBagContainer(player.inventory, hand, inventory);
            }
        case Constants.CONDENSER_GUI:
            if (tile != null && tile instanceof CondenserTile)
                return new CondenserContainer(player.inventory, (CondenserTile) tile);
            break;
        case Constants.TRANSMUTE_STONE_GUI:
            return new TransmutationContainer(player.inventory, new TransmutationInventory(player), null);
        case Constants.RM_FURNACE_GUI:
            if (tile != null && tile instanceof RMFurnaceTile)
                return new RMFurnaceContainer(player.inventory, (RMFurnaceTile) tile);
            break;
        case Constants.DM_FURNACE_GUI:
            if (tile != null && tile instanceof DMFurnaceTile)
                return new DMFurnaceContainer(player.inventory, (DMFurnaceTile) tile);
            break;
        case Constants.COLLECTOR1_GUI:
            if (tile != null && tile instanceof CollectorMK1Tile)
                return new CollectorMK1Container(player.inventory, (CollectorMK1Tile) tile);
            break;
        case Constants.COLLECTOR2_GUI:
            if (tile != null && tile instanceof CollectorMK2Tile)
                return new CollectorMK2Container(player.inventory, (CollectorMK2Tile) tile);
            break;
        case Constants.COLLECTOR3_GUI:
            if (tile != null && tile instanceof CollectorMK3Tile)
                return new CollectorMK3Container(player.inventory, (CollectorMK3Tile) tile);
            break;
        case Constants.RELAY1_GUI:
            if (tile != null && tile instanceof RelayMK1Tile)
                return new RelayMK1Container(player.inventory, (RelayMK1Tile) tile);
            break;
        case Constants.RELAY2_GUI:
            if (tile != null && tile instanceof RelayMK2Tile)
                return new RelayMK2Container(player.inventory, (RelayMK2Tile) tile);
            break;
        case Constants.RELAY3_GUI:
            if (tile != null && tile instanceof RelayMK3Tile)
                return new RelayMK3Container(player.inventory, (RelayMK3Tile) tile);
            break;
        case Constants.MERCURIAL_GUI:
            return new MercurialEyeContainer(player.inventory, new MercurialEyeInventory(player.getHeldItem(hand)));
        case Constants.PHILOS_STONE_GUI:
            return new PhilosStoneContainer(player.inventory);
        case Constants.TRANSMUTATION_GUI:
            return new TransmutationContainer(player.inventory, new TransmutationInventory(player), hand);
        case Constants.ETERNAL_DENSITY_GUI:
            return new EternalDensityContainer(player.inventory, new EternalDensityInventory(player.getHeldItem(hand), player));
        case Constants.CONDENSER_MK2_GUI:
            return new CondenserMK2Container(player.inventory, (CondenserMK2Tile) tile);
    }
    return null;
}
Also used : AlchChestTile(moze_intel.projecte.gameObjs.tiles.AlchChestTile) CollectorMK2Container(moze_intel.projecte.gameObjs.container.CollectorMK2Container) PhilosStoneContainer(moze_intel.projecte.gameObjs.container.PhilosStoneContainer) AlchChestContainer(moze_intel.projecte.gameObjs.container.AlchChestContainer) RelayMK2Container(moze_intel.projecte.gameObjs.container.RelayMK2Container) CollectorMK3Tile(moze_intel.projecte.gameObjs.tiles.CollectorMK3Tile) RelayMK2Tile(moze_intel.projecte.gameObjs.tiles.RelayMK2Tile) MercurialEyeContainer(moze_intel.projecte.gameObjs.container.MercurialEyeContainer) TileEntity(net.minecraft.tileentity.TileEntity) EternalDensityContainer(moze_intel.projecte.gameObjs.container.EternalDensityContainer) IItemHandlerModifiable(net.minecraftforge.items.IItemHandlerModifiable) TransmutationInventory(moze_intel.projecte.gameObjs.container.inventory.TransmutationInventory) EnumHand(net.minecraft.util.EnumHand) CondenserTile(moze_intel.projecte.gameObjs.tiles.CondenserTile) CollectorMK3Container(moze_intel.projecte.gameObjs.container.CollectorMK3Container) MercurialEyeInventory(moze_intel.projecte.gameObjs.container.inventory.MercurialEyeInventory) CondenserContainer(moze_intel.projecte.gameObjs.container.CondenserContainer) CollectorMK2Tile(moze_intel.projecte.gameObjs.tiles.CollectorMK2Tile) BlockPos(net.minecraft.util.math.BlockPos) RMFurnaceContainer(moze_intel.projecte.gameObjs.container.RMFurnaceContainer) RelayMK1Tile(moze_intel.projecte.gameObjs.tiles.RelayMK1Tile) RelayMK3Container(moze_intel.projecte.gameObjs.container.RelayMK3Container) CondenserMK2Container(moze_intel.projecte.gameObjs.container.CondenserMK2Container) AlchBagContainer(moze_intel.projecte.gameObjs.container.AlchBagContainer) EternalDensityInventory(moze_intel.projecte.gameObjs.container.inventory.EternalDensityInventory) DMFurnaceTile(moze_intel.projecte.gameObjs.tiles.DMFurnaceTile) CollectorMK1Tile(moze_intel.projecte.gameObjs.tiles.CollectorMK1Tile) EnumDyeColor(net.minecraft.item.EnumDyeColor) RelayMK1Container(moze_intel.projecte.gameObjs.container.RelayMK1Container) DMFurnaceContainer(moze_intel.projecte.gameObjs.container.DMFurnaceContainer) RMFurnaceTile(moze_intel.projecte.gameObjs.tiles.RMFurnaceTile) CollectorMK1Container(moze_intel.projecte.gameObjs.container.CollectorMK1Container) RelayMK3Tile(moze_intel.projecte.gameObjs.tiles.RelayMK3Tile) TransmutationContainer(moze_intel.projecte.gameObjs.container.TransmutationContainer)

Example 37 with EnumHand

use of net.minecraft.util.EnumHand in project Zollern-Galaxy by alphawolf918.

the class ZGEvents method setFarmland.

/**
 * Set the block at the passed position to farmland.
 *
 * @param event
 * @param world
 * @param pos
 * @param farmland
 */
private void setFarmland(UseHoeEvent event, World world, BlockPos pos, Block farmland) {
    world.setBlockState(pos, farmland.getDefaultState());
    event.setResult(Result.ALLOW);
    SoundEvent stepSound = SoundType.GROUND.getStepSound();
    SoundCategory soundCategory = SoundCategory.BLOCKS;
    float soundVolume = (SoundType.GROUND.getVolume() + 1.0F) / 2.0F;
    float soundPitch = SoundType.GROUND.getPitch() * 0.8F;
    world.playSound(null, pos.getX(), pos.getY(), pos.getZ(), stepSound, soundCategory, soundVolume, soundPitch);
    for (EnumHand hand : CachedEnumZG.valuesHandCached()) {
        event.getEntityPlayer().swingArm(hand);
    }
}
Also used : SoundEvent(net.minecraft.util.SoundEvent) SoundCategory(net.minecraft.util.SoundCategory) EnumHand(net.minecraft.util.EnumHand)

Example 38 with EnumHand

use of net.minecraft.util.EnumHand in project ElementalSorcery by Yuzunyannn.

the class EventServer method onInteractWithEntity.

// 实体交互
@SubscribeEvent
public static void onInteractWithEntity(PlayerInteractEvent.EntityInteract event) {
    EntityPlayer player = event.getEntityPlayer();
    if (player.world.isRemote) {
        if (PocketWatchClient.isActive())
            event.setCanceled(true);
        return;
    }
    Entity target = event.getTarget();
    EnumHand hand = event.getHand();
    if (hand == EnumHand.MAIN_HAND)
        EntityFairyCube.addBehavior(player, BehaviorInteract.interact(target, hand));
    Researcher.onInteractWithEntity(player, target, hand);
    if (PocketWatch.isActive(event.getWorld()))
        event.setCanceled(true);
}
Also used : Entity(net.minecraft.entity.Entity) EnumHand(net.minecraft.util.EnumHand) EntityPlayer(net.minecraft.entity.player.EntityPlayer) SubscribeEvent(net.minecraftforge.fml.common.eventhandler.SubscribeEvent)

Example 39 with EnumHand

use of net.minecraft.util.EnumHand in project ElementalSorcery by Yuzunyannn.

the class ItemRabidLeather method onUpdate.

@Override
public void onUpdate(ItemStack stack, World worldIn, Entity entityIn, int itemSlot, boolean isSelected) {
    if (worldIn.isRemote)
        return;
    EnumHand hand = ItemVortex.inEntityHand(entityIn, stack, itemSlot, isSelected);
    if (hand == null)
        return;
    if (entityIn.ticksExisted % 100 == 0) {
        ((EntityLivingBase) entityIn).addPotionEffect(new PotionEffect(MobEffects.SPEED, 120, 1));
        ((EntityLivingBase) entityIn).addPotionEffect(new PotionEffect(MobEffects.HASTE, 120, 1));
    }
}
Also used : PotionEffect(net.minecraft.potion.PotionEffect) EnumHand(net.minecraft.util.EnumHand) EntityLivingBase(net.minecraft.entity.EntityLivingBase)

Example 40 with EnumHand

use of net.minecraft.util.EnumHand in project ElementalSorcery by Yuzunyannn.

the class ItemVortex method onUpdate.

@Override
public void onUpdate(ItemStack stack, World worldIn, Entity entityIn, int itemSlot, boolean isSelected) {
    EnumHand hand = ItemVortex.inEntityHand(entityIn, stack, itemSlot, isSelected);
    if (hand == null)
        return;
    if (entityIn instanceof EntityPlayer) {
        if (((EntityPlayer) entityIn).isCreative())
            return;
    }
    double f = 0.2;
    entityIn.motionX += (Math.random() - 0.5) * f;
    entityIn.motionY += (Math.random() - 0.5) * f;
    entityIn.motionZ += (Math.random() - 0.5) * f;
}
Also used : EnumHand(net.minecraft.util.EnumHand) EntityPlayer(net.minecraft.entity.player.EntityPlayer)

Aggregations

EnumHand (net.minecraft.util.EnumHand)99 ItemStack (net.minecraft.item.ItemStack)56 EntityPlayer (net.minecraft.entity.player.EntityPlayer)48 BlockPos (net.minecraft.util.math.BlockPos)36 EnumFacing (net.minecraft.util.EnumFacing)25 World (net.minecraft.world.World)24 SubscribeEvent (net.minecraftforge.fml.common.eventhandler.SubscribeEvent)20 EntityLivingBase (net.minecraft.entity.EntityLivingBase)18 Entity (net.minecraft.entity.Entity)17 Item (net.minecraft.item.Item)17 Vec3d (net.minecraft.util.math.Vec3d)16 TileEntity (net.minecraft.tileentity.TileEntity)15 IBlockState (net.minecraft.block.state.IBlockState)14 EntityPlayerMP (net.minecraft.entity.player.EntityPlayerMP)14 RayTraceResult (net.minecraft.util.math.RayTraceResult)13 SideOnly (net.minecraftforge.fml.relauncher.SideOnly)13 Block (net.minecraft.block.Block)12 List (java.util.List)11 EnumActionResult (net.minecraft.util.EnumActionResult)11 AxisAlignedBB (net.minecraft.util.math.AxisAlignedBB)9