diff --git a/core/src/mindustry/ai/types/BuilderAI.java b/core/src/mindustry/ai/types/BuilderAI.java index 202128563c..6c71f5f934 100644 --- a/core/src/mindustry/ai/types/BuilderAI.java +++ b/core/src/mindustry/ai/types/BuilderAI.java @@ -19,7 +19,7 @@ public class BuilderAI extends AIController{ public @Nullable Teamc enemy; public @Nullable BlockPlan lastPlan; - public float fleeRange = 370f; + public float fleeRange = 370f, rebuildPeriod = 60f * 2f; public boolean alwaysFlee; public boolean onlyAssist; @@ -158,10 +158,8 @@ public class BuilderAI extends AIController{ } } - float rebuildTime = 2f * 60f; - //find new plan - if(!onlyAssist && !unit.team.data().plans.isEmpty() && following == null && timer.get(timerTarget3, rebuildTime)){ + if(!onlyAssist && !unit.team.data().plans.isEmpty() && following == null && timer.get(timerTarget3, rebuildPeriod)){ Queue blocks = unit.team.data().plans; BlockPlan block = blocks.first(); diff --git a/core/src/mindustry/type/Weapon.java b/core/src/mindustry/type/Weapon.java index 243e6b7be2..f23cbc94eb 100644 --- a/core/src/mindustry/type/Weapon.java +++ b/core/src/mindustry/type/Weapon.java @@ -221,7 +221,7 @@ public class Weapon implements Cloneable{ for(int i = 0; i < parts.size; i++){ var part = parts.get(i); - DrawPart.params.setRecoil(part.recoilIndex >= 0 ? mount.recoils[part.recoilIndex] : mount.recoil); + DrawPart.params.setRecoil(part.recoilIndex >= 0 && mount.recoils != null ? mount.recoils[part.recoilIndex] : mount.recoil); if(part.under){ part.draw(DrawPart.params); } @@ -253,7 +253,7 @@ public class Weapon implements Cloneable{ //TODO does it need an outline? for(int i = 0; i < parts.size; i++){ var part = parts.get(i); - DrawPart.params.setRecoil(part.recoilIndex >= 0 ? mount.recoils[part.recoilIndex] : mount.recoil); + DrawPart.params.setRecoil(part.recoilIndex >= 0 && mount.recoils != null ? mount.recoils[part.recoilIndex] : mount.recoil); if(!part.under){ part.draw(DrawPart.params); } diff --git a/core/src/mindustry/world/draw/DrawTurret.java b/core/src/mindustry/world/draw/DrawTurret.java index 4b00d51a32..019e8c6078 100644 --- a/core/src/mindustry/world/draw/DrawTurret.java +++ b/core/src/mindustry/world/draw/DrawTurret.java @@ -75,7 +75,7 @@ public class DrawTurret extends DrawBlock{ var params = DrawPart.params.set(build.warmup(), 1f - progress, 1f - progress, tb.heat, tb.curRecoil, tb.charge, tb.x + tb.recoilOffset.x, tb.y + tb.recoilOffset.y, tb.rotation); for(var part : parts){ - params.setRecoil(part.recoilIndex >= 0 ? tb.curRecoils[part.recoilIndex] : tb.curRecoil); + params.setRecoil(part.recoilIndex >= 0 && tb.curRecoils != null ? tb.curRecoils[part.recoilIndex] : tb.curRecoil); part.draw(params); } }