Przejdź do głównej zawartości

Personalizacja

Prawie wszystko znajduje się w jednym pliku, config.lua. Oba pliki bridge oraz lokalizacje (locales) są również otwarte.


PlikO czym decydujeOtwarty?
config.luaJęzyk, waluta, interakcja, limit ustawionych automatów oraz każdy stały automat wraz z cenąTak
locales/*.luaKomunikaty, powiadomienia i etykiety targetuTak
bridge/client_bridge.luaWykrywanie frameworka, odczyt pieniędzy, powiadomienia, tekst pomocy oraz strefy ox-target / qb-target / drawtextTak
bridge/server_bridge.luaPobieranie i wypłacanie pieniędzy lub żetonów, imiona i identyfikatory postaci, powiadomienia oraz używalne przedmioty automatówTak
items/Definicje przedmiotów dla ox, qb i ESX oraz ikony w items/images/Tak
ui/Menu automatu i siedem gier, każda w osobnym folderze w ui/games/Bez escrow
client/data.luaPozycja kamery i ekranu dla każdego modelu automatuObjęty escrow
mic_arcade_props/Modele automatów i renderer ekranuTylko zasoby

OpcjaCo robiDomyślnie
Config.LocaleKtóry plik z locales/ jest używany'en'
Config.PaymentTypeCzym płaci się za grę: cash, bank, both lub item'item'
Config.PaymentItemPrzedmiot używany jako waluta, gdy PaymentType ma wartość item'arcade_coin'
Config.Interactionox-target (z myślnikiem), qb-target lub drawtext'ox-target'
Config.MaxArcadesPerPlayerIle ustawionych automatów może mieć naraz jedna postać3
WartośćCo się dzieje
cashPłatność z gotówki (na ESX z konta money)
bankPłatność z konta bankowego
bothNajpierw gotówka; jeśli jej nie wystarczy, reszta idzie z banku
itemPłatność w Config.PaymentItem, jeden przedmiot za każdą jednostkę ceny

Ta sama waluta jest używana dla stawek i wygranych w DuoFight.


Jeden wpis na model automatu. Każdy wpis ma Price oraz, opcjonalnie, dowolną liczbę stałych pozycji (vec4 z x, y, z i kierunkiem) — w każdej z nich pojawia się jeden automat.

AutomatModelGraCenaStały domyślnie
DuoFightmic_arcade_duofightBijatyka dla dwóch graczy lub przeciwko komputerowi0Nie (zakomentowany)
Alienmic_arcade_alienAlien100Nie (zakomentowany)
Breakoutmic_arcade_brickBreakout100Nie (zakomentowany)
Pixelmic_arcade_pixelPixel100Tak
Racemic_arcade_raceRace100Tak
Towermic_arcade_towerTower100Tak
Roadmic_arcade_roadRoad100Tak
  • Aby dodać stały automat, dopisz pozycję do listy pod danym modelem. Stań tam, gdzie chcesz go mieć, pobierz swoje współrzędne i kierunek, a następnie wpisz je.
  • Aby go usunąć, skasuj lub zakomentuj jego pozycję. Price nadal obowiązuje dla ustawionych automatów tego modelu.
  • Cena 0 sprawia, że automat jest darmowy.
  • Punkt początkowy automatu Breakout leży niżej niż w pozostałych — domyślna pozycja Breakout jest o około 0,7 niżej na osi z niż pozycje sąsiadów. Zrób tak samo, gdy dodajesz własną.

Price jest też kwotą, jaką pobiera ustawiony automat tego modelu.


Przedmiot automatu (arcade_alien, arcade_race…) rozpoczyna ustawianie:

KlawiszCo robi
Rozglądanie sięPrzesuwa podgląd tam, gdzie patrzysz
Kółko myszyObraca automat
EUstawia go i zabiera przedmiot
ESC / BackspaceAnuluje; przedmiot zostaje u ciebie

Właściciel — i tylko on — dostaje na automacie opcję Pick Up Arcade (w trybie drawtext to drugi klawisz widoczny w podpowiedzi). Zabranie automatu zwraca przedmiot. Automatu, z którego ktoś korzysta, nie można podnieść.

Config.MaxArcadesPerPlayer liczy automaty, które postać ma aktualnie ustawione.


Wybranie dwóch graczy w DuoFight wymaga podania stawki: 1, 5, 25, 50 lub 100 w twojej walucie. Gospodarz ją płaci i czeka przy automacie; kolejny gracz, który użyje automatu, dostaje propozycję meczu i płaci tyle samo, by dołączyć.

WynikCo się dzieje
WygranaZwycięzca otrzymuje obie stawki
RemisKażdy gracz dostaje swoją stawkę z powrotem
Gracz odchodzi w trakcie meczuOddaje mecz walkowerem: drugi gracz wygrywa obie stawki
Gospodarz odchodzi, zanim ktoś dołączyMecz zostaje anulowany; stawka gospodarza nie wraca
Gracz się rozłączaMecz zostaje anulowany, bez wypłaty

Każda gra poza DuoFight zapisuje najlepszy wynik każdej postaci w mic_arcade_leaderboard i pokazuje dziesiątkę najlepszych na automacie. Nazwy to imię i nazwisko postaci z twojego frameworka. Aby zresetować tabelę wyników, opróżnij tę tabelę (lub wiersze jednej gry) przy zatrzymanym serwerze.


W locales/ jest dziesięć: en, es, fr, de, it, pt, nl, ja, ru, zh. Ustaw Config.Locale na odpowiedni kod.

Aby dodać nowy, skopiuj locales/en.lua do nowego pliku nazwanego twoim kodem, zmień Locales['en'] na swój kod, przetłumacz prawą stronę każdej linii i ustaw Config.Locale. Brakujący klucz wyświetla się jako Translation [xx][key] does not exist — nie ma powrotu do angielskiego.

Pliki lokalizacji obejmują to, co pokazuje świat gry: etykiety targetu, podpowiedzi pomocy i powiadomienia. Tekst wewnątrz gier jest częścią ui/games/.


PlikCo obejmuje
bridge/client_bridge.luaWykrywanie frameworka, ilość pieniędzy lub żetonów pokazywana graczowi, Bridge.Notify, tekst pomocy oraz strefa interakcji na każdym automacie dla ox-target, qb-target lub drawtext
bridge/server_bridge.luaWykrywanie frameworka, pobieranie i wypłacanie pieniędzy lub przedmiotów (Bridge.RemoveMoney, Bridge.AddMoney), przedmioty automatów, imię i identyfikator postaci, powiadomienia serwera oraz lista używalnych przedmiotów automatów

Inny zasób powiadomień: zmień Bridge.Notify w pliku klienta i Bridge.ServerNotify w pliku serwera. Komunikaty not enough money są wysyłane z Bridge.RemoveMoney.

Inny zasób targetu: Bridge.RegisterArcadeInteraction i Bridge.RemoveArcadeInteraction w pliku klienta to jedyne miejsca, w których dotyka się targetów.

Inny ekwipunek: żetony i przedmioty automatów są odczytywane i zabierane przez własne funkcje gracza frameworka w server_bridge.lua. Wskaż Bridge.RemoveMoney, Bridge.AddMoney, Bridge.RemoveSpecificItem, Bridge.AddSpecificItem i Bridge.GetMoney na swój ekwipunek, jeśli nie reaguje na te funkcje.

Nowy używalny przedmiot dla automatu: tabela UsableArcades na dole server_bridge.lua przypisuje każdy przedmiot do modelu automatu.