Ghaz-ranka

Untitled

May 17th, 2017
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.11 KB | None | 0 0
  1. package com.esinia.server.events;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5.  
  6. import org.spongepowered.api.Sponge;
  7. import org.spongepowered.api.data.key.Keys;
  8. import org.spongepowered.api.entity.living.player.Player;
  9. import org.spongepowered.api.event.Listener;
  10. import org.spongepowered.api.event.filter.Getter;
  11. import org.spongepowered.api.event.filter.cause.Root;
  12. import org.spongepowered.api.event.item.inventory.ClickInventoryEvent;
  13. import org.spongepowered.api.item.ItemTypes;
  14. import org.spongepowered.api.item.inventory.Inventory;
  15. import org.spongepowered.api.item.inventory.InventoryArchetypes;
  16. import org.spongepowered.api.item.inventory.ItemStack;
  17. import org.spongepowered.api.item.inventory.Slot;
  18. import org.spongepowered.api.item.inventory.crafting.CraftingOutput;
  19. import org.spongepowered.api.item.inventory.property.SlotPos;
  20. import org.spongepowered.api.text.Text;
  21. import org.spongepowered.api.text.chat.ChatTypes;
  22. import org.spongepowered.api.text.format.TextColors;
  23.  
  24. public class EventInventoryClick {
  25. @Listener
  26. public void onItemCraft(ClickInventoryEvent event, @Root Player player, @Getter("getTargetInventory") Inventory inventory) {
  27.  
  28. //Sponge.getServer().getBroadcastChannel().send(Text.of());
  29. if (inventory.getName().get().contains("Rudimentary Crafting Table")){
  30. event.setCancelled(true);
  31. if (event.getCursorTransaction().getFinal().get(Keys.DISPLAY_NAME).get().equals(Text.of("Emerald"))){
  32. //Inventory items = player.getInventory().query(ItemTypes.EMERALD);
  33. if (player.getInventory().contains(ItemTypes.EMERALD)){
  34. Sponge.getServer().getBroadcastChannel().send(Text.of("Player has Emerald!"));
  35. //Sponge.getServer().getBroadcastChannel().send(Text.of("Player has Emerald!"));
  36. }
  37. }
  38. }
  39.  
  40.  
  41. if (inventory.getArchetype() == InventoryArchetypes.PLAYER || inventory.getArchetype() == InventoryArchetypes.WORKBENCH) {
  42.  
  43. Inventory craftingOutputs = inventory.query(CraftingOutput.class);
  44.  
  45. craftingOutputs.slots().forEach(slot -> slot.peek().ifPresent(itemStack -> {
  46. event.setCancelled(true);
  47. }));
  48. }
  49. }
  50. }
Add Comment
Please, Sign In to add comment