- Katılım
- 4 yıl 6 ay 1 gün
- Mesajlar
- 638
Selam dostlar, bir ara internette araştırıp bulamamıştım sonra ben yapayım dedim ve biraz uğraştıktan sonra bu sonuç çıktı. Bu kodları satanlar varmış. Olayı kökünden çözelim o zaman
Öncelikle gcphone > server > bank.lua'yı açıp birkaç editleme ve ekleme çıkarma yapacağız.
gcPhone:transfer eventini şu şekilde değiştiriyoruz;
Öncelikle gcphone > server > bank.lua'yı açıp birkaç editleme ve ekleme çıkarma yapacağız.
gcPhone:transfer eventini şu şekilde değiştiriyoruz;
Kod:
RegisterServerEvent("gcPhone:transfer")
AddEventHandler("gcPhone:transfer", function(a, amount)
_source = source
local r5k.senderIBAN = r5k.GetIBAN(_source)
a = tostring(a)
duzenlenmisAmount = comma_value(amount)
local gerceklesti = r5k.BankParaGonder(_source, a, tonumber(amount))
if gerceklesti then
local forTargetKimden = r5k.GetNameFromIBAN(r5k.senderIBAN)
local forSenderKimden = r5k.GetNameFromIBAN(a)
Citizen.Wait(500)
local r5k.Saat = r5k.SaatKac()
end
end)
Müşterimin isteği üzerine tamamen BETTERBANK'a uyarlamıştım, o yüzden 16. satır'a şu kodları ekleyebilirsiniz, bu kodlar betterbank'a son işlem eklemeye yarar.
Kod:
TriggerEvent('BetterBank:SonIslemEkle', a, 'gelenTransfer', tostring(duzenlenmisAmount), r5k.Saat, forTargetKimden, tonumber(amount))
TriggerEvent('BetterBank:SonIslemEkle', r5k.senderIBAN, 'gidenTransfer', tostring(duzenlenmisAmount), r5k.Saat, forSenderKimden, tonumber(amount))
Ardından aşağıda boş olan yerlere şu kodları ekliyoruz;
Çalışmaz ise IBAN yazanları iban yapabilirsiniz. Umarım bu paylaşımdan sonra parayla satılmaya çalışmaz. İstek ve sorunlarınız için; wermacht#2747
Kod:
function r5k.GetIdentifierFromIBAN(IBAN)
local result = MySQL.Sync.fetchAll('SELECT identifier FROM users WHERE IBAN = @IBAN', {
['@IBAN'] = IBAN,
})
Citizen.Wait(100)
return result[1].identifier
end
function r5k.BankParaGonder(source, IBAN, miktar)
local _source = source
local xPlayer = ESX.GetPlayerFromId(_source)
local sourceBalance = xPlayer.getAccount('bank').money
local TIBAN = IBAN
local targetIdentifier = r5k.GetIdentifierFromIBAN(IBAN)
local targetID = ESX.GetPlayerFromIdentifier(targetIdentifier)
if miktar < sourceBalance then
if targetID == nil then
local result = MySQL.Sync.fetchAll('SELECT accounts FROM users WHERE IBAN = @TIBAN', {
['@TIBAN'] = TIBAN,
})
local sqlAccountTable = json.decode(result[1].accounts)
if (sqlAccountTable["bank"] ~= nil) then
xPlayer.removeAccountMoney('bank', tonumber(miktar))
sqlAccountTable["bank"] = sqlAccountTable["bank"] + miktar
sqlAccountTable = json.encode(sqlAccountTable)
MySQL.Async.insert("UPDATE users SET accounts = @yeniPara WHERE IBAN = @TIBAN", {
['@TIBAN'] = TIBAN,
['@yeniPara'] = sqlAccountTable
})
return true
end
else
xPlayer.removeAccountMoney('bank', tonumber(miktar))
targetID.addAccountMoney('bank', tonumber(miktar))
return true
end
else
return false
end
end
function r5k.GetIBAN(source, id)
local xPlayer = getPlayerID(source)
print(xPlayer)
local result = MySQL.Sync.fetchAll('SELECT IBAN FROM users WHERE identifier = @identifier', {
['@identifier'] = xPlayer
})
print(result[1].IBAN)
local x = result[1].IBAN
Citizen.Wait(100)
return x
end
function myfirstname(a, b, c)
MySQL.Async.fetchAll("SELECT firstname, phone_number FROM users WHERE users.firstname = @firstname AND users.phone_number = @phone_number", {["@phone_number"] = a, ["@firstname"] = b}, function(d)
c(d[1])
end)
end
function r5k.GetNameFromIBAN(IBAN)
local result = MySQL.Sync.fetchAll('SELECT firstname, lastname FROM users WHERE IBAN = @IBAN', {
['@IBAN'] = IBAN
})
local nameAndIBAN = result[1].firstname .." " ..result[1].lastname .." - " ..IBAN
return nameAndIBAN
end
function r5k.SaatKac()
local date_table = os.date("*t")
local hour, minute = date_table.hour, date_table.min
return (os.date("%d-%m-%Y ") ..hour ..":" ..minute)
end
function comma_value(n)
local left,num,right = string.match(n,'^([^%d]*%d)(%d*)(.-)$')
return "$" ..(left..(num:reverse():gsub('(%d%d%d)','%1.'):reverse())..right) ..",00"
end
Çalışmaz ise IBAN yazanları iban yapabilirsiniz. Umarım bu paylaşımdan sonra parayla satılmaya çalışmaz. İstek ve sorunlarınız için; wermacht#2747
Son düzenleme: