A conta de dinheiro é nil
Um script pediu uma conta de dinheiro que este jogador não tem, normalmente porque o nome da conta não bate com o seu framework.
Faça isto primeiro
Reporte para quem fez o script, com o nome do seu framework.
O que significa
Uma operação de dinheiro pediu uma conta que o jogador não tem. O ESX expõe xPlayer.getAccount('bank'), o QBCore usa PlayerData.money['bank']; os dois devolvem nil para um nome de conta que não está configurado.
Errar aqui merece cuidado: código de dinheiro que não faz nada em silêncio é como surgem as duplicações e os salários que não chegam.
O que causa isso
Ordenado pela frequência com que é a resposta.
- 1
Um nome de conta que não existe
'money','cash','bank'e'black_money'diferem entre frameworks e entre versões. O nome é uma string, então nada verifica. - 2
A linha de contas nunca foi criada
Um personagem criado antes de aquele tipo de conta existir.
- 3
Lido antes de o jogador carregar
O mesmo problema de tempo que todo o resto no cliente.
- 4
Uma conta customizada adicionada à configuração e não aos jogadores que já existem
As contas novas não são preenchidas retroativamente.
Como saber qual é o seu
Imprima o que o jogador realmente tem:
-- ESX print(json.encode(xPlayer.getAccounts())) -- QBCore print(json.encode(Player.PlayerData.money))
A lista de nomes reais acaba com a adivinhação.
Onde olhar
O nome da conta na chamada, contra as contas configuradas do framework.
Como consertar
Confira a conta antes de tocar nela, e faça dinheiro SÓ no servidor:
-- 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 endTanto o RemoveMoney quanto o removeAccountMoney podem falhar: olhe o resultado em vez de supor que funcionou.
Ainda travado no seu próprio código?
Esta página é o que esse erro costuma significar. Cole o seu console no Server Fixer e ele vai ordenar tudo o que estiver lá e te dizer o que fazer primeiro; e se você preferir não mexer, o ORBIE consegue consertar o script e te devolver o resource pronto para soltar.
bug_reportAbrir o Server FixerPara esse tipo de erro, o Conversor de scripts traduz um resource entre ESX, QBCore e Qbox.