01客户端导出
| 导出 | 说明 |
|---|---|
isSeatbeltOn() | 本地玩家的安全带处于系上状态时返回 true,无论是玩家自己系上还是车辆自动系上。 |
enableSeatbelt() | 以常规音效和提示为本地玩家系上安全带。 |
disableSeatbelt() | 以常规音效和提示为本地玩家解开安全带。 |
toggleSeatbelt() | 切换本地玩家的安全带。当状态确实改变时返回 true,而不是返回新状态,这样可以区分被拒绝的切换(没有车辆或该座位没有安全带)和成功的切换。 |
isAutoBuckled() | 安全带是由车辆而非玩家系上时返回 true。 |
autoBuckle(on: boolean) | 以自动安全带的方式系上或解开,与自动驾驶汽车的做法相同。 |
getSeatbeltState() | 返回一个表,包含是否系上、是否为自动、座位和车辆。 |
setSeatbeltEnabled(on: boolean) | 为该玩家整体关闭或开启安全带功能,用于过场动画或管理场景。 |
isPlayerSeatbeltOn(serverId: number) | 返回其他玩家的安全带状态,从同步的 state bag 中读取。 |
bucklesItselfVehicle(vehicle: number) | 返回该车辆是否会自动为乘员系安全带,依据车型列表或 agAuto state bag。 |
openSettings() | 打开设置卡片。 |
closeSettings() | 关闭设置卡片。 |
isSettingsOpen() | 返回设置卡片是否处于打开状态。 |
02服务端导出
| 导出 | 说明 |
|---|---|
isSeatbeltOn(source: number) | 在服务端返回玩家的安全带状态,从同步的 state bag 中读取。 |
getBuckledPlayers() | 返回当前所有系着安全带的玩家的服务器 id。 |
setSeatbelt(source: number, on: boolean) | 从服务端为玩家系上或解开安全带。 |
03事件
| 名称 | 端 | 说明 |
|---|---|---|
Agency-HUD:seatbeltStateChanged | 客户端 | 每次变化时带着新状态触发。Agency-HUD 会监听它,其他资源也可以监听。 |
+值得了解
本页列出了 Agency-Seatbelt 提供的可供其他资源使用的导出。开发者可以使用这些客户端导出来控制或查询本地玩家的安全带状态。该资源不提供任何服务器端导出。确保在任何使用其导出的资源之前启动 Agency-Seatbelt,以避免运行时错误或未定义行为。
- 仅限客户端导出
- Agency-Seatbelt 提供四个全部为客户端的导出。这些导出允许脚本启用、禁用、切换或检查本地玩家的安全带状态。该资源不暴露任何服务器导出或事件。
- 在其他资源中的使用
- 要使用这些导出,请确保 Agency-Seatbelt 在任何依赖资源之前启动。在客户端脚本中直接调用这些导出,以根据需要集成安全带功能或 HUD 状态检查。
- 无依赖或 SQL
- Agency-Seatbelt 不需要任何外部依赖或 SQL 设置。启动资源后,所有功能包括导出函数均可直接使用。
?常见问题
Agency-Seatbelt 是否提供任何服务器端导出?
不,Agency-Seatbelt 仅提供客户端导出。没有服务器端导出或事件暴露。所有与安全带状态的交互必须通过客户端脚本使用可用的导出来执行。
如果我在 Agency-Seatbelt 启动之前调用导出会发生什么?
如果您尝试在 Agency-Seatbelt 启动之前使用导出,该导出将不可用,您的脚本可能会抛出错误或无法按预期工作。请始终确保先启动 Agency-Seatbelt。
我需要配置任何依赖项或导入 SQL 来使用这些导出吗?
不,Agency-Seatbelt 不需要任何依赖项或 SQL 导入。导出在资源启动后立即可用,无需额外设置。
我如何从另一个脚本检查本地玩家的安全带是否系上?
您可以使用 isSeatbeltOn() 客户端导出来检查本地玩家的安全带当前是否系上。从您的客户端脚本调用此导出以获取当前的安全带状态。
