CreatureStat previous comparison moved in lock.
This commit is contained in:
@@ -987,11 +987,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1015,6 +1010,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -987,11 +987,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1015,6 +1010,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -987,11 +987,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1015,6 +1010,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -987,11 +987,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1015,6 +1010,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -987,11 +987,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1015,6 +1010,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -987,11 +987,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1015,6 +1010,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -987,11 +987,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1015,6 +1010,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -987,11 +987,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1015,6 +1010,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -977,11 +977,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1005,6 +1000,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -977,11 +977,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1005,6 +1000,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -977,11 +977,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1005,6 +1000,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -977,11 +977,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1005,6 +1000,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -977,11 +977,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1005,6 +1000,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -977,11 +977,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1005,6 +1000,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
@@ -977,11 +977,6 @@ public class CreatureStat
|
|||||||
}
|
}
|
||||||
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
_attackSpeedMultiplier = Formulas.calcAtkSpdMultiplier(_creature);
|
||||||
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
_mAttackSpeedMultiplier = Formulas.calcMAtkSpdMultiplier(_creature);
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_lock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Notify recalculation to child classes
|
// Notify recalculation to child classes
|
||||||
onRecalculateStats(broadcast);
|
onRecalculateStats(broadcast);
|
||||||
@@ -1005,6 +1000,11 @@ public class CreatureStat
|
|||||||
_creature.broadcastModifiedStats(changed);
|
_creature.broadcastModifiedStats(changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_lock.writeLock().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void onRecalculateStats(boolean broadcast)
|
protected void onRecalculateStats(boolean broadcast)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user