Jump to content
  1. Leohige

    Leohige

  • Similar Content

    • By Endless
      Olá senhores, hoje vim disponibilizar um Sistema desenvolvido por mim para o MyAAC onde a função dele é vender a Troca de Vocação para o jogador.

      Explicando como funciona:

      O desenvolvedor(você) vai definir 1 preço para o jogador pagar para trocar a vocação de seu personagem. Exemplo: Eu sou 1 Naruto e quero mudar minha vocação para 1 Sasuke, eu vou pagar X valor e minha vocação irá ser alterada. Abaixo 1 gif exemplificando o sistema.


       
      Como instalar em seu site:
       
      É muito simples, vou dividir por passos onde o 1° passo será a inserção do código e o 2° passo a configuração dele. Vamos lá?
       
      1° Passo (Inserção do código)
      Acesse o diretório system/pages/ e ali dentro você vai criar 2 arquivos.
      Crie 1 arquivo com nome mudarvoc.php e adicione o seguinte código dentro dele. (Esse arquivo será o responsável por tratar as requisições e irá fazer toda a parte lógica do sistema)
       
      Código mudarvoc.php:
       

      Agora dentro da mesma página crie 1 arquivo chamado mudarvocacao.php (Ele será responsável por renderizar a parte visual do sistema em seu site), adicione o seguinte código dentro dele:

      Código mudarvocacao.php:

       
       
      Agora acesse o diretório system/templates/ e ali dentro você vai criar 1 arquivo chamado mudarvoc.html.twig (Ele será a parte visual que vai enviar os dados para o sistema gerenciar e tratar eles), adicione o seguinte código dentro dele:

      Código mudarvoc.html.twig:
       

       
      Agora no diretório system/templates/ acesse o arquivo account.management.html.twig e adicione o seguinte código dentro dele na parte final dele, esse código vai checar se está ativo a opção de mudar vocação no config.php, se estiver false, ele não vai exibir o botão.

      Código para adicionar no arquivo account.management.html.twig:
       
        

      Ficando +/- assim: 



      2° Passo (Configuração do código):
       
      Agora acesse o arquivo config.php que está no diretório raiz de seu site. E vamos adicionar o seguinte código:
       

      Com estas 2 linhas de código nós já podemos controlar o sistema, a 1ª linha será responsável por ativar e desativar o sistema. A 2ª linha é responsável pelo preço que será cobrado para trocar a vocação. 


       
      Agora coloque este código:
          

      Basicamente aqui estamos definindo quais vocações serão disponibilizadas para o jogador poder trocar pela sua. 



      Exemplo: Com essa configuração estamos definindo que as vocações que você pode pegar ao pagar para trocar a sua são: Chouji, Haku, Shikamaru, Shino, Temari, Rock lee, Hinata e Ino. Fique a vontade para configurar a seu gosto.

      Agora no diretório system/ abre o arquivo chamado functions.php e adicione a seguinte função:
       

      Nessa função você vai configurar os ID das suas vocações, exemplo: $a > 10 && $a < 20, nessa situação você está conferindo se o ID da vocação este entre 11 até 19, pois ele precisa ser maior que 10 e menor do que 20. Sempre que você for adicionar 1 nova vocação nessa função, basta adicionar o else if ($a > TAL && $a < TAL) $nomevoc = "TAL";

      Pronto, configurado!!

      Repare que se você deixar a opção 'mudar_vocacao' => false lá no config.php, ele não vai exibir nada no Gerenciamento de sua conta:



      Agora se você colocar true, você deve ter algo como isto:


       
      Pronto, sistema instalado!! Agora você pode disponibilizar para seus jogadores a opção de trocar de vocação pagando um valor X de pontos.
    • By Cat
      Link do projeto no Github: 
      https://github.com/ottools/mapshapegen
       
      Créditos: EdMignari
       
      Download - Clique Aqui para obter o último release
      Requer Adobe Air para instalar.
    • By DarkRed
      Ola pessoa hoje venho trazer para comunidade tibia king o sistema de remove addon do pokemon não esta 100% na hora que você remove addon da esse erro "OnUse" 
      Bom vamos la.
      Lembrando que não  fui eu o criador foi o " TheRatazana do otserver brasil" eu tentei e não deu certo então ele me ajudo espero que ajude vocês.
      se estiver no lugar errado peço desde já desculpa pois nunca criei um topico aqui para scripts. 
       
      vai em Servidor / data / actions addon
       
      Pra que funcione legal, você precisa adicionar isso aqui na linha 30 do seu sistema
      doSetItemAttribute(pb, "addonItem", item.itemid) ele tem que fica assim no Actions.
       
       
       
      Vai em Servidor\data\talkactions\scripts cria um arquivo lua e mude o nome para addon
       
       
      agora vai em talkaction.xlm e coloca essa tag la
       
       <talkaction words="/addonsRemove" access="1" event="script" value="addons.lua"/>  
    • By xWhiteWolf
      Fala pessoal do TK, hoje vim trazer uma spell bem bonita que veio na minha cabeça.
      em 14:06 desse vídeo dá pra ver oque eu tentei criar
      http://tvuol.uol.com.br/video/avatar--livro-3-fogo--ep-48--a-manipuladora-de-fantoches-04028C98306ED8A90326/
      mas por conta dos efeitos precários que o Tibia possui não ficou tão legal qnt eu imaginei mas em todo caso eu decidi compartilhar o código com vocês.

      O resultado final foi esse daqui:


      Se vocês se interessaram é só criar um arquivo em spells/scripts e colocar isso daqui dentro dele:
      function onCastSpell(cid, var) local config = { spins = 1, delay = 120 } local k = checkGroundInArray(getPositionsByDirection(cid), grass) if #k < 1 then doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) doPlayerSendCancel(cid, "You need to be around grass to cast this spell.") return false end for i = 1, #k do addEvent(function() if isPlayer(cid) then local pos = k[i] local grama = getThingFromPos(pos) doTransformItem(grama.uid, driedgrass[math.random(1, #driedgrass)]) a = (i < 9) and doSendMagicEffect(pos, 1) or doSendMagicEffect(pos, 53) doSendDistanceShoot(pos, getThingPos(cid), 36) end end, (config.delay/2) * i) end range = #k > 4 and 7 or 5 addEvent(function() if isPlayer(cid) then local pos = k[i] local lastPos = false for i = 1, range do local position = getPositionByDirection(getCreaturePosition(cid), getCreatureLookDirection(cid), i) if isWalkable(position, false, true, true) then local creature = getTopCreature(position) if (creature.uid > 0) then doSendDistanceShoot(getCreaturePosition(cid), getCreaturePosition(creature.uid), 36) doTargetCombatHealth(cid, creature.uid, COMBAT_PHYSICALDAMAGE, -142 * (#k - 1), -150 * (#k - 1), CONST_ME_NONE) break end lastPos = position end if lastPos then doSendDistanceShoot(getCreaturePosition(cid), lastPos, 36) end end end end, (config.delay + (4 * config.delay * config.spins)) ) addEvent(function() for j = 1, #k do addEvent(function() local pos = k[j] local grama = getThingFromPos(pos) if isInArray(driedgrass, grama.itemid) then doTransformItem(grama.uid, grass[math.random(1, #grass)]) end end, (config.delay/2) * j) end end, config.delay * 100) spinRotate(cid, config.spins, config.delay) return true end e em spells.xml vc adiciona:
      <instant name="TK" words="kataras sense" lvl="8" mana="35" prem="0" casterTargetOrDirection="1" exhaustion="1500" needlearn="0" event="script" value="nomedoarquivo.lua"> </instant> OBS: Note que esse script usa funções da new library. Você pode conseguir essas funções aqui: http://www.tibiaking.com/forum/topic/46015-new-library-v-10/

      Espero que tenham curtido, esse é só o começo! Testada em TFS 0.3.6 Tibia 8.54.
    • By xWhiteWolf
      Fala galera do TK, criei esse anelzinho pra servers que procuram inovar.. 
      bom, oque ele faz??
      Simples, ele torna o usuário invisível.
      aff, mas já existe o stealth ring que faz isso!
      Sim mas dessa vez eu digo invisível mesmo, nenhum monstro ou players conseguirá te ver.
      que lixo, assim qualquer player vai poder ficar invisível e passar no meio dos monstros e players.. vai estragar o server
      Aí é que vc se engana porque o anel vem uma maldição, quem usar ele vai perdendo 3% de vida por segundo (ajustável) e só vai estragar o server se vc sair distribuindo o anel pra todos os players haha

      O anel em si possui duas versões, na primeira ele retira 3% de vida por segundo, na segunda ele adiciona uma condição que te deixa perdendo uma quantidade fixa de vida, CONTUDO, na segunda versão aparece uma poça de sangue cada vez que toma o dano então dá pros players te pegarem caso vc coloque o anel e resolva fugir kkkkk
      Vou chamar aqui de versão 1 e 2 respectivamente.
      OBS: ISSO É EM MOVEMENTS!

       
       
      1ª versão (sem sangue mas que tira 3% de vida por segundo):
      local invisible = createConditionObject(CONDITION_GAMEMASTER, -1, false, GAMEMASTER_INVISIBLE) local outfit = createConditionObject(CONDITION_INVISIBLE, -1, false) local percent = 3 local tempo = 1 -- em segundos function onEquip(cid, item, slot) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "By using this ring you will become fully invisible and lose health over time because of it's curse.") function lifesteal(cid) steal = addEvent(lifesteal, 1000*tempo, cid) if isCreature(cid) then doSendAnimatedText(getCreaturePos(cid), "-"..math.floor((getCreatureMaxHealth(cid) * (percent/100))), 144, cid) doCreatureAddHealth(cid, -math.floor(getCreatureMaxHealth(cid) * (percent/100))) end end lifesteal(cid) doAddCondition(cid, invisible) doAddCondition(cid, outfit) doSendMagicEffect(getCreaturePos(cid), 12) return true end function onDeEquip(cid, item, slot) doTransformItem(item.uid, 2165) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You're no longer receiving the special bonus..") stopEvent(steal) doRemoveCondition(cid, CONDITION_INVISIBLE) doSendMagicEffect(getCreaturePos(cid), 12) doRemoveCondition(cid, CONDITION_GAMEMASTER, GAMEMASTER_INVISIBLE) return true end   2ª versão (a cada 1,5 segundos ele te tira um dano configurado e deixa uma poça de sangue embaixo de vc facilitando que te identifiquem mesmo estando invisivel):
      local invisible = createConditionObject(CONDITION_GAMEMASTER, -1, false, GAMEMASTER_INVISIBLE) local outfit = createConditionObject(CONDITION_INVISIBLE, -1, false) local condition = createConditionObject(CONDITION_PHYSICAL) setConditionParam(condition, CONDITION_PARAM_DELAYED, TRUE) addDamageCondition(condition, -1, 1500, -500) function onEquip(cid, item, slot) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "By using this ring you will become fully invisible and lose health over time because of it's curse.") doAddCondition(cid, condition) doAddCondition(cid, invisible) doAddCondition(cid, outfit) doSendMagicEffect(getCreaturePos(cid), 12) return true end function onDeEquip(cid, item, slot) doTransformItem(item.uid, 2165) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You're no longer receiving the special bonus..") doRemoveCondition(cid, CONDITION_PHYSICAL) doRemoveCondition(cid, CONDITION_INVISIBLE) doSendMagicEffect(getCreaturePos(cid), 12) doRemoveCondition(cid, CONDITION_GAMEMASTER, GAMEMASTER_INVISIBLE) return true end Agora edite no items.xml o stealth ring pra que ele seja infinito:
      <item id="2202" article="a" name="stealth ring"> <attribute key="weight" value="100" /> <attribute key="slotType" value="ring" /> <attribute key="transformDeEquipTo" value="2165" /> </item> e em movements.xml adicione essas linhas:
      <movevent type="Equip" itemid="2202" slot="ring" event="script" value="stealth.lua"/> <movevent type="DeEquip" itemid="2202" slot="ring" event="script" value="stealth.lua"/> Editando:
      Na primeira versão vc pode alterar as seguintes coisas que estão em colorido:
      local invisible = createConditionObject(CONDITION_GAMEMASTER, -1, false, GAMEMASTER_INVISIBLE)
      local outfit = createConditionObject(CONDITION_INVISIBLE, -1, false)
      local percent = 3
      local tempo = 1 -- em segundos
       
      em vermelho é o tempo que dura a invisibilidade... -1 é infinito
      em azul é a porcentagem de vida que perde por tempo
      em verde é o tempo em que se perde vida.. nesse caso a cada 1 segundo perde 3%
       
      Na segunda versão vc pode editar as mesmas coisas do primeiro só que o tempo e o dano pelo tempo estão na condition:
       
      local condition = createConditionObject(CONDITION_PHYSICAL)
      setConditionParam(condition, CONDITION_PARAM_DELAYED, TRUE)
      addDamageCondition(condition, -1, 1500, -500)
       
      em vermelho é o numero de vezes que vai tirar vida. Mais uma vez -1 significa infinito (infinito até remover o anel)
      em azul é o dano que vc toma a cada tempo (lembre-se de deixar sempre um - na frente se não ele vai adicionar vida)
      em verde é o tempo em que se perde vida.. nesse caso a cada 1 segundo e meio retira 500 de vida
       
       
      Bom, é isso.. um script simples mas que vai ajudar muita gente pelo fato de usar conditions não tão comuns e de uma forma diferente haha
  • Recently Browsing   0 members

    No registered users viewing this page.


×
×
  • Create New...

Important Information

Confirmação de Termo