PlatinumLagg

Untitled

Apr 22nd, 2024
25
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.01 KB | None | 0 0
  1. package net.mcreator.bullshit.procedures;
  2.  
  3. import net.minecraftforge.common.ForgeHooks;
  4.  
  5. import net.minecraft.world.level.LevelAccessor;
  6. import net.minecraft.world.level.Level;
  7. import net.minecraft.world.item.crafting.RecipeType;
  8. import net.minecraft.world.item.ItemStack;
  9. import net.minecraft.world.inventory.Slot;
  10. import net.minecraft.world.entity.player.Player;
  11. import net.minecraft.world.entity.Entity;
  12. import net.minecraft.world.SimpleContainer;
  13.  
  14. import java.util.function.Supplier;
  15. import java.util.Map;
  16.  
  17. public class FurnaceBlockOnTickUpdateProcedure {
  18. public static void execute(LevelAccessor world, Entity entity) {
  19. if (entity == null)
  20. return;
  21. if (entity.getPersistentData().getBoolean("Cooking") == false) {
  22. if (world instanceof Level _level2 && _level2.getRecipeManager()
  23. .getRecipeFor(RecipeType.SMELTING,
  24. new SimpleContainer((entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(0)).getItem() : ItemStack.EMPTY)), _level2)
  25. .isPresent()) {
  26. if (ForgeHooks.getBurnTime((entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(1)).getItem() : ItemStack.EMPTY), null) > 0) {
  27. if (new Object() {
  28. public int getAmount(int sltid) {
  29. if (entity instanceof Player _player && _player.containerMenu instanceof Supplier _current && _current.get() instanceof Map _slots) {
  30. ItemStack stack = ((Slot) _slots.get(sltid)).getItem();
  31. if (stack != null)
  32. return stack.getCount();
  33. }
  34. return 0;
  35. }
  36. }.getAmount(2) <= 62
  37. && ((world instanceof Level _lvlSmeltResult
  38. ? _lvlSmeltResult.getRecipeManager()
  39. .getRecipeFor(RecipeType.SMELTING,
  40. new SimpleContainer(
  41. (entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(0)).getItem() : ItemStack.EMPTY)),
  42. _lvlSmeltResult)
  43. .map(recipe -> recipe.getResultItem(_lvlSmeltResult.registryAccess()).copy()).orElse(ItemStack.EMPTY)
  44. : ItemStack.EMPTY)
  45. .getItem() == (entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(2)).getItem() : ItemStack.EMPTY).getItem()
  46. || (entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(2)).getItem() : ItemStack.EMPTY).getItem() == ItemStack.EMPTY
  47. .getItem())) {
  48. if (entity instanceof Player _player && _player.containerMenu instanceof Supplier _current && _current.get() instanceof Map _slots) {
  49. ItemStack _setstack = (entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(1)).getItem() : ItemStack.EMPTY).copy();
  50. _setstack.setCount((int) (new Object() {
  51. public int getAmount(int sltid) {
  52. if (entity instanceof Player _player && _player.containerMenu instanceof Supplier _current && _current.get() instanceof Map _slots) {
  53. ItemStack stack = ((Slot) _slots.get(sltid)).getItem();
  54. if (stack != null)
  55. return stack.getCount();
  56. }
  57. return 0;
  58. }
  59. }.getAmount(1) - 1));
  60. ((Slot) _slots.get(1)).set(_setstack);
  61. _player.containerMenu.broadcastChanges();
  62. }
  63. entity.getPersistentData().putBoolean("Cooking", true);
  64. entity.getPersistentData().putDouble("Timer", 200);
  65. entity.getPersistentData().putDouble("Burning",
  66. (ForgeHooks.getBurnTime((entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(1)).getItem() : ItemStack.EMPTY), null)));
  67. }
  68. }
  69. }
  70. } else {
  71. if (!((entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(0)).getItem() : ItemStack.EMPTY).getItem() == ItemStack.EMPTY.getItem())) {
  72. entity.getPersistentData().putDouble("Timer", (entity.getPersistentData().getDouble("Timer") - 1));
  73. if (entity.getPersistentData().getDouble("Timer") == 0) {
  74. entity.getPersistentData().putBoolean("Cooking", false);
  75. }
  76. if (entity instanceof Player _player && _player.containerMenu instanceof Supplier _current && _current.get() instanceof Map _slots) {
  77. ItemStack _setstack = (world instanceof Level _lvlSmeltResult
  78. ? _lvlSmeltResult.getRecipeManager()
  79. .getRecipeFor(RecipeType.SMELTING,
  80. new SimpleContainer((entity instanceof Player _plrSlotItem && _plrSlotItem.containerMenu instanceof Supplier _splr && _splr.get() instanceof Map _slt ? ((Slot) _slt.get(0)).getItem() : ItemStack.EMPTY)),
  81. _lvlSmeltResult)
  82. .map(recipe -> recipe.getResultItem(_lvlSmeltResult.registryAccess()).copy()).orElse(ItemStack.EMPTY)
  83. : ItemStack.EMPTY).copy();
  84. _setstack.setCount((int) (new Object() {
  85. public int getAmount(int sltid) {
  86. if (entity instanceof Player _player && _player.containerMenu instanceof Supplier _current && _current.get() instanceof Map _slots) {
  87. ItemStack stack = ((Slot) _slots.get(sltid)).getItem();
  88. if (stack != null)
  89. return stack.getCount();
  90. }
  91. return 0;
  92. }
  93. }.getAmount(2) + 2));
  94. ((Slot) _slots.get(2)).set(_setstack);
  95. _player.containerMenu.broadcastChanges();
  96. }
  97. } else {
  98. entity.getPersistentData().putBoolean("Cooking", false);
  99. entity.getPersistentData().putDouble("Timer", 0);
  100. }
  101. }
  102. if (entity.getPersistentData().getDouble("Burning") > 0 && entity.getPersistentData().getDouble("Burning") <= 0) {
  103. entity.getPersistentData().putDouble("Burning", (entity.getPersistentData().getDouble("Burning") - 1));
  104. }
  105. }
  106. }
  107.  
Add Comment
Please, Sign In to add comment