Ir para conteúdo
  • Cadastre-se

Posts Recomendados

pelo o que eu vi sim, vc precisa editar no config.lua desabilitar o banksystem, sendo assim, nao teria motivo para ter os npcs, seria melhor removê-los, os comandos desse sistema, pelo o que eu vi sao !balance (saldo), !deposit e !withdraw (sacar), mas nao testei...

Link para o post
Compartilhar em outros sites
  • 2 years later...
  • Respostas 10
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

os banqueiros do meu ot estão com um bug que quando os players falam isso hi > change platinum > crystal > 9999999999999999 > yes o char deles tomam debug e eles aparecem com a bp cheia de kk's. como eu posso resolver isso sem deletar os npcs?

não era bem isso, queria saber se era TFS, crystal etc... Mas saca so, provavelmente é tfs, e rola um bug monstro nesse lance de sistema bancário do servidor. acho melhor tu tirar esse sistema, desabilitar o banco do servidor, não é uma coisa que faça tanta falta... vou procurar alternativas, qq coisa posto aqui... edit: não testei esse sistema, mas achei pelo google, nem sei se posso postar link de outro forum de ot, mas lá vai: da um confere, ve se te agrada e faz os testes, é um sistema de

Cara Vai na sua Pasta data/npc/script/bank.lua abra esse arquivo e com CTRL+F procure por "change platinum" Em seguida troque por uma palavra que ninguem vai saber exemplo "SHAUHSUASHUASH" Entao o Bug esta resolvido. A esse mapa tem um bug em vega também  Viu! la dentro da casinha tem uma softboots solta! add skype! otservlikis166   abraço! CLIQUE EM GOSTEI se ajudou

Cara Vai na sua Pasta data/npc/script/bank.lua

abra esse arquivo e com CTRL+F procure por "change platinum"

Em seguida troque por uma palavra que ninguem vai saber exemplo "SHAUHSUASHUASH"

Entao o Bug esta resolvido.

A esse mapa tem um bug em vega também  Viu!

la dentro da casinha tem uma softboots solta!

add skype!

otservlikis166

 

abraço! CLIQUE EM GOSTEI se ajudou ^^

Editado por luquinhas166 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • 2 years later...
  Em 12/07/2012 em 21:28, Cassero disse:

os banqueiros do meu ot estão com um bug que quando os players falam isso

hi > change platinum > crystal > 9999999999999999 > yes

o char deles tomam debug e eles aparecem com a bp cheia de kk's.

como eu posso resolver isso sem deletar os npcs?

Mostrar mais  

vai este script

 

local keywordHandler = KeywordHandler:new()

local npcHandler = NpcHandler:new(keywordHandler)

NpcSystem.parseParameters(npcHandler)

 

local Topic, count, transfer = {}, {}, {}

 

function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end

function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end

function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end

function onThink() npcHandler:onThink() end

 

local function getCount(s)

    local b, e = s:find('%d+')

    return b and e and math.min(4294967295, tonumber(s:sub(b, e))) or -1

end

 

local function findPlayer(name)

    local q = db.getResult('SELECT name FROM players WHERE name=' .. db.escapeString(name) .. ' LIMIT 1'), nil

    if q:getID() == -1 then

        return

    end

    local r = q:getDataString('name')

    q:free()

    return r

end

 

function greet(cid)

    Topic[cid], count[cid], transfer[cid] = nil, nil, nil

    return true

end

 

function creatureSayCallback(cid, type, msg)

    if not npcHandler:isFocused(cid) then

        return false

    elseif msgcontains(msg, 'balance') then

        npcHandler:say('Your account balance is ' .. getPlayerBalance(cid) .. ' gold.', cid)

        Topic[cid] = nil

    elseif msgcontains(msg, 'deposit') and msgcontains(msg, 'all') then

        if getPlayerMoney(cid) == 0 then

            npcHandler:say('You don\'t have any gold with you.', cid)

            Topic[cid] = nil

        else

            count[cid] = getPlayerMoney(cid)

            npcHandler:say('Would you really like to deposit ' .. count[cid] .. ' gold?', cid)

            Topic[cid] = 2

        end

    elseif msgcontains(msg, 'deposit') then

        if getCount(msg) == 0 then

            npcHandler:say('You are joking, aren\'t you??', cid)

            Topic[cid] = nil

        elseif getCount(msg) ~= -1 then

            if getPlayerMoney(cid) >= getCount(msg) then

                count[cid] = getCount(msg)

                npcHandler:say('Would you really like to deposit ' .. count[cid] .. ' gold?', cid)

                Topic[cid] = 2

            else

                npcHandler:say('You do not have enough gold.', cid)

                Topic[cid] = nil

            end

        elseif getPlayerMoney(cid) == 0 then

            npcHandler:say('You don\'t have any gold with you.', cid)

            Topic[cid] = nil

        else

            npcHandler:say('Please tell me how much gold it is you would like to deposit.', cid)

            Topic[cid] = 1

        end

    elseif Topic[cid] == 1 then

        if getCount(msg) == -1 then

            npcHandler:say('Please tell me how much gold it is you would like to deposit.', cid)

            Topic[cid] = 1

        elseif getPlayerMoney(cid) >= getCount(msg) then

            count[cid] = getCount(msg)

            npcHandler:say('Would you really like to deposit ' .. count[cid] .. ' gold?', cid)

            Topic[cid] = 2

        else

            npcHandler:say('You do not have enough gold.', cid)

            Topic[cid] = nil

        end

    elseif msgcontains(msg, 'yes') and Topic[cid] == 2 then

        if doPlayerRemoveMoney(cid, count[cid]) then

            doPlayerSetBalance(cid, getPlayerBalance(cid) + count[cid])

            npcHandler:say('Alright, we have added the amount of ' .. count[cid] .. ' gold to your balance. You can withdraw your money anytime you want to.', cid)

        else

            npcHandler:say('I am inconsolable, but it seems you have lost your gold. I hope you get it back.', cid)

        end

        Topic[cid] = nil

    elseif msgcontains(msg, 'no') and Topic[cid] == 2 then

        npcHandler:say('As you wish. Is there something else I can do for you?', cid)

        Topic[cid] = nil

    elseif msgcontains(msg, 'withdraw') then

        if getCount(msg) == 0 then

            npcHandler:say('Sure, you want nothing you get nothing!', cid)

            Topic[cid] = nil

        elseif getCount(msg) ~= -1 then

            if getPlayerBalance(cid) >= getCount(msg) then

                count[cid] = getCount(msg)

                npcHandler:say('Are you sure you wish to withdraw ' .. count[cid] .. ' gold from your bank account?', cid)

                Topic[cid] = 4

            else

                npcHandler:say('There is not enough gold on your account.', cid)

                Topic[cid] = nil

            end

        elseif getPlayerBalance(cid) == 0 then

            npcHandler:say('You don\'t have any money on your bank account.', cid)

            Topic[cid] = nil

        else

            npcHandler:say('Please tell me how much gold you would like to withdraw.', cid)

            Topic[cid] = 3

        end

    elseif Topic[cid] == 3 then

        if getCount(msg) == -1 then

            npcHandler:say('Please tell me how much gold you would like to withdraw.', cid)

            Topic[cid] = 3

        elseif getPlayerBalance(cid) >= getCount(msg) then

            count[cid] = getCount(msg)

            npcHandler:say('Are you sure you wish to withdraw ' .. count[cid] .. ' gold from your bank account?', cid)

            Topic[cid] = 4

        else

            npcHandler:say('There is not enough gold on your account.', cid)

            Topic[cid] = nil

        end

    elseif msgcontains(msg, 'yes') and Topic[cid] == 4 then

        if getPlayerBalance(cid) >= count[cid] then

            doPlayerAddMoney(cid, count[cid])

            doPlayerSetBalance(cid, getPlayerBalance(cid) - count[cid])

            npcHandler:say('Here you are, ' .. count[cid] .. ' gold. Please let me know if there is something else I can do for you.', cid)

        else

            npcHandler:say('There is not enough gold on your account.', cid)

        end

        Topic[cid] = nil

    elseif msgcontains(msg, 'no') and Topic[cid] == 4 then

        npcHandler:say('The customer is king! Come back anytime you want to if you wish to withdraw your money.', cid)

        Topic[cid] = nil

    elseif msgcontains(msg, 'transfer') then

        if getCount(msg) == 0 then

            npcHandler:say('Please think about it. Okay?', cid)

            Topic[cid] = nil

        elseif getCount(msg) ~= -1 then

            count[cid] = getCount(msg)

            if getPlayerBalance(cid) >= count[cid] then

                npcHandler:say('Who would you like to transfer ' .. count[cid] .. ' gold to?', cid)

                Topic[cid] = 6

            else

                npcHandler:say('There is not enough gold on your account.', cid)

                Topic[cid] = nil

            end

        else

            npcHandler:say('Please tell me the amount of gold you would like to transfer.', cid)

            Topic[cid] = 5

        end

    elseif Topic[cid] == 5 then

        if getCount(msg) == -1 then

            npcHandler:say('Please tell me the amount of gold you would like to transfer.', cid)

            Topic[cid] = 5

        else

            count[cid] = getCount(msg)

            if getPlayerBalance(cid) >= count[cid] then

                npcHandler:say('Who would you like to transfer ' .. count[cid] .. ' gold to?', cid)

                Topic[cid] = 6

            else

                npcHandler:say('There is not enough gold on your account.', cid)

                Topic[cid] = nil

            end

        end

    elseif Topic[cid] == 6 then

        local v = getPlayerByName(msg)

        if getPlayerBalance(cid) >= count[cid] then

            if v then

                transfer[cid] = msg

                npcHandler:say('Would you really like to transfer ' .. count[cid] .. ' gold to ' .. getPlayerName(v) .. '?', cid)

                Topic[cid] = 7

            elseif findPlayer(msg):lower() == msg:lower() then

                transfer[cid] = msg

                npcHandler:say('Would you really like to transfer ' .. count[cid] .. ' gold to ' .. findPlayer(msg) .. '?', cid)

                Topic[cid] = 7

            else

                npcHandler:say('This player does not exist.', cid)

                Topic[cid] = nil

            end

        else

            npcHandler:say('There is not enough gold on your account.', cid)

            Topic[cid] = nil

        end

    elseif Topic[cid] == 7 and msgcontains(msg, 'yes') then

        if getPlayerBalance(cid) >= count[cid] then

            local v = getPlayerByName(transfer[cid])

            if v then

                doPlayerSetBalance(cid, getPlayerBalance(cid) - count[cid])

                doPlayerSetBalance(v, getPlayerBalance(v) + count[cid])

                npcHandler:say('Very well. You have transferred ' .. count[cid] .. ' gold to ' .. getPlayerName(v) .. '.', cid)

            elseif findPlayer(transfer[cid]):lower() == transfer[cid]:lower() then

                doPlayerSetBalance(cid, getPlayerBalance(cid) - count[cid])

                db.executeQuery('UPDATE players SET balance=balance+' .. count[cid] .. ' WHERE name=' .. db.escapeString(transfer[cid]) .. ' LIMIT 1')

                npcHandler:say('Very well. You have transferred ' .. count[cid] .. ' gold to ' .. findPlayer(transfer[cid]) .. '.', cid)

            else

                npcHandler:say('This player does not exist.', cid)

            end

        else

            npcHandler:say('There is not enough gold on your account.', cid)

        end

        Topic[cid] = nil

    elseif Topic[cid] == 7 and msgcontains(msg, 'no') then

        npcHandler:say('Alright, is there something else I can do for you?', cid)

        Topic[cid] = nil

    elseif msgcontains(msg, 'change gold') then

        npcHandler:say('How many platinum coins would you like to get?', cid)

        Topic[cid] = 8

    elseif Topic[cid] == 8 then

        if getCount(msg) < 1 then

            npcHandler:say('Hmm, can I help you with something else?', cid)

            Topic[cid] = nil

        else

            count[cid] = math.min(500, getCount(msg))

            npcHandler:say('So you would like me to change ' .. count[cid] * 100 .. ' of your gold coins into ' .. count[cid] .. ' platinum coins?', cid)

            Topic[cid] = 9

        end

    elseif Topic[cid] == 9 then

        if msgcontains(msg, 'yes') then

            if doPlayerRemoveItem(cid, 2148, count[cid] * 100) then

                npcHandler:say('Here you are.', cid)

                doPlayerAddItem(cid, 2152, count[cid])

            else

                npcHandler:say('Sorry, you do not have enough gold coins.', cid)

            end

        else

            npcHandler:say('Well, can I help you with something else?', cid)

        end

        Topic[cid] = nil

    elseif msgcontains(msg, 'change platinum') then

        npcHandler:say('Would you like to change your platinum coins into gold or crystal?', cid)

        Topic[cid] = 10

    elseif Topic[cid] == 10 then

        if msgcontains(msg, 'gold') then

            npcHandler:say('How many platinum coins would you like to change into gold?', cid)

            Topic[cid] = 11

        elseif msgcontains(msg, 'crystal') then

            npcHandler:say('How many crystal coins would you like to get?', cid)

            Topic[cid] = 13

        else

            npcHandler:say('Well, can I help you with something else?', cid)

            Topic[cid] = nil

        end

    elseif Topic[cid] == 11 then

        if getCount(msg) < 1 then

            npcHandler:say('Hmm, can I help you with something else?', cid)

            Topic[cid] = nil

        else

            count[cid] = math.min(500, getCount(msg))

            npcHandler:say('So you would like me to change ' .. count[cid] .. ' of your platinum coins into ' .. count[cid] * 100 .. ' gold coins for you?', cid)

            Topic[cid] = 12

        end

    elseif Topic[cid] == 12 then

        if msgcontains(msg, 'yes') then

            if doPlayerRemoveItem(cid, 2152, count[cid]) then

                npcHandler:say('Here you are.', cid)

                doPlayerAddItem(cid, 2148, count[cid] * 100)

            else

                npcHandler:say('Sorry, you do not have enough platinum coins.', cid)

            end

        else

            npcHandler:say('Well, can I help you with something else?', cid)

        end

        Topic[cid] = nil

    elseif Topic[cid] == 13 then

        if getCount(msg) < 1 then

            npcHandler:say('Hmm, can I help you with something else?', cid)

            Topic[cid] = nil

        else

            count[cid] = math.min(500, getCount(msg))

            npcHandler:say('So you would like me to change ' .. count[cid] * 100 .. ' of your platinum coins into ' .. count[cid] .. ' crystal coins for you?', cid)

            Topic[cid] = 14

        end

    elseif Topic[cid] == 14 then

        if msgcontains(msg, 'yes') then

            if doPlayerRemoveItem(cid, 2152, count[cid] * 100) then

                npcHandler:say('Here you are.', cid)

                doPlayerAddItem(cid, 2160, count[cid])

            else

                npcHandler:say('Sorry, you do not have enough platinum coins.', cid)

            end

        else

            npcHandler:say('Well, can I help you with something else?', cid)

        end

        Topic[cid] = nil

    elseif msgcontains(msg, 'change crystal') then

        npcHandler:say('How many crystal coins would you like to change into platinum?', cid)

        Topic[cid] = 15

    elseif Topic[cid] == 15 then

        if getCount(msg) == -1 or getCount(msg) == 0 then

            npcHandler:say('Hmm, can I help you with something else?', cid)

            Topic[cid] = nil

        else

            count[cid] = math.min(500, getCount(msg))

            npcHandler:say('So you would like me to change ' .. count[cid] .. ' of your crystal coins into ' .. count[cid] * 100 .. ' platinum coins for you?', cid)

            Topic[cid] = 16

        end

    elseif Topic[cid] == 16 then

        if msgcontains(msg, 'yes') then

            if doPlayerRemoveItem(cid, 2160, count[cid]) then

                npcHandler:say('Here you are.', cid)

                doPlayerAddItem(cid, 2152, count[cid] * 100)

            else

                npcHandler:say('Sorry, you do not have enough crystal coins.', cid)

            end

        else

            npcHandler:say('Well, can I help you with something else?', cid)

        end

        Topic[cid] = nil

    elseif msgcontains(msg, 'change') then

        npcHandler:say('There are three different coin types in Tibia: 100 gold coins equal 1 platinum coin, 100 platinum coins equal 1 crystal coin. So if you\'d like to change 100 gold into 1 platinum, simply say \'{change gold}\' and then \'1 platinum\'.', cid)

        Topic[cid] = nil

    elseif msgcontains(msg, 'bank') then

        npcHandler:say('We can change money for you. You can also access your bank account.', cid)

        Topic[cid] = nil

    end

    return true

end

 

npcHandler:setCallback(CALLBACK_GREET, greet)

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

npcHandler:addModule(FocusModule:new())

Link para o post
Compartilhar em outros sites
  Em 27/05/2017 em 14:11, ismaeljuniorrp disse:
  Mostrar conteúdo oculto

 

Mostrar mais  

 

 

 

Só por curiosidade mesmo, você viu que a duvida do cara foi em "Postado Julho 12, 2012" ? KAKAKKAKAKAKAKAKAK

       112674.gif

 

 

 

Link para o post
Compartilhar em outros sites
  Em 27/05/2017 em 14:14, Zzyzx disse:

 

 

 

Só por curiosidade mesmo, você viu que a duvida do cara foi em "Postado Julho 12, 2012" ? KAKAKKAKAKAKAKAKAK

Expand   Mostrar mais  

puts nem vi kkkkkkk esse script trabalha 100% pensei que iria ajudar, agora vou ser notificado.. nem reparei que coisa!

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Estatísticas dos Fóruns

    96846
    Tópicos
    519603
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo