Fixed mobile mechs configuration / Block selection / Crash

This commit is contained in:
Anuken
2018-10-19 08:30:37 -04:00
parent cb1f54aac4
commit 44479930df
4 changed files with 21 additions and 12 deletions

View File

@@ -83,6 +83,12 @@ public class DebugBlocks extends BlockList implements ContentList{
return true;
}
@Override
public void setBars(){
super.setBars();
bars.remove(BarType.inventory);
}
@Override
public void update(Tile tile){
SorterEntity entity = tile.entity();

View File

@@ -46,7 +46,7 @@ public class OverlayRenderer{
public void drawTop(){
for(Player player : players){
if(player.isDead()) continue; //dead player don't draw
if(player.isDead()) continue; //dead players don't draw
InputHandler input = control.input(player.playerIndex);
@@ -83,7 +83,7 @@ public class OverlayRenderer{
Draw.reset();
//draw selected block bars and info
if(input.recipe == null && !ui.hasMouse() && !input.frag.config.isShown()){
if(input.recipe == null && !ui.hasMouse()){
Vector2 vec = Graphics.world(input.getMouseX(), input.getMouseY());
Tile tile = world.tileWorld(vec.x, vec.y);

View File

@@ -567,19 +567,21 @@ public class MobileInput extends InputHandler implements GestureListener{
//add to selection queue if it's a valid BREAK position
cursor = cursor.target();
selection.add(new PlaceRequest(cursor.worldx(), cursor.worldy()));
}else if(!canTapPlayer(worldx, worldy) && player.mech.flying){
}else if(!canTapPlayer(worldx, worldy)){
boolean consumed = false;
//else, try and carry units
if(player.getCarry() != null){
consumed = true;
player.dropCarry(); //drop off unit
}else{
Unit unit = Units.getClosest(player.getTeam(), Graphics.world(x, y).x, Graphics.world(x, y).y, 4f, u -> !u.isFlying() && u.getMass() <= player.mech.carryWeight);
if(unit != null){
player.moveTarget = unit;
if(player.mech.flying){
if(player.getCarry() != null){
consumed = true;
Effects.effect(Fx.select, unit.getX(), unit.getY());
player.dropCarry(); //drop off unit
}else{
Unit unit = Units.getClosest(player.getTeam(), Graphics.world(x, y).x, Graphics.world(x, y).y, 4f, u -> !u.isFlying() && u.getMass() <= player.mech.carryWeight);
if(unit != null){
player.moveTarget = unit;
consumed = true;
Effects.effect(Fx.select, unit.getX(), unit.getY());
}
}
}

View File

@@ -79,6 +79,7 @@ public class CoreBlock extends StorageBlock{
@Remote(called = Loc.server)
public static void setCoreSolid(Tile tile, boolean solid){
if(tile == null) return;
CoreEntity entity = tile.entity();
if(entity != null) entity.solid = solid;
}