bom galera.. alguns me conhecem, outros não, prazer.. DrakyLucas..
faz tempo que não mecho com Tibia, tanto por preguiça, quanto por falta de tempo.
Fiz esse scriptzin para aquecer um pouco.. espero que gostem.. é bem legal para OTs sérios ou até para OTs brincalhões.
Esse script é um sistema de cassino.. o player vai puxar uma alavanca, irão aparecer 3 monstros (1 por vez) em sua frente, se os três forem iguais o player ganha a aposta, caso contrario apenas perde seu dinheiro.
exclusivo XTibia em!
Testado com TFS 0.3.6 Lost Server - 8.60
Peço que abram os spoilers a seguir sequencialmente, para não se perderem na instalação.
Instalação
Mapa:
Parte1:
Parte2:
Parte3:
Parte4:
Actions.xml
Na pasta de seu servidor, vá em Data -> Actions e abra o actions.xml com bloco de notas.
abaixo de
<actions>
coloque:
<action actionid="12312" event="script" value="cassino.lua">
Cassino.lua
Agora em Data -> Actions - > Scripts crie um arquivo chamado cassino.lua e nele coloque isso:
--[[ **** <créditos> **** ]] --
-- 100% DrakyLucas
-- Exclusivo XTIBIA
-- Não postar em outros fórums sem a devida autorização
-- Não comercializar esse script
--[[ **** </créditos> **** ]] --
local config = {
storageGlobal = 12312, -- esta storage é global e armazenará um valor para verificar se alguem usou o sistema antes dele finalizar
premioQuantidade = 100000, -- em GPS
valorAposta = 15000, -- preço, em GPS, de cada chance
pos = {{x = 35,y = 81,z = 7,stackpos = 253},{x = 36,y = 81,z = 7,stackpos = 253},{x = 37,y = 81,z = 7,stackpos = 253}}, -- configure as 3 posições
criaturas = {"Rabbit","Black Sheep","Dog","Cat"}, -- monstros que irão aparecer
verificador = {}, -- não mecher
}
function onUse(cid, item, fromPosition, itemEx, toPosition)
if(getStorage(config.storageGlobal) == 1) then
doPlayerSendCancel(cid,"Aguade esta rodada acabar.")
return true
end
if(getPlayerMoney(cid) < config.valorAposta) then
doPlayerSendCancel(cid,"Consiga " .. config.valorAposta .. " gold coins antes.")
return true
end
doPlayerRemoveMoney(cid, config.valorAposta)
sumonarVerificar(cid,1)
doSetStorage(config.storageGlobal, 1) -- adiciona o verificador para não clicar 100 veses e bugar
addEvent(doSetStorage,4000,config.storageGlobal,-1) -- retira o verificador para poder clicar novamente
return false
end
function sumonarVerificar(cid,i)
if(not isPlayer(cid)) then -- evita erros
for k = 1,3 do
if(isMonster(getTopCreature(config.pos[k]).uid)) then
doRemoveCreature(getTopCreature(config.pos[k]).uid)
end
end
return false
else
if(i == 4)then
if(config.verificador[1] == config.verificador[2] and config.verificador[2] == config.verificador[3]) then
for k = 1,3 do
doSendMagicEffect(config.pos[k], 29)
end
doSendMagicEffect(getCreaturePosition(cid), 29)
doSendAnimatedText(getCreaturePosition(cid), "Congratz!", math.random(1,255))
doPlayerAddMoney(cid, config.premioQuantidade)
else
for k = 1,3 do
doSendMagicEffect(config.pos[k], 2)
end
doSendMagicEffect(getCreaturePosition(cid), 2)
end
for k = 1,3 do
if(isMonster(getTopCreature(config.pos[k]).uid)) then
doRemoveCreature(getTopCreature(config.pos[k]).uid)
end
end
for k,v in pairs(config.verificador) do config.verificador[k]=nil end -- limpa tabela
else
rand = math.random(1,#config.criaturas)
monstro = doCreateMonster(config.criaturas[rand],config.pos)
doSendMagicEffect(config.pos,2)
table.insert(config.verificador, config.criaturas[rand]) -- adiciona a criatura na tabela para futura verificação
doChangeSpeed(monstro, -getCreatureBaseSpeed(monstro)) -- fará com que ele não se mexa
addEvent(sumonarVerificar,1000,cid,i + 1)
end
end
end
Configurar:
Nesta cor, coloque o Prêmio em Gold Coins (gps)
Nesta cor, coloque o preço da aposta em Gold Coins (gps)
Nesta cor, coloque as posições (anotadas no Passo 4 - Mapa)
Nesta cor, coloque as criaturas (pode adicionar quantas quiser, mas apenas criaturas hostis (cachorro, gato, galinha...) --> quanto mais criaturas, mais dificil é dos players ganharem.
Finalizar
Abra o servidor, teste.
espero que gostem.. e que esteja bem explicado, pois levei mais tempo para formatar o tópico/tirar as SS do que para fazer o sistema
Créditos
100% DrakyLucas (Eu )
Proibido vender e/ou anunciar a outros fórums
Exclusividade XTibia
Edited: 12/07/2012 11:38 AM -> concertei um possivel bug
Por favor, comente sua opinião e dê ideias de outros sistemas legais para eu fazer.