@ -35,26 +35,35 @@ public class BoxFlagThread implements Runnable {
				@@ -35,26 +35,35 @@ public class BoxFlagThread implements Runnable {
					 
			
		
	
		
			
				
					        LocalDateTime  nextPulse  =  LocalDateTime . now ( ) . minusMinutes ( 1 ) ;   
			
		
	
		
			
				
					        while ( true ) {   
			
		
	
		
			
				
					            if ( LocalDateTime . now ( ) . isAfter ( nextPulse ) )  {   
			
		
	
		
			
				
					                HashMap < String , ArrayList < PlayerCharacter > >  PlayersByMachineID  =  new  HashMap < > ( ) ;   
			
		
	
		
			
				
					                for ( PlayerCharacter  pc  :  SessionManager . getAllActivePlayerCharacters ( ) ) {   
			
		
	
		
			
				
					                    if ( pc . isEnteredWorld ( )  & &  pc . isActive ( ) ) {   
			
		
	
		
			
				
					                        ChatManager . chatSystemInfo ( pc ,  " You Are Being Box Checked" ) ;   
			
		
	
		
			
				
					                        pc . isBoxed  =  PlayerCharacter . checkIfBoxed ( pc ) ;   
			
		
	
		
			
				
					                        if ( pc . isBoxed )  {   
			
		
	
		
			
				
					                            if ( pc . title . equals ( CharacterTitle . BOX )  = =  false )  {   
			
		
	
		
			
				
					                                pc . title  =  CharacterTitle . BOX ;   
			
		
	
		
			
				
					                                //InterestManager.reloadCharacter(pc);
   
			
		
	
		
			
				
					                                InterestManager . setObjectDirty ( pc ) ;   
			
		
	
		
			
				
					                                if  ( pc . containsEffect ( 1672601862 )  = =  false )  { //Deathshroud
   
			
		
	
		
			
				
					                                    PowersManager . applyPower ( pc ,  pc ,  Vector3fImmutable . ZERO ,  1672601862 ,  40 ,  false ) ;   
			
		
	
		
			
				
					                                }   
			
		
	
		
			
				
					                            }   
			
		
	
		
			
				
					                        } else {   
			
		
	
		
			
				
					                            if ( pc . title . equals ( CharacterTitle . NONE )  = =  false )  {   
			
		
	
		
			
				
					                                pc . title  =  CharacterTitle . NONE ;   
			
		
	
		
			
				
					                                //InterestManager.reloadCharacter(pc);
   
			
		
	
		
			
				
					                                InterestManager . setObjectDirty ( pc ) ;   
			
		
	
		
			
				
					                    if ( PlayersByMachineID . containsKey ( pc . getClientConnection ( ) . machineID ) ) {   
			
		
	
		
			
				
					                        if ( PlayersByMachineID . get ( pc . getClientConnection ( ) . machineID ) . contains ( pc )  = =  false )   
			
		
	
		
			
				
					                            PlayersByMachineID . get ( pc . getClientConnection ( ) . machineID ) . add ( pc ) ;   
			
		
	
		
			
				
					                    } else {   
			
		
	
		
			
				
					                        ArrayList < PlayerCharacter >  newList  =  new  ArrayList < > ( ) ;   
			
		
	
		
			
				
					                        newList . add ( pc ) ;   
			
		
	
		
			
				
					                        PlayersByMachineID . put ( pc . getClientConnection ( ) . machineID , newList ) ;   
			
		
	
		
			
				
					                    }   
			
		
	
		
			
				
					                }   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					                for ( String  key  :  PlayersByMachineID . keySet ( ) ) {   
			
		
	
		
			
				
					                    ArrayList < PlayerCharacter >  machinePlayers  =  PlayersByMachineID . get ( key ) ;   
			
		
	
		
			
				
					                    if ( machinePlayers . size ( )  >  1 ) {   
			
		
	
		
			
				
					                        int  unboxedCount  =  0 ;   
			
		
	
		
			
				
					                        for ( PlayerCharacter  pc  :  machinePlayers ) {   
			
		
	
		
			
				
					                            if ( ! pc . isBoxed )   
			
		
	
		
			
				
					                                unboxedCount + + ;   
			
		
	
		
			
				
					                        }   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					                        if ( unboxedCount  >  1 ) {   
			
		
	
		
			
				
					                            for ( PlayerCharacter  pc  :  machinePlayers ) {   
			
		
	
		
			
				
					                                pc . isBoxed  =  true ;   
			
		
	
		
			
				
					                            }   
			
		
	
		
			
				
					                            machinePlayers . get ( 0 ) . isBoxed  =  false ;   
			
		
	
		
			
				
					                        }   
			
		
	
		
			
				
					                    } else {   
			
		
	
		
			
				
					                        machinePlayers . get ( 0 ) . isBoxed  =  false ;   
			
		
	
		
			
				
					                    }   
			
		
	
		
			
				
					                }   
			
		
	
		
			
				
					                nextPulse  =  nextPulse . plusSeconds ( THREAD_DELAY_SECONDS ) ;