通过使用一系列预定义常量,您可以询问 GameMaker,告诉您有关任何给定关节状态的许多信息。这非常有用,因为它使您能够根据当时的需要删除关节或更改实例行为。此函数中可以使用许多常量,这里可以找到这些常量:物理关节常量,但请注意,调用这些常数时会执行复杂的计算,因此应小心使用,并且仅在必要时使用,并且请注意,许多常数对于特定类型的联合是唯一的。
如果特性不存在 (例如,如果检查滑轮接头的棱柱平移),则返回值为 0。
physics_joint_get_value(joint, value)
参数 | 类型 | 描述 |
---|---|---|
joint | Physics Joint ID | 要测试的关节的步进 |
value | Physics Joint Constant | 要测试的关节特性的常量 |
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,则会删除关节。