v0.6.1a: increased the cases where char buff access is synced
This commit is contained in:
parent
347e95ed6b
commit
cae26999c2
|
@ -339,7 +339,7 @@ public abstract class Char extends Actor {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isCharmedBy( Char ch ) {
|
public synchronized boolean isCharmedBy( Char ch ) {
|
||||||
int chID = ch.id();
|
int chID = ch.id();
|
||||||
for (Buff b : buffs) {
|
for (Buff b : buffs) {
|
||||||
if (b instanceof Charm && ((Charm)b).object == chID) {
|
if (b instanceof Charm && ((Charm)b).object == chID) {
|
||||||
|
@ -349,7 +349,7 @@ public abstract class Char extends Actor {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void add( Buff buff ) {
|
public synchronized void add( Buff buff ) {
|
||||||
|
|
||||||
buffs.add( buff );
|
buffs.add( buff );
|
||||||
Actor.add( buff );
|
Actor.add( buff );
|
||||||
|
@ -368,27 +368,27 @@ public abstract class Char extends Actor {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void remove( Buff buff ) {
|
public synchronized void remove( Buff buff ) {
|
||||||
|
|
||||||
buffs.remove( buff );
|
buffs.remove( buff );
|
||||||
Actor.remove( buff );
|
Actor.remove( buff );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void remove( Class<? extends Buff> buffClass ) {
|
public synchronized void remove( Class<? extends Buff> buffClass ) {
|
||||||
for (Buff buff : buffs( buffClass )) {
|
for (Buff buff : buffs( buffClass )) {
|
||||||
remove( buff );
|
remove( buff );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onRemove() {
|
protected synchronized void onRemove() {
|
||||||
for (Buff buff : buffs.toArray(new Buff[buffs.size()])) {
|
for (Buff buff : buffs.toArray(new Buff[buffs.size()])) {
|
||||||
buff.detach();
|
buff.detach();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void updateSpriteState() {
|
public synchronized void updateSpriteState() {
|
||||||
for (Buff buff:buffs) {
|
for (Buff buff:buffs) {
|
||||||
buff.fx( true );
|
buff.fx( true );
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user