Implemented ground mech boosting

This commit is contained in:
Anuken
2020-05-20 18:48:04 -04:00
parent 78f24b8840
commit 5b445c59c1
62 changed files with 610 additions and 638 deletions

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.math.*;
import arc.math.geom.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.*;
import arc.graphics.g2d.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.func.*;
import arc.graphics.g2d.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.util.ArcAnnotate.*;
import mindustry.annotations.Annotations.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.struct.*;
import arc.util.ArcAnnotate.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import mindustry.annotations.Annotations.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.graphics.*;
import arc.graphics.g2d.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import mindustry.annotations.Annotations.*;
import mindustry.gen.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.graphics.*;
import mindustry.annotations.Annotations.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import mindustry.annotations.Annotations.*;
import mindustry.gen.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.func.*;
import arc.util.io.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.math.*;
import arc.math.geom.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.math.*;
import arc.math.geom.*;
@@ -14,10 +14,11 @@ import static mindustry.Vars.net;
abstract class FlyingComp implements Posc, Velc, Healthc, Hitboxc{
private static final Vec2 tmp1 = new Vec2(), tmp2 = new Vec2();
@Import float x, y, drag;
@Import float x, y;
@Import Vec2 vel;
float elevation;
private transient boolean wasFlying;
transient float drownTime;
transient float splashTimer;
@@ -26,13 +27,17 @@ abstract class FlyingComp implements Posc, Velc, Healthc, Hitboxc{
}
boolean isFlying(){
return elevation >= 0.001f;
return elevation >= 0.09f;
}
boolean canDrown(){
return isGrounded();
}
void landed(){
}
void wobble(){
x += Mathf.sin(Time.time() + id() * 99, 25f, 0.05f) * Time.delta() * elevation;
y += Mathf.cos(Time.time() + id() * 99, 25f, 0.05f) * Time.delta() * elevation;
@@ -53,6 +58,16 @@ abstract class FlyingComp implements Posc, Velc, Healthc, Hitboxc{
public void update(){
Floor floor = floorOn();
if(isFlying() != wasFlying){
if(wasFlying){
if(tileOn() != null){
Fx.unitLand.at(x, y, floorOn().isLiquid ? 1f : 0.5f, floorOn().mapColor);
}
}
wasFlying = isFlying();
}
if(isGrounded() && floor.isLiquid){
if((splashTimer += Mathf.dst(deltaX(), deltaY())) >= 7f){
floor.walkEffect.at(x, y, 0, floor.mapColor);

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.math.*;
import arc.util.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.func.*;
import arc.math.geom.QuadTree.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.math.*;
import mindustry.annotations.Annotations.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.math.*;
import arc.util.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.*;
import arc.graphics.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import mindustry.annotations.Annotations.*;
import mindustry.gen.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.util.ArcAnnotate.*;
import mindustry.annotations.Annotations.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import mindustry.annotations.Annotations.*;
import mindustry.async.PhysicsProcess.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.*;
import arc.graphics.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.math.geom.*;
import arc.util.ArcAnnotate.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.graphics.*;
import arc.graphics.g2d.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import mindustry.annotations.Annotations.*;
import mindustry.gen.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.util.*;
import mindustry.annotations.Annotations.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import mindustry.annotations.Annotations.*;
import mindustry.gen.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.graphics.*;
import arc.math.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import mindustry.*;
import mindustry.annotations.Annotations.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.util.ArcAnnotate.*;
import mindustry.annotations.Annotations.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.*;
import arc.Graphics.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.math.*;
import arc.util.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.util.*;
import mindustry.annotations.Annotations.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import mindustry.annotations.Annotations.*;
import mindustry.graphics.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.*;
import arc.math.*;
@@ -125,8 +125,19 @@ abstract class UnitComp implements Healthc, Physicsc, Hitboxc, Statusc, Teamc, I
teamIndex.updateCount(team(), -1);
}
@Override
public void landed(){
if(type.landShake > 0f){
Effects.shake(type.landShake, type.landShake, this);
}
type.landed(this);
}
@Override
public void update(){
type.update(this);
drag(type.drag * (isGrounded() ? (floorOn().dragMultiplier) : 1f));
//apply knockback based on spawns

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.math.geom.*;
import arc.util.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import mindustry.annotations.Annotations.*;
import mindustry.content.*;

View File

@@ -1,4 +1,4 @@
package mindustry.entities.def;
package mindustry.entities.comp;
import arc.math.*;
import arc.math.geom.*;