Ir para conteúdo
  • Cadastre-se

Posts Recomendados

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por gangor
      Queria saber duas coisas se é possivel botar lifesteal em uma arma  e a arma upar de acordo com o level ?
      ex: lv1: arma atk 10+ life steal 2
           lv2: arma atk 11+ life steal 3
          .lv100: arma atk 50 life steal 20
       queria saber se alguem poderia me ajudar com isso?    
    • Por poko360
      eu achei um topico em outro forum, que bota a barra de mana/vida por % só que nao sei onde coloca esse script
      alguem ajuda?
       
       
      segue abaixo o script:
      --Remove health/mana by percentages: Evil Hero(Zeriikler:Changed few things) function doPlayerAddManaPercent(cid, percent) local mana = getPlayerMaxMana(cid) doPlayerAddMana(cid, (mana / 100) * percent) return TRUE end function doPlayerAddHealthPercent(cid, percent) local health = getCreatureMaxHealth(cid) doCreatureAddHealth(cid, (health / 100) * percent) return TRUE end function doPlayerRemoveManaPercent(cid, percent) local mana = getPlayerMaxMana(cid) doPlayerRemoveMana(cid, (mana / 100) * percent) return TRUE end function doPlayerRemoveHealthPercent(cid, percent) local health = getCreatureMaxHealth(cid) doPlayerRemoveHealth(cid, (health / 100) * percent) return TRUE end --Remove HP/MANA function doPlayerRemoveHealth(cid, hp) doCreatureAddHealth(cid, -hp) return TRUE end function doPlayerRemoveMana(cid, mana) doPlayerAddMana(cid, -mana) return TRUE end onde coloca isso?
      void ProtocolGame::AddPlayerStats(NetworkMessage_ptr msg) { msg->AddByte(0xA0); msg->AddU16((uint16_t)std::ceil(player->getHealth() * 100 / player->getPlayerInfo(PLAYERINFO_MAXHEALTH))); msg->AddU16((uint16_t)100); msg->AddU32(uint32_t(player->getFreeCapacity() * 100)); uint64_t experience = player->getExperience(); if(experience > 0x7FFFFFFF) // client debugs after 2,147,483,647 exp msg->AddU32(0x7FFFFFFF); else msg->AddU32(experience); msg->AddU16(player->getPlayerInfo(PLAYERINFO_LEVEL)); msg->AddByte(player->getPlayerInfo(PLAYERINFO_LEVELPERCENT)); msg->AddU16((uint16_t)std::ceil(player->getMana() * 100 / player->getPlayerInfo(PLAYERINFO_MAXMANA))); msg->AddU16((uint16_t)100); msg->AddByte(player->getPlayerInfo(PLAYERINFO_MAGICLEVEL)); msg->AddByte(player->getPlayerInfo(PLAYERINFO_MAGICLEVELPERCENT)); msg->AddByte(player->getPlayerInfo(PLAYERINFO_SOUL)); msg->AddU16(player->getStaminaMinutes()); }
    • Por ManoTobira
      eu to precisando de uma spell que praticamente da 1 vida extra pro player
       
      o player usa a magia que dura 20 segundos
      se nesses 20 segundos o player morrer ele é teleportado pra um lugar tudo preto que é feito de void e no momento que ele é teleportado a vida dele enche
      depois de 20 segundos o player volta pro local que ele morreu
      essa spell só pode ser usada a cada 3 minutos
       
      vídeo demonstrativo

      Hidden Content
      Give reaction to this post to see the hidden content.
    • Por Ackerzin
      Mana e Life 100/100


       
      Salve galerinha, estive procurando em vários tópicos, algum codigo de life e mana 100/100, e nenhum deles funcionava perfeito para oque eu precisava, todos eles paravam de funcionar quando o player atingia o level 715835 ou mana/life "21474847" o numero 100 da vida virava 65750 ou da mana, de qual você atingisse primeiro "21474847" e pra quem quer por high XP isso é um problema, mas depois de muito, MUITO,MUITO,muito esforço de um amigo, @Rusherzin, ele conseguiu burla isso, e agora você pode pegar quantos de level/mana/life quiser que não vai sair de 100/100, então é isso vamos ao que interessa.
      TFS 0.4 foi testado !
      Nas SOURCES arquivo protocolgame.cpp procure por:
      void ProtocolGame::AddPlayerStats(NetworkMessage_ptr msg) e substitua por isso:
       
       
      Imagem mostrando certinho a life/mana 
      Créditos:
      99% @Rusherzin  Por fazer tudo !
      1% @Zzyzx Por ficar incomodando até ele fazer !
       
       
    • Por bielzinhocrazy
      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!
  • Estatísticas dos Fóruns

    96846
    Tópicos
    519605
    Posts
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo