Ir para conteúdo

Featured Replies

Postado
  • Este é um post popular.

Vi um pessoal atrás desse sistema e decidi trazer pra cá ;]

O que é: Um sistema em que você insere um Cartão de Crédito em um Caixa Eletrônico para executar ações iguais às de um banco de verdade.

Crie um arquivo em mods com extensão .xml e coloque isso dentro

Spoiler

<?xml version="1.0" encoding="UTF-8"?>  
<mod name="Caixa Eletronico System" version="1.0" author="LuckOake" contact="none" enabled="yes">
-----------------------------------------------------------------------
<config name="caixa"><![CDATA[
stor = 41319
caixa_id = 1354 -- Id do Caixa Eletrônico
bank_pos = {x = 78, y = 39, z = 7} -- Position da entrada do banco
msgs = {
	[1] = "'balance' ou 'saldo' para ver seu saldo em conta.",
	[2] = "'deposit' ou 'depositar' para depositar dinheiro em sua conta.",
	[3] = "'withdraw' ou 'sacar' para sacar dinheiro de sua conta.",
	[4] = "'transfer' ou 'transferir' para transferir dinheiro para uma outra conta. Comando: transfer,quantia,nome",
	[5] = "'trocar gold' para trocar suas gold coins por platinum coins. Comando: trocar gold,número de platinum coins",
	[6] = "'trocar platinum' para trocar suas platinum coins por gold coins ou crystal coins. Comando: trocar platinum,gold ou crystal,número",
	[7] = "'trocar crystal' para trocar suas crystal coins por platinum coins. Comando: trocar crystal,número de platinum coins",
	[8] = "'sair' ou 'exit' para sair.",
	}
]]></config>
-----------------------------------------------------------------------
<action itemid="2556" event="script"><![CDATA[
domodlib('caixa')
	if getPlayerStorageValue(cid, stor) ~= -1 then return true
	elseif itemEx.itemid ~= caixa_id then
		doPlayerSendCancel(cid, "Você só pode usar esse item em um caixa eletrônico.") return true
	end

		setPlayerStorageValue(cid, stor, 1)
		doPlayerSetNoMove(cid, true)
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Caixa Eletrônico: Olá! Digite !caixa + um dos parâmetros abaixo:")
	for a, b in ipairs(msgs) do
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Caixa Eletrônico: "..b.."")
	end
return true
]]></action>
-----------------------------------------------------------------------
<talkaction words="!caixa" event="buffer"><![CDATA[
domodlib('caixa')
	t = string.explode(param, ",")
	
	if getPlayerStorageValue(cid, stor) ~= 1 then return true end
	if t[1] == "balance" or t[1] == "saldo" then
		if t[2] then return true end
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Caixa Eletrônico: Você possui "..getPlayerBalance(cid).." gold coins em sua conta bancária.")
	elseif t[1] == "deposit" or t[1] == "depositar" then
		if not t[2] or not tonumber(t[2]) or t[3] then
			doPlayerSendCancel(cid, "Incorrect params.") return true
		elseif not doPlayerDepositMoney(cid, tonumber(t[2])) then
			doPlayerSendCancel(cid, "Você não possui essa quantia em dinheiro.") return true
		end
		
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Caixa Eletrônico: Você depositou "..t[2].." gold coins em sua conta. Seu saldo agora é de "..getPlayerBalance(cid).." gold coins.")
	elseif t[1] == "withdraw" or t[1] == "sacar" then
		if not t[2] or not tonumber(t[2]) or t[3] then
			doPlayerSendCancel(cid, "Incorrect params.") return true
		elseif getPlayerBalance(cid) < tonumber(t[2]) then
			doPlayerSendCancel(cid, "Você não possui essa quantia de dinheiro em sua conta.") return true
		end
		
			doPlayerWithdrawMoney(cid, tonumber(t[2]))
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Caixa Eletrônico: Você sacou "..t[2].." gold coins de sua conta. Seu saldo agora é de "..getPlayerBalance(cid).." gold coins.")
	elseif t[1] == "transfer" or t[1] == "transferir" then
		if not t[2] or not tonumber(t[2]) or not t[3] or not tostring(t[3]) or t[4] then
			doPlayerSendCancel(cid, "Incorrect params.") return true
		elseif getPlayerBalance(cid) < tonumber(t[2]) then
			doPlayerSendCancel(cid, "Você não possui essa quantia de dinheiro em sua conta.") return true
		elseif not playerExists(t[3]) then
			doPlayerSendCancel(cid, "O player "..t[3].." não existe.") return true
		end
		
			doPlayerTransferMoneyTo(cid, t[3], tonumber(t[2]))
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Caixa Eletrônico: Você transferiu "..t[2].." gold coins de sua conta para "..t[3]..". Seu saldo agora é de "..getPlayerBalance(cid).." gold coins.")
	elseif t[1] == "trocar gold" then
		if not t[2] or not tonumber(t[2]) or t[3] then
			doPlayerSendCancel(cid, "Incorrect params. Specify the number of platinum coins you want to get.") return true
		elseif not doPlayerRemoveItem(cid, 2148, (t[2]*100)) then
			doPlayerSendCancel(cid, "Você não possui "..(t[2]*100).." gold coins.") return true
		end
		
			doPlayerAddItem(cid, 2152, t[2])
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Caixa Eletrônico: Você trocou "..(t[2]*100).." gold coins por "..t[2].." platinum coins.")
	elseif t[1] == "trocar platinum" then
		if t[2] == "gold" then
			if not t[3] or not tonumber(t[3]) or t[4] then
				doPlayerSendCancel(cid, "Incorrect params. Specify the number of platinum coins you want to change to gold coins.") return true
			elseif not doPlayerRemoveItem(cid, 2152, tonumber(t[3])) then
				doPlayerSendCancel(cid, "Você não possui "..t[3].." platinum coins.") return true
			end
		
				doPlayerAddItem(cid, 2148, tonumber(t[3]*100))
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Caixa Eletrônico: Você trocou "..t[3].." platinum coins por "..(t[3]*100).." gold coins.")
		elseif t[2] == "crystal" then
			if not t[3] or not tonumber(t[3]) or t[4] then
				doPlayerSendCancel(cid, "Incorrect params. Specify the number of crystal coins you want to get.") return true
			elseif not doPlayerRemoveItem(cid, 2152, tonumber(t[3]*100)) then
				doPlayerSendCancel(cid, "Você não possui "..(t[3]*100).." platinum coins.") return true
			end
		
				doPlayerAddItem(cid, 2160, tonumber(t[3]))
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Caixa Eletrônico: Você trocou "..(t[3]*100).." platinum coins por "..t[3].." crystal coins.")
		else
			return doPlayerSendCancel(cid, "Incorrect params. Utilize o comando assim: trocar platinum,gold ou crystal,quantia")
		end
	elseif t[1] == "trocar crystal" then
		if not t[2] or not tonumber(t[2]) or t[3] then
			doPlayerSendCancel(cid, "Incorrect params. Specify the number of crystal coins you want to change to platinum coins.") return true
		elseif not doPlayerRemoveItem(cid, 2160, tonumber(t[2])) then
			doPlayerSendCancel(cid, "Você não possui "..t[2].." crystal coins.") return true
		end
		
			doPlayerAddItem(cid, 2152, tonumber(t[2]*100))
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Caixa Eletrônico: Você trocou "..t[2].." crystal coins por "..(t[2]*100).." platinum coins.")
	elseif t[1] == "sair" or t[1] == "exit" then
		doTeleportThing(cid, bank_pos)
		setPlayerStorageValue(cid, stor, -1)
		doPlayerSetNoMove(cid, false)
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Caixa Eletrônico: Obrigado pela visita!")
	else return doPlayerSendCancel(cid, "Incorrect Params.") end
return true
]]></talkaction>
</mod>



