ai-smallresources para desenvolvedores
Exports do cliente, o evento do cinto de segurança, state bags e metadata do ai-smallresources.
Para ler o cinto de segurança ou os gestos a partir do seu próprio script, use seatbelt.isOn() / seatbelt.onChange(fn) e gestures.isHandsUp() / gestures.isPointing() da lib (cliente; em Lua aiLib.seatbelt, aiLib.gestures). Eles passam pelo ai-core e funcionam com qualquer script de cinto ou de emotes que estiver rodando. Os exports abaixo são o que o ai-core lê enquanto o ai-smallresources responde.
Os três exports ficam no cliente, são síncronos e leem o jogador local. GetSeatbelt é tipado como AiSmallResourcesClientExports em @aicore-fivem/shared; IsHandsUp e IsPointing não são tipados (use callExport).
import { resourceExport, callExport } from "@aicore-fivem/lib/client";
const small = resourceExport("ai-smallresources");Exports do cliente
GetSeatbelt
Se o jogador local está usando o cinto de segurança.
Lado: Cliente · Espera: não
GetSeatbelt(): boolean | nulllocal worn = exports['ai-smallresources']:GetSeatbelt() -- true, false ou nilRetorno
true quando afivelado, false quando não. null quando o recurso Seatbelt está desligado no painel, ou o jogador não está em um veículo com cinto.
Exemplo
import { seatbelt } from "@aicore-fivem/lib/client";
// O ícone de cinto de um HUD: lê uma vez, depois acompanha as mudanças.
let worn = seatbelt.isOn();
seatbelt.onChange((value) => {
worn = value;
});Leia em uma ação ou em uma troca de veículo, nunca a cada frame.
IsHandsUp
Se o jogador local está com as mãos para cima (o gesto X).
Lado: Cliente · Espera: não
IsHandsUp(): booleanlocal up = exports['ai-smallresources']:IsHandsUp()Retorno
true enquanto as mãos estão para cima, false caso contrário.
IsPointing
Se o jogador local está apontando (o gesto B).
Lado: Cliente · Espera: não
IsPointing(): booleanlocal pointing = exports['ai-smallresources']:IsPointing()Retorno
true enquanto aponta, false caso contrário.
Eventos
ai-smallresources:seatbelt
Disparado no cliente local quando o cinto muda. O nome é SEATBELT_EVENT em @aicore-fivem/shared. O ai-core o repassa como seu próprio evento de cinto, que o seatbelt.onChange da lib escuta; prefira esse.
Lado: Cliente (evento local)
Prop
Type
AddEventHandler('ai-smallresources:seatbelt', function(worn)
print('seat belt', worn)
end)Todos os outros eventos do ai-smallresources são internos (do cliente e do servidor dele).
State bags e metadata
| Nome | Em | Tipo | Significado |
|---|---|---|---|
aiHold | jogador | string | false | O item de jornalismo que o jogador segura (newscam, newsmic, newsboom). |
aiCarrying | jogador | number | O jogador está carregando alguém (o id do servidor dele). |
aiCarriedBy | jogador | number | O jogador está sendo carregado por alguém (o id do servidor dele). |
aiDiving | jogador | boolean | O jogador está usando o equipamento de mergulho. |
aiRealPlate | veículo | string | A placa real enquanto uma placa falsa está colocada. |
aiMoored | veículo | boolean | O barco está amarrado a uma amarração. |
diveOxygen | metadata de personagem (ai-core) | number | Segundos de ar restantes no tanque de mergulho. |
aiPlayerCount / aiMaxPlayers | GlobalState | number | Jogadores online e vagas, definidos enquanto o Discord Rich Presence está ligado. |
// Servidor: a placa real de um veículo, falsa ou não.
export function realPlate(vehicle: number): string {
const real = Entity(vehicle).state.aiRealPlate as string | undefined;
return real ?? GetVehicleNumberPlateText(vehicle);
}Itens usáveis
Registrados pela camada de inventário do ai-core, então funcionam com qualquer inventário que estiver rodando: binoculars, firework1-firework4, newscam, newsmic, newsboom, fakeplate, notepad, note (metadata text e description), diving_gear, diving_fill.
ai-smallresources
Muitos recursos pequenos de gameplay, cada um com seu próprio interruptor no painel, mais teleportes, elevadores, assentos, amarrações e Discord Rich Presence.
ai-exitsleeping
Um jogador que sai do jogo fica no mundo como um corpo dormindo que outros podem carregar e colocar em veículos.