Set = function (b1, b2, ov)
{
    body1 = b1;
    body2 = b2;

    var v1 = body1.velocity.y;
    var v2 = body2.velocity.y;

    body1Pushable = body1.pushable;
    body1MovingUp = body1._dy < 0;
    body1MovingDown = body1._dy > 0;
    body1Stationary = body1._dy === 0;
    body1OnTop = Math.abs(body1.bottom - body2.y) <= Math.abs(body2.bottom - body1.y);
    body1FullImpact = v2 - v1 * body1.bounce.y;

    body2Pushable = body2.pushable;
    body2MovingUp = body2._dy < 0;
    body2MovingDown = body2._dy > 0;
    body2Stationary = body2._dy === 0;
    body2OnTop = !body1OnTop;
    body2FullImpact = v1 - v2 * body2.bounce.y;

    //  negative delta = up, positive delta = down (inc. gravity)
    overlap = Math.abs(ov);

    return BlockCheck();
}
Sets all of the local processing values and calculates the velocity exchanges.

Then runs `BlockCheck` and returns the value from it.

This method is called by `Phaser.Physics.Arcade.SeparateY` and should not be
called directly.

@function Phaser.Physics.Arcade.ProcessY.Set
@ignore
@since 3.50.0

@param {Phaser.Physics.Arcade.Body} b1 - The first Body to separate.
@param {Phaser.Physics.Arcade.Body} b2 - The second Body to separate.
@param {number} ov - The overlap value.

@return {number} The BlockCheck result. 0 = not blocked. 1 = Body 1 blocked. 2 = Body 2 blocked.