Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Bienvenue Guest!

Rejoignez la communauté pour avoir accès à l'entièreté du site! Une fois que vous serez enregistré, vous pourrez créer, aider, partager et discuter avec les membres de la communauté et également participer à l'amélioration du site. Alors, qu'attendez vous ? Enregistrez-vous !

  • 0
Seishin

résolu Erreur transfert New_banking

Question

Seishin

Quel OS utilisez vous sur votre machine ? : Local (Windows) Machine (Linux)

Chez quel hébergeur êtes-vous ? : Microserum
Sur quel framework travaillez vous? (ESX/VRP/ES/Autre) : ESX

Quel est le script que vous utilisez (+version)? : https://github.com/Tazi0/new_banking
Qu'avez vous-essayé auparavant ? (Vider votre cache, installation du script au propre etc...): J'ai voulus transférer 200 $ à un autre joueur
Êtes vous sûr d'avoir la dernière version de votre framework ? : Oui

Explication de votre problème : Bonjour, j'ai voulus transférer de la 'argent a un autre joueur via le compte bancaire 

Error running call reference function for resource new_banking: citizen:/scripting/lua/scheduler.lua:405: @new_banking/server.lua:55: attempt to index a nil value (local 'user')
stack traceback:
        @new_banking/server.lua:55: in upvalue 'ref'
        citizen:/scripting/lua/scheduler.lua:391: in function <citizen:/scripting/lua/scheduler.lua:390>
        [C]: in function 'xpcall'
        citizen:/scripting/lua/scheduler.lua:390: in function <citizen:/scripting/lua/scheduler.lua:389>
stack traceback:
        [C]: in function 'error'
        citizen:/scripting/lua/scheduler.lua:405: in function <citizen:/scripting/lua/scheduler.lua:374>
        [C]: in function 'coroutine.resume'
        citizen:/scripting/lua/scheduler.lua:34: in field 'CreateThreadNow'
        citizen:/scripting/lua/scheduler.lua:218: in function <citizen:/scripting/lua/scheduler.lua:182>
Error running system event handling function for resource essentialmode: citizen:/scripting/lua/scheduler.lua:41: Failed to execute thread: citizen:/scripting/lua/MessagePack.lua:830: missing bytes
stack traceback:
        [C]: in function 'error'
        citizen:/scripting/lua/MessagePack.lua:830: in method 'underflow'
        citizen:/scripting/lua/MessagePack.lua:465: in field 'any'
        citizen:/scripting/lua/MessagePack.lua:860: in field 'unpack'
        citizen:/scripting/lua/scheduler.lua:628: in local 'cb'
        @essentialmode/server/player/login.lua:134: in upvalue 'handler'
        citizen:/scripting/lua/scheduler.lua:219: in function <citizen:/scripting/lua/scheduler.lua:218>
stack traceback:
        [C]: in function 'error'
        citizen:/scripting/lua/scheduler.lua:41: in field 'CreateThreadNow'
        citizen:/scripting/lua/scheduler.lua:218: in function <citizen:/scripting/lua/scheduler.lua:182>

Lien vers vos logs de l'erreur sur pastebin/hastebin client+serveur :

 server.lua https://pastebin.com/an66xjRd

Share this post


Link to post
Share on other sites

14 answers to this question

Recommended Posts

  • 0
JagerBom

prend cette fonction ci, celle la marche a 100%

RegisterServerEvent('bank:transfer')
AddEventHandler('bank:transfer', function(to, amountt)
	local _source = source
	local xPlayer = ESX.GetPlayerFromId(_source)
	local zPlayer = ESX.GetPlayerFromId(to)
	local balance = 0

	if(zPlayer == nil or zPlayer == -1) then
		TriggerClientEvent('bank:result', _source, "error", "Destinataire introuvable.")
	else
		balance = xPlayer.getAccount('bank').money
		zbalance = zPlayer.getAccount('bank').money
		
		if tonumber(_source) == tonumber(to) then
			TriggerClientEvent('bank:result', _source, "error", "Vous ne pouvez pas faire de transfert à vous même.")
		else
			if balance <= 0 or balance < tonumber(amountt) or tonumber(amountt) <= 0 then
				TriggerClientEvent('bank:result', _source, "error", "Vous n'avez pas assez d'argent en banque.")
			else
				xPlayer.removeAccountMoney('bank', tonumber(amountt))
				zPlayer.addAccountMoney('bank', tonumber(amountt))
				TriggerClientEvent('bank:result', _source, "success", "Transfert effectué.")
			end
		end
	end
end)

 

Share this post


Link to post
Share on other sites
  • 0
Kanda Sorata

Tu tapes l'ID ou le nom du joueur ? Je doute très fortement sur le fait que le dernier commit fonctionne, soit sur que le joueur est bien connecté aussi

Share this post


Link to post
Share on other sites
  • 0
Seishin
il y a 58 minutes, Kanda Sorata a dit :

Tu tapes l'ID ou le nom du joueur ? Je doute très fortement sur le fait que le dernier commit fonctionne, soit sur que le joueur est bien connecté aussi

je tape l'id du joueur et le joueur est bien connecté

Share this post


Link to post
Share on other sites
  • 0
Kanda Sorata

Est-ce que tu as bien l'argent sur toi de ce que tu veux transférer ?

Share this post


Link to post
Share on other sites
  • 0
Seishin
à l’instant, Kanda Sorata a dit :

Est-ce que tu as bien l'argent sur toi de ce que tu veux transférer ?

Oui en banque et sur moi

Share this post


Link to post
Share on other sites
  • 0
Kanda Sorata

Dans la fonction ici :

 

RegisterServerEvent('bank:transfer')
AddEventHandler('bank:transfer', function(to, amountt)
	local _source = source
	local xPlayer = ESX.GetPlayerFromId(_source)
	local zPlayer = ESX.GetPlayerFromId(to)
	
	--Thanks to (LuCampbell)
	TriggerEvent('es:getPlayerFromId', xPlayer, function(user)
		if (tonumber(user.money) >= tonumber(amountt)) then
			local player = user.identifier
			user:removeMoney((amountt))	
		
			TriggerEvent('es:getPlayerFromId', zPlayer, function(user2)
				local player2 = user2.identifier
				user2:addMoney((amountt))
				TriggerClientEvent("chatMessage", zPlayer , "You received money ", { 52, 201, 36 }, "You received the sum of "..amountt.." dollars")
				TriggerClientEvent("chatMessage", xPlayer, "Payment receipt ", { 255, 0, 0 }, "Your payment of "..amountt.." dollars is done")
			end)	
		else
			if (tonumber(user.money) < tonumber(amountt)) then
			
				TriggerClientEvent("chatMessage", player, "", { 255, 0, 0 }, "You do not have enough money")
			end
		end
	end) 
end)

Et dans cette fonction tu as notamment ceci : tonumber(user.money)  que tu pourrais changer par tonumber(xPlayer.getMoney)

 

Ou alors : user:removeMoney((amountt)) que tu peux remplacer par  xPlayer.removeMoney(amountt)

Share this post


Link to post
Share on other sites
  • 0
Seishin
Posted (edited)

j'ai cette erreur dans la console au start du serveur Error parsing script @new_banking/server.lua in resource new_banking: @new_banking/server.lua:55: ')' expected near '<\239>'

Edited by Seishin

Share this post


Link to post
Share on other sites
  • 0
Kanda Sorata

Tu n'as pas besoin de copier le bloc, c'est la fonction que tu as déjà, ça arrive lorsque ton fichier n'est pas en UTF8

Share this post


Link to post
Share on other sites
  • 0
Seishin
Posted (edited)
Il y a 22 heures, Kanda Sorata a dit :

Tu n'as pas besoin de copier le bloc, c'est la fonction que tu as déjà, ça arrive lorsque ton fichier n'est pas en UTF8

J'ai fais ça

 

--================================================================================================
--==                                VARIABLES - DO NOT EDIT                                     ==
--================================================================================================
ESX = nil

TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end)

RegisterServerEvent('bank:deposit')
AddEventHandler('bank:deposit', function(amount)
	local _source = source
	
	local xPlayer = ESX.GetPlayerFromId(_source)
	if amount == nil or amount <= 0 or amount > xPlayer.getMoney() then
		TriggerClientEvent('chatMessage', _source, "Montant invalide")
	else
		xPlayer.removeMoney(amount)
		xPlayer.addAccountMoney('bank', tonumber(amount))
	end
end)


RegisterServerEvent('bank:withdraw')
AddEventHandler('bank:withdraw', function(amount)
	local _source = source
	local xPlayer = ESX.GetPlayerFromId(_source)
	local base = 0
	amount = tonumber(amount)
	base = xPlayer.getAccount('bank').money
	if amount == nil or amount <= 0 or amount > base then
		TriggerClientEvent('chatMessage', _source, "Montant invalide")
	else
		xPlayer.removeAccountMoney('bank', amount)
		xPlayer.addMoney(amount)
	end
end)

RegisterServerEvent('bank:balance')
AddEventHandler('bank:balance', function()
	local _source = source
	local xPlayer = ESX.GetPlayerFromId(_source)
	balance = xPlayer.getAccount('bank').money
	TriggerClientEvent('currentbalance1', _source, balance)
	
end)


RegisterServerEvent('bank:transfer')
AddEventHandler('bank:transfer', function(to, amountt)
	local _source = source
	local xPlayer = ESX.GetPlayerFromId(_source)
	local zPlayer = ESX.GetPlayerFromId(to)
	
	--Thanks to (LuCampbell)
	TriggerEvent('es:getPlayerFromId', xPlayer, function(user)
		if (tonumber(xPlayer.getMoney) >= tonumber(amountt)) then
			local player = user.identifier
			 xPlayer.removeMoney(amountt)	
		
			TriggerEvent('es:getPlayerFromId', zPlayer, function(user2)
				local player2 = user2.identifier
				user2:addMoney((amountt))
				TriggerClientEvent("chatMessage", zPlayer , "Vous avez reçu de l'argent ", { 52, 201, 36 }, "Vous avez reçu la somme de "..amountt.." $")
				TriggerClientEvent("chatMessage", xPlayer, "Payement Reçu ", { 255, 0, 0 }, "Votre paiement de "..amountt.." $ est fait")
			end)	
		else
			if (tonumber(xPlayer.getMoney) < tonumber(amountt)) then
			
				TriggerClientEvent("chatMessage", player, "", { 255, 0, 0 }, "Vous n'avez pas assez d'argent")
			end
		end
	end) 
end)

mais j'ai jour cette erreur au start du serveur : Error parsing script @new_banking/server.lua in resource new_banking: @new_banking/server.lua:57: syntax error near '<\239>' et je ne comprend pas pourquoi j'ai re dl le script et l'ai fait manuellement

Edited by Seishin

Share this post


Link to post
Share on other sites
  • 0
Seishin

nickel ça marche

Share this post


Link to post
Share on other sites
  • 0
JagerBom

est ce résolu? je peux lock le post?

Share this post


Link to post
Share on other sites
  • 0
Seishin
Le 20/06/2019 à 17:16, JagerBom a dit :

est ce résolu? je peux lock le post?

Oui c'est bon encore désolé de mon absence

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

×
×
  • Create New...

Important Information

En utilisant ce site, vous acceptez les présents règlements Terms of Use, Privacy Policy,Guidelines.