More drone changes

This commit is contained in:
Anuken
2019-06-14 21:06:58 -04:00
parent 89b3d3b670
commit 910dab1896
15 changed files with 44 additions and 20 deletions

View File

@@ -1,5 +1,6 @@
package io.anuke.mindustry.entities.type.base;
import io.anuke.arc.math.Mathf;
import io.anuke.arc.util.Structs;
import io.anuke.mindustry.content.Blocks;
import io.anuke.mindustry.entities.traits.MinerTrait;
@@ -133,9 +134,18 @@ public class MinerDrone extends BaseDrone implements MinerTrait{
updateMining();
}
@Override
protected void updateRotation(){
if(mineTile != null && shouldRotate() && mineTile.dst(this) < type.range){
rotation = Mathf.slerpDelta(rotation, angleTo(mineTile), 0.3f);
}else{
rotation = Mathf.slerpDelta(rotation, velocity.angle(), 0.3f);
}
}
@Override
public boolean shouldRotate(){
return false;
return isMining();
}
@Override

View File

@@ -1,7 +1,6 @@
package io.anuke.mindustry.entities.type.base;
import io.anuke.mindustry.entities.Units;
import io.anuke.mindustry.entities.type.FlyingUnit;
import io.anuke.mindustry.entities.type.TileEntity;
import io.anuke.mindustry.entities.units.UnitState;
import io.anuke.mindustry.world.Pos;
@@ -11,7 +10,7 @@ import java.io.*;
import static io.anuke.mindustry.Vars.world;
public class RepairDrone extends FlyingUnit{
public class RepairDrone extends BaseDrone{
public final UnitState repair = new UnitState(){
public void entered(){
@@ -32,12 +31,18 @@ public class RepairDrone extends FlyingUnit{
//circle spawner if there's nothing to repair
if(getSpawner() != null){
target = getSpawner();
circle(type.range * 0.9f);
circle(type.range * 1.5f, type.speed/2f);
target = null;
}
}
}
};
@Override
public boolean shouldRotate(){
return target != null;
}
@Override
public UnitState getStartState(){
return repair;