Buggy code:
public class CaptureThePointsEntityListener extends EntityListener { private CaptureThePoints ctp ; public double loadDouble ( String s ) { } public Integer loadInt ( String s ) { } public boolean loadBoolean ( String s ) { } public String loadString ( String s ) { } public CaptureThePointsEntityListener ( CaptureThePoints plugin ) { } Plugin checkPlugin ( String pluginname ) { } private boolean checkForPlayerEvent ( EntityDamageEvent event ) { } @ Override public void onEntityDamage ( EntityDamageEvent event ) { if ( ! ( ( event . getEntity ( ) ) instanceof Player ) ) { return ; } if ( ctp . isGameRunning ( ) ) { Player attacker = null ; if ( ( this . ctp . playerData . get ( ( ( Player ) ( event . getEntity ( ) ) ) ) ) != null ) { if ( checkForPlayerEvent ( event ) ) { attacker = ( ( Player ) ( ( ( org . bukkit . event . entity . EntityDamageByEntityEvent ) ( event ) ) . getDamager ( ) ) ) ; } if ( ( ( event . getCause ( ) ) == ( DamageCause . PROJECTILE ) ) && ( ( ( ( org . bukkit . entity . Projectile ) ( ( ( org . bukkit . event . entity . EntityDamageByEntityEvent ) ( event ) ) . getDamager ( ) ) ) . getShooter ( ) ) instanceof Player ) ) { attacker = ( ( Player ) ( ( ( org . bukkit . entity . Projectile ) ( ( ( org . bukkit . event . entity . EntityDamageByEntityEvent ) ( event ) ) . getDamager ( ) ) ) . getShooter ( ) ) ) ; } Player playa = ( ( Player ) ( event . getEntity ( ) ) ) ; <START_BUG> if ( ( ( ( this . ctp . playerData . get ( playa ) ) != null ) && ( ( this . ctp . playerData . get ( attacker ) ) != null ) ) && ( this . ctp . playerData . get ( playa ) . isInLobby ) ) { <END_BUG> event . setCancelled ( true ) ; return ; } if ( isProtected ( playa ) ) { if ( attacker != null ) { attacker . sendMessage ( ( ( ChatColor . LIGHT_PURPLE ) + "You<seq2seq4repair_space>can't<seq2seq4repair_space>damage<seq2seq4repair_space>enemy<seq2seq4repair_space>in<seq2seq4repair_space>their<seq2seq4repair_space>spawn!" ) ) ; } event . setCancelled ( true ) ; return ; } if ( attacker != null ) { if ( ( ( this . ctp . playerData . get ( playa ) ) != null ) && ( ( this . ctp . playerData . get ( attacker ) ) != null ) ) { if ( this . ctp . playerData . get ( playa ) . color . equalsIgnoreCase ( this . ctp . playerData . get ( attacker ) . color ) ) { attacker . sendMessage ( ( ( ( ( ctp . playerData . get ( playa ) . team . chatcolor ) + ( playa . getName ( ) ) ) + ( ChatColor . LIGHT_PURPLE ) ) + "<seq2seq4repair_space>is<seq2seq4repair_space>on<seq2seq4repair_space>your<seq2seq4repair_space>team!" ) ) ; event . setCancelled ( true ) ; return ; } else { if ( event . isCancelled ( ) ) { event . setCancelled ( false ) ; } } } } if ( ( ( this . ctp . playerData . get ( playa ) ) != null ) && ( ( ( playa . getHealth ( ) ) - ( event . getDamage ( ) ) ) <= 0 ) ) { event . setCancelled ( true ) ; if ( attacker != null ) { Util . sendMessageToPlayers ( ctp , ( ( ( ( ( ( ctp . playerData . get ( playa ) . team . chatcolor ) + ( playa . getName ( ) ) ) + ( ChatColor . WHITE ) ) + "<seq2seq4repair_space>was<seq2seq4repair_space>killed<seq2seq4repair_space>by<seq2seq4repair_space>" ) + ( ctp . playerData . get ( attacker ) . team . chatcolor ) ) + ( attacker . getName ( ) ) ) ) ; dropWool ( playa ) ; ctp . playerData . get ( attacker ) . money += ctp . configOptions . moneyForKill ; attacker . sendMessage ( ( ( "Money:<seq2seq4repair_space>" + ( ChatColor . GREEN ) ) + ( ctp . playerData . get ( attacker ) . money ) ) ) ; ctp . checkForKillMSG ( attacker , false ) ; ctp . checkForKillMSG ( playa , true ) ; } playa . setHealth ( ctp . configOptions . maxPlayerHealth ) ; playa . setFoodLevel ( 20 ) ; CTPPoints point = ctp . mainArena . teamSpawns . get ( ctp . playerData . get ( playa ) . color ) ; if ( ctp . configOptions . giveNewRoleItemsOnRespawn ) { giveRoleItemsAfterDeath ( playa ) ; } Location loc = new Location ( ctp . getServer ( ) . getWorld ( ctp . mainArena . world ) , point . x , point . y , point . z ) ; loc . setYaw ( ( ( float ) ( point . dir ) ) ) ; loc . getWorld ( ) . loadChunk ( loc . getBlockX ( ) , loc . getBlockZ ( ) ) ; playa . teleport ( loc ) ; } } } if ( ( ( ctp . playerData . get ( ( ( Player ) ( event . getEntity ( ) ) ) ) ) != null ) && ( ctp . playerData . get ( ( ( Player ) ( event . getEntity ( ) ) ) ) . isInLobby ) ) { event . setCancelled ( true ) ; } } public boolean isProtected ( Player player ) { } public void giveRoleItemsAfterDeath ( Player player ) { } private boolean dropWool ( Player player ) { } No newline ; at end ; of file ; }

Fix:
if ( ( ( attacker != null ) && ( ( this . ctp . playerData . get ( attacker ) ) != null ) ) && ( this . ctp . playerData . get ( playa ) . isInLobby ) ) {