@ -9,14 +9,14 @@
				@@ -9,14 +9,14 @@
					 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					package  engine.net.client.handlers ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					import  engine.Enum ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					import  engine.exception.MsgSendException ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					import  engine.gameManager.BuildingManager ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					import  engine.gameManager.MovementManager ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					import  engine.net.client.ClientConnection ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					import  engine.net.client.msg.ClientNetMsg ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					import  engine.net.client.msg.MoveToPointMsg ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					import  engine.objects.AbstractWorldObject ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					import  engine.objects.Building ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					import  engine.objects.PlayerCharacter ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					import  engine.objects.* ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					public  class  MoveToPointHandler  extends  AbstractClientMsgHandler  {  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
				 
				 
				
					@ -32,22 +32,24 @@ public class MoveToPointHandler extends AbstractClientMsgHandler {
				@@ -32,22 +32,24 @@ public class MoveToPointHandler extends AbstractClientMsgHandler {
					 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        PlayerCharacter  pc  =  ( origin  ! =  null )  ?  ( origin . getPlayerCharacter ( ) )  :  null ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        if  ( pc  = =  null )   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            return  false ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        PlayerCharacter  player  =  origin . getPlayerCharacter ( ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        if  ( player  = =  null )   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            return  false ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        AbstractWorldObject  target  =  player . combatTarget ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        AbstractWorldObject  target ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        Enum . GameObjectType  targetType ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        if  ( target  ! =  null )  {   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            switch  ( target . getObjectType ( ) )  {   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					                case  NPC :   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					                    return  false ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        targetType  =  Enum . GameObjectType . values ( ) [ msg . getTargetType ( ) ] ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        switch ( targetType ) {   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            case  Building :   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					                target  =  BuildingManager . getBuilding ( msg . getTargetID ( ) ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					                if ( target  = =  null )   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					                    return  true ; // early exit for no building pulled
   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					                Building  targetBuilding  =  ( Building )  target ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					                if  ( ! targetBuilding . isVulnerable ( )  | |  targetBuilding . getRank ( )  <  0 )   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					                        return  false ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            }   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					                    return  true ; // cannot attack destroyed building or protected building
   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					                break ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            case  NPC :   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					                return  true ; //cannot attack anything other than the 3 above
   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        }   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        MovementManager . movement ( msg ,  pc ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        return  true ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    }