Postado Novembro 25, 2011 13 anos Olá galera, venho trazer a vocês o StoneCraft system, um sisteminha com iniciativa mais para treino pessoal, mas que ficou bem legal. Como este 1.0 ainda é simples, não está em mod, só é necessário um action. Intro > Vamos lá, o script serve para coletar pedras, no exemplo eu coloquei só algumas como, ancient stone, battle stone, que em meu server (Arcadia) eu usarei para complementar receitas e forjar items, agora vocês usem a criatividade. é basicamente assim, você usa a pick em alguma pedra que está configurado em sua tabela, ficará usando até quebrar (configurado por breakChance, em porcentagem) a pedra. Quando quebrar você pode 'dropar' uma pedra ou não, depende da sua sorte (configurado por dropChance, em porcentagem). Caso não consiga dropar, vá para outra pedra e tente novamente sua sorte, ou espera a pedra voltar ao seu estado normal em tantos minutos (configurado por respawnTime, em minutos). Caso consiga dropar algo, será de acordo com sua sorte um dos items presentes na array drops da pedra quebrada. O script é praticamente isso só, caso não entenda, pergunte. Imagem > Instalando > Crie um arquivo lua em actions/scripts com o nome stonecraft.lua, e dentro ponha: -- Name: StoneMining -- Version: 1.0 -- Author: Renato Ribeiro -- Official Forum: www.tibiaking.com -- About Script: read in (http://tibiaking.com/forum/topic/8998-stonemining-system/) -> brazilian portuguese only -- Read: GNU General Public License function createItem(pos, itemid) doSendMagicEffect(pos, 34) doCreateItem(itemid, 1, pos) doSendMagicEffect(pos, 34) end function onUse(cid, item, fromPosition, itemEx, toPosition) stones = { -- time in minutes, chance in percent '%', drops separated by comma (virgula) [1285] = { breakChance = 35, respawnTime = 3, dropChance = 50, drops = {10549, 10549, 10549, 10549, 12403}}, [3609] = { breakChance = 25, respawnTime = 7, dropChance = 30, drops = {10549, 10549, 12403}}, [3608] = { breakChance = 25, respawnTime = 7, dropChance = 30, drops = {10549, 10549, 12403}}, [3607] = { breakChance = 20, respawnTime = 7, dropChance = 30, drops = {10549, 10549, 12403}}, [3616] = { breakChance = 15, respawnTime = 7, dropChance = 30, drops = {10549, 10549, 12403}}, [3615] = { breakChance = 20, respawnTime = 7, dropChance = 20, drops = {10549, 10549, 10549, 13943, 13943, 11227, 11232}}, [1356] = { breakChance = 20, respawnTime = 15, dropChance = 20, drops = {10549, 10549, 10549, 13943, 13943, 11227, 11232}}, [1355] = { breakChance = 20, respawnTime = 15, dropChance = 20, drops = {10549, 10549, 10549, 13943, 13943, 11227, 11232}}, [1357] = { breakChance = 20, respawnTime = 20, dropChance = 20, drops = {10549, 10549, 13943, 13943, 11227, 11232}}, [1358] = { breakChance = 20, respawnTime = 20, dropChance = 15, drops = {10549, 13943, 13943, 11227, 11232}}, [1359] = { breakChance = 20, respawnTime = 25, dropChance = 15, drops = {13943, 11227, 11232}} } if isInArray({0, 65535}, toPosition.x) then return false elseif stones[itemEx.itemid] then stoneEx = stones[itemEx.itemid] if (math.random(1, 100) < stoneEx.breakChance) then doRemoveItem(getTileItemById(toPosition, itemEx.itemid).uid) addEvent(createItem, stoneEx.respawnTime * 60000, toPosition, itemEx.itemid) if (math.random(1, 100) < stoneEx.dropChance) then itemDrop = stoneEx.drops[math.random(1, #stoneEx.drops)] doPlayerAddItem(cid, itemDrop) doSendMagicEffect(toPosition, 12) return doPlayerSendCancel(cid, "Your craft sucess, you found " .. getItemArticleById(itemDrop) .. " " .. getItemNameById(itemDrop) ..".") else doSendMagicEffect(toPosition, 9) return doPlayerSendCancel(cid, "Your craft sucess, but they found nothing.") end else doSendMagicEffect(toPosition, 2) return doPlayerSendCancel(cid, "Your craft fail, try again.") end else return doPlayerSendCancel(cid, "You must craft in a specially stone.") end end [/code] [b]Agora vá em actions/actions.xml e ponha:[/b] [code] <action itemid="2553" event="script" value="stonecraft.lua"> Adicionando novas pedras > Siga o exemplo da tabela: Assim: [iD_DA_PEDRA] = { breakChance = CHANCE_DE_QUEBRAR_A_PEDRA, respawnTime = MINUTOS_PARA_RESPAWN_DA_PEDRA, dropChance = CHANCE_DE_DROPAR_ALGUM_ITEM, drops = {ITEMS_QUE_DROPAM, SEPARADOS_POR_VIRGULA}}, Ficará: [3609] = { breakChance = 25, respawnTime = 7, dropChance = 30, drops = {10549, 10549, 12403}}, Script Funcionando Testado em: Crystal Server 0.1.5, e TFS 0.4 -- Até a próxima, estou desenvolvento um sistema para fusão de summons (: aguardem! Abraços.</action> rena.to
Postado Novembro 25, 2011 13 anos Muito foda véi, ficou bem bacana, ótima idéia pra servidores RPG... # Regras Gerais - TibiaKing.com # Contato: augusto@tibiaking.comNão respondo dúvidas via MP.
Postado Novembro 26, 2011 13 anos Administrador Cara a ideia é perfeita para servidores com o estilão RPG. O script ficou bem enchuto e funcional, veri gud! TibiaKing Team- KingTópicos www.tibiaking.com
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.