Fixed drone spam

This commit is contained in:
Anuken 2018-08-07 18:49:43 -04:00
parent 1f59d4354a
commit 049dd89470
2 changed files with 11 additions and 3 deletions

View File

@ -88,7 +88,7 @@ public class Pathfinder{
} }
private boolean passable(Tile tile, Team team){ private boolean passable(Tile tile, Team team){
return (!tile.solid() && !(tile.floor().isLiquid && (tile.floor().damageTaken > 0 || tile.floor().drownTime > 0))) return (!tile.solid() && !(tile.floor().isLiquid))
|| (tile.breakable() && (tile.target().getTeam() != team)); || (tile.breakable() && (tile.target().getTeam() != team));
} }

View File

@ -5,6 +5,7 @@ import com.badlogic.gdx.math.Vector2;
import com.badlogic.gdx.utils.Array; import com.badlogic.gdx.utils.Array;
import io.anuke.mindustry.content.Items; import io.anuke.mindustry.content.Items;
import io.anuke.mindustry.content.blocks.Blocks; import io.anuke.mindustry.content.blocks.Blocks;
import io.anuke.mindustry.content.blocks.DefenseBlocks;
import io.anuke.mindustry.content.blocks.UnitBlocks; import io.anuke.mindustry.content.blocks.UnitBlocks;
import io.anuke.mindustry.game.Team; import io.anuke.mindustry.game.Team;
import io.anuke.mindustry.maps.generation.StructureFormat.StructBlock; import io.anuke.mindustry.maps.generation.StructureFormat.StructBlock;
@ -175,11 +176,18 @@ public class FortressGenerator{
int wy = y + cy - struct.layout[0].length/2; int wy = y + cy - struct.layout[0].length/2;
StructBlock block = struct.layout[cx][cy]; StructBlock block = struct.layout[cx][cy];
Tile tile = world.tile(wx, wy); Tile tile = world.tile(wx, wy);
Block result = block.block;
if(result == UnitBlocks.resupplyPoint) result = DefenseBlocks.tungstenWall;
if(result == UnitBlocks.monsoonPad) result = DefenseBlocks.tungstenWallLarge;
if(result == UnitBlocks.fabricatorPad) result = DefenseBlocks.tungstenWallLarge;
//resupply points should not be placed anymore, they confuse units //resupply points should not be placed anymore, they confuse units
if(block.block != Blocks.air && tile.block().alwaysReplace && block.block != UnitBlocks.resupplyPoint){ if(result != Blocks.air && tile.block().alwaysReplace){
tile.setElevation(elevation); tile.setElevation(elevation);
tile.setRotation(block.rotation); tile.setRotation(block.rotation);
tile.setBlock(block.block, team); tile.setBlock(result, team);
fill(tile); fill(tile);
} }