org.bukkit.event.entity.EntityPortalEvent#getTo ( )源码实例Demo

下面列出了org.bukkit.event.entity.EntityPortalEvent#getTo ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

@EventHandler(priority = EventPriority.NORMAL)
public void onEntityPortalTeleport(EntityPortalEvent event) {
    if (!(event.getEntity() instanceof Item))
        return;

    ConsoleLogger.debug("[ENTITYPORTALEVENT] A '" + event.getEntity().getName() + "' is going through a portal!");

    String worldFrom = event.getFrom().getWorld().getName();

    // For some reason, event.getTo().getWorld().getName() is sometimes null
    if (event.getTo() == null || event.getTo().getWorld() == null) { // Not gonna bother checking name; its already a WTF that this is needed
        ConsoleLogger.debug("[ENTITYPORTALEVENT] event.getTo().getWorld().getName() would throw a NPE! Exiting method!");
        return;
    }

    String worldTo = event.getTo().getWorld().getName();
    Group from = groupManager.getGroupFromWorld(worldFrom);
    Group to = groupManager.getGroupFromWorld(worldTo);

    // If the groups are different, cancel the event
    if (!from.equals(to)) {
        ConsoleLogger.debug("[ENTITYPORTALEVENT] Group '" + from.getName() + "' and group '" + to.getName() + "' are different! Canceling event!");
        event.setCancelled(true);
    }
}
 
@EventHandler(priority = EventPriority.NORMAL)
public void onEntityPortalTeleport(EntityPortalEvent event) {
    if (!(event.getEntity() instanceof Item))
        return;

    ConsoleLogger.debug("[ENTITYPORTALEVENT] A '" + event.getEntity().getName() + "' is going through a portal!");

    String worldFrom = event.getFrom().getWorld().getName();

    // For some reason, event.getTo().getWorld().getName() is sometimes null
    if (event.getTo() == null || event.getTo().getWorld() == null) { // Not gonna bother checking name; its already a WTF that this is needed
        ConsoleLogger.debug("[ENTITYPORTALEVENT] event.getTo().getWorld().getName() would throw a NPE! Exiting method!");
        return;
    }

    String worldTo = event.getTo().getWorld().getName();
    Group from = groupManager.getGroupFromWorld(worldFrom);
    Group to = groupManager.getGroupFromWorld(worldTo);

    // If the groups are different, cancel the event
    if (!from.equals(to)) {
        ConsoleLogger.debug("[ENTITYPORTALEVENT] Group '" + from.getName() + "' and group '" + to.getName() + "' are different! Canceling event!");
        event.setCancelled(true);
    }
}
 
源代码3 项目: UHC   文件: EndModule.java
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true)
public void on(EntityPortalEvent event) {
    if (isEnabled()) return;
    if (event.getTo() == null) return;

    if (event.getTo().getWorld().getEnvironment() == World.Environment.THE_END) {
        event.setCancelled(true);
    }
}
 
源代码4 项目: UHC   文件: NetherModule.java
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true)
public void on(EntityPortalEvent event) {
    if (isEnabled()) return;
    if (event.getTo() == null) return;

    if (event.getTo().getWorld().getEnvironment() == World.Environment.NETHER) {
        event.setCancelled(true);
    }
}