diff --git a/core/src/io/anuke/mindustry/entities/effect/TeslaOrb.java b/core/src/io/anuke/mindustry/entities/effect/TeslaOrb.java index eb35433236..40b860a01c 100644 --- a/core/src/io/anuke/mindustry/entities/effect/TeslaOrb.java +++ b/core/src/io/anuke/mindustry/entities/effect/TeslaOrb.java @@ -45,15 +45,18 @@ public class TeslaOrb extends Entity{ } Array enemies = Entities.getNearby(enemyGroup, curx, cury, range*2f); - - for(SolidEntity entity : enemies){ - if(entity != null && entity.distanceTo(curx, cury) < range && !hit.contains((Enemy)entity)){ - hit.add((Enemy)entity); - points.add(new Vector2(entity.x + Mathf.range(shake), entity.y + Mathf.range(shake))); - damageEnemy((Enemy)entity); - curx = entity.x; - cury = entity.y; - break; + + synchronized (Entities.entityLock) { + + for (SolidEntity entity : enemies) { + if (entity != null && entity.distanceTo(curx, cury) < range && !hit.contains((Enemy) entity)) { + hit.add((Enemy) entity); + points.add(new Vector2(entity.x + Mathf.range(shake), entity.y + Mathf.range(shake))); + damageEnemy((Enemy) entity); + curx = entity.x; + cury = entity.y; + break; + } } } }