diff --git a/core/src/io/anuke/mindustry/core/ThreadHandler.java b/core/src/io/anuke/mindustry/core/ThreadHandler.java index c89a816140..700b816a92 100644 --- a/core/src/io/anuke/mindustry/core/ThreadHandler.java +++ b/core/src/io/anuke/mindustry/core/ThreadHandler.java @@ -11,7 +11,7 @@ public class ThreadHandler{ public ThreadHandler(){ Timers.setDeltaProvider(() -> { float result = Gdx.graphics.getDeltaTime() * 60f; - return Math.min(Float.isNaN(result) || Float.isInfinite(result) ? 1f : result, 15f); + return Float.isNaN(result) || Float.isInfinite(result) ? 1f : Math.min(result, 60f / 10f); }); } diff --git a/core/src/io/anuke/mindustry/entities/Player.java b/core/src/io/anuke/mindustry/entities/Player.java index 6d336b6fe6..6d8e3ad70e 100644 --- a/core/src/io/anuke/mindustry/entities/Player.java +++ b/core/src/io/anuke/mindustry/entities/Player.java @@ -293,7 +293,7 @@ public class Player extends Unit implements BuilderTrait, CarryTrait, ShooterTra float x = snappedX(), y = snappedY(); if(!movement.isZero() && moved && !state.isPaused()){ - walktime += Timers.delta() * movement.len() / 0.7f * getFloorOn().speedMultiplier; + walktime += movement.len() / 0.7f * getFloorOn().speedMultiplier; baseRotation = Mathf.slerpDelta(baseRotation, movement.angle(), 0.13f); } @@ -608,11 +608,11 @@ public class Player extends Unit implements BuilderTrait, CarryTrait, ShooterTra pointerY = vec.y; updateShooting(); - movement.limit(speed * Timers.delta()); + movement.limit(speed).scl(Timers.delta()); if(getCarrier() == null){ if(!ui.chatfrag.chatOpen()){ - velocity.add(movement); + velocity.add(movement.x, movement.y); } float prex = x, prey = y; updateVelocityStatus(); diff --git a/core/src/io/anuke/mindustry/entities/Unit.java b/core/src/io/anuke/mindustry/entities/Unit.java index e7d4644401..ef6bdfecfe 100644 --- a/core/src/io/anuke/mindustry/entities/Unit.java +++ b/core/src/io/anuke/mindustry/entities/Unit.java @@ -233,7 +233,7 @@ public abstract class Unit extends DestructibleEntity implements SaveTrait, Targ status.update(this); - velocity.limit(getMaxVelocity()).scl(status.getSpeedMultiplier()); + velocity.limit(getMaxVelocity()).scl(1f + (status.getSpeedMultiplier()-1f) * Timers.delta()); if(isFlying()){ x += velocity.x * Timers.delta(); diff --git a/core/src/io/anuke/mindustry/entities/units/GroundUnit.java b/core/src/io/anuke/mindustry/entities/units/GroundUnit.java index 8bdec0d39b..db01ba1ab1 100644 --- a/core/src/io/anuke/mindustry/entities/units/GroundUnit.java +++ b/core/src/io/anuke/mindustry/entities/units/GroundUnit.java @@ -238,7 +238,7 @@ public abstract class GroundUnit extends BaseUnit{ } protected void patrol(){ - vec.trns(baseRotation, type.speed); + vec.trns(baseRotation, type.speed * Timers.delta()); velocity.add(vec.x, vec.y); vec.trns(baseRotation, type.hitsizeTile); Tile tile = world.tileWorld(x + vec.x, y + vec.y); diff --git a/core/src/io/anuke/mindustry/world/blocks/storage/SortedUnloader.java b/core/src/io/anuke/mindustry/world/blocks/storage/SortedUnloader.java index 5c3a970112..dd7374536a 100644 --- a/core/src/io/anuke/mindustry/world/blocks/storage/SortedUnloader.java +++ b/core/src/io/anuke/mindustry/world/blocks/storage/SortedUnloader.java @@ -11,12 +11,12 @@ import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.blocks.SelectionTrait; import io.anuke.ucore.graphics.Draw; import io.anuke.ucore.scene.ui.layout.Table; -import io.anuke.ucore.util.Log; import java.io.DataInput; import java.io.DataOutput; import java.io.IOException; -import static io.anuke.mindustry.Vars.*; + +import static io.anuke.mindustry.Vars.content; public class SortedUnloader extends Unloader implements SelectionTrait{ protected float speed = 1f; @@ -38,7 +38,6 @@ public class SortedUnloader extends Unloader implements SelectionTrait{ SortedUnloaderEntity entity = tile.entity(); if(tile.entity.timer.get(timerUnload, speed) && tile.entity.items.total() == 0){ - Log.info(threads.getFrameID()); for(Tile other : tile.entity.proximity()){ if(other.getTeam() == tile.getTeam() && other.block() instanceof StorageBlock && entity.items.total() == 0 && ((entity.sortItem == null && other.entity.items.total() > 0) || ((StorageBlock) other.block()).hasItem(other, entity.sortItem))){