• TibiaFace

    Tibiaface | Una comunidad Open Tibia donde encontras : mapas, scripts, Otserver, npc y amigos etc ...

    .
    demo menumenu

    Afiliados



    Votar:

    [Talkactions] pedido aura talkaction

    Compartir:

    Ir a la página : 1, 2  Siguiente

    Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje (Página 1 de 2.)

    1Resuelto [Talkactions] pedido aura talkaction Lun Mayo 22, 2017 3:24 am

    Miguel Albertto

    Miguel Albertto
    Miembro
    Miembro
    Lo que necesito es una talkaction que haga que rodee un aura aun player y que de skills, mana y vida si es posible por ejemplo.

    !aura electrica
    y que un vis rodee al player por cierto tiempo.

    Yo he visto esta talkation en un ot jaja y pregunto si es posible ?

    [Talkactions] pedido aura talkaction Aura10

    como ven ese rayo rodee al player en esas squares que estan en cuadro roja. asi es como ese rayo rodea al player.

    Solo con los effectos de target osea no los de area effect. son los de target.

    y solo es un efecto lo que lo rodea al player.

    digamos que es un efecto que le da vueltas como si el vis se estuviera moviendo alrededor de el. nose si me entienda.

    quisiera saber si alguien puede hacer eso ?

    porfavor jaja Smile

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    2Resuelto Re: [Talkactions] pedido aura talkaction Lun Mayo 22, 2017 1:52 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    Código:
    -- CONFIGURAÇÕES
       aurastr = 25950 -- storage da aura
       estr = 25951 -- storage para o exhaust
       porcentagem = 40 -- chance de curar em cada volta da aura, em porcentagem
       quantheal = 10 -- porcentagem do hp máximo que cada cura irá curar. (No caso, irá curar 10% do hp máximo cada cura)
       tempo = 1180 -- tempo para dar uma volta no player (este tempo foi o que achei mais agradável visualmente, é recomendável não mudar)
       tipoaura = 30 -- número do efeito da aura (efeito de distância, pode ser identificado com /x no jogo)
       efeitocura = 49 -- número do efeito quando a cura chega ao player (efeito de posição fixa, pode ser identificado com /z no jogo)

    -- Função que chama a aura
    function efeitosAura(i,tm,cid)
       if(isCreature(cid)) then
               local atual = getCreaturePosition(cid)
          local posaura = {
             {x=(atual.x)-1, y=(atual.y)-1, z=atual.z},
             {x=atual.x, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=atual.y, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)+1, z=atual.z},
             {x=atual.x, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=atual.y, z=atual.z},
          }
          local chances = math.random(100)
          if(chances<=porcentagem/8 and getCreatureHealth(cid)<getCreatureMaxHealth(cid)) then
             doCreatureAddHealth(cid, getCreatureMaxHealth(cid)/quantheal)
             if(i<=8 and i>1) then
                doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, atual, tipoaura)
             else
                doSendDistanceShoot({x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, atual, tipoaura)
             end
             doSendMagicEffect(atual, efeitocura)
          end
          if(i==8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, tipoaura)
          elseif(i<8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[i+1].x, y=posaura[i+1].y, z=posaura[i+1].z}, tipoaura)
          end
          if(i<=8 and getPlayerStorageValue(cid, aurastr)==2) then
             i = i+1
             tm = tempo/8
             return addEvent(efeitosAura,tm,i,tm,cid)
          elseif(i>8 and getPlayerStorageValue(cid, aurastr)==2) then
             return efeitosAura(1,0,cid)
          else
             return TRUE
          end
       else
          return TRUE
       end
    end

    -- Função principal
    function onSay(cid, words, param, channel)
       if(param=="on") then
          if getPlayerStorageValue(cid, estr) > os.time() then
             doPlayerSendCancel(cid, "Espere "..(getPlayerStorageValue(cid, estr) - os.time()).." segundos para poder habilitar aura novamente.")
          else
             if(getPlayerStorageValue(cid, aurastr)==2) then
                doPlayerSendCancel(cid,"Sua aura já está habilitada.")
             elseif(getPlayerStorageValue(cid, aurastr)==-1) then
                doPlayerSendCancel(cid,"Aura ligada!")
                setPlayerStorageValue(cid, aurastr, 2)
                efeitosAura(1,tempo/8,cid)
             end
          end
       elseif(param=="off") then
          if(getPlayerStorageValue(cid, aurastr)==2) then
             setPlayerStorageValue(cid, estr, os.time()+2)
             setPlayerStorageValue(cid, aurastr, -1)
             doPlayerSendCancel(cid,"Aura desligada!")
          end
       else   
          doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Digite '!aura on' para ligar sua aura, e '!aura off' para desligá-la.")
       end
       return TRUE
    end


    Código:
    <talkaction words="!aura" event="script" value="aura.lua"/>



    data\creaturescripts\scripts

    Código:
    function onLogin(cid)
       aurastr = 25950 -- storage da aura
       setPlayerStorageValue(cid, aurastr, -1)
       return TRUE
    end


    Código:
    <event type="login" name="AuraLogin" script="auralogin.lua"/>

    o si quieres que la venda un npc


    Código:
    <?xml version="1.0" encoding="UTF-8"?>
    <npc name="NOMEDOSEUNPC" script="data/npc/scripts/auranpc.lua" walkinterval="50000" floorchange="0">
    <health now="100" max="100"/>
    <look type="129" head="95" body="116" legs="121" feet="115" addons="3"/>
    <parameters>
    <parameter key="message_greet" value="Oi |PLAYERNAME|. Eu possuo a habilidade de ceder {aura}. O que deseja?"/>
    </parameters>
    </npc>


    Código:
    local keywordHandler = KeywordHandler:new()
    local npcHandler = NpcHandler:new(keywordHandler)
    NpcSystem.parseParameters(npcHandler)
    local talkState = {}
    function onCreatureAppear(cid)                   npcHandler:onCreatureAppear(cid)                end
    function onCreatureDisappear(cid)                npcHandler:onCreatureDisappear(cid)                end
    function onCreatureSay(cid, type, msg)             npcHandler:onCreatureSay(cid, type, msg)          end
    function onThink()                            npcHandler:onThink()                         end
    function creatureSayCallback(cid, type, msg)
        if(not npcHandler:isFocused(cid)) then
              return false
        end
        local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid

        if msgcontains(msg, 'aura') then
                    if getPlayerStorageValue(cid,20201) ~= 1 then
                    selfSay('Para adquirir aura é necessário 10000000 golds. Você deseja adquirí-la?', cid)
                    talkState[talkUser] = 1
                    else
                    selfSay('Você já possui aura.', cid)
                    end
        elseif talkState[talkUser] == 1 then
              if msgcontains(msg, 'yes') then
                          if doPlayerRemoveMoney(cid, 10000000) then
                                setPlayerStorageValue(cid,20201,1)
                                selfSay('Parabéns, agora você possui aura!', cid)
                                talkState[talkUser] = 0
                          else
                                selfSay('Você não possui o dinheiro necessário.', cid)
                          end
              else
                    selfSay('Então porque veio aqui?', cid)
              end
        end
        return true
    end
    npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
    npcHandler:addModule(FocusModule:new())


    y va a login y cambia

    Código:
    function onLogin(cid)
       if(getPlayerStorageValue(cid, 20201)==1) then
          return efeitosAura(1,tempo/8,cid)
       end
       return TRUE
    end




    [Talkactions] pedido aura talkaction YNU5B25
    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes
    http://www.tibiaface.com

    3Resuelto Re: [Talkactions] pedido aura talkaction Lun Mayo 22, 2017 3:05 pm

    Miguel Albertto

    Miguel Albertto
    Miembro
    Miembro
    Gracias maya . por cierto como puedo agregarle que la talkaction solo se puede usar el que tenga cierto storage . digamos que un cofre te da un storage y ya puedes utilizar la talkaction . mira tengo este script pero nose como agregarselos:
    ya tengo el chest que te de el storage. solo falta poner que la talkaction se necesite utilizar cierto storage:

    Código:
    if(getPlayerStorageValue(cid, 9876) > 0) then

    Código:
    doPlayerSendCancel(cid, 'You dont have this talkaction')
        end
        return true
    end

    y el de chest ya lo tengo pero lo pondre por si lo necesitan:

    Código:
    function onUse(cid, item, fromPosition, itemEx, toPosition)
    if getPlayerStorageValue(cid, 9876) < 1 then
      doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You won talkaction !berserk")
      setPlayerStorageValue(cid,9876,1)
    else
        doPlayerSendCancel(cid, "You have already done this quest")
    end
    return true
    end
    Smile

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    4Resuelto Re: [Talkactions] pedido aura talkaction Lun Mayo 22, 2017 3:49 pm

    carataki

    carataki
    Miembro
    Miembro
    Abre otro tema de pedido men, estas fueras de los parametros de las reglas de la comunidad.

    Sin más que decir, me retiro.

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    5Resuelto Re: [Talkactions] pedido aura talkaction Lun Mayo 22, 2017 9:03 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    Miguel Albertto escribió:Gracias maya . por cierto como puedo agregarle que la talkaction solo se puede usar el que tenga cierto storage . digamos que un cofre te da un storage y ya puedes utilizar la talkaction . mira tengo este script pero nose como agregarselos:
    ya tengo el chest que te de el storage. solo falta poner que la talkaction se necesite utilizar cierto storage:

    Código:
    if(getPlayerStorageValue(cid, 9876) > 0) then

    Código:
    doPlayerSendCancel(cid, 'You dont have this talkaction')
        end
        return true
    end

    y el de chest ya lo tengo pero lo pondre por si lo necesitan:

    Código:
    function onUse(cid, item, fromPosition, itemEx, toPosition)
    if getPlayerStorageValue(cid, 9876) < 1 then
      doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You won talkaction !berserk")
      setPlayerStorageValue(cid,9876,1)
    else
        doPlayerSendCancel(cid, "You have already done this quest")
    end
    return true
    end
    Smile

    este es el storange del aura aurastr = 25950 osea si pones un baul te tiene que dar ese storange



    [Talkactions] pedido aura talkaction YNU5B25
    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes
    http://www.tibiaface.com

    6Resuelto Re: [Talkactions] pedido aura talkaction Mar Mayo 23, 2017 2:46 am

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    edita tu talkactions esta linea por esta

    Código:
      if getPlayerStorageValue(cid, xxxx) == 1 then
      if(param=="on") then
          if getPlayerStorageValue(cid, estr) == -1 then
            doPlayerSendCancel(cid, "Espere "..(getPlayerStorageValue(cid, estr) - os.time()).." segundos para poder habilitar aura novamente.")
          else
            if(getPlayerStorageValue(cid, aurastr)==2) then
                doPlayerSendCancel(cid,"Sua aura já está habilitada.")
            elseif(getPlayerStorageValue(cid, aurastr)==-1) then
                doPlayerSendCancel(cid,"Aura ligada!")
                setPlayerStorageValue(cid, aurastr, 2)
                efeitosAura(1,tempo/8,cid)
            end
            else
            doPlayerSendCancel(cid,"usted necesita el key.")
          end
         
         
          end



    [Talkactions] pedido aura talkaction YNU5B25
    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes
    http://www.tibiaface.com

    7Resuelto Re: [Talkactions] pedido aura talkaction Mar Mayo 23, 2017 2:58 am

    Miguel Albertto

    Miguel Albertto
    Miembro
    Miembro
    admin god maya me sale este error:
    [Tienes que estar registrado y conectado para ver este vínculo]

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    8Resuelto resuelto Miér Mayo 24, 2017 11:21 pm

    Miguel Albertto

    Miguel Albertto
    Miembro
    Miembro
    tema resuelto

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    9Resuelto Re: [Talkactions] pedido aura talkaction Mar Ene 14, 2020 11:25 pm

    Hassiel

    Hassiel
    Miembro
    Miembro
    [Admin] God Maya escribió:
    Código:
    -- CONFIGURAÇÕES
       aurastr = 25950 -- storage da aura
       estr = 25951 -- storage para o exhaust
       porcentagem = 40 -- chance de curar em cada volta da aura, em porcentagem
       quantheal = 10 -- porcentagem do hp máximo que cada cura irá curar. (No caso, irá curar 10% do hp máximo cada cura)
       tempo = 1180 -- tempo para dar uma volta no player (este tempo foi o que achei mais agradável visualmente, é recomendável não mudar)
       tipoaura = 30 -- número do efeito da aura (efeito de distância, pode ser identificado com /x no jogo)
       efeitocura = 49 -- número do efeito quando a cura chega ao player (efeito de posição fixa, pode ser identificado com /z no jogo)

    -- Função que chama a aura
    function efeitosAura(i,tm,cid)
       if(isCreature(cid)) then
               local atual = getCreaturePosition(cid)
          local posaura = {
             {x=(atual.x)-1, y=(atual.y)-1, z=atual.z},
             {x=atual.x, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=atual.y, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)+1, z=atual.z},
             {x=atual.x, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=atual.y, z=atual.z},
          }
          local chances = math.random(100)
          if(chances<=porcentagem/8 and getCreatureHealth(cid)<getCreatureMaxHealth(cid)) then
             doCreatureAddHealth(cid, getCreatureMaxHealth(cid)/quantheal)
             if(i<=8 and i>1) then
                doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, atual, tipoaura)
             else
                doSendDistanceShoot({x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, atual, tipoaura)
             end
             doSendMagicEffect(atual, efeitocura)
          end
          if(i==8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, tipoaura)
          elseif(i<8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[i+1].x, y=posaura[i+1].y, z=posaura[i+1].z}, tipoaura)
          end
          if(i<=8 and getPlayerStorageValue(cid, aurastr)==2) then
             i = i+1
             tm = tempo/8
             return addEvent(efeitosAura,tm,i,tm,cid)
          elseif(i>8 and getPlayerStorageValue(cid, aurastr)==2) then
             return efeitosAura(1,0,cid)
          else
             return TRUE
          end
       else
          return TRUE
       end
    end

    -- Função principal
    function onSay(cid, words, param, channel)
       if(param=="on") then
          if getPlayerStorageValue(cid, estr) > os.time() then
             doPlayerSendCancel(cid, "Espere "..(getPlayerStorageValue(cid, estr) - os.time()).." segundos para poder habilitar aura novamente.")
          else
             if(getPlayerStorageValue(cid, aurastr)==2) then
                doPlayerSendCancel(cid,"Sua aura já está habilitada.")
             elseif(getPlayerStorageValue(cid, aurastr)==-1) then
                doPlayerSendCancel(cid,"Aura ligada!")
                setPlayerStorageValue(cid, aurastr, 2)
                efeitosAura(1,tempo/8,cid)
             end
          end
       elseif(param=="off") then
          if(getPlayerStorageValue(cid, aurastr)==2) then
             setPlayerStorageValue(cid, estr, os.time()+2)
             setPlayerStorageValue(cid, aurastr, -1)
             doPlayerSendCancel(cid,"Aura desligada!")
          end
       else   
          doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Digite '!aura on' para ligar sua aura, e '!aura off' para desligá-la.")
       end
       return TRUE
    end


    Código:
    <talkaction words="!aura" event="script" value="aura.lua"/>



    data\creaturescripts\scripts

    Código:
    function onLogin(cid)
       aurastr = 25950 -- storage da aura
       setPlayerStorageValue(cid, aurastr, -1)
       return TRUE
    end


    Código:
    <event type="login" name="AuraLogin" script="auralogin.lua"/>

    o si quieres que la venda un npc


    Código:
    <?xml version="1.0" encoding="UTF-8"?>
    <npc name="NOMEDOSEUNPC" script="data/npc/scripts/auranpc.lua" walkinterval="50000" floorchange="0">
    <health now="100" max="100"/>
    <look type="129" head="95" body="116" legs="121" feet="115" addons="3"/>
    <parameters>
    <parameter key="message_greet" value="Oi |PLAYERNAME|. Eu possuo a habilidade de ceder {aura}. O que deseja?"/>
    </parameters>
    </npc>


    Código:
    local keywordHandler = KeywordHandler:new()
    local npcHandler = NpcHandler:new(keywordHandler)
    NpcSystem.parseParameters(npcHandler)
    local talkState = {}
    function onCreatureAppear(cid)                   npcHandler:onCreatureAppear(cid)                end
    function onCreatureDisappear(cid)                npcHandler:onCreatureDisappear(cid)                end
    function onCreatureSay(cid, type, msg)             npcHandler:onCreatureSay(cid, type, msg)          end
    function onThink()                            npcHandler:onThink()                         end
    function creatureSayCallback(cid, type, msg)
        if(not npcHandler:isFocused(cid)) then
              return false
        end
        local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid

        if msgcontains(msg, 'aura') then
                    if getPlayerStorageValue(cid,20201) ~= 1 then
                    selfSay('Para adquirir aura é necessário 10000000 golds. Você deseja adquirí-la?', cid)
                    talkState[talkUser] = 1
                    else
                    selfSay('Você já possui aura.', cid)
                    end
        elseif talkState[talkUser] == 1 then
              if msgcontains(msg, 'yes') then
                          if doPlayerRemoveMoney(cid, 10000000) then
                                setPlayerStorageValue(cid,20201,1)
                                selfSay('Parabéns, agora você possui aura!', cid)
                                talkState[talkUser] = 0
                          else
                                selfSay('Você não possui o dinheiro necessário.', cid)
                          end
              else
                    selfSay('Então porque veio aqui?', cid)
              end
        end
        return true
    end
    npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
    npcHandler:addModule(FocusModule:new())


    y va a login y cambia

    Código:
    function onLogin(cid)
       if(getPlayerStorageValue(cid, 20201)==1) then
          return efeitosAura(1,tempo/8,cid)
       end
       return TRUE
    end




    MAYA COMO HAGO PARA QUE SE CONSIGA MEDIANTE UN ITEM EL AURA Y NO MEDIANTE NPC NI TALKACTION OSEA QUE TE PIDA STORAGE PARA PODER DECIR EL TALKACTION Y ESE ITEM TE DE ESE STORAGE

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    10Resuelto Re: [Talkactions] pedido aura talkaction Miér Ene 15, 2020 11:09 am

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    [quote="Hassiel"]
    [Admin] God Maya escribió:

    MAYA COMO HAGO PARA QUE SE CONSIGA MEDIANTE UN ITEM EL AURA Y NO MEDIANTE NPC NI TALKACTION OSEA QUE TE PIDA STORAGE PARA PODER DECIR EL TALKACTION Y ESE ITEM TE DE ESE STORAGE

    Código:

    -- CONFIGURAÇÕES
     aurastr = 25950 -- storage da aura
     estr = 25951 -- storage para o exhaust
     porcentagem = 20 -- chance de curar em cada volta da aura, em porcentagem
     quantheal = 40 -- porcentagem do hp máximo que cada cura irá curar. (No caso, irá curar 10% do hp máximo cada cura)
     tempo = 1180 -- tempo para dar uma volta no player (este tempo foi o que achei mais agradável visualmente, é recomendável não mudar)
     tipoaura = 4 -- número do efeito da aura (efeito de distância, pode ser identificado com /x no jogo)
     efeitocura = 11 -- número do efeito quando a cura chega ao player (efeito de posição fixa, pode ser identificado com /z no jogo)

    -- Função que chama a aura
    function efeitosAura(i,tm,cid)
     if(isCreature(cid)) then
            local atual = getCreaturePosition(cid)
     local posaura = {
     {x=(atual.x)-1, y=(atual.y)-1, z=atual.z},
     {x=atual.x, y=(atual.y)-1, z=atual.z},
     {x=(atual.x)+1, y=(atual.y)-1, z=atual.z},
     {x=(atual.x)+1, y=atual.y, z=atual.z},
     {x=(atual.x)+1, y=(atual.y)+1, z=atual.z},
     {x=atual.x, y=(atual.y)+1, z=atual.z},
     {x=(atual.x)-1, y=(atual.y)+1, z=atual.z},
     {x=(atual.x)-1, y=atual.y, z=atual.z},
     }
     local chances = math.random(100)
     if(chances<=porcentagem/8 and getCreatureHealth(cid)<getCreatureMaxHealth(cid)) then
     doCreatureAddHealth(cid, getCreatureMaxHealth(cid)/quantheal)
     if(i<=8 and i>1) then
     doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, atual, tipoaura)
     else
     doSendDistanceShoot({x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, atual, tipoaura)
     end
     doSendMagicEffect(atual, efeitocura)
     end
     if(i==8) then
     doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, tipoaura)
     elseif(i<8) then
     doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[i+1].x, y=posaura[i+1].y, z=posaura[i+1].z}, tipoaura)
     end
     if(i<=8 and getPlayerStorageValue(cid, aurastr)==2) then
     i = i+1
     tm = tempo/8
     return addEvent(efeitosAura,tm,i,tm,cid)
     elseif(i>8 and getPlayerStorageValue(cid, aurastr)==2) then
     return efeitosAura(1,0,cid)
     else
     return TRUE
     end
     else
     return TRUE
     end
    end

    -- Função principal
    function onSay(cid, words, param, channel)
      if(getPlayerStorageValue(cid, 44782) > 0) then
     if(param=="on") then
     if getPlayerStorageValue(cid, estr) > os.time() then
     doPlayerSendCancel(cid, "Espere "..(getPlayerStorageValue(cid, estr) - os.time()).." segundos para poder utilizar tu aura nuevamente.")
     else
     if(getPlayerStorageValue(cid, aurastr)==2) then
     doPlayerSendCancel(cid,"Tu aura esta activada.")
     elseif(getPlayerStorageValue(cid, aurastr)==-1) then
     doPlayerSendCancel(cid,"Aura Activada!")
     setPlayerStorageValue(cid, aurastr, 2)
     efeitosAura(1,tempo/8,cid)
     end
     end
     elseif(param=="off") then
     if(getPlayerStorageValue(cid, aurastr)==2) then
     setPlayerStorageValue(cid, estr, os.time()+2)
     setPlayerStorageValue(cid, aurastr, -1)
     doPlayerSendCancel(cid,"Aura Retirada!")
     end
     else
     doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Di '!aura1 on' para activar su aura, y '!aura1 off' para retirarla.")
        end
      doPlayerSendCancel(cid, 'You dont have this talkaction')
        end
        return true
    end

    el actions

    Código:

    local storage = 44782
    function onUse(cid, item, fromPosition, itemEx, toPosition)
        if getPlayerStorageValue(cid, storage) == -1 then
            doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "su aura esta habilitada.")
            setPlayerStorageValue(cid, storage, 1)
            doRemoveItem(item.uid, 1)
        else
            doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You already clicked on this.")
        end
        return true
    end





    [Talkactions] pedido aura talkaction YNU5B25
    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes
    http://www.tibiaface.com

    11Resuelto Re: [Talkactions] pedido aura talkaction Jue Mayo 28, 2020 6:39 pm

    Mcpollito

    Mcpollito
    Miembro
    Miembro
    yo tengo una duda como se podra hacer lo tengas en un item y a usarlo lo tengas siempre activado ?
    y no mediante un talkaction ?

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    12Resuelto Re: [Talkactions] pedido aura talkaction Jue Mayo 28, 2020 6:42 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    Mcpollito escribió:yo tengo una duda como se podra hacer lo tengas en un item y a usarlo lo tengas siempre activado ?
    y no mediante un talkaction ?

    muldar el talkactions a un moveEvents



    [Talkactions] pedido aura talkaction YNU5B25
    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes
    http://www.tibiaface.com

    13Resuelto Re: [Talkactions] pedido aura talkaction Jue Mayo 28, 2020 6:44 pm

    Mcpollito

    Mcpollito
    Miembro
    Miembro
    todo el script tal cual como esta ?

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    14Resuelto Re: [Talkactions] pedido aura talkaction Jue Mayo 28, 2020 6:47 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    Mcpollito escribió:todo el script tal cual como esta ?

    tal como esta pero claro que vas a quitar la condiciones off y on porque si no tendras problema



    [Talkactions] pedido aura talkaction YNU5B25
    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes
    http://www.tibiaface.com

    15Resuelto Re: [Talkactions] pedido aura talkaction Jue Mayo 28, 2020 7:06 pm

    Mcpollito

    Mcpollito
    Miembro
    Miembro
    me salio eso que podra ser ?
    Código:
    28/5/2020 17:5:38] [Error - Event::checkScript] Event onDeEquip not found (data/movements/scripts/aura.lua)

    mira tengo el script asi xd
    Código:
    -- CONFIGURAÇÕES
       aurastr = 25950 -- storage da aura
       estr = 25951 -- storage para o exhaust
       porcentagem = 40 -- chance de curar em cada volta da aura, em porcentagem
       quantheal = 10 -- porcentagem do hp máximo que cada cura irá curar. (No caso, irá curar 10% do hp máximo cada cura)
       tempo = 1180 -- tempo para dar uma volta no player (este tempo foi o que achei mais agradável visualmente, é recomendável não mudar)
       tipoaura = 30 -- número do efeito da aura (efeito de distância, pode ser identificado com /x no jogo)
       efeitocura = 49 -- número do efeito quando a cura chega ao player (efeito de posição fixa, pode ser identificado com /z no jogo)

    -- Função que chama a aura
    function efeitosAura(i,tm,cid)
       if(isCreature(cid)) then
               local atual = getCreaturePosition(cid)
          local posaura = {
             {x=(atual.x)-1, y=(atual.y)-1, z=atual.z},
             {x=atual.x, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=atual.y, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)+1, z=atual.z},
             {x=atual.x, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=atual.y, z=atual.z},
          }
          local chances = math.random(100)
          if(chances<=porcentagem/8 and getCreatureHealth(cid)<getCreatureMaxHealth(cid)) then
             doCreatureAddHealth(cid, getCreatureMaxHealth(cid)/quantheal)
             if(i<=8 and i>1) then
                doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, atual, tipoaura)
             else
                doSendDistanceShoot({x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, atual, tipoaura)
             end
             doSendMagicEffect(atual, efeitocura)
          end
          if(i==8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, tipoaura)
          elseif(i<8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[i+1].x, y=posaura[i+1].y, z=posaura[i+1].z}, tipoaura)
          end
          if(i<=8 and getPlayerStorageValue(cid, aurastr)==2) then
             i = i+1
             tm = tempo/8
             return addEvent(efeitosAura,tm,i,tm,cid)
          elseif(i>8 and getPlayerStorageValue(cid, aurastr)==2) then
             return efeitosAura(1,0,cid)
          else
             return TRUE
          end
       else
          return TRUE
       end
    end
    function onEquip(cid, item, slot)
    if (getPlayerStorageValue(cid, storage) ~= 1) then

    elseif (getPlayerStorageValue(cid, storage) == 1) then
    doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Usted es una bestia ahora!")
    else
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "ESTOS ANILLOS SOLO FUNSIONAN CON (gold nugget) POR FAVOR DEJA UN gold nugget EN TU BACKPACK!")
    end
    return TRUE
    end


    jajaja omite lo de usted es una bestia ahora xd

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    16Resuelto Re: [Talkactions] pedido aura talkaction Jue Mayo 28, 2020 7:34 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    Mcpollito escribió:me salio eso que podra ser ?
    Código:
    28/5/2020 17:5:38] [Error - Event::checkScript] Event onDeEquip not found (data/movements/scripts/aura.lua)

    mira tengo el script asi xd
    Código:
    -- CONFIGURAÇÕES
       aurastr = 25950 -- storage da aura
       estr = 25951 -- storage para o exhaust
       porcentagem = 40 -- chance de curar em cada volta da aura, em porcentagem
       quantheal = 10 -- porcentagem do hp máximo que cada cura irá curar. (No caso, irá curar 10% do hp máximo cada cura)
       tempo = 1180 -- tempo para dar uma volta no player (este tempo foi o que achei mais agradável visualmente, é recomendável não mudar)
       tipoaura = 30 -- número do efeito da aura (efeito de distância, pode ser identificado com /x no jogo)
       efeitocura = 49 -- número do efeito quando a cura chega ao player (efeito de posição fixa, pode ser identificado com /z no jogo)

    -- Função que chama a aura
    function efeitosAura(i,tm,cid)
       if(isCreature(cid)) then
               local atual = getCreaturePosition(cid)
          local posaura = {
             {x=(atual.x)-1, y=(atual.y)-1, z=atual.z},
             {x=atual.x, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=atual.y, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)+1, z=atual.z},
             {x=atual.x, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=atual.y, z=atual.z},
          }
          local chances = math.random(100)
          if(chances<=porcentagem/8 and getCreatureHealth(cid)<getCreatureMaxHealth(cid)) then
             doCreatureAddHealth(cid, getCreatureMaxHealth(cid)/quantheal)
             if(i<=8 and i>1) then
                doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, atual, tipoaura)
             else
                doSendDistanceShoot({x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, atual, tipoaura)
             end
             doSendMagicEffect(atual, efeitocura)
          end
          if(i==8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, tipoaura)
          elseif(i<8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[i+1].x, y=posaura[i+1].y, z=posaura[i+1].z}, tipoaura)
          end
          if(i<=8 and getPlayerStorageValue(cid, aurastr)==2) then
             i = i+1
             tm = tempo/8
             return addEvent(efeitosAura,tm,i,tm,cid)
          elseif(i>8 and getPlayerStorageValue(cid, aurastr)==2) then
             return efeitosAura(1,0,cid)
          else
             return TRUE
          end
       else
          return TRUE
       end
    end
    function onEquip(cid, item, slot)
    if (getPlayerStorageValue(cid, storage) ~= 1) then

    elseif (getPlayerStorageValue(cid, storage) == 1) then
    doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Usted es una bestia ahora!")
    else
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "ESTOS ANILLOS SOLO FUNSIONAN CON (gold nugget) POR FAVOR DEJA UN gold nugget EN TU BACKPACK!")
    end
    return TRUE
    end


    jajaja omite lo de usted es una bestia ahora xd

    esto es para para activar el aura

    Código:


     if(getPlayerStorageValue(cid, aurastr)==2) then
     doPlayerSendCancel(cid,"Tu aura esta activada.")
     elseif(getPlayerStorageValue(cid, aurastr)==-1) then
     doPlayerSendCancel(cid,"Aura Activada!")
     setPlayerStorageValue(cid, aurastr, 2)
     efeitosAura(1,tempo/8,cid)
     end



    [Talkactions] pedido aura talkaction YNU5B25
    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes
    http://www.tibiaface.com

    17Resuelto Re: [Talkactions] pedido aura talkaction Jue Mayo 28, 2020 8:25 pm

    Mcpollito

    Mcpollito
    Miembro
    Miembro
    [Admin] God Maya escribió:
    Mcpollito escribió:me salio eso que podra ser ?
    Código:
    28/5/2020 17:5:38] [Error - Event::checkScript] Event onDeEquip not found (data/movements/scripts/aura.lua)

    mira tengo el script asi xd
    Código:
    -- CONFIGURAÇÕES
       aurastr = 25950 -- storage da aura
       estr = 25951 -- storage para o exhaust
       porcentagem = 40 -- chance de curar em cada volta da aura, em porcentagem
       quantheal = 10 -- porcentagem do hp máximo que cada cura irá curar. (No caso, irá curar 10% do hp máximo cada cura)
       tempo = 1180 -- tempo para dar uma volta no player (este tempo foi o que achei mais agradável visualmente, é recomendável não mudar)
       tipoaura = 30 -- número do efeito da aura (efeito de distância, pode ser identificado com /x no jogo)
       efeitocura = 49 -- número do efeito quando a cura chega ao player (efeito de posição fixa, pode ser identificado com /z no jogo)

    -- Função que chama a aura
    function efeitosAura(i,tm,cid)
       if(isCreature(cid)) then
               local atual = getCreaturePosition(cid)
          local posaura = {
             {x=(atual.x)-1, y=(atual.y)-1, z=atual.z},
             {x=atual.x, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=atual.y, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)+1, z=atual.z},
             {x=atual.x, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=atual.y, z=atual.z},
          }
          local chances = math.random(100)
          if(chances<=porcentagem/8 and getCreatureHealth(cid)<getCreatureMaxHealth(cid)) then
             doCreatureAddHealth(cid, getCreatureMaxHealth(cid)/quantheal)
             if(i<=8 and i>1) then
                doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, atual, tipoaura)
             else
                doSendDistanceShoot({x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, atual, tipoaura)
             end
             doSendMagicEffect(atual, efeitocura)
          end
          if(i==8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, tipoaura)
          elseif(i<8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[i+1].x, y=posaura[i+1].y, z=posaura[i+1].z}, tipoaura)
          end
          if(i<=8 and getPlayerStorageValue(cid, aurastr)==2) then
             i = i+1
             tm = tempo/8
             return addEvent(efeitosAura,tm,i,tm,cid)
          elseif(i>8 and getPlayerStorageValue(cid, aurastr)==2) then
             return efeitosAura(1,0,cid)
          else
             return TRUE
          end
       else
          return TRUE
       end
    end
    function onEquip(cid, item, slot)
    if (getPlayerStorageValue(cid, storage) ~= 1) then

    elseif (getPlayerStorageValue(cid, storage) == 1) then
    doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Usted es una bestia ahora!")
    else
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "ESTOS ANILLOS SOLO FUNSIONAN CON (gold nugget) POR FAVOR DEJA UN gold nugget EN TU BACKPACK!")
    end
    return TRUE
    end


    jajaja omite lo de usted es una bestia ahora xd

    esto es para para activar el aura

    Código:


     if(getPlayerStorageValue(cid, aurastr)==2) then
     doPlayerSendCancel(cid,"Tu aura esta activada.")
     elseif(getPlayerStorageValue(cid, aurastr)==-1) then
     doPlayerSendCancel(cid,"Aura Activada!")
     setPlayerStorageValue(cid, aurastr, 2)
     efeitosAura(1,tempo/8,cid)
     end

    diras que soy muy tonto pero jajaja como quedaria completamente el script xd es que me da error

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    18Resuelto Re: [Talkactions] pedido aura talkaction Jue Mayo 28, 2020 8:38 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    Mcpollito escribió:
    [Admin] God Maya escribió:
    Mcpollito escribió:me salio eso que podra ser ?
    Código:
    28/5/2020 17:5:38] [Error - Event::checkScript] Event onDeEquip not found (data/movements/scripts/aura.lua)

    mira tengo el script asi xd
    Código:
    -- CONFIGURAÇÕES
       aurastr = 25950 -- storage da aura
       estr = 25951 -- storage para o exhaust
       porcentagem = 40 -- chance de curar em cada volta da aura, em porcentagem
       quantheal = 10 -- porcentagem do hp máximo que cada cura irá curar. (No caso, irá curar 10% do hp máximo cada cura)
       tempo = 1180 -- tempo para dar uma volta no player (este tempo foi o que achei mais agradável visualmente, é recomendável não mudar)
       tipoaura = 30 -- número do efeito da aura (efeito de distância, pode ser identificado com /x no jogo)
       efeitocura = 49 -- número do efeito quando a cura chega ao player (efeito de posição fixa, pode ser identificado com /z no jogo)

    -- Função que chama a aura
    function efeitosAura(i,tm,cid)
       if(isCreature(cid)) then
               local atual = getCreaturePosition(cid)
          local posaura = {
             {x=(atual.x)-1, y=(atual.y)-1, z=atual.z},
             {x=atual.x, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=atual.y, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)+1, z=atual.z},
             {x=atual.x, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=atual.y, z=atual.z},
          }
          local chances = math.random(100)
          if(chances<=porcentagem/8 and getCreatureHealth(cid)<getCreatureMaxHealth(cid)) then
             doCreatureAddHealth(cid, getCreatureMaxHealth(cid)/quantheal)
             if(i<=8 and i>1) then
                doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, atual, tipoaura)
             else
                doSendDistanceShoot({x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, atual, tipoaura)
             end
             doSendMagicEffect(atual, efeitocura)
          end
          if(i==8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, tipoaura)
          elseif(i<8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[i+1].x, y=posaura[i+1].y, z=posaura[i+1].z}, tipoaura)
          end
          if(i<=8 and getPlayerStorageValue(cid, aurastr)==2) then
             i = i+1
             tm = tempo/8
             return addEvent(efeitosAura,tm,i,tm,cid)
          elseif(i>8 and getPlayerStorageValue(cid, aurastr)==2) then
             return efeitosAura(1,0,cid)
          else
             return TRUE
          end
       else
          return TRUE
       end
    end
    function onEquip(cid, item, slot)
    if (getPlayerStorageValue(cid, storage) ~= 1) then

    elseif (getPlayerStorageValue(cid, storage) == 1) then
    doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Usted es una bestia ahora!")
    else
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "ESTOS ANILLOS SOLO FUNSIONAN CON (gold nugget) POR FAVOR DEJA UN gold nugget EN TU BACKPACK!")
    end
    return TRUE
    end


    jajaja omite lo de usted es una bestia ahora xd

    esto es para para activar el aura

    Código:


     if(getPlayerStorageValue(cid, aurastr)==2) then
     doPlayerSendCancel(cid,"Tu aura esta activada.")
     elseif(getPlayerStorageValue(cid, aurastr)==-1) then
     doPlayerSendCancel(cid,"Aura Activada!")
     setPlayerStorageValue(cid, aurastr, 2)
     efeitosAura(1,tempo/8,cid)
     end

    diras que soy muy tonto pero jajaja como quedaria completamente el script xd es que me da error


    aqui tienes

    Código:


    function onStepIn(cid, item, pos)


     if(getPlayerStorageValue(cid, aurastr)==2) then
     doPlayerSendCancel(cid,"Tu aura esta activada.")
     elseif(getPlayerStorageValue(cid, aurastr)==-1) then
     doPlayerSendCancel(cid,"Aura Activada!")
     setPlayerStorageValue(cid, aurastr, 2)
     efeitosAura(1,tempo/8,cid)
     end


       return true
    end

    function onStepOut(cid, item, pos)
       
       
       if(getPlayerStorageValue(cid, aurastr)==2) then
     setPlayerStorageValue(cid, estr, os.time()+2)
     setPlayerStorageValue(cid, aurastr, -1)
     doPlayerSendCancel(cid,"Aura Retirada!")
     end
       
       
       return true
    end



    [Talkactions] pedido aura talkaction YNU5B25
    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes
    http://www.tibiaface.com

    19Resuelto Re: [Talkactions] pedido aura talkaction Jue Mayo 28, 2020 10:01 pm

    Mcpollito

    Mcpollito
    Miembro
    Miembro
    [Admin] God Maya escribió:
    Mcpollito escribió:
    [Admin] God Maya escribió:
    Mcpollito escribió:me salio eso que podra ser ?
    Código:
    28/5/2020 17:5:38] [Error - Event::checkScript] Event onDeEquip not found (data/movements/scripts/aura.lua)

    mira tengo el script asi xd
    Código:
    -- CONFIGURAÇÕES
       aurastr = 25950 -- storage da aura
       estr = 25951 -- storage para o exhaust
       porcentagem = 40 -- chance de curar em cada volta da aura, em porcentagem
       quantheal = 10 -- porcentagem do hp máximo que cada cura irá curar. (No caso, irá curar 10% do hp máximo cada cura)
       tempo = 1180 -- tempo para dar uma volta no player (este tempo foi o que achei mais agradável visualmente, é recomendável não mudar)
       tipoaura = 30 -- número do efeito da aura (efeito de distância, pode ser identificado com /x no jogo)
       efeitocura = 49 -- número do efeito quando a cura chega ao player (efeito de posição fixa, pode ser identificado com /z no jogo)

    -- Função que chama a aura
    function efeitosAura(i,tm,cid)
       if(isCreature(cid)) then
               local atual = getCreaturePosition(cid)
          local posaura = {
             {x=(atual.x)-1, y=(atual.y)-1, z=atual.z},
             {x=atual.x, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)-1, z=atual.z},
             {x=(atual.x)+1, y=atual.y, z=atual.z},
             {x=(atual.x)+1, y=(atual.y)+1, z=atual.z},
             {x=atual.x, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=(atual.y)+1, z=atual.z},
             {x=(atual.x)-1, y=atual.y, z=atual.z},
          }
          local chances = math.random(100)
          if(chances<=porcentagem/8 and getCreatureHealth(cid)<getCreatureMaxHealth(cid)) then
             doCreatureAddHealth(cid, getCreatureMaxHealth(cid)/quantheal)
             if(i<=8 and i>1) then
                doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, atual, tipoaura)
             else
                doSendDistanceShoot({x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, atual, tipoaura)
             end
             doSendMagicEffect(atual, efeitocura)
          end
          if(i==8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, tipoaura)
          elseif(i<8) then
             doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[i+1].x, y=posaura[i+1].y, z=posaura[i+1].z}, tipoaura)
          end
          if(i<=8 and getPlayerStorageValue(cid, aurastr)==2) then
             i = i+1
             tm = tempo/8
             return addEvent(efeitosAura,tm,i,tm,cid)
          elseif(i>8 and getPlayerStorageValue(cid, aurastr)==2) then
             return efeitosAura(1,0,cid)
          else
             return TRUE
          end
       else
          return TRUE
       end
    end
    function onEquip(cid, item, slot)
    if (getPlayerStorageValue(cid, storage) ~= 1) then

    elseif (getPlayerStorageValue(cid, storage) == 1) then
    doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Usted es una bestia ahora!")
    else
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "ESTOS ANILLOS SOLO FUNSIONAN CON (gold nugget) POR FAVOR DEJA UN gold nugget EN TU BACKPACK!")
    end
    return TRUE
    end


    jajaja omite lo de usted es una bestia ahora xd

    esto es para para activar el aura

    Código:


     if(getPlayerStorageValue(cid, aurastr)==2) then
     doPlayerSendCancel(cid,"Tu aura esta activada.")
     elseif(getPlayerStorageValue(cid, aurastr)==-1) then
     doPlayerSendCancel(cid,"Aura Activada!")
     setPlayerStorageValue(cid, aurastr, 2)
     efeitosAura(1,tempo/8,cid)
     end

    diras que soy muy tonto pero jajaja como quedaria completamente el script xd es que me da error


    aqui tienes

    Código:


    function onStepIn(cid, item, pos)


     if(getPlayerStorageValue(cid, aurastr)==2) then
     doPlayerSendCancel(cid,"Tu aura esta activada.")
     elseif(getPlayerStorageValue(cid, aurastr)==-1) then
     doPlayerSendCancel(cid,"Aura Activada!")
     setPlayerStorageValue(cid, aurastr, 2)
     efeitosAura(1,tempo/8,cid)
     end


       return true
    end

    function onStepOut(cid, item, pos)
       
       
       if(getPlayerStorageValue(cid, aurastr)==2) then
     setPlayerStorageValue(cid, estr, os.time()+2)
     setPlayerStorageValue(cid, aurastr, -1)
     doPlayerSendCancel(cid,"Aura Retirada!")
     end
       
       
       return true
    end

    perdon por molestar tanto pero mira me sale este error en la consola
    Código:
    /5/2020 19:26:13] >>> Loading movements... [Error - Event::checkScript] Event onEquip not found (data/movements/scripts/aura.lua)
    [28/5/2020 19:26:14] [Error - Event::checkScript] Event onDeEquip not found (data/movements/scripts/aura.lua)

    tengo lo siguiente
    data/movements/script/aura.lua
    Código:

    -- CONFIGURAÇÕES
     aurastr = 25950 -- storage da aura
     estr = 25951 -- storage para o exhaust
     porcentagem = 20 -- chance de curar em cada volta da aura, em porcentagem
     quantheal = 40 -- porcentagem do hp máximo que cada cura irá curar. (No caso, irá curar 10% do hp máximo cada cura)
     tempo = 1180 -- tempo para dar uma volta no player (este tempo foi o que achei mais agradável visualmente, é recomendável não mudar)
     tipoaura = 4 -- número do efeito da aura (efeito de distância, pode ser identificado com /x no jogo)
     efeitocura = 11 -- número do efeito quando a cura chega ao player (efeito de posição fixa, pode ser identificado com /z no jogo)

    -- Função que chama a aura
    function efeitosAura(i,tm,cid)
     if(isCreature(cid)) then
             local atual = getCreaturePosition(cid)
     local posaura = {
     {x=(atual.x)-1, y=(atual.y)-1, z=atual.z},
     {x=atual.x, y=(atual.y)-1, z=atual.z},
     {x=(atual.x)+1, y=(atual.y)-1, z=atual.z},
     {x=(atual.x)+1, y=atual.y, z=atual.z},
     {x=(atual.x)+1, y=(atual.y)+1, z=atual.z},
     {x=atual.x, y=(atual.y)+1, z=atual.z},
     {x=(atual.x)-1, y=(atual.y)+1, z=atual.z},
     {x=(atual.x)-1, y=atual.y, z=atual.z},
     }
     local chances = math.random(100)
     if(chances<=porcentagem/8 and getCreatureHealth(cid)<getCreatureMaxHealth(cid)) then
     doCreatureAddHealth(cid, getCreatureMaxHealth(cid)/quantheal)
     if(i<=8 and i>1) then
     doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, atual, tipoaura)
     else
     doSendDistanceShoot({x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, atual, tipoaura)
     end
     doSendMagicEffect(atual, efeitocura)
     end
     if(i==8) then
     doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, tipoaura)
     elseif(i<8) then
     doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[i+1].x, y=posaura[i+1].y, z=posaura[i+1].z}, tipoaura)
     end
     if(i<=8 and getPlayerStorageValue(cid, aurastr)==2) then
     i = i+1
     tm = tempo/8
     return addEvent(efeitosAura,tm,i,tm,cid)
     elseif(i>8 and getPlayerStorageValue(cid, aurastr)==2) then
     return efeitosAura(1,0,cid)
     else
     return TRUE
     end
     else
     return TRUE
     end
    end



    function onStepIn(cid, item, pos)


     if(getPlayerStorageValue(cid, aurastr)==2) then
     doPlayerSendCancel(cid,"Tu aura esta activada.")
     elseif(getPlayerStorageValue(cid, aurastr)==-1) then
     doPlayerSendCancel(cid,"Aura Activada!")
     setPlayerStorageValue(cid, aurastr, 2)
     efeitosAura(1,tempo/8,cid)
     end


       return true
    end

    function onStepOut(cid, item, pos)
      
      
       if(getPlayerStorageValue(cid, aurastr)==2) then
     setPlayerStorageValue(cid, estr, os.time()+2)
     setPlayerStorageValue(cid, aurastr, -1)
     doPlayerSendCancel(cid,"Aura Retirada!")
     end
      
      
       return true
    end
    y en movements.xml lo siguiente

    Código:
          <movevent type="Equip" itemid="2124" slot="ring" event="script" value="aura.lua"/>
          <movevent type="DeEquip" itemid="2124" slot="ring" event="script" value="aura.lua"/>
    que tengo mal me puedes ayudar a ponerlo bien porfavor lo siento si soy un dolor de cabeza o estoy muy noob gracias de antemano




    actualizo ya lo solucione xd ty
    solo era cambiarlo asi xd
    Código:


    -- CONFIGURAÇÕES
     aurastr = 25950 -- storage da aura
     estr = 25951 -- storage para o exhaust
     porcentagem = 20 -- chance de curar em cada volta da aura, em porcentagem
     quantheal = 40 -- porcentagem do hp máximo que cada cura irá curar. (No caso, irá curar 10% do hp máximo cada cura)
     tempo = 1180 -- tempo para dar uma volta no player (este tempo foi o que achei mais agradável visualmente, é recomendável não mudar)
     tipoaura = 4 -- número do efeito da aura (efeito de distância, pode ser identificado com /x no jogo)
     efeitocura = 11 -- número do efeito quando a cura chega ao player (efeito de posição fixa, pode ser identificado com /z no jogo)

    -- Função que chama a aura
    function efeitosAura(i,tm,cid)
     if(isCreature(cid)) then
             local atual = getCreaturePosition(cid)
     local posaura = {
     {x=(atual.x)-1, y=(atual.y)-1, z=atual.z},
     {x=atual.x, y=(atual.y)-1, z=atual.z},
     {x=(atual.x)+1, y=(atual.y)-1, z=atual.z},
     {x=(atual.x)+1, y=atual.y, z=atual.z},
     {x=(atual.x)+1, y=(atual.y)+1, z=atual.z},
     {x=atual.x, y=(atual.y)+1, z=atual.z},
     {x=(atual.x)-1, y=(atual.y)+1, z=atual.z},
     {x=(atual.x)-1, y=atual.y, z=atual.z},
     }
     local chances = math.random(100)
     if(chances<=porcentagem/8 and getCreatureHealth(cid)<getCreatureMaxHealth(cid)) then
     doCreatureAddHealth(cid, getCreatureMaxHealth(cid)/quantheal)
     if(i<=8 and i>1) then
     doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, atual, tipoaura)
     else
     doSendDistanceShoot({x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, atual, tipoaura)
     end
     doSendMagicEffect(atual, efeitocura)
     end
     if(i==8) then
     doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, tipoaura)
     elseif(i<8) then
     doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[i+1].x, y=posaura[i+1].y, z=posaura[i+1].z}, tipoaura)
     end
     if(i<=8 and getPlayerStorageValue(cid, aurastr)==2) then
     i = i+1
     tm = tempo/8
     return addEvent(efeitosAura,tm,i,tm,cid)
     elseif(i>8 and getPlayerStorageValue(cid, aurastr)==2) then
     return efeitosAura(1,0,cid)
     else
     return TRUE
     end
     else
     return TRUE
     end
    end



    function onEquip(cid, item, pos)


     if(getPlayerStorageValue(cid, aurastr)==2) then
     doPlayerSendCancel(cid,"Tu aura esta activada.")
     elseif(getPlayerStorageValue(cid, aurastr)==-1) then
     doPlayerSendCancel(cid,"Aura Activada!")
     setPlayerStorageValue(cid, aurastr, 2)
     efeitosAura(1,tempo/8,cid)
     end


       return true
    end

    function onDeEquip(cid, item, pos)
      
      
       if(getPlayerStorageValue(cid, aurastr)==2) then
     setPlayerStorageValue(cid, estr, os.time()+2)
     setPlayerStorageValue(cid, aurastr, -1)
     doPlayerSendCancel(cid,"Aura Retirada!")
     end
      
      
       return true
    end

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    20Resuelto Re: [Talkactions] pedido aura talkaction Sáb Jul 04, 2020 4:55 am

    Mezzony

    Mezzony
    Miembro
    Miembro
    Hey Maya Como Hago Para Que Cure Mana y HP al mismo tiempo

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    21Resuelto Re: [Talkactions] pedido aura talkaction Dom Jul 05, 2020 8:34 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    Mezzony escribió:Hey Maya Como Hago Para Que Cure Mana y HP al mismo tiempo

    ya tiene eso4

    Código:
    doCreatureAddHealth(cid, getCreatureMaxHealth(cid)/quantheal



    [Talkactions] pedido aura talkaction YNU5B25
    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes
    http://www.tibiaface.com

    22Resuelto Re: [Talkactions] pedido aura talkaction Dom Feb 14, 2021 8:34 pm

    Morfar

    Morfar
    Miembro
    Miembro
    BUMP! hay manera de hacerlo que solamente en lugar de rodear al player el efecto aparezca encima del player?




    BUMP!

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    23Resuelto Re: [Talkactions] pedido aura talkaction Vie Feb 19, 2021 5:31 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    Morfar escribió:BUMP! hay manera de hacerlo que solamente en lugar de rodear al player el efecto aparezca encima del player?

    asi prueba

    Código:


            -- CONFIGURAÇÕES
              aurastr = 25950 -- storage da aura
              estr = 25951 -- storage para o exhaust
              porcentagem = 40 -- chance de curar em cada volta da aura, em porcentagem
              quantheal = 10 -- porcentagem do hp máximo que cada cura irá curar. (No caso, irá curar 10% do hp máximo cada cura)
              tempo = 1180 -- tempo para dar uma volta no player (este tempo foi o que achei mais agradável visualmente, é recomendável não mudar)
              tipoaura = 30 -- número do efeito da aura (efeito de distância, pode ser identificado com /x no jogo)
              efeitocura = 49 -- número do efeito quando a cura chega ao player (efeito de posição fixa, pode ser identificado com /z no jogo)

            -- Função que chama a aura
            function efeitosAura(i,tm,cid)
              if(isCreature(cid)) then
                      local atual = getCreaturePosition(cid)
                  local posaura = {
                    {x=(atual.x)-1, y=(atual.y)-1, z=atual.z},
                    {x=atual.x, y=(atual.y)-1, z=atual.z},
                    {x=(atual.x)+1, y=(atual.y)-1, z=atual.z},
                    {x=(atual.x)+1, y=atual.y, z=atual.z},
                    {x=(atual.x)+1, y=(atual.y)+1, z=atual.z},
                    {x=atual.x, y=(atual.y)+1, z=atual.z},
                    {x=(atual.x)-1, y=(atual.y)+1, z=atual.z},
                    {x=(atual.x)-1, y=atual.y, z=atual.z},
                  }
                  local chances = math.random(100)
                  if(chances<=porcentagem/8 and getCreatureHealth(cid)<getCreatureMaxHealth(cid)) then
                    doCreatureAddHealth(cid, getCreatureMaxHealth(cid)/quantheal)
                    if(i<=8 and i>1) then
                        doSendDistanceShoot(atual, atual, tipoaura)
                    else
                        doSendDistanceShoot(atual, atual, tipoaura)
                    end
                    doSendMagicEffect(atual, efeitocura)
                  end
                  if(i==8) then
                    doSendDistanceShoot(atual, atual, tipoaura)
                  elseif(i<8) then
                    doSendDistanceShoot(atual, atual, tipoaura)
                  end
                  if(i<=8 and getPlayerStorageValue(cid, aurastr)==2) then
                    i = i+1
                    tm = tempo/8
                    return addEvent(efeitosAura,tm,i,tm,cid)
                  elseif(i>8 and getPlayerStorageValue(cid, aurastr)==2) then
                    return efeitosAura(1,0,cid)
                  else
                    return TRUE
                  end
              else
                  return TRUE
              end
            end

            -- Função principal
            function onSay(cid, words, param, channel)
              if(param=="on") then
                  if getPlayerStorageValue(cid, estr) > os.time() then
                    doPlayerSendCancel(cid, "Espere "..(getPlayerStorageValue(cid, estr) - os.time()).." segundos para poder habilitar aura novamente.")
                  else
                    if(getPlayerStorageValue(cid, aurastr)==2) then
                        doPlayerSendCancel(cid,"Sua aura já está habilitada.")
                    elseif(getPlayerStorageValue(cid, aurastr)==-1) then
                        doPlayerSendCancel(cid,"Aura ligada!")
                        setPlayerStorageValue(cid, aurastr, 2)
                        efeitosAura(1,tempo/8,cid)
                    end
                  end
              elseif(param=="off") then
                  if(getPlayerStorageValue(cid, aurastr)==2) then
                    setPlayerStorageValue(cid, estr, os.time()+2)
                    setPlayerStorageValue(cid, aurastr, -1)
                    doPlayerSendCancel(cid,"Aura desligada!")
                  end
              else 
                  doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Digite '!aura on' para ligar sua aura, e '!aura off' para desligá-la.")
              end
              return TRUE
            end



    [Talkactions] pedido aura talkaction YNU5B25
    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes
    http://www.tibiaface.com

    24Resuelto Re: [Talkactions] pedido aura talkaction Vie Feb 19, 2021 6:15 pm

    Morfar

    Morfar
    Miembro
    Miembro
    Código:
    [code]
    local storage = 44782
    function onUse(cid, item, fromPosition, itemEx, toPosition)
        if getPlayerStorageValue(cid, storage) == -1 then
            doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "su aura esta habilitada.")
            setPlayerStorageValue(cid, storage, 1)
                  else
            doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You already clicked on this.")
        end
        return true
    end
    [/code]

    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    25Resuelto Re: [Talkactions] pedido aura talkaction Vie Feb 19, 2021 6:26 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    Morfar escribió:
    Código:
    [code]
    local storage = 44782
    function onUse(cid, item, fromPosition, itemEx, toPosition)
        if getPlayerStorageValue(cid, storage) == -1 then
            doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "su aura esta habilitada.")
            setPlayerStorageValue(cid, storage, 1)
                  else
            doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You already clicked on this.")
        end
        return true
    end
    [/code]


    prueba al darle un clic activa y al darle otroclic desactiva

    Código:







          -- CONFIGURAÇÕES
              aurastr = 25950 -- storage da aura
              estr = 25951 -- storage para o exhaust
              porcentagem = 40 -- chance de curar em cada volta da aura, em porcentagem
              quantheal = 10 -- porcentagem do hp máximo que cada cura irá curar. (No caso, irá curar 10% do hp máximo cada cura)
              tempo = 1180 -- tempo para dar uma volta no player (este tempo foi o que achei mais agradável visualmente, é recomendável não mudar)
              tipoaura = 30 -- número do efeito da aura (efeito de distância, pode ser identificado com /x no jogo)
              efeitocura = 49 -- número do efeito quando a cura chega ao player (efeito de posição fixa, pode ser identificado com /z no jogo)

            -- Função que chama a aura
            function efeitosAura(i,tm,cid)
              if(isCreature(cid)) then
                      local atual = getCreaturePosition(cid)
                  local posaura = {
                    {x=(atual.x)-1, y=(atual.y)-1, z=atual.z},
                    {x=atual.x, y=(atual.y)-1, z=atual.z},
                    {x=(atual.x)+1, y=(atual.y)-1, z=atual.z},
                    {x=(atual.x)+1, y=atual.y, z=atual.z},
                    {x=(atual.x)+1, y=(atual.y)+1, z=atual.z},
                    {x=atual.x, y=(atual.y)+1, z=atual.z},
                    {x=(atual.x)-1, y=(atual.y)+1, z=atual.z},
                    {x=(atual.x)-1, y=atual.y, z=atual.z},
                  }
                  local chances = math.random(100)
                  if(chances<=porcentagem/8 and getCreatureHealth(cid)<getCreatureMaxHealth(cid)) then
                    doCreatureAddHealth(cid, getCreatureMaxHealth(cid)/quantheal)
                    if(i<=8 and i>1) then
                        doSendDistanceShoot(atual, atual, tipoaura)
                    else
                        doSendDistanceShoot(atual, atual, tipoaura)
                    end
                    doSendMagicEffect(atual, efeitocura)
                  end
                  if(i==8) then
                    doSendDistanceShoot(atual, atual, tipoaura)
                  elseif(i<8) then
                    doSendDistanceShoot(atual, atual, tipoaura)
                  end
                  if(i<=8 and getPlayerStorageValue(cid, aurastr)==2) then
                    i = i+1
                    tm = tempo/8
                    return addEvent(efeitosAura,tm,i,tm,cid)
                  elseif(i>8 and getPlayerStorageValue(cid, aurastr)==2) then
                    return efeitosAura(1,0,cid)
                  else
                    return TRUE
                  end
              else
                  return TRUE
              end
            end


    function onUse(cid, item, fromPosition, itemEx, toPosition)

                    if(getPlayerStorageValue(cid, aurastr)==-1) then
                        doPlayerSendCancel(cid,"Aura ligada!")
                        setPlayerStorageValue(cid, aurastr, 2)
                        efeitosAura(1,tempo/8,cid)
             

                        elseif(getPlayerStorageValue(cid, aurastr)==2) then
                 
                    setPlayerStorageValue(cid, aurastr, -1)
                    doPlayerSendCancel(cid,"Aura desligada!")
                  end
       

        return true
    end



    [Talkactions] pedido aura talkaction YNU5B25
    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes
    http://www.tibiaface.com

    Contenido patrocinado


    +5
    Mcpollito
    Hassiel
    carataki
    [Admin] God Maya
    Miguel Albertto
    9 participantes

    Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje (Página 1 de 2.)

    Ir a la página : 1, 2  Siguiente

    Permisos de este foro:
    No puedes responder a temas en este foro.

     

    BienvenidosTibiaFace es una comunidad de Open Tibia. Para participar debes estar registrado (click para Regístrate).