Ir para conteúdo

Script Npc Banco Português 8.60.


NeetoxDz

Posts Recomendados

Iae galera, venho postar o npc banco em português, por quê eu sei que muitos tem dificuldade para ler em Inglês, ai ficam traduzindo no google, mais agora está totalmente facil, basta apenas saber ler!

E também vou ensinar a colocar o npc no map editor e colocar no seu mapa...

Então vamos lá...

 

Primeiro abra a pasta Data/npc e copie qualquer arquivo.xml e cole no mesmo local, mais renomeie o arquivo que copiou para bankeiro vai ficar assim =

post-341607-0-82996400-1329885799_thumb.jpg

 

depois, abra o arquivo que você criou e cole o seguinte script =

<?xml version="1.0" encoding="UTF-8"?>

<npc name="Banqueiro" script="data/npc/scripts/bank.lua" walkinterval="2000" floorchange="0" access="5" level="1" maglevel="1" speed="1000">

<health now="150" max="150"/>

<look type="128" head="79" body="114" legs="114" feet="0" addons="3" corpse="2212"/>

 

<parameters>

<parameter key="message_greet" value="Bem-Vindo |PLAYERNAME|! Aqui, voce pode {depositar}, {sacar} ou {transferir} seu dinheiro de sua conta bancaria. Eu posso mudar suas moedas tambem."/>

<parameter key="message_alreadyfocused" value="Voce esta bebado? Eu falo com voce."/>

<parameter key="message_farewell" value="Tchau. Eu quero ver o seu dinheiro... oh voce novamente."/>

</parameters>

</npc>

 

Pronto, salva e fecha!!

 

Depois abra a pasta Data/npc/scripts e crie ou copie um arquivo.lua e renomeie para bank.lua =

post-341607-0-32224000-1329886733_thumb.jpg

e abra o arquivo que você copiou ou criou, se você copiou apague tudo que esta escrito dentro do arquivo, e cole o seguinte script dentro do arquivo =

local keywordHandler = KeywordHandler:new()

local npcHandler = NpcHandler:new(keywordHandler)

NpcSystem.parseParameters(npcHandler)

local talkState = {}

local moneyTo = {}

local playerTo = {}

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 isValidMoney(money)

if isNumber(money) == TRUE and money > 0 and money < 999999999 then

return TRUE

end

return FALSE

end

function creatureSayCallback(cid, type, msg)

if(not npcHandler:isFocused(cid)) then

return false

end

if msgcontains(msg, 'ajuda') or msgcontains(msg, 'oferta') then

selfSay("Você pode verificar o {saldo} da sua conta bancária, {depositar} dinheiro ou {sacar} dinheiro depositado. Você pode também fazer {transferencia} de dinheiro para outros players, desde que o player tenha vocaçao.", cid)

talkState[cid] = 0

-----------------------------------------------------------------

---------------------------- Saldo ----------------------------

-----------------------------------------------------------------

elseif msgcontains(msg, 'saldo') or msgcontains(msg, 'Saldo') then

selfSay('O saldo da sua conta é '..getPlayerBalance(cid)..' gold.', cid)

talkState[cid] = 0

-----------------------------------------------------------------

---------------------------- Ajuda -------------------------------

-----------------------------------------------------------------

elseif msgcontains(msg, 'basic functions') then

selfSay('Você pode checar seu {saldo{ da sua conta bancaria, Pdepositar{ dinheiro ou Psacar{ dinheiro depositado. Você pode também fazer {transferencia} de dinheiro para outros players, desde que o player tenha vocaçao.', cid)

talkState[cid] = 0

elseif msgcontains(msg, 'advanced functions') then

selfSay('Alugar uma casa nunca foi tão fácil. Basta fazer uma oferta para um leilão. Iremos verificar imediatamente se você tem dinheiro suficiente.', cid)

talkState[cid] = 0

-----------------------------------------------------------------

---------------------------- Depositar ----------------------------

-----------------------------------------------------------------

elseif msgcontains(msg, 'depositar tudo') then

moneyTo[cid] = getPlayerMoney(cid)

if moneyTo[cid] < 1 then

selfSay('Você não tem dinheiro para depositar em seu inventário..', cid)

talkState[cid] = 0

else

selfSay('Você quer realmente depositar '..moneyTo[cid]..' gold?', cid)

talkState[cid] = 2

end

elseif msgcontains(msg, 'depositar') then

selfSay("Por favor me diga quantos gold gostaria de depositar?", cid)

talkState[cid] = 1

elseif talkState[cid] == 1 then

moneyTo[cid] = tonumber(msg)

if isValidMoney(moneyTo[cid]) == TRUE then

selfSay('Você realmente quer depositar '..moneyTo[cid]..' gold?', cid)

talkState[cid] = 2

else

selfSay('Não é valido essa forma de deposito.', cid)

talkState[cid] = 0

end

elseif talkState[cid] == 2 then

if msgcontains(msg, 'sim') then

if doPlayerDepositMoney(cid, moneyTo[cid], 1) ~= TRUE then

selfSay('Você não tem dinheiro suficiente para depositar.', cid)

else

selfSay('Tudo bem, nós adicionamos a quantidade de '..moneyTo[cid]..' gold para seu saldo. Você pode retirar seu dinheiro quando você quiser. O saldo da conta é ' .. getPlayerBalance(cid) .. '.', cid)

end

elseif msgcontains(msg, 'nao') then

selfSay('Como quiser. Há outra coisa que eu posso fazer por você?', cid)

end

talkState[cid] = 0

-----------------------------------------------------------------

---------------------------- sacar ---------------------------

-----------------------------------------------------------------

elseif msgcontains(msg, 'sacar') then

selfSay("Por favor me diga quanto ouro você gostaria de retirar?", cid)

talkState[cid] = 6

elseif talkState[cid] == 6 then

moneyTo[cid] = tonumber(msg)

if isValidMoney(moneyTo[cid]) == TRUE then

selfSay('Tem certeza que deseja retirar '..moneyTo[cid]..' gold da sua conta bancária?', cid)

talkState[cid] = 7

else

selfSay('Forma inválida de sacar.', cid)

talkState[cid] = 0

end

elseif talkState[cid] == 7 then

if msgcontains(msg, 'sim') then

if doPlayerWithdrawMoney(cid, moneyTo[cid]) ~= TRUE then

selfSay('Não há gold suficiente em sua conta. O saldo da conta é '..getPlayerBalance(cid)..'. Por favor me diga a quantidade de golds que você gostaria de retirar.', cid)

else

selfSay('Aqui está, ' .. moneyTo[cid] .. ' gold. Por favor, deixe-me saber se há algo mais que eu possa fazer por você.', cid)

talkState[cid] = 0

end

elseif msgcontains(msg, 'nao') then

selfSay('Como quiser. Há outra coisa que eu posso fazer por você?', cid)

talkState[cid] = 0

end

-----------------------------------------------------------------

---------------------------- Transferencia ---------------------------

-----------------------------------------------------------------

elseif msgcontains(msg, 'transferir') then

selfSay("Por favor me diga a quantidade de golds que você gostaria de transferir.", cid)

talkState[cid] = 11

elseif talkState[cid] == 11 then

moneyTo[cid] = tonumber(msg)

if isValidMoney(moneyTo[cid]) == TRUE then

selfSay('Para quem você gostaria de fazer a transferência '..moneyTo[cid]..' gold para?', cid)

talkState[cid] = 12

else

selfSay('Forma inválida de fazer transferência.', cid)

talkState[cid] = 0

end

elseif talkState[cid] == 12 then

playerTo[cid] = msg

if getCreatureName(cid) == playerTo[cid] then

selfSay('Hum, você quer transferir dinheiro para si mesmo? Não pode transferir dinheiro pra si mesmo, seu noob infeliz!', cid)

talkState[cid] = 0

return TRUE

end

if playerExists(playerTo[cid]) then

selfSay('Você gostaria de transferir ' .. moneyTo[cid] .. ' gold para "' .. playerTo[cid] .. '" ?', cid)

talkState[cid] = 13

else

selfSay('Esse player chamado "' .. playerTo[cid] .. '" Não existe.', cid)

talkState[cid] = 0

end

elseif talkState[cid] == 13 then

if msgcontains(msg, 'sim') then

if getPlayerBalance(cid) < moneyTo[cid] then

selfSay('Você não tem dinheiro suficiente em sua conta bancária.', cid)

return TRUE

end

if doPlayerTransferMoneyTo(cid, playerTo[cid], moneyTo[cid]) ~= TRUE then

selfSay('Esse jogador não existe neste mundo ou não têm vocação.', cid)

else

selfSay('Transferência com sucesso ' .. moneyTo[cid] .. ' gold para "' .. playerTo[cid] ..' ".', cid)

playerTo[cid] = nil

end

elseif msgcontains(msg, 'nao') then

selfSay('Como quiser. Há outra coisa que eu posso fazer por você?', cid)

end

talkState[cid] = 0

end

return TRUE

end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

npcHandler:addModule(FocusModule:new())

 

 

Pronto, Salva e Fecha!

 

Agora vou ensinar vocês a colocar o npc no mapa editor, é bem simples.

 

Primeiro baixem o map editor 2.1 =

http://remeresmapeditor.com/marklar.php

 

Depois de baixado, installe claro!!

 

e para abir o map editor com o seu mapa vai na pasta Data/world =

post-341607-0-03696100-1329888045_thumb.jpg

e clique no arquivo do map editor, geralmente o arquivo vem com o nome do Server =

post-341607-0-52247100-1329888165_thumb.jpg

 

Agora depois de estar aberto o mapa editor com seu mapa, você vai na opção File que está, Superior a esquerda

e vai na opção Import e depois siga o > e vai na opção import monsters/NPCs =

post-341607-0-48295200-1329889032_thumb.jpg

 

Depois procure o npc na pasta Data/Npc/bankeiro.xml e clique em abrir =

post-341607-0-51018500-1329889284_thumb.jpg

 

e depois coloque em Palette -> Creature palette, em baixo em Creatures coloque a opção NPCs e clique no local que deseja colocar o npc =

post-341607-0-12675800-1329889910_thumb.jpg

 

Pronto, Salva e feche se quiser!

 

É isso ae galera, Descupa se ouver alguns erros de português...

 

Creditos da traduçao para português By:eu mesmo

 

Não encontrei o dono do script, mais se ouver o dono, prove que és o dono do script, que eu Coloco os créditos!

Valeu galera, comentem ae!!

e lembrem se ajudei por que não dar Rep+.

 

post-341607-0-65606000-1329890613_thumb.png

post-341607-0-63015100-1329890921_thumb.jpg

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

×
×
  • Criar Novo...