Ir para conteúdo
  • Cadastre-se
  1. Zyros

    Zyros

  2. Maroka324

    Maroka324

  3. Jean10

    Jean10

  4. ADM Slash

    ADM Slash

  5. LionM

    LionM

  6. Helder Junio adm

    Helder Junio adm

  7. pacht

    pacht

  8. bra

    bra

  9. lukashn

    lukashn

  10. DrTony

    DrTony

  11. Matt Shadows

    Matt Shadows

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por L3K0T
      Sistema de Drop Personalizado
       
      Esse sistema de loot foi projetado para adicionar um elemento de sorte e surpresa ao derrotar monstros. Sempre que um jogador derrota um monstro, há uma chance configurada para que ele solte entre 1 a 3 itens especiais, garantindo recompensas valiosas ao jogador.
       
      O sistema realiza as seguintes ações:
      Chance de Drop: A cada morte de um monstro, há uma chance configurada para dropar itens específicos. O sistema permite que sejam dropados entre 1 a 3 unidades do item, tornando o sistema mais dinâmico.
       
      Efeito Visual: Quando o loot é bem-sucedido, um efeito visual especial (ID 231) é exibido na posição exata onde o monstro foi derrotado, criando uma animação visual que destaca a recompensa.
       
      Notificação ao Jogador: Após o drop, o jogador recebe uma mensagem personalizada informando a quantidade de itens obtidos. Essa notificação aparece após 3 segundos, adicionando uma camada de imersão e evitando sobrecarregar o chat imediatamente após a morte do monstro.
       
      *Ótimo para fazer eventos de dropar certo itens para alguma missão ou resgates.
      *Uso no meu TIBIA HARRY POTTER ORIGIN
       
      VAi em creaturescripts/scripts.lua
      local function findCorpse(position) for i = 1, 255 do position.stackpos = i local corpse = getThingfromPos(position) if isCorpse(corpse.uid) then return corpse.uid end end return false end local function dropLoot(position, killer) local corpse = findCorpse(position) if not corpse then return false end local itemId = 2160 local chance = 23 if math.random(100) <= chance then local amountToDrop = math.random(1, 3) doAddContainerItem(corpse, itemId, amountToDrop) local corpsePosition = getThingPos(corpse) doSendMagicEffect(corpsePosition, 7) local function sendMessage() if isPlayer(killer) then local message = string.format("Você dropou %d Crystal Coin(s).", amountToDrop) doPlayerSendTextMessage(killer, MESSAGE_INFO_DESCR, message) end end addEvent(sendMessage, 2500) end return true end function onKill(cid, target) local position = getCreaturePosition(target) addEvent(dropLoot, 100, position, cid) return true end  
      creaturescripts.xml
      <event type="kill" name="GlobalDrops" registerTo ="GlobalDrops" event="script" value="globalDrops.lua"/> ou depende do tfs
      <event type="kill" name="GlobalDrops" event="script" value="globalDrops.lua"/>  
      Para ambos TFS registra o evento no login.lua
      registerTo ="GlobalDrops"
      feito isso.. agora todos os monstros do mapa vai cair os crystal coins de 1 há 3.
    • Por hekan19
      Olá pessoal,
       
      Estou com um problema no sistema de autoloot.
      Ao abrir um Pokémon, itens aparecem no chão. Recebo "0" no console do TFS.
       
      Obrigado pela ajuda
    • Por wallaceg15
      Sempre que mato o poke, cai um corpinho e o pokemon continua vivo, e aparece esse erro na distro... Alguém poderia me ajudar? 
       
      [Error - CreatureScript Interface]
      data/creaturescripts/scripts/player/statsChange.lua:onStatsChange
      Description:
      data/lib/towerSystem.lua:931: attempt to index global 'magmaTP2' (a nil value)
      stack traceback:
              data/lib/towerSystem.lua:931: in function 'doKillBossTower'
              data/lib/Death System.lua:599: in function 'doKillWildPoke'
              data/creaturescripts/scripts/player/statsChange.lua:1461: in function <data/creaturescripts/scripts/player/statsChange.lua:6>
      statsChange.lua towerSystem.lua Death System.lua
    • Por Featzen
      Bom, vi por aqui e não achei nenhum autoloot igual o da pxg ou sem bugs, então decidi vir aqui postar o que eu fiz.
      Vamos lá.
       
      1º - Vá na pasta Lib, no arquivo some functions.lua e adicione isso depois do ultimo "end":



       
      2º - Vá em actions/script e crie um arquivo.lua com nome de Autoloot, dentro coloque:



       
      Agora, no actions.xml adicione a tag:
      <action itemid="" event="script" value="Autoloot.lua"/> Dentro de itemid="", coloque o id dos corpses.
       
      Para conseguir o id dos corpses, podemos fazer um pequeno script, que pegará o corpse de cada pokemon capturável.



       
      Clique em: Execute Script e terá todos os corpses de pokemons capturáveis.

      Créditos:
      Mkalo -- Auto Stacking
      Gabriel Sales(eu) -- Resto
    • Por Featzen
      Bom, como um individuo(Vudi) não sabe cumprir o que fala, vou postar o sistema aqui.(não cabe ao post explicar aqui)
      Bom, aqui está o smeargle system, igual o da PxG. Vamos lá.
       
      1 - Vá na pasta Lib, substitua seu cooldown bar.lua por isso:



       
      2 - Ainda no Lib, no fim(depois do ultimo end) do Some Functions.lua, adicione isso:



       
      3 - Agora no order.lua, do Actions, em baixo de:
      if getTileThingByPos(checkpos).uid <= 0 then return true end Adicione:



       
      4 - Se seu servidor ja tiver os spells, sketch 1, sketch 2... Substitua por esses:
       



       
      Se não, use os mesmos acima, não esqueça de adicionar no spells.xml.
       
      5 - Agora, vá em talkactions/scripst, abra o move1.lua e substitua:



       
      Pronto, se tiver feito tudo certo, funcionará.
      Como ficará:



      Como usar:



       
      Créditos: Eu(Todo o script)
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo