Implemented Anuken/Mindustry-Suggestions/issues/3026

This commit is contained in:
Anuken
2021-09-27 09:18:46 -04:00
parent dac17aa2b7
commit ed1557b5ac
4 changed files with 32 additions and 8 deletions

View File

@@ -6,12 +6,14 @@ import arc.math.geom.*;
import arc.struct.*;
import arc.util.*;
import mindustry.annotations.Annotations.*;
import mindustry.content.*;
import mindustry.core.*;
import mindustry.entities.bullet.*;
import mindustry.game.*;
import mindustry.game.Teams.*;
import mindustry.gen.*;
import mindustry.graphics.*;
import mindustry.world.*;
import static mindustry.Vars.*;
@@ -137,6 +139,17 @@ abstract class BulletComp implements Timedc, Damagec, Hitboxc, Teamc, Posc, Draw
while(x >= 0 && y >= 0 && x < ww && y < wh){
Building build = world.build(x, y);
if(type.collideFloor){
Tile tile = world.tile(x, y);
if(tile == null || tile.floor().hasSurface() || tile.block() != Blocks.air){
type.despawned(self());
remove();
hit = true;
return;
}
}
if(build != null && isAdded() && build.collide(self()) && type.testCollision(self(), build)
&& !build.dead() && (type.collidesTeam || build.team != team) && !(type.pierceBuilding && hasCollided(build.id))){