
Tudo que Lurk postou
-
Chest daily (Vip)
@raicont do you use premium account on your server to make the players "vip"? if not, you probably use an item that when they use they become vip, if you use an item, send me the script of that item
-
(Resolvido)(HELP) Action Autoloot System
@El Reverso nice, se quiser postar o sistema pode sim da os creditos lá (embora eu tenha feito bem pouco, só teve confusao p krai kk) e n esquece de escolher a melhor resposta poe a primeira q eu dei aq no topico pq editei ela la
-
(Resolvido)(HELP) Action Autoloot System
@El Reverso n eh incomodo nenhum n man
-
(Resolvido)(HELP) Action Autoloot System
@El Reverso concordo sim man, mas poe esse aq local blocked_items = {8413, 5726} -- adicione aqui os itens que vc quer bloquear separados por , function onUse(cid, item, fromPosition, itemEx, toPosition) if getItemAttribute(item.uid, "corpseowner") ~= cid then return doPlayerSendCancel(cid, "You're not the owner.") end local items = {} for i = 0, getContainerSize(item.uid) do local it = getContainerItem(item.uid, i) if it.uid > 0 and not isInArray(blocked_items,it.itemid) then table.insert(items, {it.itemid, it.type}) doRemoveItem(it.uid) end end if #items > 0 then for k = 1, #items do local playerItem = getPlayerItemById(cid, true, items[k][1]) if playerItem.uid > 0 then if (playerItem.type + items[k][2]) > 100 then doPlayerAddItem(cid, items[k][1], (playerItem.type + items[k][2]) - 100) doTransformItem(playerItem.uid, items[k][1], 100) else doTransformItem(playerItem.uid, items[k][1], playerItem.type + items[k][2]) end else doPlayerAddItem(cid, items[k][1], items[k][2]) end end return true end doSetItemActionId(item.uid, 0) return false end e confere q ta funfando, pelo q vi tinha 1 palavra sobrando lá
-
(Resolvido)(HELP) Action Autoloot System
@El Reverso tenta local blocked_items = {8413, 5726} -- adicione aqui os itens que vc quer bloquear separados por , function onUse(cid, item, fromPosition, itemEx, toPosition) if getItemAttribute(item.uid, "corpseowner") ~= cid then return doPlayerSendCancel(cid, "You're not the owner.") end local items = {} for i = 0, getContainerSize(item.uid) do local it = getContainerItem(item.uid, i) if it.uid > 0 and not isInArray(blocked_items,it.itemid) then table.insert(items, {it.itemid, it.type}) doRemoveItem(it.uid) end end if #items > 0 then for k = 1, #items do local playerItem = getPlayerItemById(cid, true, items[k][1]) if playerItem.uid > 0 then if (playerItem.type + items[k][2]) > 100 then doPlayerAddItem(cid, items[k][1], (playerItem.type + items[k][2]) - 100) doTransformItem(playerItem.uid, items[k][1], 100) else doTransformItem(playerItem.uid, items[k][1], playerItem.type + items[k][2]) end elseif not isInArray(blocked_items, item.uid) then doPlayerAddItem(cid, items[k][1], items[k][2]) end end return true end doSetItemActionId(item.uid, 0) return false end
-
(Resolvido)(HELP) Action Autoloot System
@El Reverso apaga o print("Item do container: " ..getContainerItem(item.uid))
-
(Resolvido)(HELP) Action Autoloot System
@El Reverso imagino q n exista um item com o id de 72005 no seu ot.. em baixo de local it = getContainerItem(item.uid, i) poe print("Item do container: " ..getContainerItem(item.uid)) print("Item do container2: " ..getContainerItem(item.uid, i))
-
(Resolvido)(HELP) Action Autoloot System
em baixo de local playerItem = getPlayerItemById(cid, true, items[k][1]) poe print("Item id: " ..item.uid) e me diz o que aparece no console qnd o player pega um item com o sistema p eu ver o que ta retornando
-
(Resolvido)(HELP) Action Autoloot System
@El Reverso troca tudo por local blocked_items = {8413, 5726} -- adicione aqui os itens que vc quer bloquear separados por , function onUse(cid, item, fromPosition, itemEx, toPosition) if getItemAttribute(item.uid, "corpseowner") ~= cid then return doPlayerSendCancel(cid, "You're not the owner.") end local items = {} for i = 0, getContainerSize(item.uid) do local it = getContainerItem(item.uid, i) if it.uid > 0 then table.insert(items, {it.itemid, it.type}) doRemoveItem(it.uid) end end if #items > 0 then for k = 1, #items do local playerItem = getPlayerItemById(cid, true, items[k][1]) if playerItem.uid > 0 and not isInArray(blocked_items, item.uid) then if (playerItem.type + items[k][2]) > 100 then doPlayerAddItem(cid, items[k][1], (playerItem.type + items[k][2]) - 100) doTransformItem(playerItem.uid, items[k][1], 100) else doTransformItem(playerItem.uid, items[k][1], playerItem.type + items[k][2]) end elseif not isInArray(blocked_items, item.uid) then doPlayerAddItem(cid, items[k][1], items[k][2]) end end return true end doSetItemActionId(item.uid, 0) return false end
-
(Resolvido)(HELP) Action Autoloot System
@El Reverso tem sim vei calmai q vamo resolver troca local it = getContainerItem(item.uid, i) if it.uid > 0 and not isInArray(blocked_items, getContainerItem(item.uid)) then por local it = getContainerItem(item.uid, i) local itt = getContainerItem(item.uid) if it.uid > 0 and not isInArray(blocked_items, itt) then é exatamente desse jeito que bloqueia, só to apanhando p pegar o id do item, n tinha lido o código muito bem antes, agora acho que vai se isso não der certo, poe print("Isso aqui: " ..getContainerItem(item.uid)) em baixo do local it = getContainer(item.uid, i) e me diz o que aparece no console
-
(Resolvido)(HELP) Action Autoloot System
@El Reverso troca todo o código por local blocked_items = {8413, 5726} -- adicione aqui os itens que vc quer bloquear separados por , function onUse(cid, item, fromPosition, itemEx, toPosition) if getItemAttribute(item.uid, "corpseowner") ~= cid then return doPlayerSendCancel(cid, "You're not the owner.") end local items = {} for i = 0, getContainerSize(item.uid) do local it = getContainerItem(item.uid, i) if it.uid > 0 and not isInArray(blocked_items, getContainerItem(item.uid)) then table.insert(items, {it.itemid, it.type}) doRemoveItem(it.uid) end end if #items > 0 then for k = 1, #items do local playerItem = getPlayerItemById(cid, true, items[k][1]) if playerItem.uid > 0 then if (playerItem.type + items[k][2]) > 100 then doPlayerAddItem(cid, items[k][1], (playerItem.type + items[k][2]) - 100) doTransformItem(playerItem.uid, items[k][1], 100) else doTransformItem(playerItem.uid, items[k][1], playerItem.type + items[k][2]) end else doPlayerAddItem(cid, items[k][1], items[k][2]) end end return true end doSetItemActionId(item.uid, 0) return false end acho que agora vai
-
(Resolvido)(HELP) Action Autoloot System
@El Reverso troca também o if it.uid > 0 and not isInArray(blocked_items,it.uid) then por if it.uid > 0 and not isInArray(blocked_items, item.uid) then
-
[PEDIDO] System PET TFS 0.4
esse é o melhor pet system que eu conheço https://otland.net/threads/mod-pet-system-tfs-0-3-7-0-3-6-0-4-0.259531/ nossa o post é de 2019 deixa quieto nem vi
-
(Resolvido)(HELP) Action Autoloot System
@El Reverso kkkkkkkkkkkkkkkkk comi umas 5 letras da palavra foi mal, troca if playerItem.uid > 0 and not isInArray(blocked_items,it.uid) then por if playerItem.uid > 0 and not isInArray(blocked_items, playerItem.uid) then e me diz o que rola
-
Chest daily (Vip)
@raicont since I don't know the storage of your vip system I made it to 300+ only, if you want it vip only then tell me your vip storage function onUse(cid, item, fromPosition, itemEx, toPosition) local daysvalue = 1 * 24 * 60 * 60 local daily = getPlayerStorageValue(cid, 13541) local rewards = { { item = 12832, count = 1 }, { item = 2160, count = 100 }, { item = 12227, count = 1 }, { item = 12331, count = 1 }, { item = 12618, count = 5 }, { item = 12242, count = 1 }, { item = 2145, count = 1 } } if (daily == -1) then daily = 0 end if getPlayerStorageValue(cid, 13540) - os.time() <= 0 and getPlayerLevel(cid) >= 300 then local random = math.random(1, #rewards) doPlayerAddItem(cid, rewards[random].item, rewards[random].count) time = os.time() + daysvalue setPlayerStorageValue(cid, 13540, time) setPlayerStorageValue(cid, 13541, daily+1) local daily = getPlayerStorageValue(cid, 13541) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You done your " .. daily .. " Daily Quest. You got 1 cc.") elseif getPlayerLevel(cid) < 300 then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You must be at least level 300 to do this quest.") else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You must wait 24 Hours to get your daily quest. Next avaiable will be at: " .. os.date("%H:%M:%S", getPlayerStorageValue(cid, 13540)) .. ".") end return true end if this solves your issue please don't forget to select best answer and upvote
-
[TFS 0.x] Função doPlayerTargetCreature
@WooX sem sacanagem tava me perguntando essa semana ai se tinha como fuçar com o target do player e deixei a ideia morrer, muito obrigado por disponibilizar a função man
-
(Resolvido)(HELP) Action Autoloot System
@El Reverso não testei mas tenta ai, ve o que da ---- REPOSTA EDITADA ---- esse é o script funcional, pra vcs n precisarem ir até a pag 2 p pegar o sistema funcionando local blocked_items = {8413, 5726} -- adicione aqui os itens que vc quer bloquear separados por , function onUse(cid, item, fromPosition, itemEx, toPosition) if getItemAttribute(item.uid, "corpseowner") ~= cid then return doPlayerSendCancel(cid, "You're not the owner.") end local items = {} for i = 0, getContainerSize(item.uid) do local it = getContainerItem(item.uid, i) if it.uid > 0 and not isInArray(blocked_items,it.itemid) then table.insert(items, {it.itemid, it.type}) doRemoveItem(it.uid) end end if #items > 0 then for k = 1, #items do local playerItem = getPlayerItemById(cid, true, items[k][1]) if playerItem.uid > 0 then if (playerItem.type + items[k][2]) > 100 then doPlayerAddItem(cid, items[k][1], (playerItem.type + items[k][2]) - 100) doTransformItem(playerItem.uid, items[k][1], 100) else doTransformItem(playerItem.uid, items[k][1], playerItem.type + items[k][2]) end else doPlayerAddItem(cid, items[k][1], items[k][2]) end end return true end doSetItemActionId(item.uid, 0) return false end
-
summon controlado
@Senju uchira @joaovitorbk9 da uma olhada nesse pet system https://otland.net/threads/mod-pet-system-tfs-0-3-7-0-3-6-0-4-0.259531/, vc pode controlar pra onde ele anda, que magias usa, ele ganha niveis e muito mais. se so quer controlar magia, analisa os scripts ai e poe só eles no seu ot
-
(Resolvido)Creature script erro
@Mor3nao cara pior que tem, vi um mlk falando disso hj no otland, vou ve se acho aq dnv o post lá e se achar edito a resposta aq edit: aqui, só muda o criticalHitSystemXHP pro nome do seu evento ai Open data/events/events.xml Find <event class="Creature" method="onTargetCombat" enabled="0" /> and change enabled="0" to enabled="1" Open data/events/scripts/creature.lua Find function Creature:onTargetCombat(target) and add there target:registerEvent("criticalHitSystemXHP")
-
Ajuda Tile VIP
@Darwiinxp n parece ter nada de errado ai mas tenta assim function onStepIn(cid, item, position, fromPosition) if item.actionid == 13700 then local config = { msgDenied = "No eres VIP, contacta al administrador.", msgWelcome = "Bienvenido al Area vip." } if getPlayerStorageValue(cid, 13540) - os.time() <= 0 then doPlayerSendCancel(cid, config.msgDenied) doTeleportThing(cid, fromPosition, true) doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE) return TRUE end doPlayerSendCancel(cid, config.msgWelcome) end return true end
-
Reload não funciona normalmente
@diarmaint se vc olhar dentro da pasta lib do seu servidor vc vai ver que tem uns arquivos declarando um monte de coisa, dentro da pasta creaturescripts tb, spell, npcs e tudo mais. vc provavelmente ta usando libs que não são próprias da sua source (o .exe que vc usa p iniciar o ot) vc tem que copiar as libs proprias do seu .exe pra pasta do seu ot e ver se resolve
-
(Resolvido)Creature script erro
@Mor3nao o sistema de critico p 0.4 q é parecido com o seu (pelo menos na ideia) tambem nao funciona em monstro A NAO SER que vc registre o script em >> TODOS << os montros da uma lidinha aqui https://tibiaking.com/forums/topic/35663-critical-skill-system/ na parte do <script> <event name="critical"/> </script>
-
Reload não funciona normalmente
@diarmaint vc precisa copiar as libs da datapack q vc usa de base por exemplo, as minhas são as libs q tao nessa base https://github.com/Fir3element/3777
-
[Lua & C++] getOtsysTime() + getPlayerPing(cid) + doPlayerSendPing(cid)
@Yan Liima coloquei mas parece bem impreciso, meu ping pelo cmd é 153 +/- mas qnd checo ingame ta uns 20 e tantos, é p ser assim msm ou eu errei algo?
-
(Resolvido)Ao usar armas servidor congela
cara, é muito simples cada vocação tem uma "especialização" com armas digamos assim, knight upa bem a sword mas upa mal o ml, e o knight de alguma forma pegar ml 120 e usar um exura vita da vida o servidor vai freezar, do mesmo jeito que se um sorcerer pegar sword 120 e tentar atacar com ela o servidor vai freezar. Isso é definido no vocations.xml ve o valor da sword do knight e poe esse valor em sword de todos, ml do mage pra todas tambem, desse jeito n vai ter freeze