Konto pieniędzy jest nil
Skrypt poprosił o konto pieniężne, którego ten gracz nie ma — zwykle dlatego, że nazwa konta nie pasuje do twojego frameworka.
Zrób najpierw to
Zgłoś to temu, kto zrobił skrypt, podając nazwę swojego frameworka.
Co to znaczy
Operacja na pieniądzach poprosiła o konto, którego gracz nie ma. ESX udostępnia xPlayer.getAccount('bank'), QBCore używa PlayerData.money['bank']; oba zwracają nil dla nazwy konta, której nie skonfigurowano.
Warto tu uważać: kod od pieniędzy, który po cichu nic nie robi, to właśnie sposób, w jaki powstają błędy z duplikacją i znikające wypłaty.
Co to powoduje
Uszeregowane według tego, jak często są odpowiedzią.
- 1
Nazwa konta, która nie istnieje
'money'a'cash'a'bank'a'black_money'różnią się między frameworkami i wersjami. Nazwa to ciąg znaków, więc nic jej nie sprawdza. - 2
Wiersz kont nigdy nie został utworzony
Postać utworzona, zanim ten typ konta istniał.
- 3
Odczyt przed wczytaniem gracza
Ten sam problem z czasem co wszystko inne po stronie klienta.
- 4
Własne konto dodane do configu, ale nie istniejącym graczom
Nowe konta nie uzupełniają się wstecz.
Jak poznać, który jest twój
Wypisz, co gracz naprawdę ma:
-- ESX print(json.encode(xPlayer.getAccounts())) -- QBCore print(json.encode(Player.PlayerData.money))
Lista prawdziwych nazw kończy zgadywanie.
Gdzie szukać
Nazwa konta w wywołaniu, zestawiona ze skonfigurowanymi kontami frameworka.
Jak to naprawić
Sprawdź konto, zanim go dotkniesz, i operuj pieniędzmi WYŁĄCZNIE na serwerze:
-- ESX
local account = xPlayer.getAccount('bank')
if not account then return end
if account.money < price then return end
xPlayer.removeAccountMoney('bank', price)
-- QBCore
if not Player.Functions.RemoveMoney('bank', price) then return endI RemoveMoney, i removeAccountMoney mogą się nie udać — sprawdzaj wynik zamiast zakładać, że zadziałało.
Wciąż utknąłeś na własnym kodzie?
Ta strona mówi, co ten błąd zwykle oznacza. Wklej swoją konsolę do Server Fixera, a uszereguje wszystko, co w niej jest, i powie, co zrobić najpierw; a jeśli wolisz tego nie ruszać, ORBIE naprawi skrypt i odda ci zasób gotowy do wrzucenia.
bug_reportOtwórz Server FixerDla tego rodzaju błędu Konwerter skryptów przenosi zasób między ESX, QBCore i Qbox.