This commit is contained in:
Anuken
2021-06-23 08:46:50 -04:00
parent c404e7e1c6
commit 2613ff6796
2 changed files with 16 additions and 15 deletions

View File

@@ -38,7 +38,6 @@ public enum Gamemode{
rules.infiniteResources = true; rules.infiniteResources = true;
rules.editor = true; rules.editor = true;
rules.waves = false; rules.waves = false;
rules.enemyCoreBuildRadius = 0f;
rules.waveTimer = false; rules.waveTimer = false;
}); });

View File

@@ -134,24 +134,26 @@ public class Build{
return false; return false;
} }
//find closest core, if it doesn't match the team, placing is not legal if(!state.rules.editor){
if(state.rules.polygonCoreProtection){ //find closest core, if it doesn't match the team, placing is not legal
float mindst = Float.MAX_VALUE; if(state.rules.polygonCoreProtection){
CoreBuild closest = null; float mindst = Float.MAX_VALUE;
for(TeamData data : state.teams.active){ CoreBuild closest = null;
for(CoreBuild tile : data.cores){ for(TeamData data : state.teams.active){
float dst = tile.dst2(x * tilesize + type.offset, y * tilesize + type.offset); for(CoreBuild tile : data.cores){
if(dst < mindst){ float dst = tile.dst2(x * tilesize + type.offset, y * tilesize + type.offset);
closest = tile; if(dst < mindst){
mindst = dst; closest = tile;
mindst = dst;
}
} }
} }
} if(closest != null && closest.team != team){
if(closest != null && closest.team != team){ return false;
}
}else if(state.teams.eachEnemyCore(team, core -> Mathf.dst(x * tilesize + type.offset, y * tilesize + type.offset, core.x, core.y) < state.rules.enemyCoreBuildRadius + type.size * tilesize / 2f)){
return false; return false;
} }
}else if(state.teams.eachEnemyCore(team, core -> Mathf.dst(x * tilesize + type.offset, y * tilesize + type.offset, core.x, core.y) < state.rules.enemyCoreBuildRadius + type.size * tilesize / 2f)){
return false;
} }
Tile tile = world.tile(x, y); Tile tile = world.tile(x, y);