Instalacja
Ten przewodnik dotyczy pakietu dystrybucyjnego z już skompilowanym interfejsem. Do instalacji nie potrzebujesz Node.js ani ponownej kompilacji UI.
Wymagania
| Komponent | Kiedy jest potrzebny |
|---|---|
oxmysql i działające połączenie z bazą danych | Wymagane do zapisywania danych zasobu. |
| Qbox, QBCore lub ESX | Jeśli korzystasz z ich ekonomii i uprawnień. Możesz podłączyć inną ekonomię przez callbacki standalone. |
| Pakiety tatuaży | Opcjonalne. Możesz nie instalować żadnego, zainstalować kilka lub wszystkie. |
ox_lib | Opcjonalne dla powiadomienia TextUI; dostępna jest alternatywa natywna. |
| System wyglądu | Jeśli używa go serwer, sprawdź bridge wyglądu. |
Blueprinty są udostępniane za pomocą kodów. Do korzystania z dołączonej konfiguracji nie trzeba dodawać przedmiotu do ekwipunku.
Umieść zasób
- Rozpakuj pakiet w folderze zasobów serwera.
- W przewodnikach używamy
cxg-tattoosjako nazwy folderu. Jeśli Twój folder nazywa się inaczej, użyj jego rzeczywistej nazwy w poleceniachensureirestart. - Zachowaj dostarczoną strukturę. Sprawdź, czy razem z plikami pakietu znajdują się
config.lua,shared/tattoos.json,bridge/iui/dist/index.html. - Skonfiguruj połączenie z bazą danych i upewnij się, że
oxmysqluruchamia się poprawnie.
Kolejność uruchamiania
Przykład dla Qbox bez zewnętrznych pakietów:
ensure oxmysql
ensure qbx_core
ensure cxg-tattoos
W przypadku QBCore lub ESX zastąp qbx_core przez qb-core albo es_extended. Jeśli korzystasz z systemu wyglądu, uruchom go przed zasobem. W trybie standalone najpierw skonfiguruj callbacki płatności i uprawnień.
Jeśli masz pakiety, uruchom przed zasobem tylko te zainstalowane. Przykład:
ensure oxmysql
ensure qbx_core
ensure xgc_TattooClasic
ensure xgc_TattooGangs
ensure cxg-tattoos
Nie dodawaj poleceń ensure dla pakietów, których nie masz. Domyślne źródła mogą pozostać w Config.TattooCatalog.sources: nieuruchomione pakiety zostaną pominięte.
Pierwsze uruchomienie
Zasób automatycznie przygotowuje pamięć danych. Przy nowej instalacji nie trzeba ręcznie importować schematu.
Przed testem sprawdź w config.lua:
Config.Locale: język globalny.Config.Purchases: ekonomia i konta obciążane płatnością.Config.Permissions: dostęp administracyjny.Config.Identity: system tożsamości serwera i identyfikator używany do zapisywania oraz pobierania danych gracza. Zobacz System tożsamości.Config.Shops: początkowe lokalizacje sklepów.
Podejdź do skonfigurowanego sklepu i skorzystaj z interakcji. Sprawdź katalog, podgląd oraz zakup postacią testową. Wczytaj postać ponownie, aby upewnić się, że tatuaż został zachowany.
Dołączone polecenie administracyjne konfiguruje się przez Config.AdminCommand; jego początkowa nazwa to /tattooadmin. Przed użyciem sprawdź uprawnienia i płatności.
Zastosuj zmiany
Po zmianie config.lua lub bridge'a zapisz plik i uruchom zasób ponownie:
restart cxg-tattoos
Źródła katalogu są odczytywane przy uruchomieniu i mogą być synchronizowane z panelu administracyjnego. Ustawienia zapisane z tego panelu są zachowywane; przed oczekiwaniem, że wartość z pliku je zastąpi, sprawdź konfigurację i katalog.
Częste problemy
| Objaw | Co sprawdzić |
|---|---|
| Zasób się nie uruchamia | Czy oxmysql działa, połączenie jest sprawne, a pakiet kompletny. |
| Brakuje pakietu w sklepie | Czy jego zasób jest uruchomiony, enabled nie ma wartości false i ścieżka JSON odpowiada ścieżce w pakiecie. |
| Interfejs jest pusty | Czy ui/dist/index.html i wskazane pliki z ui/dist/assets/ zostały skopiowane razem. |
| Panel odmawia dostępu | Config.AdminCommand.permission, powiązania uprawnień oraz skonfigurowane role lub ACE. |
| Płatność jest odrzucana | Wybrany framework, nazwy zasobów, saldo i callbacki standalone, jeśli mają zastosowanie. |
| W tym samym miejscu są dwie interakcje tatuaży | Czy inny zasób wyglądu lub sklepów nie aktywuje tej lokalizacji. Dla danego sklepu pozostaw jeden sposób dostępu. |
| Zmiana sklepu lub poziomu nie działa | Czy panel nie ma już zapisanej konfiguracji. Edytuj tam obowiązującą wartość. |
Możesz tymczasowo włączyć Config.Debug i Config.Permissions.debug, aby diagnozować problemy. Po zakończeniu wyłącz je.