|  |  |  | @ -902,27 +902,18 @@ public enum CombatManager {@@ -902,27 +902,18 @@ public enum CombatManager { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 if (weapon != null && tarAc != null && tarAc.isAlive()) { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                     ConcurrentHashMap<String, Effect> effects = weapon.getEffects(); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                     for (Effect eff : effects.values()) { | 
			
		
	
		
			
				
					|  |  |  |  |                         if (eff == null) | 
			
		
	
		
			
				
					|  |  |  |  |                             continue; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         HashSet<AbstractEffectModifier> aems = eff.getEffectModifiers(); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         if (aems != null) { | 
			
		
	
		
			
				
					|  |  |  |  |                             for (AbstractEffectModifier aem : aems) { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                                 if (!tarAc.isAlive()) | 
			
		
	
		
			
				
					|  |  |  |  |                                     break; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                                 if (aem instanceof WeaponProcEffectModifier) { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                     if(weapon.effects != null){ | 
			
		
	
		
			
				
					|  |  |  |  |                         for (Effect eff : weapon.effects.values()){ | 
			
		
	
		
			
				
					|  |  |  |  |                             for(AbstractEffectModifier mod : eff.getEffectModifiers()){ | 
			
		
	
		
			
				
					|  |  |  |  |                                 if(mod.modType.equals(ModType.WeaponProc)){ | 
			
		
	
		
			
				
					|  |  |  |  |                                     int procChance = ThreadLocalRandom.current().nextInt(100); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                                     if (procChance < MBServerStatics.PROC_CHANCE) | 
			
		
	
		
			
				
					|  |  |  |  |                                         ((WeaponProcEffectModifier) aem).applyProc(ac, target); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                                     if (procChance < MBServerStatics.PROC_CHANCE) { | 
			
		
	
		
			
				
					|  |  |  |  |                                         try { | 
			
		
	
		
			
				
					|  |  |  |  |                                             ((WeaponProcEffectModifier) mod).applyProc(ac, target); | 
			
		
	
		
			
				
					|  |  |  |  |                                         }catch(Exception e){ | 
			
		
	
		
			
				
					|  |  |  |  |                                             Logger.error(eff.getName() + " Failed To Cast Proc"); | 
			
		
	
		
			
				
					|  |  |  |  |                                         } | 
			
		
	
		
			
				
					|  |  |  |  |                                     } | 
			
		
	
		
			
				
					|  |  |  |  |                                 } | 
			
		
	
		
			
				
					|  |  |  |  |                             } | 
			
		
	
		
			
				
					|  |  |  |  |                         } | 
			
		
	
	
		
			
				
					|  |  |  | 
 |