Só eu achei esse script legal? ![]()
- Fórum
- OTServ
- Recursos
- Scripting
- Actions e Talkactions
- Piggy Bank - Cassino
LA
action
Piggy Bank - Cassino
Por larissaots, 31 de mai. de 2015 em Actions e Talkactions
tibia
script
otserv
2
1.2k
Por larissaots, 31 de mai. de 2015 em Actions e Talkactions
info
Grupo: Banidos
Registrado: 07/04/13
Posts: 648
Reputação: +163
Créditos à Caronte & Adriano SwaTT.
Testado em TFS 0.4.
Coloquei em spoiler porque o conteúdo é grande.
VERSÃO 1
Observações
PS: Lembrando, que para apostar, é só colocar grana no slot que se coloca arrows... e a quantidade de crystal coins é configurável, no início do script, alterando lá, já vai alterar a fala, que falará sempre a quantidade configurada.
Detalhe: Quem quer que o local/item de aposta seja fixo, mude a TAG que coloca em actions.xml, só mude o ID do item.
Como funciona
O cassino se resume à 50% de chance de acertar ou errar.
50% Acertou? Ótimo, a sua grana dobra.
50% Errou? Ótimo, ele pega toda sua grana apostada.
Prévia
Caso não tenha dinheiro no slot de munições:




Caso tenha dinheiro no slot de munições, mas não o suficiente:
Caso ganhe:
Caso perca:
Tutorial
Vá em actions/scripts/other e crie um arquivo piggybank.lua.
"VALE LEMBRAR, ESSE PIGGY BANK JÁ EXISTE NO TIBIA, MAS DESEMPENHANDO OUTRA FUNÇÃO, ENTÃO É MELHOR CRIAR OUTRO ARQUIVO OU SÓ SUBSTITUIR."
local qtdd = 10 -- quantidade minima para jogar local lost, winner = CONST_ANI_SUDDENDEATH, CONST_ANI_HOLY -- Efeitos: Ao perder, Ao ganhar function onUse(cid, item, frompos, item2, topos) local chance = math.random(0,100) local pos = getPlayerPosition(cid) local pos_ef = { {x= pos.x-1,y= pos.y-1,z= pos.z}, {x= pos.x,y= pos.y-1,z= pos.z}, {x= pos.x+1,y= pos.y-1,z= pos.z}, {x= pos.x+1,y= pos.y,z= pos.z}, {x= pos.x+1,y= pos.y+1,z= pos.z}, {x= pos.x,y= pos.y+1,z= pos.z}, {x= pos.x-1,y= pos.y+1,z= pos.z}, {x= pos.x-1,y= pos.y,z= pos.z} } --Verificar se tem crystals no slot -- if getPlayerSlotItem(cid, CONST_SLOT_AMMO).itemid ~= 2160 then doCreatureSay(cid, 'You need crystal coins in your ammunition slot to play ! ', TALKTYPE_ORANGE_1) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) --Verificar quantidade de cystals no ammo slot elseif getPlayerSlotItem(cid, CONST_SLOT_AMMO).itemid == 2160 and getPlayerSlotItem(cid, CONST_SLOT_AMMO).type < qtdd then doCreatureSay(cid, "You don't have "..qtdd.." crystal coins in the arrows slot to play", TALKTYPE_ORANGE_1) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) end if getPlayerSlotItem(cid, CONST_SLOT_AMMO).itemid == 2160 and getPlayerSlotItem(cid, CONST_SLOT_AMMO).type >= qtdd then doCreatureSay(cid, "Let's see your lucky", TALKTYPE_ORANGE_1) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_CRAPS) if chance <= 50 then -- GANHOU doPlayerAddItem(cid,2160,getPlayerSlotItem(cid, CONST_SLOT_AMMO).type) for i = 1, 8 do doSendDistanceShoot(pos_ef[i], pos, winner) end -- FECHA FOR elseif chance >= 50 then -- PERDEU doPlayerRemoveItem(cid,2160,getPlayerSlotItem(cid, CONST_SLOT_AMMO).type) doSendMagicEffect(pos, CONST_ME_BLOCKHIT) for i = 1, 8 do doSendDistanceShoot(pos_ef[i], pos, lost) end -- FECHA FOR end -- FECHA IF (CHANCE) end -- FECHA IF QUANTIDADE return true endAdicione em actions.xml:
VERSÃO 2
Observações
Quantidade mínima de crystal coins para apostar/quebrar o piggy bank.
Chance do piggy bank quebrar, de 0 a 100, recomendo que não mude de 0 caso mude o item (piggy bank).
Como funciona
O player tem que adicionar um tributo de 5 crystal coins (configurável) ao piggy bank, sendo assim, terá de sortear: o dinheiro é descontado de qualquer parte do inventário do player.
São 3 possibilidades que o player pode se deparar, são elas:
Gold coin
onde o player ganha a quantidade de 1 a 100 gold coins.
Platinum coin
onde o player ganha a quantidade de 1 a 15 platinum coins.
Crystal coin
onde o player ganha a quantidade de 1 a 70 crystal coins.
Prévia
Tutorial
Vá em actions/scripts/other e crie um arquivo piggybank.lua.
Adicione em actions.xml: