@ -1681,23 +1681,12 @@ public class ClientMessagePump implements NetMsgHandler {
				@@ -1681,23 +1681,12 @@ public class ClientMessagePump implements NetMsgHandler {
					 
			
		
	
		
			
				
					                return ;   
			
		
	
		
			
				
					            }   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					            //int cost = ((int)((toRepair.getMagicValue()/max*(max - dur)) + (npc.getSpecialPrice() * npc.buyPercent))) + (int)(npc.getSpecialPrice() * (max - dur));
   
			
		
	
		
			
				
					            double  repairRate  =  0 . 067 ;  // A proportional repair rate based on example
   
			
		
	
		
			
				
					            int  maxRepairCost  =  ( int ) ( toRepair . getMagicValue ( )  *  repairRate ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					            // Calculate the percentage of the durability that is damaged
   
			
		
	
		
			
				
					            double  damageRatio  =  ( double ) ( toRepair . getDurabilityMax ( )  -  toRepair . getDurabilityCurrent ( ) )  /  toRepair . getDurabilityMax ( ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					            // Calculate the repair cost based on the damage ratio and item value
   
			
		
	
		
			
				
					            int  cost  =  ( int ) ( maxRepairCost  *  damageRatio ) ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					            //int pointsToRepair = max - dur;
   
			
		
	
		
			
				
					            //int magicValue = toRepair.getMagicValue();
   
			
		
	
		
			
				
					            //if(magicValue == 0)
   
			
		
	
		
			
				
					            //    magicValue = 1;
   
			
		
	
		
			
				
					            //int calculatedValue = toRepair.getDurabilityMax() * magicValue;
   
			
		
	
		
			
				
					            //float costPerPoint = (magicValue / max) * ( 1 + npc.buyPercent);
   
			
		
	
		
			
				
					            //cost = (int)(pointsToRepair * costPerPoint) + npc.getSpecialPrice();
   
			
		
	
		
			
				
					            int  pointsToRepair  =  max  -  dur ;   
			
		
	
		
			
				
					            double  damageRatio  =  ( double ) 1 . 0d  -  ( toRepair . getDurabilityMax ( )  -  toRepair . getDurabilityCurrent ( ) )  /  toRepair . getDurabilityMax ( ) ;   
			
		
	
		
			
				
					            int  modifiedValue  =  ( int ) ( damageRatio  *  toRepair . getMagicValue ( ) ) ;   
			
		
	
		
			
				
					            int  costPerPoint  =  modifiedValue  /  toRepair . getDurabilityMax ( ) ;   
			
		
	
		
			
				
					            int  modifiedRepairCost  =  ( int ) ( pointsToRepair  *  costPerPoint ) +  npc . getSpecialPrice ( ) ;   
			
		
	
		
			
				
					            int  cost  =  ( int ) ( modifiedRepairCost  *  1  +  npc . buyPercent )  +  npc . getSpecialPrice ( ) ;   
			
		
	
		
			
				
					            Building  b  =  ( ! npc . isStatic ( ) )  ?  npc . getBuilding ( )  :  null ;   
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					            if  ( b  ! =  null )