A significant waste of time and effort

This commit is contained in:
Anuken
2021-11-23 22:41:25 -05:00
parent 4d49b0b2ee
commit ba14151a01
21 changed files with 413 additions and 72 deletions
@@ -42,7 +42,7 @@ public class ContinuousTurret extends Turret{
@Override
public boolean hasAmmo(){
return consValid();
return cons.canConsume();
}
@Override
@@ -48,6 +48,7 @@ public class Turret extends ReloadTurret{
public float ammoEjectBack = 1f;
public float inaccuracy = 0f;
public float velocityInaccuracy = 0f;
public float shootWarmupSpeed = 3f / 60f;
public int shots = 1;
public float spread = 4f;
public float recoilAmount = 1f;
@@ -149,6 +150,11 @@ public class Turret extends ReloadTurret{
return draw.icons(this);
}
@Override
public void getRegionsToOutline(Seq<TextureRegion> out){
draw.getRegionsToOutline(out);
}
public static abstract class AmmoEntry{
public int amount;
@@ -165,6 +171,7 @@ public class Turret extends ReloadTurret{
public Seq<AmmoEntry> ammo = new Seq<>();
public int totalAmmo;
public float recoil, heat, logicControlTime = -1;
public float shootWarmup;
public int shotCounter;
public boolean logicShooting = false;
public @Nullable Posc target;
@@ -172,6 +179,11 @@ public class Turret extends ReloadTurret{
public BlockUnitc unit = (BlockUnitc)UnitTypes.block.create(team);
public boolean wasShooting, charging;
@Override
public float warmup(){
return shootWarmup;
}
@Override
public float drawrot(){
return rotation - 90;
@@ -273,6 +285,9 @@ public class Turret extends ReloadTurret{
public void updateTile(){
if(!validateTarget()) target = null;
//TODO can be lerp instead, that's smoother
shootWarmup = Mathf.approachDelta(shootWarmup, isActive() ? 1f : 0f, shootWarmupSpeed);
wasShooting = false;
recoil = Mathf.lerpDelta(recoil, 0f, restitution);
@@ -138,6 +138,11 @@ public class GenericCrafter extends Block{
return outputItems != null;
}
@Override
public void getRegionsToOutline(Seq<TextureRegion> out){
drawer.getRegionsToOutline(out);
}
public class GenericCrafterBuild extends Building{
public float progress;
public float totalProgress;