Ir para conteúdo

Phannm

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Gostei
    Phannm deu reputação a Kamii em [Talkaction] Rainbow Outfit   
    Fala TK  beleza? hoje venho aqui compartilhar um Script meio antigo porém funcional "Rainbow Outfit" para quem já jogou OT'S 8.40 sabe o que é isso
    Bom vamos lá. Para quem não sabe o que esse Script faz ele fica trocando de cor aleatoriamente assim que o Player ativa o comando como no vídeo abaixo.
     
    https://vid.me/O1hJ
     
     
    Para fazer a instalação vá em Data/Talkactions/Scripts
    Depois copie e cole qualquer arquivo .LUA
    Renomeie o arquivo para rainbow copie e cole tudo que está abaixo la dentro.
     


        Agora vá para Data/Talkactions E abra o aquivo Talkactions.XML Depois copie e cole o que está logo abaixo la dentro do Talkactions.XML  

        !rainbow on = Ligar o Rainbow Outfit !rainbow off = Desligar o Rainbow Outfit
  2. Gostei
    Phannm deu reputação a bielzinhocrazy em Heal aura system   
    Olá pessoal do TibiaKing,
    Hoje venho trazer um script sistema de auras, que explicado superficialmente, é uma bolha de luz que te rodeia constantemente (é possível mudar o efeito visual da aura, como você poderá conferir no script), e possui uma chance pré-determinada pela pessoa, em porcentagem, de curar a cada volta que dá no player. Para ligar a aura digite !aura on, e para desligar !aura off. Vocês podem conferir como funciona assistindo o vídeo a seguir : 
     
    Bom, vamos aos códigos.
    Primeiro, na pasta de seu OT, vá em data\talkactions\scripts, e crie um novo arquivo chamado aura.lua, e coloque isto nele (serão necessários dois storages) : 
    -- 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  As configurações estão comentadas, portanto é só modificar de acordo com as suas preferências.
     
    Agora, em data\talkactions, abra o arquivos talkactions.xml, e cole isto dentro dele :
    <talkaction words="!aura" event="script" value="aura.lua"/> Após feito isso, para evitar erros ao player logar, será necessário criar um script que mudará o storage da aura toda vez que o player se logar novamente, para isso, vá em data\creaturescripts\scripts e crie um arquivo chamado auralogin.lua, e cole isto : 
    function onLogin(cid) aurastr = 25950 -- storage da aura setPlayerStorageValue(cid, aurastr, -1) return TRUE end Após isto, vá em data\creaturescripts e abra o arquivo creaturescripts.xml, e cole o seguinte código nele :
    <event type="login" name="AuraLogin" script="auralogin.lua"/> E pronto! Agora é só desfrutar do sistema.
     
    OBS : Se você der /reload talkactions no OT em execução, com algum player estando com aura em execução, elas serão interrompidas e será necessário usar !aura off, e !aura on, para reabilitá-las. Portanto cuidado!
    Créditos : Eu mesmo(Fakezim/BielzinhoCrazy/GMLeal, tanto faz o nick rererere) Obrigado pessoal!

Informação Importante

Confirmação de Termo