Effect list broadcast issue fix.
Contributed by Liamxroy.
This commit is contained in:
		| @@ -95,7 +95,7 @@ public final class DispelBySlot extends AbstractEffect | ||||
| 				 | ||||
| 				final Short abnormalLevel = _dispelAbnormals.get(info.getSkill().getAbnormalType()); | ||||
| 				return (abnormalLevel != null) && ((abnormalLevel < 0) || (abnormalLevel >= info.getSkill().getAbnormalLvl())); | ||||
| 			}, true); | ||||
| 			}, true, true); | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|   | ||||
| @@ -74,6 +74,6 @@ public final class DispelBySlotMyself extends AbstractEffect | ||||
| 		} | ||||
| 		 | ||||
| 		// The effectlist should already check if it has buff with this abnormal type or not. | ||||
| 		effected.getEffectList().stopEffects(info -> !info.getSkill().isIrreplacableBuff() && _dispelAbnormals.contains(info.getSkill().getAbnormalType()), true); | ||||
| 		effected.getEffectList().stopEffects(info -> !info.getSkill().isIrreplacableBuff() && _dispelAbnormals.contains(info.getSkill().getAbnormalType()), true, true); | ||||
| 	} | ||||
| } | ||||
|   | ||||
| @@ -98,6 +98,6 @@ public final class DispelBySlotProbability extends AbstractEffect | ||||
| 			 | ||||
| 			final Short abnormalLevel = (Rnd.get(100) < _rate) ? _dispelAbnormals.get(info.getSkill().getAbnormalType()) : null; | ||||
| 			return (abnormalLevel != null) && ((abnormalLevel < 0) || (abnormalLevel >= info.getSkill().getAbnormalLvl())); | ||||
| 		}, true); | ||||
| 		}, true, true); | ||||
| 	} | ||||
| } | ||||
|   | ||||
| @@ -76,7 +76,7 @@ public final class StealAbnormal extends AbstractEffect | ||||
| 				stolen.setAbnormalTime(infoToSteal.getTime()); // Copy the remaining time. | ||||
| 				// To include all the effects, it's required to go through the template rather the buff info. | ||||
| 				infoToSteal.getSkill().applyEffectScope(EffectScope.GENERAL, stolen, true, true); | ||||
| 				effected.getEffectList().remove(infoToSteal, true, true); | ||||
| 				effected.getEffectList().remove(infoToSteal, true, true, true); | ||||
| 				effector.getEffectList().add(stolen); | ||||
| 			} | ||||
| 		} | ||||
|   | ||||
| @@ -491,7 +491,7 @@ public final class Kamaloka extends AbstractInstance | ||||
| 	private static final void removeBuffs(L2Character ch) | ||||
| 	{ | ||||
| 		// Stop all buffs. | ||||
| 		ch.getEffectList().stopEffects(info -> (info != null) && !info.getSkill().isStayAfterDeath() && (Arrays.binarySearch(BUFFS_WHITELIST, info.getSkill().getId()) < 0), true); | ||||
| 		ch.getEffectList().stopEffects(info -> (info != null) && !info.getSkill().isStayAfterDeath() && (Arrays.binarySearch(BUFFS_WHITELIST, info.getSkill().getId()) < 0), true, true); | ||||
| 	} | ||||
| 	 | ||||
| 	/** | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 MobiusDev
					MobiusDev