AI Core
Essenciaisai-lib

ai-lib

A UI compartilhada do jogador que todo script usa (notificações, barra de progresso, avisos, menus, caixas de entrada, minigames) e os helpers do AI Core para recursos em Lua e JavaScript.

O ai-lib faz duas coisas:

  1. A UI do jogador que todo script compartilha. Cartões de notificação, a barra de progresso e sua tecla de cancelar, os avisos à direita da tela e a tecla de interação, menus, caixas de entrada, e os minigames de lockpick e de teste de habilidade. Todo script ai-*, a ponte do AI Core (scripts ESX e QB) e os seus próprios scripts desenham através dele, então o servidor inteiro tem a mesma aparência.
  2. Os helpers do AI Core para outros recursos. Um recurso Lua adiciona uma linha ao manifest e ganha aiLib.notify, aiLib.Points, aiLib.addCommand, aiLib.progress e o resto. Recursos JavaScript puros carregam os bundles dele. É assim que scripts Lua usam o AI Core como os de TypeScript.

A UI roda sem o ai-core, então você pode usar o ai-lib sozinho. Os helpers que leem jogadores, dinheiro ou itens precisam do ai-core.

O que faz no jogo

  • Notificações. Cartões em quatro tipos (sucesso, erro, info, aviso), 4 segundos por padrão.
  • Barra de progresso. Uma barra para todos os scripts. O jogador cancela uma ação cancelável com Backspace.
  • Avisos. Caixas "Press E to ..." à direita, ou flutuando sobre um ponto do mundo (uma porta). Uma tecla de interação (E) para todos os scripts; o aviso mais novo fica em cima.
  • Menus e caixas de entrada. Listas com ícones, submenus (Escape volta, segurar Escape fecha), interruptores, e formulários com campos de texto e número.
  • Minigames. Um lockpick (mova a gazua, gire a fechadura) e um teste de habilidade (aperte no verde).
  • Sempre por cima. Menus e notificações aparecem por cima de qualquer outra tela, incluindo a tela de personagens.

Instalação

A receita do txAdmin do AI Core o instala. À mão: coloque a pasta em resources/[ai]/ e adicione ensure ai-lib ao server.cfg, depois de ensure ai-core quando você roda o AI Core. Ele precisa do OneSync. Ele não tem tabela no banco de dados.

Configurações do painel

O ai-lib não tem aba própria. Duas configurações na aba General do AI Core o alteram:

Configuração (aba General)O que mudaPadrão
Cartão Notifications, Notification scriptOnde os cartões de notificação aparecem: os próprios cartões do ai-lib, ou outro script de notificação que você instalou. Quando esse script para, os cartões do ai-lib voltam. Os avisos sempre continuam sendo do ai-lib.ai-lib
Cartão Interaction, Interaction styleAviso e tecla (os avisos do ai-lib), ou Target eye (um script de target como o ai-target).Prompt and key

Comandos

Nenhum.

Teclas

Tecla padrãoO que fazNome nas configurações do GTA
EUsa o aviso que está em cima (ou o marcador de target em foco)Interact with the prompt on screen
BackspaceCancela a ação em andamento (uma barra de progresso que permite isso)Cancel the running action

Troque o padrão de todos na aba Keybinds do painel; cada jogador pode trocar a sua nas configurações de teclas do GTA.

Funciona com outros scripts

  • UI do ESX e do QB. A ponte do AI Core desenha esx_context, esx_textui, esx_notify, esx_progressbar, esx_menu_*, qb-menu, qb-input e progressbar com os menus, avisos, cartões e a barra do ai-lib, então esses scripts têm a mesma aparência que o resto do servidor.
  • Outros scripts de notificação podem assumir os cartões (aba General, acima).

Limites conhecidos

  • Os nomes de ícones do menu são uma lista fixa do Font Awesome; um nome desconhecido mostra um ponto.
  • Recursos Lua verificam suas próprias zonas e pontos de modelo; recursos JavaScript entregam os deles ao ai-lib, que verifica todos em um único timer.

Nesta página