Ir para conteúdo

Tutoriais de Scripting

Aprenda a fazer seus próprios scripts e desenvolva seu OT.


665 tópicos neste fórum

    • 29 respostas
    • 32.6k visualizações
    • 5 reações

    • 34 respostas
    • 23.1k visualizações
    • 3 reações

    • 7 respostas
    • 17.7k visualizações
    • 5 respostas
    • 12.2k visualizações
  1. [Apostila] Lib 000-Const

      2 reações

    • 3 respostas
    • 7.9k visualizações
  2. [SQL] Tutorial Básico

    • 4 respostas
    • 6.9k visualizações
    • 0 respostas
    • 6.7k visualizações
    • 0 respostas
    • 6.7k visualizações
  3. Os Melhores Tutoriais 1 2 3 4 10

    • 136 respostas
    • 54.2k visualizações
    • 76 respostas
    • 43.1k visualizações
    • 103 respostas
    • 39.2k visualizações
    • 170 respostas
    • 34.8k visualizações
    • 38 respostas
    • 34.7k visualizações
  4. Editando Itens 1 2

    • 21 respostas
    • 34.6k visualizações
  5. Como Criar Quest! 1 2 3 4

    • 49 respostas
    • 33.9k visualizações
    • 101 respostas
    • 31.7k visualizações
    • 37 respostas
    • 29k visualizações
  6. PokeBar(Versão:0.3.6) 1 2 3 4 5

    • 65 respostas
    • 28.7k visualizações
  7. Pasta Data - Monstros 1 2 3 4 5

    • 74 respostas
    • 26.6k visualizações
  8. Criando Char Gm! 1 2 3

    • 30 respostas
    • 26.5k visualizações
    • 62 respostas
    • 26k visualizações
    • 41 respostas
    • 24.2k visualizações
  9. Novo Tipo De Dinheiro 1 2 3 4 7

    • 101 respostas
    • 24.2k visualizações
    • 58 respostas
    • 24.2k visualizações
    • 51 respostas
    • 23.8k visualizações
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
  • Mais Reputados

  • Tópicos

  • Últimos Posts

    • qual função do seu servidor adicina loot na bag e os parametros dela? deixei pra tu adaptar com comentarios no script dq deve ser alterado:   -- Função para obter o contêiner pai de um item function getContainerParent(container) local items = getContainerItems(container) if items then for i = 1, #items do local item = items[i] if item.uid ~= container then return container end end end return 0 end -- Função para adicionar o loot em uma das bags disponíveis function addToAvailableBags(loot, player) local playerSlotItem = getPlayerSlotItem(player, 3) -- Obtém a mochila do jogador local bags = {} -- Lista para armazenar as bags disponíveis -- Adiciona a mochila do jogador à lista de bags table.insert(bags, playerSlotItem.uid) -- Verifica se a mochila do jogador está dentro de outra bag local container = playerSlotItem.uid while container ~= 0 do container = getContainerParent(container) if container ~= 0 then table.insert(bags, container) -- Adiciona a bag à lista de bags end end -- Tenta adicionar o loot em cada bag disponível for _, bag in ipairs(bags) do local freeSlots = getContainerSlotsFree(bag) if freeSlots >= 1 and freeSlots ~= 333 then -- Aqui você deve substituir 'doCorpseAddLoot' pela função adequada para adicionar loot na bag -- Certifique-se de que a função esteja corretamente definida e acessível no contexto do seu script -- doCorpseAddLoot(getCreatureName(loot), bag, player, loot, loot) -- Adiciona o loot na bag return true -- Retorna true para indicar que o loot foi adicionado com sucesso end end return false -- Retorna false se não foi possível adicionar o loot em nenhuma bag end -- Verifica se o jogador é premium e está usando o auto loot if isPremium(getCreatureMaster(cid)) and isCollectAll(getCreatureMaster(cid)) then -- Tenta adicionar o loot em uma das bags disponíveis if not addToAvailableBags(target, getCreatureMaster(cid)) then -- Aqui você deve substituir 'doCorpseAddLoot' pela função adequada para adicionar loot na bag -- Certifique-se de que a função esteja corretamente definida e acessível no contexto do seu script -- doCorpseAddLoot(getCreatureName(target), corpse, getCreatureMaster(cid), target, corpse) -- Adiciona o loot na bag original se não houver outras disponíveis end else -- Aqui você deve substituir 'doCorpseAddLoot' pela função adequada para adicionar loot na bag -- Certifique-se de que a função esteja corretamente definida e acessível no contexto do seu script -- doCorpseAddLoot(getCreatureName(target), corpse, getCreatureMaster(cid), target, corpse) -- Adiciona o loot na bag original se o jogador não for premium ou não estiver usando o auto loot end  
    • Isso pode acontecer se a função não estiver disponível no arquivo de biblioteca onde está o seu script. Vamos tentar fazer isso localmente:   -- Função para obter o contêiner pai de um item function getContainerParent(container) local items = getContainerItems(container) if items then for i = 1, #items do local item = items[i] if isInContainer(item.uid) then return container end end end return 0 end -- Função para adicionar o loot em uma das bags disponíveis function addToAvailableBags(loot, player) local playerSlotItem = getPlayerSlotItem(player, 3) -- Obtém a mochila do jogador local bags = {} -- Lista para armazenar as bags disponíveis -- Adiciona a mochila do jogador à lista de bags table.insert(bags, playerSlotItem.uid) -- Verifica se a mochila do jogador está dentro de outra bag local container = playerSlotItem.uid while container ~= 0 do container = getContainerParent(container) if container ~= 0 then table.insert(bags, container) -- Adiciona a bag à lista de bags end end -- Tenta adicionar o loot em cada bag disponível for _, bag in ipairs(bags) do local freeSlots = getContainerSlotsFree(bag) if freeSlots >= 1 and freeSlots ~= 333 then doCorpseAddLoot(getCreatureName(loot), bag, player, loot, loot) -- Adiciona o loot na bag return true -- Retorna true para indicar que o loot foi adicionado com sucesso end end return false -- Retorna false se não foi possível adicionar o loot em nenhuma bag end -- Verifica se o jogador é premium e está usando o auto loot if isPremium(getCreatureMaster(cid)) and isCollectAll(getCreatureMaster(cid)) then -- Tenta adicionar o loot em uma das bags disponíveis if not addToAvailableBags(target, getCreatureMaster(cid)) then doCorpseAddLoot(getCreatureName(target), corpse, getCreatureMaster(cid), target, corpse) -- Adiciona o loot na bag original se não houver outras disponíveis end else doCorpseAddLoot(getCreatureName(target), corpse, getCreatureMaster(cid), target, corpse) -- Adiciona o loot na bag original se o jogador não for premium ou não estiver usando o auto loot end  
    • Olá xtibianos, estou com uma vaga para MAPPER remunerada no projeto em que estou trabalhando.   Pra que é a vaga? Basicamente o objetivo é construir um reino bem detalhado como o da foto:       Até quando posso entregar? A partir do momento em que você foi recrutado vamos decidir um prazo final porém queremos com urgência até o final de junho de 2024 (próximos 2 meses)   Como entro em contato? Pode entrar em contato comigo diretamente pelo discord: mcolchete Ou pode entrar em contato diretamente pelo celular: 21983242505
    • Manin não pegou, deu erro no final,    [Error - CreatureScript Interface] data/creaturescripts/scripts/player/statsChange.lua:onStatsChange Description: data/lib/Death System.lua:1816: attempt to call global 'getContainerParent' (a nil value) stack traceback:         data/lib/Death System.lua:1816: in function 'addToAvailableBags'         data/lib/Death System.lua:1837: in function 'doKillWildPoke'         data/creaturescripts/scripts/player/statsChange.lua:878: in function <data/creaturescripts/scripts/player/statsChange.lua:6>
×
×
  • Criar Novo...