@ -37,7 +37,7 @@ public class OrderNPCMsgHandler extends AbstractClientMsgHandler { 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        super ( OrderNPCMsg . class ) ;   
					 
					 
					 
					        super ( OrderNPCMsg . class ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    }   
					 
					 
					 
					    }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    public  static  void  processRedeedMob ( Mob  mob  ,  Building  building ,  ClientConnection  origin )  {   
					 
					 
					 
					    public  static  void  processRedeedHireling ( Mob  hireling  ,  Building  building ,  ClientConnection  origin )  {   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        PlayerCharacter  player ;   
					 
					 
					 
					        PlayerCharacter  player ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        Contract  contract ;   
					 
					 
					 
					        Contract  contract ;   
				
			 
			
		
	
	
		
		
			
				
					
						
						
						
							
								 
							 
						
					 
					 
					@ -48,33 +48,28 @@ public class OrderNPCMsgHandler extends AbstractClientMsgHandler { 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        player  =  SessionManager . getPlayerCharacter ( origin ) ;   
					 
					 
					 
					        player  =  SessionManager . getPlayerCharacter ( origin ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        itemMan  =  player . getCharItemManager ( ) ;   
					 
					 
					 
					        itemMan  =  player . getCharItemManager ( ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        contract  =  mob . getContract ( ) ;   
					 
					 
					 
					        contract  =  hireling . getContract ( ) ;   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        if  ( ! player . getCharItemManager ( ) . hasRoomInventory ( ( short )  1 ) )  {   
					 
					 
					 
					        if  ( ! player . getCharItemManager ( ) . hasRoomInventory ( ( short )  1 ) )  {   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            ErrorPopupMsg . sendErrorPopup ( player ,  21 ) ;   
					 
					 
					 
					            ErrorPopupMsg . sendErrorPopup ( player ,  21 ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            return ;   
					 
					 
					 
					            return ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        }   
					 
					 
					 
					        }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        if  ( ! building . getHirelings ( ) . containsKey ( mob ) )   
					 
					 
					 
					        if  ( ! building . getHirelings ( ) . containsKey ( hireling ) )   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					            return ;   
					 
					 
					 
					            return ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        if  ( ! NPCManager . removeMobileFromBuilding ( mob ,  building ) )  {   
					 
					 
					 
					        BuildingManager . removeHireling ( building ,  hireling ) ;   
				
			 
			
				
				
			
		
	
		
		
			
				
					
					 
					 
					 
					            PlaceAssetMsg . sendPlaceAssetError ( player . getClientConnection ( ) ,  1 ,  "A Serious error has occurred. Please post details for to ensure transaction integrity" ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            return ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        }   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        building . getHirelings ( ) . remove ( mob ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        itemBase  =  ItemBase . getItemBase ( contract . getContractID ( ) ) ;   
					 
					 
					 
					        itemBase  =  ItemBase . getItemBase ( contract . getContractID ( ) ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        if  ( itemBase  = =  null )  {   
					 
					 
					 
					        if  ( itemBase  = =  null )  {   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            Logger . error ( "Could not find Contract for npc: "  +  mob . getObjectUUID ( ) ) ;   
					 
					 
					 
					            Logger . error ( "Could not find Contract for npc: "  +  hireling . getObjectUUID ( ) ) ;   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					            return ;   
					 
					 
					 
					            return ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        }   
					 
					 
					 
					        }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        boolean  itemWorked  =  false ;   
					 
					 
					 
					        boolean  itemWorked  =  false ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        item  =  new  Item ( itemBase ,  player . getObjectUUID ( ) ,  Enum . OwnerType . PlayerCharacter ,  ( byte )  ( ( byte )  mob . getRank ( )  -  1 ) ,  ( byte )  ( ( byte )  mob . getRank ( )  -  1 ) ,  ( short )  1 ,  ( short )  1 ,  true ,  false ,  Enum . ItemContainerType . INVENTORY ,  ( byte )  0 ,  new  ArrayList < > ( ) ,  "" ) ;   
					 
					 
					 
					        item  =  new  Item ( itemBase ,  player . getObjectUUID ( ) ,  Enum . OwnerType . PlayerCharacter ,  ( byte )  ( ( byte )  hireling . getRank ( )  -  1 ) ,  ( byte )  ( ( byte )  hireling . getRank ( )  -  1 ) ,  ( short )  1 ,  ( short )  1 ,  true ,  false ,  Enum . ItemContainerType . INVENTORY ,  ( byte )  0 ,  new  ArrayList < > ( ) ,  "" ) ;   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					        item . setNumOfItems ( 1 ) ;   
					 
					 
					 
					        item . setNumOfItems ( 1 ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        item . containerType  =  Enum . ItemContainerType . INVENTORY ;   
					 
					 
					 
					        item . containerType  =  Enum . ItemContainerType . INVENTORY ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -299,7 +294,7 @@ public class OrderNPCMsgHandler extends AbstractClientMsgHandler { 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                break ;   
					 
					 
					 
					                break ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					            case  Mob :   
					 
					 
					 
					            case  Mob :   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                Mob  mob  =  ( Mob )  abstractCharacter ;   
					 
					 
					 
					                Mob  mob  =  ( Mob )  abstractCharacter ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                processRedeedMob  ( mob ,  mob . building ,  origin ) ;   
					 
					 
					 
					                processRedeedHireling  ( mob ,  mob . building ,  origin ) ;   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					                break ;   
					 
					 
					 
					                break ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        }   
					 
					 
					 
					        }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    }   
					 
					 
					 
					    }