ai-lib
Wspólne UI gracza, z którego korzysta każdy skrypt (powiadomienia, pasek postępu, podpowiedzi, menu, okna wprowadzania, minigry), oraz funkcje pomocnicze AI Core dla zasobów Lua i JavaScript.
ai-lib ma dwa zadania:
- UI gracza wspólne dla wszystkich skryptów. Karty powiadomień, pasek postępu i jego klawisz anulowania, podpowiedzi po prawej stronie ekranu i klawisz interakcji, menu, okna wprowadzania oraz minigry wytrych i test zręczności. Każdy skrypt
ai-*, most AI Core (skrypty ESX i QB) i twoje własne skrypty rysują przez niego, więc cały serwer wygląda tak samo. - Funkcje pomocnicze AI Core dla innych zasobów. Zasób Lua dodaje jedną linię do manifestu i dostaje
aiLib.notify,aiLib.Points,aiLib.addCommand,aiLib.progressi resztę. Zasoby w czystym JavaScript wczytują jego paczki. Dzięki temu skrypty Lua korzystają z AI Core tak jak skrypty TypeScript.
UI działa bez ai-core, więc możesz używać samego ai-lib. Funkcje pomocnicze, które czytają graczy, pieniądze lub przedmioty, wymagają ai-core.
Co robi w grze
- Powiadomienia. Karty w czterech rodzajach (sukces, błąd, informacja, ostrzeżenie), domyślnie 4 sekundy.
- Pasek postępu. Jeden pasek dla każdego skryptu. Gracz anuluje czynność, którą można anulować, klawiszem Backspace.
- Podpowiedzi. Ramki „Naciśnij E, aby ...” po prawej albo unoszące się nad punktem w świecie (drzwiami). Jeden klawisz interakcji (E) dla każdego skryptu; najnowsza podpowiedź jest na wierzchu.
- Menu i okna wprowadzania. Listy z ikonami, podmenu (Escape cofa, przytrzymanie Escape zamyka), przełączniki i formularze z polami tekstowymi i liczbowymi.
- Minigry. Wytrych (przesuwaj wytrych, obracaj zamek) i test zręczności (naciśnij na zielonym).
- Zawsze na wierzchu. Menu i powiadomienia są widoczne nad każdym innym ekranem, także nad ekranem postaci.
Instalacja
Instaluje go przepis txAdmin AI Core. Ręcznie: włóż folder do resources/[ai]/ i dodaj ensure ai-lib do server.cfg, po ensure ai-core, jeśli używasz AI Core. Wymaga OneSync. Nie ma tabeli w bazie danych.
Ustawienia w panelu
ai-lib nie ma własnej zakładki. Zmieniają go dwa ustawienia w zakładce General AI Core:
| Ustawienie (zakładka General) | Co zmienia | Domyślnie |
|---|---|---|
| Karta Notifications, Notification script | Gdzie pojawiają się karty powiadomień: własne karty ai-lib albo inny zainstalowany skrypt powiadomień. Gdy ten skrypt się zatrzyma, wracają karty ai-lib. Podpowiedzi zawsze pozostają z ai-lib. | ai-lib |
| Karta Interaction, Interaction style | Podpowiedź i klawisz (podpowiedzi ai-lib) albo oko targetu (skrypt targetu, taki jak ai-target). | Prompt and key |
Komendy
Brak.
Klawisze
| Domyślny klawisz | Co robi | Nazwa w ustawieniach GTA |
|---|---|---|
| E | Używa podpowiedzi na wierzchu (lub zaznaczonego znacznika targetu) | Interact with the prompt on screen |
| Backspace | Anuluje trwającą czynność (pasek postępu, który na to pozwala) | Cancel the running action |
Zmień domyślny klawisz dla wszystkich w zakładce Keybinds panelu; każdy gracz może zmienić własny w ustawieniach klawiszy GTA.
Współpraca z innymi skryptami
- UI ESX i QB. Most AI Core rysuje
esx_context,esx_textui,esx_notify,esx_progressbar,esx_menu_*,qb-menu,qb-inputiprogressbarmenu, podpowiedziami, kartami i paskiem ai-lib, więc te skrypty wyglądają jak reszta serwera. - Inne skrypty powiadomień mogą przejąć karty (zakładka General, wyżej).
Znane ograniczenia
- Nazwy ikon menu to stała lista Font Awesome; nieznana nazwa pokazuje kropkę.
- Zasoby Lua same sprawdzają swoje strefy i punkty modeli; zasoby JavaScript przekazują swoje do ai-lib, który sprawdza je wszystkie jednym timerem.
ai-mysql dla deweloperów
Eksporty oxmysql, na które odpowiada ai-mysql, co zwraca każdy z nich, formy z Promise, wrapper MySQL.lua i zdarzenia błędów.
ai-lib dla deweloperów
Wczytywanie ai-lib w zasobie Lua lub JavaScript, gdzie jest dokumentacja biblioteki oraz własne eksporty klienta i zdarzenia ai-lib.