Paliwo
Odczytuj i ustawiaj poziom paliwa pojazdu przez skrypt paliwa, którego używa serwer.
Paliwo przechodzi przez ai-core, nigdy przez własne eksporty, dekoratory lub state bagi skryptu paliwa (łącznie z ai-fuel). ai-core przekazuje każde wywołanie do aktywnego skryptu paliwa: tego, który wybiera ustawienie Fuel script w panelu, albo pierwszego działającego (ai-fuel, ox_fuel, LegacyFuel i inne z listy zgodności). Bez skryptu paliwa poziom to po prostu state bag fuel pojazdu.
Poziom to liczba od 0 (pusty) do 100 (pełny). Pojazd to serwerowy uchwyt encji.
GetFuelSystem
Nazwa zasobu skryptu paliwa, do którego ai-core przekazuje wywołania.
Strona: Serwer · Czeka: nie · Lib: fuel.provider()
GetFuelSystem(): string | nulllocal system = exports['ai-core']:GetFuelSystem() -- 'ai-fuel', 'ox_fuel'... lub nilParametry
Brak.
Zwraca
string | null: nazwa zasobu skryptu paliwa. null, gdy żaden nie działa.
Przykład
import { addCommand, resourceExport } from "@aicore-fivem/lib/server";
const core = resourceExport("ai-core");
addCommand("fuelsystem", { help: "Shows the fuel script in use", restricted: true }, () => {
console.log(core.GetFuelSystem() ?? "none: fuel is only the state bag");
});GetVehicleFuel
Poziom paliwa pojazdu.
Strona: Serwer · Czeka: nie · Lib: fuel.get (serwer); na kliencie fuel.get(vehicle) z klienckiego liba czyta state bag, który prowadzi ai-core
GetVehicleFuel(vehicle: number): number | nulllocal level = exports['ai-core']:GetVehicleFuel(vehicle) -- 0-100 lub nilParametry
Prop
Type
Zwraca
number | null: poziom, 0-100. null, gdy pojazd nie ma jeszcze poziomu albo vehicle nie jest istniejącym pojazdem.
Przykład
import { onClientCallback, resourceExport, vehicleNearPlayer } from "@aicore-fivem/lib/server";
import { fail, oneArg, readId } from "@aicore-fivem/lib/shared";
const core = resourceExport("ai-core");
// Mechanik odczytuje bak samochodu przed sobą.
onClientCallback("myscript:checkTank", { args: oneArg(readId) }, (source, netId) => {
const vehicle = vehicleNearPlayer(source, netId, { metres: 4 });
if (!vehicle) return fail("TOO_FAR");
return { ok: true, level: core.GetVehicleFuel(vehicle) };
});SetVehicleFuel
Ustawia poziom paliwa pojazdu.
Strona: Serwer · Czeka: nie · Lib: fuel.set (a spawnVehicle({ fuel }) ustawia go przy tworzeniu)
SetVehicleFuel(vehicle: number, level: number): booleanlocal ok = exports['ai-core']:SetVehicleFuel(vehicle, 100.0)Parametry
Prop
Type
Zwraca
boolean: true, gdy poziom został przekazany skryptowi paliwa (lub zapisany w state bagu, gdy żaden nie działa). false, gdy vehicle nie jest istniejącym pojazdem, level nie jest skończoną liczbą albo skrypt paliwa zawiódł.
Przy skryptach paliwa, które trzymają paliwo w grach graczy, nowy poziom dociera do pojazdu przez grę jego właściciela chwilę później.
Przykład
import { onClientCallback, resourceExport, vehicleNearPlayer } from "@aicore-fivem/lib/server";
import { fail, oneArg, readId } from "@aicore-fivem/lib/shared";
const core = resourceExport("ai-core");
// Kanister dodaje 25% samochodowi obok gracza.
onClientCallback("myscript:jerryCan", { args: oneArg(readId), lock: true }, (source, netId) => {
const vehicle = vehicleNearPlayer(source, netId, { metres: 3 });
if (!vehicle) return fail("TOO_FAR");
if (!core.RemoveItem(source, "jerrycan")) return fail("NO_JERRYCAN");
core.SetVehicleFuel(vehicle, (core.GetVehicleFuel(vehicle) ?? 0) + 25);
return { ok: true };
});