@@ -2071,7 +2071,7 @@ public void travel(@NotNull Vec3 pTravelVector) {
2071
2071
// Note: when motion is handled by the client no server side setDeltaMovement() should be called
2072
2072
// otherwise the movement will halt
2073
2073
// Todo: move wrongly fix
2074
- float flyingSpeed ;
2074
+ float flyingSpeed ; // FIXME :: Why overlay the flyingSpeed variable from LivingEntity
2075
2075
if (allowLocalMotionControl && this .getControllingPassenger () != null ) {
2076
2076
LivingEntity rider = this .getControllingPassenger ();
2077
2077
if (rider == null ) {
@@ -2205,7 +2205,7 @@ else if (isInWater() || isInLava()) {
2205
2205
// Walking control
2206
2206
else {
2207
2207
double forward = rider .zza ;
2208
- double strafing = rider .xxa ;
2208
+ double strafing = rider .xxa * 0.5f ;
2209
2209
// Inherit y motion for dropping
2210
2210
double vertical = pTravelVector .y ;
2211
2211
float speed = (float ) this .getAttributeValue (Attributes .MOVEMENT_SPEED );
@@ -2218,21 +2218,16 @@ else if (isInWater() || isInLava()) {
2218
2218
forward *= rider .isSprinting () ? 1.2f : 1.0f ;
2219
2219
// Slower going back
2220
2220
forward *= rider .zza > 0 ? 1.0f : 0.2f ;
2221
- // Slower going sideway
2222
- strafing *= 0.05f ;
2223
2221
2224
2222
if (this .isControlledByLocalInstance ()) {
2225
- flyingSpeed = speed * 0.1F ;
2226
- this .setSpeed (flyingSpeed );
2227
-
2223
+ this .setSpeed (speed );
2228
2224
// Vanilla walking behavior includes going up steps
2229
2225
super .travel (new Vec3 (strafing , vertical , forward ));
2230
2226
} else {
2231
2227
this .setDeltaMovement (Vec3 .ZERO );
2232
2228
}
2233
2229
this .tryCheckInsideBlocks ();
2234
2230
this .updatePitch (this .yOld - this .getY ());
2235
- return ;
2236
2231
}
2237
2232
}
2238
2233
// No rider move control
0 commit comments