Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @EventHandler(
- priority = EventPriority.MONITOR,
- ignoreCancelled = true
- )
- public void onSlimeInteract(PlayerInteractEntityEvent event) {
- if(event.getRightClicked().getType() == EntityType.SLIME) {
- Player clicker = event.getPlayer();
- NMSEntityBase entityBase = this.nmsManager.getNMSEntityBase(event.getRightClicked());
- if(entityBase != null && entityBase.getHologramLine() instanceof CraftTouchSlimeLine && !isSpectatorMode(clicker)) {
- CraftTouchSlimeLine touchSlime = (CraftTouchSlimeLine)entityBase.getHologramLine();
- if(touchSlime.getTouchablePiece().getTouchHandler() != null && touchSlime.getParent().getVisibilityManager().isVisibleTo(clicker)) {
- Long lastClick = (Long)this.anticlickSpam.get(clicker);
- if(lastClick != null && System.currentTimeMillis() - lastClick.longValue() < 100L) {
- return;
- }
- this.anticlickSpam.put(event.getPlayer(), Long.valueOf(System.currentTimeMillis()));
- try {
- touchSlime.getTouchablePiece().getTouchHandler().onTouch(event.getPlayer());
- } catch (Throwable var8) {
- Plugin plugin = touchSlime.getParent() instanceof PluginHologram?((PluginHologram)touchSlime.getParent()).getOwner():HolographicDisplays.getInstance();
- HolographicDisplays.getInstance().getLogger().log(Level.WARNING, "The plugin " + ((Plugin)plugin).getName() + " generated an exception when the player " + event.getPlayer().getName() + " touched a hologram.", var8);
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement