Ir para conteúdo

Nug No Banco


Darkwath

Posts Recomendados

como funciona o seu sistema? se for !deposit e !withdraw !deposit all e !withdraw all eu tenho um aqui que funciona mais nao foi eu quem fiz.

 

vai em data/talkactions/scripts e cria uma PASTA chamada bank e coloque 7 arquivos.lua dentro com o nome de:

 

balance

witdraw

deposit

deposit_all

transfer

transfer_all

withdraw_all

 

dentro do balance coloca:

 

 

function onSay(cid, words, param)

 

local config = {

bankSystemEnabled = getBooleanFromString(getConfigInfo('bankSystem')),

playerIsFighting = hasCondition(cid, CONDITION_INFIGHT)

}

 

if config.bankSystemEnabled == TRUE then

if config.playerIsFighting == FALSE then

 

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Your account balance is " .. getPlayerBalance(cid) .. ".")

return TRUE

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Bank can not be used in fight.")

return TRUE

end

else

return FALSE

end

end

 

dentro do withdraw

 

 

 

function onSay(cid, words, param)

 

local config = {

bankSystemEnabled = getBooleanFromString(getConfigInfo('bankSystem')),

playerIsFighting = hasCondition(cid, CONDITION_INFIGHT)

}

 

if config.bankSystemEnabled == TRUE then

if config.playerIsFighting == FALSE then

 

local m = tonumber(param)

 

if(param == "") then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Command requires param.")

return TRUE

end

 

if(not m) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Command requires numeric param.")

return TRUE

end

 

m = math.abs(m)

if m <= getPlayerBalance(cid) then

doPlayerWithdrawMoney(cid, m)

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Here you are, " .. m .. " gold. Your account balance is " .. getPlayerBalance(cid) .. ".")

 

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "There is not enough gold on your account.")

end

return TRUE

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Bank can not be used in fight.")

return TRUE

end

else

return FALSE

end

end

 

dentro do deposit:

 

 

 

function onSay(cid, words, param)

 

local config = {

bankSystemEnabled = getBooleanFromString(getConfigInfo('bankSystem')),

playerIsFighting = hasCondition(cid, CONDITION_INFIGHT)

}

 

if config.bankSystemEnabled == TRUE then

if config.playerIsFighting == FALSE then

 

if(param == "") then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Command requires param.")

return TRUE

end

 

local m = tonumber(param)

 

if(not m) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Command requires numeric param.")

return TRUE

end

 

m = math.abs(m)

if m <= getPlayerMoney(cid) then

doPlayerDepositMoney(cid, m)

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Alright, you have added the amount of " .. m .. " gold to your balance. You can withdraw your money anytime you want to. Your account balance is " .. getPlayerBalance(cid) .. ".")

 

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You do not have enough money.")

end

return TRUE

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Bank can not be used in fight.")

return TRUE

end

else

return FALSE

end

end

 

dentro do deposit_all

 

 

 

function onSay(cid, words, param)

 

local config = {

bankSystemEnabled = getBooleanFromString(getConfigInfo('bankSystem')),

playerIsFighting = hasCondition(cid, CONDITION_INFIGHT)

}

 

if config.bankSystemEnabled == TRUE then

if config.playerIsFighting == FALSE then

 

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Alright, you have added the amount of " .. getPlayerMoney(cid) .. " gold to your balance. You can withdraw your money anytime you want to.")

doPlayerDepositAllMoney(cid)

return TRUE

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Bank can not be used in fight.")

return TRUE

end

else

return FALSE

end

end

 

dentro do transfer

 

 

 

 

 

 

 

 

 

 

 

function onSay(cid, words, param)

 

local config = {

bankSystemEnabled = getBooleanFromString(getConfigInfo('bankSystem')),

playerIsFighting = hasCondition(cid, CONDITION_INFIGHT)

}

 

if config.bankSystemEnabled == TRUE then

if config.playerIsFighting == TRUE then

 

if(param == "") then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Command requires param.")

return TRUE

end

 

local t = string.explode(param, ",")

local m = tonumber(t[2])

local tmp = string.explode(t[2], ",")

 

if(not m) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "No money specified.")

return TRUE

end

 

m = math.abs(m)

if m <= getPlayerBalance(cid) then

if playerExists(t[1]) then

doPlayerTransferMoneyTo(cid, t[1], m)

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You have transferred " .. m .. " gold to " .. t[1] .. ". Your account balance is " .. getPlayerBalance(cid) .. " gold.")

 

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Player " .. t[1] .. " does not exist.")

end

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "There is not enough gold on your account. Your account balance is " .. getPlayerBalance(cid) .. ". Please tell the amount of gold coins you would like to transfer.")

end

return TRUE

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Bank can not be used in fight.")

return TRUE

end

else

return FALSE

end

end

 

 

 

 

 

 

dentro do transfer_all

 

 

 

function onSay(cid, words, param)

 

local config = {

bankSystemEnabled = getBooleanFromString(getConfigInfo('bankSystem')),

playerIsFighting = hasCondition(cid, CONDITION_INFIGHT)

}

 

if config.bankSystemEnabled == TRUE then

 

if(param == "") then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Command requires param.")

return TRUE

end

 

local t = string.explode(param, ",")

 

if playerExists(param) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You have transferred " .. getPlayerBalance(cid) .. " gold to " .. param .. ".")

doPlayerTransferAllMoneyTo(cid, param)

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Player " .. param .. " does not exist.")

return TRUE

end

else

return FALSE

end

end

 

e finalmente dentro do withdraw_all

 

 

 

function onSay(cid, words, param)

 

local config = {

bankSystemEnabled = getBooleanFromString(getConfigInfo('bankSystem')),

playerIsFighting = hasCondition(cid, CONDITION_INFIGHT)

}

 

if config.bankSystemEnabled == TRUE then

if config.playerIsFighting == FALSE then

 

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Here you are, " .. getPlayerBalance(cid) .. " gold.")

doPlayerWithdrawAllMoney(cid)

return TRUE

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Bank can not be used in fight.")

return TRUE

end

else

return FALSE

end

end

 

 

e em talkactions.xml adicione essa tag:

 

<!--------------Bank------------!>

 

<talkaction words="!balance" event="script" value="Bank/balance.lua" />

<talkaction words="!deposit" event="script" value="Bank/deposit.lua" />

<talkaction words="!withdraw" event="script" value="Bank/withdraw.lua" />

<talkaction words="!depositall" event="script" value="Bank/deposit_all.lua" />

<talkaction words="!withdrawall" event="script" value="Bank/withdraw_all.lua" />

Editado por Uarisneiper
Link para o comentário
Compartilhar em outros sites

o bug eu nao como é mas é durante a convers com o npc aparece 100 platinum coins que nunca somen

entao é no npc

 

vai em data/npc/scripts e vai no script que seu npc usa, depois disso ve qual é o id desse coin e muda pra um coin que funciona normalmente.

 

por exemplo:

 

ele ta usando o id 2180, voce vai la e muda pra 2160

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...