Advertisement
djoveryde

Botania Fertiliser

Jun 7th, 2015
292
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.51 KB | None | 0 0
  1. package vazkii.botania.common.item;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5. import java.util.Random;
  6. import net.minecraft.block.Block;
  7. import net.minecraft.entity.player.EntityPlayer;
  8. import net.minecraft.item.ItemStack;
  9. import net.minecraft.util.ChunkCoordinates;
  10. import net.minecraft.world.World;
  11. import net.minecraft.world.WorldProvider;
  12. import vazkii.botania.common.Botania;
  13. import vazkii.botania.common.block.ModBlocks;
  14. import vazkii.botania.common.core.proxy.CommonProxy;
  15.  
  16. public class ItemFertilizer
  17. extends ItemMod
  18. {
  19. public ItemFertilizer()
  20. {
  21. func_77655_b("fertilizer");
  22. }
  23.  
  24. public boolean func_77648_a(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, World par3World, int par4, int par5, int par6, int par7, float par8, float par9, float par10)
  25. {
  26. int range = 3;
  27. if (!par3World.field_72995_K)
  28. {
  29. List<ChunkCoordinates> validCoords = new ArrayList();
  30. for (int i = -4; i < 3; i++) {
  31. for (int j = -4; j < 3; j++) {
  32. for (int k = 2; k >= -2; k--)
  33. {
  34. int x = par4 + i + 1;
  35. int y = par5 + k + 1;
  36. int z = par6 + j + 1;
  37. if ((par3World.func_147437_c(x, y, z)) && ((!par3World.field_73011_w.field_76576_e) || (y < 255)) && (ModBlocks.flower.func_149718_j(par3World, x, y, z))) {
  38. validCoords.add(new ChunkCoordinates(x, y, z));
  39. }
  40. }
  41. }
  42. }
  43. int flowerCount = Math.min(validCoords.size(), par3World.field_73012_v.nextBoolean() ? 3 : 4);
  44. for (int i = 0; i < flowerCount; i++)
  45. {
  46. ChunkCoordinates coords = (ChunkCoordinates)validCoords.get(par3World.field_73012_v.nextInt(validCoords.size()));
  47. validCoords.remove(coords);
  48. par3World.func_147465_d(coords.field_71574_a, coords.field_71572_b, coords.field_71573_c, ModBlocks.flower, par3World.field_73012_v.nextInt(16), 3);
  49. }
  50. par1ItemStack.field_77994_a -= 1;
  51. }
  52. else
  53. {
  54. for (int i = 0; i < 15; i++)
  55. {
  56. double x = par4 - 3 + par3World.field_73012_v.nextInt(7) + Math.random();
  57. double y = par5 + 1;
  58. double z = par6 - 3 + par3World.field_73012_v.nextInt(7) + Math.random();
  59. float red = (float)Math.random();
  60. float green = (float)Math.random();
  61. float blue = (float)Math.random();
  62. Botania.proxy.wispFX(par3World, x, y, z, red, green, blue, 0.15F + (float)Math.random() * 0.25F, -(float)Math.random() * 0.1F - 0.05F);
  63. }
  64. }
  65. return true;
  66. }
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement