package WayofTime.alchemicalWizardry.common.block; import WayofTime.alchemicalWizardry.AlchemicalWizardry; import WayofTime.alchemicalWizardry.common.PacketHandler; import cpw.mods.fml.common.network.PacketDispatcher; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IconRegister; import net.minecraft.entity.effect.EntityLightningBolt; import net.minecraft.entity.monster.EntityZombie; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.potion.Potion; import net.minecraft.potion.PotionEffect; import net.minecraft.world.World; public class ImperfectRitualStone extends Block { public ImperfectRitualStone(int id) { super(id, Material.iron); setHardness(2.0F); setResistance(5.0F); setCreativeTab(AlchemicalWizardry.tabBloodMagic); setUnlocalizedName("imperfectRitualStone"); // TODO Auto-generated constructor stub } @Override @SideOnly(Side.CLIENT) public void registerIcons(IconRegister iconRegister) { this.blockIcon = iconRegister.registerIcon("AlchemicalWizardry:ImperfectRitualStone"); } @Override public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float xOff, float yOff, float zOff) { //ItemStack ist = player.getItemInUse(); //if (!world.isRemote) { int blockID = world.getBlockId(x, y + 1, z); if (blockID == Block.waterStill.blockID) { if (!player.capabilities.isCreativeMode && world.isRemote) { PacketDispatcher.sendPacketToServer(PacketHandler.getPacket(player.getEntityName(), -5000, 0)); } if (!world.isRemote) { world.addWeatherEffect(new EntityLightningBolt(world, x, y + 2, z)); // if (!player.capabilities.isCreativeMode) // { // PacketDispatcher.sendPacketToServer(PacketHandler.getPacket(player.getEntityName(), -5000, 0)); // } } world.getWorldInfo().setRaining(true); if (world.isRemote) { world.setRainStrength(1.0F); } world.thunderingStrength = 1.0F; world.getWorldInfo().setThunderTime(0); world.getWorldInfo().setThundering(true); return true; } else if (blockID == Block.coalBlock.blockID) { if (!player.capabilities.isCreativeMode && world.isRemote) { PacketDispatcher.sendPacketToServer(PacketHandler.getPacket(player.getEntityName(), -5000, 0)); } //EntityFallenAngel zomb = new EntityFallenAngel(world); EntityZombie zomb = new EntityZombie(world); zomb.setPosition(x + 0.5, y + 2, z + 0.5); // zomb.setCurrentItemOrArmor(4, new ItemStack(Item.helmetIron.itemID,1,0)); // zomb.setCurrentItemOrArmor(3, new ItemStack(Item.plateIron.itemID,1,0)); // zomb.setCurrentItemOrArmor(2, new ItemStack(Item.legsIron.itemID,1,0)); // zomb.setCurrentItemOrArmor(1, new ItemStack(Item.bootsIron.itemID,1,0)); //zomb.setCurrentItemOrArmor(0, new ItemStack(AlchemicalWizardry.energySword.itemID,1,0)); zomb.addPotionEffect(new PotionEffect(Potion.fireResistance.id, 2000)); zomb.addPotionEffect(new PotionEffect(Potion.damageBoost.id, 20000, 7)); zomb.addPotionEffect(new PotionEffect(Potion.resistance.id, 20000, 3)); if (!world.isRemote) { world.spawnEntityInWorld(zomb); world.addWeatherEffect(new EntityLightningBolt(world, x, y + 2, z)); // if (!player.capabilities.isCreativeMode) // { // PacketDispatcher.sendPacketToServer(PacketHandler.getPacket(player.getEntityName(), -5000, 0)); // } } return true; } else if (blockID == Block.blockLapis.blockID) { if (!player.capabilities.isCreativeMode && world.isRemote) { PacketDispatcher.sendPacketToServer(PacketHandler.getPacket(player.getEntityName(), -5000, 0)); } if (!world.isRemote) { world.addWeatherEffect(new EntityLightningBolt(world, x, y + 2, z)); world.setWorldTime((world.getWorldTime() / 24000) * 24000 + 13800); // if (!player.capabilities.isCreativeMode) // { // PacketDispatcher.sendPacketToServer(PacketHandler.getPacket(player.getEntityName(), -5000, 0)); // } } } else if (blockID == Block.bedrock.blockID) { if (!player.capabilities.isCreativeMode && world.isRemote) { PacketDispatcher.sendPacketToServer(PacketHandler.getPacket(player.getEntityName(), -5000, 0)); } if (!world.isRemote) { world.addWeatherEffect(new EntityLightningBolt(world, x, y + 2, z)); //world.setWorldTime((world.getWorldTime()/24000)*24000+13800); // if (!player.capabilities.isCreativeMode) // { // PacketDispatcher.sendPacketToServer(PacketHandler.getPacket(player.getEntityName(), -5000, 0)); // } } player.addPotionEffect(new PotionEffect(Potion.resistance.id, 60 * 20, 1)); } } return false; } }