Removendo Erro Withdraw Tfs E Tcs!

Antharaz
em Tutoriais de Scripting

Antharaz

avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 05/01/08Posts: 153Char no Tibia: nenhum

Podem reparar que ao utilizarem a função doPlayerWithdrawMoney no console aparece um erro e o dinheiro não é transferido...

 

Como arrumar:

 

Abra o arquivo 050-function da pasta data/lib e reparem esta parte:

 

function doPlayerWithdrawMoney(cid, amount)

if(not getBooleanFromString(getConfigInfo('bankSystem'))) then

return false

end

local balance = getPlayerBalance(cid)

if ((amount > balance) or not (doPlayerAddMoney(cid, amount))) then

return false

end

 

doPlayerSetBalance(cid, balance - amount)

return true

end

 

Problema: O server interpreta o amount como uma string(tipo texto) e não consegue fazer a comparação com o balance que é do tipo number(número), então usamos a função tonumber() para transformar a string em number, ou seja, substitua a parte de vermelho por tonumber(amount) ficando assim:

 

function doPlayerWithdrawMoney(cid, amount)

if(not getBooleanFromString(getConfigInfo('bankSystem'))) then

return false

end

local balance = getPlayerBalance(cid)

if ((tonumber(amount) > balance) or not (doPlayerAddMoney(cid, amount))) then

return false

end

 

doPlayerSetBalance(cid, balance - amount)

return true

end

 

 

E voalá... funciona =D

 

 

Se postarem em outros lugares postem os créditos ¬¬

Atenciosamente,

Antharaz

HwmBLEb.jpg

matheusrp

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/10/06Posts: 15

Cara, o meu serve ta com bug de quando voce da !withdraw -10000 mesmo o player não tendo ganha o dinheiro :S o que eu posso fazer?

 

Valeu abraços!

Att~ Matheus.