                  {
                      if (var29 >= -0.03125D)
                      {
-@@ -395,7 +399,10 @@
+@@ -337,6 +356,11 @@
+                     this.ticksForFloatKick = 0;
+                 }
+ 
++                if (!this.hasMoved) //Fixes "Moved Too Fast" kick when being teleported while moving
++                {
++                    return;
++                }
++
+                 this.playerEntity.onGround = par1Packet10Flying.onGround;
+                 this.mcServer.getConfigurationManager().serverUpdateMountedMovingPlayer(this.playerEntity);
+                 this.playerEntity.updateFlyingState(this.playerEntity.posY - var3, par1Packet10Flying.onGround);
+@@ -395,7 +419,10 @@
                  double var12 = this.playerEntity.posZ - ((double)var7 + 0.5D);
                  double var14 = var8 * var8 + var10 * var10 + var12 * var12;
  

                     this.playerEntity.playerNetServerHandler.sendPacketToPlayer(new Packet53BlockChange(var5, var6, var7, var2));
                 }
                 else
@@ -479,7 +487,11 @@
                 return;
             }
 

             {
                 this.playerEntity.theItemInWorldManager.activateBlockOrUseItem(this.playerEntity, var2, var3, var5, var6, var7, var8, par1Packet15Place.getXOffset(), par1Packet15Place.getYOffset(), par1Packet15Place.getZOffset());
             }
@@ -798,7 +832,7 @@
                     return;
                 }
 
