Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.camellias.temporalmod.blocks;
- import java.util.List;
- import java.util.Random;
- import javax.annotation.Nullable;
- import com.camellias.temporalmod.init.ModBlocks;
- import com.camellias.temporalmod.init.ModItems;
- import com.camellias.temporalmod.tileentities.TileEntityTimeAnomaly;
- import com.camellias.temporalmod.util.IHasModel;
- import ca.weblite.objc.Client;
- import net.minecraft.block.Block;
- import net.minecraft.block.material.Material;
- import net.minecraft.block.state.IBlockState;
- import net.minecraft.entity.Entity;
- import net.minecraft.entity.EntityLivingBase;
- import net.minecraft.entity.player.EntityPlayer;
- import net.minecraft.init.MobEffects;
- import net.minecraft.item.ItemBlock;
- import net.minecraft.item.ItemStack;
- import net.minecraft.potion.Potion;
- import net.minecraft.potion.PotionEffect;
- import net.minecraft.tileentity.TileEntity;
- import net.minecraft.tileentity.TileEntityBanner;
- import net.minecraft.tileentity.TileEntityBeacon;
- import net.minecraft.util.EnumBlockRenderType;
- import net.minecraft.util.EnumParticleTypes;
- import net.minecraft.util.math.AxisAlignedBB;
- import net.minecraft.util.math.BlockPos;
- import net.minecraft.world.IBlockAccess;
- import net.minecraft.world.World;
- import net.minecraftforge.client.event.ClientChatEvent;
- import net.minecraftforge.fml.relauncher.Side;
- import net.minecraftforge.fml.relauncher.SideOnly;
- public class BlockTimeAnomaly extends Block implements IHasModel
- {
- public BlockTimeAnomaly(Material materialIn, String name)
- {
- super(materialIn);
- this.setUnlocalizedName(name);
- this.setRegistryName(name);
- ModBlocks.BLOCKS.add(this);
- ModItems.ITEMS.add(new ItemBlock(this).setRegistryName(this.getUnlocalizedName()));
- }
- @Nullable
- public AxisAlignedBB getCollisionBoundingBox(IBlockState blockState, IBlockAccess worldIn, BlockPos pos)
- {
- return NULL_AABB;
- }
- @Override
- public boolean isPassable(IBlockAccess worldIn, BlockPos pos)
- {
- return true;
- }
- @SideOnly(Side.CLIENT)
- public void randomDisplayTick(IBlockState stateIn, World worldIn, BlockPos pos, Random rand)
- {
- for (int i = 0; i < 4; ++i)
- {
- double d0 = (double)((float)pos.getX() + rand.nextFloat());
- double d1 = (double)((float)pos.getY() + rand.nextFloat());
- double d2 = (double)((float)pos.getZ() + rand.nextFloat());
- double d3 = ((double)rand.nextFloat() - 0.5D) * 0.5D;
- double d4 = ((double)rand.nextFloat() - 0.5D) * 0.5D;
- double d5 = ((double)rand.nextFloat() - 0.5D) * 0.5D;
- int j = rand.nextInt(2) * 2 - 1;
- if (worldIn.getBlockState(pos.west()).getBlock() != this && worldIn.getBlockState(pos.east()).getBlock() != this)
- {
- d0 = (double)pos.getX() + 0.5D + 0.25D * (double)j;
- d3 = (double)(rand.nextFloat() * 2.0F * (float)j);
- }
- else
- {
- d2 = (double)pos.getZ() + 0.5D + 0.25D * (double)j;
- d5 = (double)(rand.nextFloat() * 2.0F * (float)j);
- }
- worldIn.spawnParticle(EnumParticleTypes.END_ROD, d0, d1, d2, d3, d4, d5);
- }
- }
- @Override
- public int quantityDropped(Random random)
- {
- return 0;
- }
- @Override
- public TileEntity createNewTileEntity(World worldIn, int meta)
- {
- return new TileEntityTimeAnomaly();
- }
- @Override
- public void onBlockPlacedBy(World worldIn, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack)
- {
- super.onBlockPlacedBy(worldIn, pos, state, placer, stack);
- if (stack.hasDisplayName())
- {
- TileEntity tileentity = worldIn.getTileEntity(pos);
- if (tileentity instanceof TileEntityTimeAnomaly)
- {
- ((TileEntityTimeAnomaly)tileentity).setName(stack.getDisplayName());
- }
- }
- }
- @Override
- public boolean isOpaqueCube(IBlockState state)
- {
- return false;
- }
- @Override
- public boolean isFullCube(IBlockState state)
- {
- return false;
- }
- @Override
- public EnumBlockRenderType getRenderType(IBlockState state)
- {
- return EnumBlockRenderType.INVISIBLE;
- }
- /*public void addCollisionBoxToList(IBlockState state, World world, BlockPos pos, AxisAlignedBB entityBox, List<AxisAlignedBB> collidingBoxes, Entity entity)
- {
- if(entity instanceof EntityPlayer)
- {
- ((EntityPlayer) entity).addPotionEffect(new PotionEffect(MobEffects.SPEED, 2, 20));
- }
- super.addCollisionBoxToList(pos, entityBox, collidingBoxes, entityBox);
- }*/
- @Override
- public void registerModels()
- {
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment