physics_joint_get_value

通过使用一系列预定义常量,您可以询问 GameMaker,告诉您有关任何给定关节状态的许多信息。这非常有用,因为它使您能够根据当时的需要删除关节或更改实例行为。此函数中可以使用许多常量,这里可以找到这些常量:物理关节常量,但请注意,调用这些常数时会执行复杂的计算,因此应小心使用,并且仅在必要时使用,并且请注意,许多常数对于特定类型的联合是唯一的。

如果特性不存在 (例如,如果检查滑轮接头的棱柱平移),则返回值为 0。

 

语法:

physics_joint_get_value(joint, value)

参数类型描述
jointPhysics Joint ID要测试的关节的步进
valuePhysics Joint Constant要测试的关节特性的常量

 

返回:

Real

 

例子:

if (shipJoint)
{
    var reactionForceX = physics_joint_get_value(shipJoint, phy_joint_reaction_force_x);
    var reactionForceY = physics_joint_get_value(shipJoint, phy_joint_reaction_force_y);
    var reactionForce = point_distance(0, 0, reactionForceX, reactionForceY);
    if (reactionForce > 2)
    {
        physics_joint_delete(shipJoint);
        shipJoint = -1;
    }
}

上述代码检查变量 "shipJoint" 是否保持关节索引,如果保持关节索引,则使用这两个常量计算应用于该关节的力。最后,如果总力大于 2,则会删除关节。