Buggy code:
public class TeleportCommand extends MultiverseCommand { private SafeTTeleporter playerTeleporter ; public TeleportCommand ( MultiverseCore plugin ) { } @ Override public void runCommand ( CommandSender sender , List < String > args ) { CommandSender teleporter = sender ; Player teleportee = null ; if ( sender instanceof Player ) { teleporter = ( ( Player ) ( sender ) ) ; } String destinationName ; if ( ( args . size ( ) ) == 2 ) { teleportee = this . plugin . getServer ( ) . getPlayer ( args . get ( 0 ) ) ; if ( teleportee == null ) { sender . sendMessage ( ( "Sorry,<seq2seq4repair_space>I<seq2seq4repair_space>couldn't<seq2seq4repair_space>find<seq2seq4repair_space>player:<seq2seq4repair_space>" + ( args . get ( 0 ) ) ) ) ; return ; } destinationName = args . get ( 1 ) ; } else { destinationName = args . get ( 0 ) ; if ( ! ( sender instanceof Player ) ) { sender . sendMessage ( "From<seq2seq4repair_space>the<seq2seq4repair_space>console,<seq2seq4repair_space>you<seq2seq4repair_space>must<seq2seq4repair_space>specify<seq2seq4repair_space>a<seq2seq4repair_space>player<seq2seq4repair_space>to<seq2seq4repair_space>teleport" ) ; return ; } teleportee = ( ( Player ) ( sender ) ) ; } if ( destinationName . matches ( "(?i)cannon-[\\d]+(\\.[\\d]+)?" ) ) { String [ ] cannonSpeed = destinationName . split ( "-" ) ; try { double speed = Double . parseDouble ( cannonSpeed [ 1 ] ) ; destinationName = ( ( ( ( ( ( ( ( ( ( ( ( "ca:" + ( teleportee . getWorld ( ) . getName ( ) ) ) + ":" ) + ( teleportee . getLocation ( ) . getX ( ) ) ) + "," ) + ( teleportee . getLocation ( ) . getY ( ) ) ) + "," ) + ( teleportee . getLocation ( ) . getZ ( ) ) ) + ":" ) + ( teleportee . getLocation ( ) . getPitch ( ) ) ) + ":" ) + ( teleportee . getLocation ( ) . getYaw ( ) ) ) + ":" ) + speed ; } catch ( Exception e ) { destinationName = "i:invalid" ; } } DestinationFactory df = this . plugin . getDestFactory ( ) ; MVDestination d = df . getDestination ( destinationName ) ; MVTeleportEvent teleportEvent = new MVTeleportEvent ( d , teleportee , teleporter , true ) ; this . plugin . getServer ( ) . getPluginManager ( ) . callEvent ( teleportEvent ) ; if ( teleportEvent . isCancelled ( ) ) { this . plugin . log ( Level . FINE , "Someone<seq2seq4repair_space>else<seq2seq4repair_space>cancelled<seq2seq4repair_space>the<seq2seq4repair_space>MVTeleport<seq2seq4repair_space>Event!!!" ) ; return ; } if ( ( d != null ) && ( d instanceof InvalidDestination ) ) { sender . sendMessage ( ( ( "Multiverse<seq2seq4repair_space>does<seq2seq4repair_space>not<seq2seq4repair_space>know<seq2seq4repair_space>how<seq2seq4repair_space>to<seq2seq4repair_space>take<seq2seq4repair_space>you<seq2seq4repair_space>to:<seq2seq4repair_space>" + ( ChatColor . RED ) ) + destinationName ) ) ; return ; } if ( ! ( this . checkSendPermissions ( teleporter , teleportee , d ) ) ) { return ; } <START_BUG> if ( ( teleporter != null ) && ( ! ( this . plugin . getMVPerms ( ) . canEnterDestination ( teleporter , d ) ) ) ) { <END_BUG> if ( teleportee . equals ( teleporter ) ) { teleporter . sendMessage ( ( ( "Doesn't<seq2seq4repair_space>look<seq2seq4repair_space>like<seq2seq4repair_space>you're<seq2seq4repair_space>allowed<seq2seq4repair_space>to<seq2seq4repair_space>go<seq2seq4repair_space>" + ( ChatColor . RED ) ) + "there..." ) ) ; } else { teleporter . sendMessage ( ( ( ( ( ( ( "Doesn't<seq2seq4repair_space>look<seq2seq4repair_space>like<seq2seq4repair_space>you're<seq2seq4repair_space>allowed<seq2seq4repair_space>to<seq2seq4repair_space>send<seq2seq4repair_space>" + ( ChatColor . GOLD ) ) + ( teleportee . getName ( ) ) ) + ( ChatColor . WHITE ) ) + "<seq2seq4repair_space>to<seq2seq4repair_space>" ) + ( ChatColor . RED ) ) + "there..." ) ) ; } return ; } else if ( ( teleporter != null ) && ( ! ( this . plugin . getMVPerms ( ) . canTravelFromLocation ( teleporter , d . getLocation ( teleportee ) ) ) ) ) { if ( teleportee . equals ( teleporter ) ) { teleporter . sendMessage ( ( ( ( ( "DOH!<seq2seq4repair_space>Doesn't<seq2seq4repair_space>look<seq2seq4repair_space>like<seq2seq4repair_space>you<seq2seq4repair_space>can<seq2seq4repair_space>get<seq2seq4repair_space>to<seq2seq4repair_space>" + ( ChatColor . RED ) ) + "THERE<seq2seq4repair_space>from<seq2seq4repair_space>" ) + ( ChatColor . GREEN ) ) + ( ( ( Player ) ( teleporter ) ) . getWorld ( ) . getName ( ) ) ) ) ; } else { teleporter . sendMessage ( ( ( ( ( ( "DOH!<seq2seq4repair_space>Doesn't<seq2seq4repair_space>look<seq2seq4repair_space>like<seq2seq4repair_space>" + ( ChatColor . GREEN ) ) + ( ( ( Player ) ( teleporter ) ) . getWorld ( ) . getName ( ) ) ) + "<seq2seq4repair_space>can<seq2seq4repair_space>get<seq2seq4repair_space>to<seq2seq4repair_space>" ) + ( ChatColor . RED ) ) + "THERE<seq2seq4repair_space>from<seq2seq4repair_space>where<seq2seq4repair_space>they<seq2seq4repair_space>are..." ) ) ; } return ; } if ( d instanceof WorldDestination ) { World w = d . getLocation ( teleportee ) . getWorld ( ) ; if ( teleportee . getWorld ( ) . equals ( w ) ) { if ( teleporter . equals ( teleportee ) ) { if ( ! ( this . plugin . getMVPerms ( ) . hasPermission ( teleporter , "multiverse.core.spawn.self" , true ) ) ) { teleporter . sendMessage ( "Sorry<seq2seq4repair_space>you<seq2seq4repair_space>don't<seq2seq4repair_space>have<seq2seq4repair_space>permission<seq2seq4repair_space>to<seq2seq4repair_space>go<seq2seq4repair_space>to<seq2seq4repair_space>the<seq2seq4repair_space>world<seq2seq4repair_space>spawn!" ) ; teleporter . sendMessage ( ( ( ChatColor . RED ) + "<seq2seq4repair_space>(multiverse.core.spawn.self)" ) ) ; return ; } } else { if ( ! ( this . plugin . getMVPerms ( ) . hasPermission ( teleporter , "multiverse.core.spawn.other" , true ) ) ) { teleporter . sendMessage ( ( ( "Sorry<seq2seq4repair_space>you<seq2seq4repair_space>don't<seq2seq4repair_space>have<seq2seq4repair_space>permission<seq2seq4repair_space>to<seq2seq4repair_space>send<seq2seq4repair_space>" + ( teleportee . getDisplayName ( ) ) ) + "to<seq2seq4repair_space>the<seq2seq4repair_space>world<seq2seq4repair_space>spawn!" ) ) ; teleporter . sendMessage ( ( ( ChatColor . RED ) + "<seq2seq4repair_space>(multiverse.core.spawn.other)" ) ) ; return ; } } } } if ( ( d . getLocation ( teleportee ) ) == null ) { teleporter . sendMessage ( "Sorry<seq2seq4repair_space>Boss,<seq2seq4repair_space>I<seq2seq4repair_space>tried<seq2seq4repair_space>everything,<seq2seq4repair_space>but<seq2seq4repair_space>just<seq2seq4repair_space>couldn't<seq2seq4repair_space>teleport<seq2seq4repair_space>ya<seq2seq4repair_space>there!" ) ; return ; } if ( ! ( this . playerTeleporter . safelyTeleport ( teleporter , teleportee , d ) ) ) { this . plugin . log ( Level . FINE , ( ( ( "Could<seq2seq4repair_space>not<seq2seq4repair_space>teleport<seq2seq4repair_space>" + ( teleportee . getName ( ) ) ) + "<seq2seq4repair_space>to<seq2seq4repair_space>" ) + ( LocationManipulation . strCoordsRaw ( d . getLocation ( teleportee ) ) ) ) ) ;

Fix:
if ( ( ( MultiverseCore . EnforceAccess ) && ( teleporter != null ) ) && ( ! ( this . plugin . getMVPerms ( ) . canEnterDestination ( teleporter , d ) ) ) ) {