Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -13,7 +13,6 @@ import io.anuke.ucore.function.Consumer;
|
||||
import io.anuke.ucore.function.Predicate;
|
||||
import io.anuke.ucore.util.EnumSet;
|
||||
import io.anuke.ucore.util.Geometry;
|
||||
import io.anuke.ucore.util.Threads;
|
||||
|
||||
import static io.anuke.mindustry.Vars.*;
|
||||
|
||||
@@ -63,45 +62,20 @@ public class Units{
|
||||
|
||||
/**Can be called from any thread.*/
|
||||
public static boolean anyEntities(Rectangle rect){
|
||||
if(Threads.isLogic()){
|
||||
boolResult = false;
|
||||
boolResult = false;
|
||||
|
||||
Units.getNearby(rect, unit -> {
|
||||
if(boolResult) return;
|
||||
if(!unit.isFlying()){
|
||||
unit.getHitbox(hitrect);
|
||||
Units.getNearby(rect, unit -> {
|
||||
if(boolResult) return;
|
||||
if(!unit.isFlying()){
|
||||
unit.getHitbox(hitrect);
|
||||
|
||||
if(hitrect.overlaps(rect)){
|
||||
boolResult = true;
|
||||
}
|
||||
if(hitrect.overlaps(rect)){
|
||||
boolResult = true;
|
||||
}
|
||||
});
|
||||
|
||||
return boolResult;
|
||||
}else{
|
||||
boolResultGraphics = false;
|
||||
|
||||
for(EntityGroup<? extends BaseUnit> g : unitGroups){
|
||||
g.forEach(u -> {
|
||||
if(u.isFlying()) return;
|
||||
u.getHitbox(rectGraphics);
|
||||
if(rectGraphics.overlaps(rect)){
|
||||
boolResultGraphics = true;
|
||||
}
|
||||
});
|
||||
if(boolResultGraphics) return true;
|
||||
}
|
||||
});
|
||||
|
||||
playerGroup.forEach(u -> {
|
||||
if(u.isFlying()) return;
|
||||
u.getHitbox(rectGraphics);
|
||||
if(rectGraphics.overlaps(rect)){
|
||||
boolResultGraphics = true;
|
||||
}
|
||||
});
|
||||
|
||||
return boolResultGraphics;
|
||||
}
|
||||
return boolResult;
|
||||
}
|
||||
|
||||
/**Returns whether there are any entities on this tile, with the hitbox expanded.*/
|
||||
|
||||
@@ -300,10 +300,6 @@ public interface BuilderTrait extends Entity{
|
||||
|
||||
float x1 = tmptr[0].x, y1 = tmptr[0].y,
|
||||
x3 = tmptr[1].x, y3 = tmptr[1].y;
|
||||
Translator close = Geometry.findClosest(unit.x, unit.y, tmptr);
|
||||
float x2 = close.x, y2 = close.y;
|
||||
|
||||
Draw.alpha(0.3f + Mathf.absin(Timers.time(), 0.9f, 0.2f));
|
||||
|
||||
Draw.alpha(1f);
|
||||
|
||||
|
||||
@@ -320,10 +320,8 @@ public abstract class BaseUnit extends Unit implements ShooterTrait{
|
||||
|
||||
if(target != null) behavior();
|
||||
|
||||
if(!isWave && !isFlying()){
|
||||
x = Mathf.clamp(x, tilesize/2f, world.width() * tilesize - tilesize/2f);
|
||||
y = Mathf.clamp(y, tilesize/2f, world.height() * tilesize - tilesize/2f);
|
||||
}
|
||||
x = Mathf.clamp(x, tilesize, world.width() * tilesize - tilesize);
|
||||
y = Mathf.clamp(y, tilesize, world.height() * tilesize - tilesize);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user