Jump to content

victorpuntel

Campones
  • Posts

    47
  • Joined

  • Last visited

Reputation Activity

  1. Upvote
    victorpuntel got a reaction from Marcelo96 in [Dúvidas] Sobre Distro   
    Sim todo ot tem um distro, distro é aquele arquivo .exe pra por o ot online. E não tem como abrir o distro, você precisa ter as sources para modificar ele.
  2. Upvote
    victorpuntel got a reaction from slowant in Barril Explosivo   
    @milbradt revivendo topico de 2006...
  3. Upvote
    victorpuntel got a reaction from beheh in Mount System ((Global))   
    Para isso seria necessario os Sprites do global, porque não tem no 8.6
    e se caso consiga eles completos, que acho dificil por enquanto, é só você pegar um Mount System da area de actions e mudar o newtype que o player receberá ao usar por o newtype do seu sprite adicionado. e tambem vale lembrar que para ter akela area 'Mount' no Change Outfit , seria necessario um client proprio ou o client 8.7
  4. Upvote
    victorpuntel reacted to Demonbholder in Sistema De Alquimia   
    Booooas galera! Eu estava com essa idéia na cabeça já faz um tempo, mas ai tava com um problema e não conseguia arrumar. Well, na madrugada passada, eu fui ver o script e descobri um jeito de consertar, assim, eu criei o sistema de alquimia. Então é isso ai, não quero ficar enrolando muito, vamos logo ao script...
     
     
     
     
    Como Funciona: O sistema é composto por uma talkaction e uma action. A talkaction serve para criar novas gemas, ou seja, fundir gemas já existentes e transformá-las em outras. Já a action serve para fundir a arma a gema, sendo que há um hierarquia entre as gemas e armas. A hierarquia é assim:
     
    Há as gemas iniciais, que são pérolas, que podem refinar as armas escolhidas para o set1. Há as gemas secundárias e o gold nugget (item dado na fusão das perolas) que podem refinar armas de set2. Há as gemas terciárias e o small diamond (item dado na fusão dos diamantes) que refinam armas de set3. Há as gemas de nível 4, o life crystal e o crystal o Power, que refinam armas do set4. E por fim, há o gold ingot que refina armas do set5.
     
     

     
     
    Action:
     
    Armas a serem refinadas, facilmente editável.
     
    Quanto irá ser adicionado em cada arma, facilmente editável.
     
    Efeitos.
     
     
     
    Talkaction:
     
    Funcionamento.
     
    Efeitos.
     
    Id das gemas editável.
     
     
     
    Scripts:
     
    Action:
     

    function onUse(cid, item, fromPosition, itemEx, toPosition) local itens = { set1 = {2434, 7430, 2392, 7408, 2432}, set2 = {7437, 7755, 2451, 7380}, set3 = {7427, 7421, 7402, 2393, 2414, 7434}, set4 = {7429, 7414, 8930, 6528, 2454}, set5 = {2421, 8927, 2408, 2390, 2431, 2415} } local extra = getItemAttribute(item.uid, "extraattack") == nil and 0 or getItemAttribute(item.uid, "extraattack") local extrd = getItemAttribute(item.uid, "extradefense") == nil and 0 or getItemAttribute(item.uid, "extradefense") if isInArray({2143, 2144}, itemEx.itemid) and isInArray(itens.set1, item.itemid) then if math.random(1, 7) > extra/10 + 1 then doItemSetAttribute(item.uid, "extraattack", extra+10) doItemSetAttribute(item.uid, "extradefense", extrd+5) doSendMagicEffect(getPlayerPosition(cid), math.random(1, 32)) else doPlayerSendCancel(cid, "Falhou.") doSendMagicEffect(getPlayerPosition(cid), 2) end doRemoveItem(itemEx.uid, 1) end if isInArray({2157, 2149, 2146, 2147}, itemEx.itemid) and isInArray(itens.set2, item.itemid) then if math.random(1, 7) > extra/20 + 2 then doItemSetAttribute(item.uid, "extraattack", extra+20) doItemSetAttribute(item.uid, "extradefense", extrd+10) doSendMagicEffect(getPlayerPosition(cid), math.random(1, 32)) else doPlayerSendCancel(cid, "Falhou.") doSendMagicEffect(getPlayerPosition(cid), 2) end doRemoveItem(itemEx.uid, 1) end if isInArray({2145, 9941, 9942}, itemEx.itemid) and isInArray(itens.set3, item.itemid) then if math.random(1, 7) > extra/30 + 3 then doItemSetAttribute(item.uid, "extraattack", extra+30) doItemSetAttribute(item.uid, "extradefense", extrd+15) doSendMagicEffect(getPlayerPosition(cid), math.random(34, 55)) else doPlayerSendCancel(cid, "Falhou.") doSendMagicEffect(getPlayerPosition(cid), 2) end doRemoveItem(itemEx.uid, 1) end if isInArray({9980, 7315, 2158, 2153, 2154, 2155, 2156}, itemEx.itemid) and isInArray(itens.set4, item.itemid) then if math.random(1, 8) > extra/35 + 4 then doItemSetAttribute(item.uid, "extraattack", extra+35) doItemSetAttribute(item.uid, "extradefense", extrd+20) doSendMagicEffect(getPlayerPosition(cid), math.random(34, 55)) else doPlayerSendCancel(cid, "Falhou.") doSendMagicEffect(getPlayerPosition(cid), 2) end doRemoveItem(itemEx.uid, 1) end if itemEx.itemid == 9971 and isInArray(itens.set5, item.itemid) then if math.random(1, 9) > extra/50 + 5 then doItemSetAttribute(item.uid, "extraattack", extra+50) doItemSetAttribute(item.uid, "extradefense", extrd+30) doSendMagicEffect(getPlayerPosition(cid), 65) else doPlayerSendCancel(cid, "Falhou.") doSendMagicEffect(getPlayerPosition(cid), 2) end doRemoveItem(itemEx.uid, 1) end return TRUE end
     
    Tag:
     

    <action itemid="2434;7430;2392;7408;2432;7437;7755;2451;7380;7427;7421;7402;2393;2414;7434;7429;7414;8930;6528;2454;2421;8927;2408;2390;2431;2415" event="script" value="nomeDoArquivo.lua"/>
     
    Comentário:
     
    Se for editar as armas a serem refinadas, edite no script e na tag, pois os ids da tag são os das armas.
     
     
    Talkaction:
     

    function onSay(cid, words, param) local tab = {2149, 2146, 2147} local t = {2158, 2154, 2155, 2156} local t3 = {{item=7315, msg="Você ganhou um life crystal."}, {item=9980, msg="Você gnhou um crystal of power."}} local maths = math.random(1, 2) if param == '' then doPlayerSendCancel(cid, "Param required.") doSendMagicEffect(getCreaturePosition(cid), 2) end -- PEARL -- if param == 'pearl' then if getPlayerItemCount(cid, 2143) > 0 and getPlayerItemCount(cid, 2144) > 0 then doPlayerRemoveItem(cid, 2143, 1) doPlayerRemoveItem(cid, 2144, 1) doPlayerAddItem(cid, 2157, 1) doPlayerSendTextMessage(cid, 4, "Você fez um gold nugget.") doSendMagicEffect(getPlayerPosition(cid), math.random(1, 32)) else doPlayerSendCancel(cid, "Você não tem os itens necessários.") doSendMagicEffect(getCreaturePosition(cid), 2) end end -- DIAMOND -- if param == 'diamond' then pakaresult = "" for i, itens in ipairs(tab) do if getPlayerItemCount(cid, itens) > 0 then pakaresult = pakaresult ~= "" and pakaresult .. "/" .. itens or "/" .. itens end end local ite = string.explode(pakaresult, "/") if #ite > 2 then doPlayerRemoveItem(cid, ite[2], 1) doPlayerRemoveItem(cid, ite[3], 1) doPlayerAddItem(cid, 2145, 1) doPlayerSendTextMessage(cid, 4, "Você fez um small diamond.") doSendMagicEffect(getPlayerPosition(cid), math.random(34, 55)) else doPlayerSendCancel(cid, "Você não tem os itens necessários.") doSendMagicEffect(getCreaturePosition(cid), 2) end end -- CRYSTAL -- if param == 'crystal' then if getPlayerItemCount(cid, 9941) > 0 and getPlayerItemCount(cid, 9942) > 0 then doPlayerRemoveItem(cid, 9942, 1) doPlayerRemoveItem(cid, 9941, 1) doPlayerAddItem(cid,t3[maths].item, 1) doPlayerSendTextMessage(cid, 4, t3[maths].msg) doSendMagicEffect(getPlayerPosition(cid), math.random(34, 55)) else doPlayerSendCancel(cid, "Você não tem os itens necessários.") doSendMagicEffect(getCreaturePosition(cid), 2) end end -- GOLD -- if param == 'gold' then pakoresult = "" for n, iten in ipairs(t) do if getPlayerItemCount(cid, iten) > 0 then pakoresult = pakoresult ~= "" and pakoresult .. "/" .. iten or "/" .. iten end end local ite = string.explode(pakoresult, "/") if #ite > 2 then doPlayerRemoveItem(cid, ite[2], 1) doPlayerRemoveItem(cid, ite[3], 1) doPlayerAddItem(cid, 9971, 1) doPlayerSendTextMessage(cid, 4, "Você fez um gold ingot.") doSendMagicEffect(getPlayerPosition(cid), 65) else doPlayerSendCancel(cid, "Você não tem os itens necessários.") doSendMagicEffect(getCreaturePosition(cid), 2) end end return true end
     
    Tag:
     

    <talkaction words="Words" event="script" value="nomeDoArquivo.lua"/>
     
    Comentário:
     
    Talkaction funcionando perfeitamente, se desejar, edite o id das gemas.
     
     
     
    Então é isso galera, demorei 4 horas pra fazer, espero que gostem.
  5. Upvote
    victorpuntel reacted to Demonbholder in Funções E Position Recorder   
    Faaala galera! Esses dias um parceiro meu me deu uma idéia e pediu para que eu fizesse um script para ele, assim surgiu o script que irei postar agora.
     
    Eu coloquei o nome de Position Recorder porque o script faz jus ao nome; ele funciona da seguinte maneira: Você tem um item, no caso o 2359 e quando você clica nele, a sua posição é gravada e o item se transforma para o 2356. Ai você pode usar o 2356 que você será teleportado para a posição que você estava quando usou o primeiro item.
     
    Well, como dito no título, eu fiz duas funções para o script funcionar; claro que não era necessário, mas as funções são úteis para outras coisas também. Darei mais exemplos no final. Bom, vamos as funções:
     
    Vá em data/lib, abra o arquivo functions.lua, e cole no final dele estas duas funções:
     

    function doMarkPos(cid, posx, posy, posz) setPlayerStorageValue(cid, 19000, posx) setPlayerStorageValue(cid, 19001, posy) setPlayerStorageValue(cid, 19002, posz) end
     

    function getMarkPos(cid) return {x=getPlayerStorageValue(cid, 19000), y=getPlayerStorageValue(cid, 19001), z=getPlayerStorageValue(cid, 19002)} end
     
    Certo, agora vamos ao script do position recorder.
     
    Opção 1: Apenas vips usam, Kydrai System Vip.
     
     
     
     
    Opção 2: Apenas vips usam, Perfect Vip System.
     
     
     
     
    Opção 3: Qualquer um usa.
     
     
     
     
    Outras possibilidades para as funções adicionadas:
     
    ~Quest: Terminar a quest e ganhar acesso a um lugar especial.
     
     
     
     
    Lembrando que o lugar fica gravado no jogador, e não no item. Os itens usados foram 2356 e 2359, no caso; você pode troca-los se souber como. É isso, postem o que acharam, até mais.
  6. Upvote
    victorpuntel got a reaction from LaisDosOts in [Action] Pedra De Food   
    Esse é meu primeiro post, fiz um script bobinho mas seria de muito uso em alguns servers. Não sei se já tem, dei uma olhada e não achei, porem se tivesse, dei uma mudada, puis um math.random pra não vim sempre as mesmas foods.
     
    em data/actions/scripts crie um arquivo chamado foodstone.lua e adicione isto
     
     
    após, vá em actions.xml e adicione esta tag:
     
    Depois só ir no map editor e por uniqueID 9889 em algum objeto (no exemplo, uma pedra).
     
     
    cor Vermelha - o ID das foods que a pedra dará
    cor roxa - mensagem ao player, após clicar na pedra.
    Cor Amarela - Quantidade de food que o player recebe a cada 'use with'
    Cor azul - o uniqueid adicionado no item para dar a food
     
    Da para fazer varias coisas legais a partir deste script
  7. Upvote
    victorpuntel got a reaction from xafixav in [Action] Pedra De Food   
    Esse é meu primeiro post, fiz um script bobinho mas seria de muito uso em alguns servers. Não sei se já tem, dei uma olhada e não achei, porem se tivesse, dei uma mudada, puis um math.random pra não vim sempre as mesmas foods.
     
    em data/actions/scripts crie um arquivo chamado foodstone.lua e adicione isto
     
     
    após, vá em actions.xml e adicione esta tag:
     
    Depois só ir no map editor e por uniqueID 9889 em algum objeto (no exemplo, uma pedra).
     
     
    cor Vermelha - o ID das foods que a pedra dará
    cor roxa - mensagem ao player, após clicar na pedra.
    Cor Amarela - Quantidade de food que o player recebe a cada 'use with'
    Cor azul - o uniqueid adicionado no item para dar a food
     
    Da para fazer varias coisas legais a partir deste script
  8. Upvote
    victorpuntel reacted to Hudsin in [Talkaction] Dirigindo "carro"   
    Cara receio que seja a versão do server /=
  9. Upvote
    victorpuntel got a reaction from Hudsin in [Talkaction] Dirigindo "carro"   
    Quando a pessoa desloga, em cima do car... ele continua no mapa. Mas você pode por um decayTo no items.xml, para o carro sumir. tentei arrumar este bug porem nao consegui, mas com o decay ja ajuda =)
  10. Upvote
    victorpuntel got a reaction from Hudsin in [Talkaction] Dirigindo "carro"   
    Otimo script, sou novo por aqui mas estou adorando essa area
    Sou um scripter iniciante, porem eu sei resolver um dos bug ali.
    @b0mb3r, para resolver aquele bug de quando dar !car stop ele nao ficar parado, add essa linha

    doCreatureSetNoMove(cid, 0)
    Aqui ficou assim:

    elseif param == "stop" then if carMove(cid) then setCarStatus(cid,0) doCreatureSetNoMove(cid, 0)
    Espero ter ajudado
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...