@EventHandler
public void onPlayerPortal(PlayerPortalEvent event) {
if (!event.getCause().equals(TeleportCause.NETHER_PORTAL)) { return; }
Location cornerLocation = PortalUtils.findCornerBlock(event.getFrom()).orElse(null);
if (cornerLocation == null) { debug("Couldnt find cornerLoc for loc: " + Utility.toString(event.getFrom())); return; }
Portal portal = this.module.storage.getPortal(cornerLocation).orElse(null);
if (portal == null) { debug("Couldnt find portal for cornerLoc: " + Utility.toString(cornerLocation)); return; }
CraftoPlayer player = CraftoPlayer.getPlayer(event.getPlayer()).orElse(null);
if (!event.getPlayer().hasPermission("craftoplugin.portal.always-teleport")) {
if (player != null && player.getPlaytime().toMinutes() < this.minPlaytime.toMinutes()) {
debug(event.getPlayer().getName() + " failed to teleport because he doesn't have permission!");
CraftoMessenger.sendFailure(event.getPlayer(), "Du kannst erst ab " + this.minPlaytime.toMinutes() + " Minuten Spielzeit das Portal nutzen!");
event.setCancelled(true);
return;
}
}
event.useTravelAgent(false);
event.setTo(portal.getDestination());
debug("Teleported " + event.getPlayer().getName() + " to dest of portal '" + portal.getName() + "'");
}
PortalListener.java 文件源码
java
阅读 21
收藏 0
点赞 0
评论 0
项目:CraftoPlugin
作者:
评论列表
文章目录