Merge branch '7.0-features' of https://github.com/Anuken/MindustryPrivate into 7.0-features
This commit is contained in:
@@ -26,12 +26,10 @@ public class Pathfinder implements Runnable{
|
|||||||
static final int impassable = -1;
|
static final int impassable = -1;
|
||||||
|
|
||||||
public static final int
|
public static final int
|
||||||
fieldCore = 0,
|
fieldCore = 0;
|
||||||
fieldRally = 1;
|
|
||||||
|
|
||||||
public static final Seq<Prov<Flowfield>> fieldTypes = Seq.with(
|
public static final Seq<Prov<Flowfield>> fieldTypes = Seq.with(
|
||||||
EnemyCoreField::new,
|
EnemyCoreField::new
|
||||||
RallyField::new
|
|
||||||
);
|
);
|
||||||
|
|
||||||
public static final int
|
public static final int
|
||||||
@@ -465,15 +463,6 @@ public class Pathfinder implements Runnable{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class RallyField extends Flowfield{
|
|
||||||
@Override
|
|
||||||
protected void getPositions(IntSeq out){
|
|
||||||
for(Building other : indexer.getFlagged(team, BlockFlag.rally)){
|
|
||||||
out.add(other.tile.array());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static class PositionTarget extends Flowfield{
|
public static class PositionTarget extends Flowfield{
|
||||||
public final Position position;
|
public final Position position;
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import arc.math.*;
|
|||||||
import mindustry.entities.*;
|
import mindustry.entities.*;
|
||||||
import mindustry.entities.units.*;
|
import mindustry.entities.units.*;
|
||||||
import mindustry.gen.*;
|
import mindustry.gen.*;
|
||||||
import mindustry.world.meta.*;
|
|
||||||
|
|
||||||
import static mindustry.Vars.*;
|
import static mindustry.Vars.*;
|
||||||
|
|
||||||
@@ -32,9 +31,6 @@ public class DefenderAI extends AIController{
|
|||||||
var result = Units.closest(unit.team, x, y, Math.max(range, 400f), u -> !u.dead() && u.type != unit.type, (u, tx, ty) -> -u.maxHealth + Mathf.dst2(u.x, u.y, tx, ty) / 6400f);
|
var result = Units.closest(unit.team, x, y, Math.max(range, 400f), u -> !u.dead() && u.type != unit.type, (u, tx, ty) -> -u.maxHealth + Mathf.dst2(u.x, u.y, tx, ty) / 6400f);
|
||||||
if(result != null) return result;
|
if(result != null) return result;
|
||||||
|
|
||||||
//find rally point
|
|
||||||
var block = targetFlag(unit.x, unit.y, BlockFlag.rally, false);
|
|
||||||
if(block != null) return block;
|
|
||||||
//return core if found
|
//return core if found
|
||||||
var core = unit.closestCore();
|
var core = unit.closestCore();
|
||||||
if(core != null) return core;
|
if(core != null) return core;
|
||||||
|
|||||||
@@ -14,8 +14,6 @@ public enum BlockFlag{
|
|||||||
factory,
|
factory,
|
||||||
/** Repair point. */
|
/** Repair point. */
|
||||||
repair,
|
repair,
|
||||||
/** Rally point. */
|
|
||||||
rally,
|
|
||||||
/** Block that stored power for resupply. */
|
/** Block that stored power for resupply. */
|
||||||
battery,
|
battery,
|
||||||
/** Any reactor block. */
|
/** Any reactor block. */
|
||||||
|
|||||||
Reference in New Issue
Block a user