Pra configurar você muda aqui

Citar
stor = 41319
caixa_id = 1354 -- Id do Caixa Eletrônico
bank_pos = {x = 78, y = 39, z = 7} -- Position da entrada do banco

 

se quiser editar o id do item que é usado como cartão de crédito altere aqui:

Citar

 

<action itemid="2556" event="script"><![CDATA[

 

Por recomendações do criador do script, é sugerido que se coloque NO-LOGOUT na área da fila.

Veja as imagens abaixo: 

Spoiler

http://imagizer.imageshack.us/a/img15/5696/cardye.png

Spoiler

http://imagizer.imageshack.us/a/img267/8826/abcye.png

Spoiler

http://imagizer.imageshack.us/a/img823/3796/abc1d.png

 

Spoiler

http://imagizer.imageshack.us/a/img545/9803/asaaq.png

 

Observações:
- Para usar o caixa eletrônico, você tem que dar Use With nele com o cartão.
Créditos:
LuckOake -- Pelo sistema

  • 2 weeks later...
  • 6 years later...
Postado

Muito bom! Teria como modificar para que nao seja necessário ter o cartão de  crédito para usar? Apesar clicar no caixa e sacar o dinheiro. rep+ caso seja modificado

  • Cat mudou o título para Caixa Eletrônico - Bank diferente no Tibia

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo