From c54f3980637bc6224a210931cd4c25623ac0831d Mon Sep 17 00:00:00 2001 From: Anuken Date: Thu, 10 Dec 2020 18:21:39 -0500 Subject: [PATCH] Fixed Parallax not moving players serverside --- core/src/mindustry/entities/comp/PhysicsComp.java | 11 +++++++++++ .../mindustry/maps/planet/SerpuloPlanetGenerator.java | 2 -- .../blocks/defense/turrets/TractorBeamTurret.java | 2 +- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/core/src/mindustry/entities/comp/PhysicsComp.java b/core/src/mindustry/entities/comp/PhysicsComp.java index 12972935ee..d68e392dca 100644 --- a/core/src/mindustry/entities/comp/PhysicsComp.java +++ b/core/src/mindustry/entities/comp/PhysicsComp.java @@ -29,4 +29,15 @@ abstract class PhysicsComp implements Velc, Hitboxc, Flyingc{ void impulse(Vec2 v){ impulse(v.x, v.y); } + + void impulseNet(Vec2 v){ + impulse(v.x, v.y); + + //manually move units to simulate velocity for remote players + if(isRemote()){ + float mass = mass(); + move(v.x / mass, v.y / mass); + } + + } } diff --git a/core/src/mindustry/maps/planet/SerpuloPlanetGenerator.java b/core/src/mindustry/maps/planet/SerpuloPlanetGenerator.java index 356640f89a..bf64f54193 100644 --- a/core/src/mindustry/maps/planet/SerpuloPlanetGenerator.java +++ b/core/src/mindustry/maps/planet/SerpuloPlanetGenerator.java @@ -23,7 +23,6 @@ public class SerpuloPlanetGenerator extends PlanetGenerator{ float scl = 5f; float waterOffset = 0.07f; - //TODO fix sand near snow (sector 173) Block[][] arr = { {Blocks.water, Blocks.darksandWater, Blocks.darksand, Blocks.darksand, Blocks.darksand, Blocks.darksand, Blocks.sand, Blocks.sand, Blocks.sand, Blocks.sand, Blocks.darksandTaintedWater, Blocks.stone, Blocks.stone}, @@ -55,7 +54,6 @@ public class SerpuloPlanetGenerator extends PlanetGenerator{ float water = 2f / arr[0].length; - float rawHeight(Vec3 position){ position = Tmp.v33.set(position).scl(scl); return (Mathf.pow((float)noise.octaveNoise3D(7, 0.5f, 1f/3f, position.x, position.y, position.z), 2.3f) + waterOffset) / (1f + waterOffset); diff --git a/core/src/mindustry/world/blocks/defense/turrets/TractorBeamTurret.java b/core/src/mindustry/world/blocks/defense/turrets/TractorBeamTurret.java index f7878504e1..511faf35ef 100644 --- a/core/src/mindustry/world/blocks/defense/turrets/TractorBeamTurret.java +++ b/core/src/mindustry/world/blocks/defense/turrets/TractorBeamTurret.java @@ -118,7 +118,7 @@ public class TractorBeamTurret extends BaseTurret{ } any = true; - target.impulse(Tmp.v1.set(this).sub(target).limit((force + (1f - target.dst(this) / range) * scaledForce) * efficiency() * timeScale)); + target.impulseNet(Tmp.v1.set(this).sub(target).limit((force + (1f - target.dst(this) / range) * scaledForce) * efficiency() * timeScale)); } }else{ strength = Mathf.lerpDelta(strength, 0, 0.1f);