This commit is contained in:
Anuken
2020-02-06 20:24:30 -05:00
parent e3136e9e09
commit f83b6728cf
8 changed files with 34 additions and 29 deletions

View File

@@ -8,12 +8,17 @@ import mindustry.gen.*;
import mindustry.world.blocks.*;
@Component
abstract class LegsComp implements Posc, Flyingc, Hitboxc{
abstract class LegsComp implements Posc, Flyingc, Hitboxc, DrawLayerGroundUnderc{
transient float x, y;
float baseRotation, walkTime;
void drawLegs(){
abstract TextureRegion legRegion();
abstract TextureRegion baseRegion();
@Override
public void drawGroundUnder(){
Draw.mixcol(Color.white, hitAlpha());
TextureRegion legRegion = null, baseRegion = null;
float ft = Mathf.sin(walkTime * vel().len() * 5f, 6f, 2f + hitSize() / 15f);
@@ -24,10 +29,10 @@ abstract class LegsComp implements Posc, Flyingc, Hitboxc{
}
for(int i : Mathf.signs){
Draw.rect(legRegion,
x() + Angles.trnsx(baseRotation, ft * i),
y() + Angles.trnsy(baseRotation, ft * i),
legRegion.getWidth() * i * Draw.scl, legRegion.getHeight() * Draw.scl - Mathf.clamp(ft * i, 0, 2), baseRotation - 90);
Draw.rect(legRegion(),
x + Angles.trnsx(baseRotation, ft * i),
y + Angles.trnsy(baseRotation, ft * i),
legRegion().getWidth() * i * Draw.scl, legRegion().getHeight() * Draw.scl - Mathf.clamp(ft * i, 0, 2), baseRotation - 90);
}
if(floor.isLiquid){
@@ -36,7 +41,7 @@ abstract class LegsComp implements Posc, Flyingc, Hitboxc{
Draw.color(Color.white);
}
Draw.rect(baseRegion, x(), y(), baseRotation - 90);
Draw.rect(baseRegion(), x, y, baseRotation - 90);
Draw.mixcol();
}