Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 10/28/20 em todas áreas

  1. Em alguns servidores a função 'doPlayerRemoveItem' não tem o parâmetro 'ignoreEquipped', fazendo com que o jogador acabe vendendo os itens que estão nos slots(equipados). Esta função(gambiarra) serve para que o jogador ao vender itens no npc, o mesmo só compre itens que estiverem dentro da bp. Primeiramente coloque essas duas funções na lib do seu ot caso você não tenha: https://pastebin.com/raw/BfRLcrLA agora vá em \data\npc\lib\npcsystem e abra o seu modules.lua substitua essa função: -- Callback onSell() function. If you wish, you can change certain Npc to use your onSell(). function ShopModule:callbackOnSell(cid, itemid, subType, amount, ignoreCap, inBackpacks) if(self.npcHandler.shopItems[itemid] == nil) then error("[ShopModule.onSell]", "items[itemid] == nil") return false end if(self.npcHandler.shopItems[itemid].sellPrice == -1) then error("[ShopModule.onSell]", "Attempt to sell a non-sellable item") return false end local parseInfo = { [TAG_PLAYERNAME] = getPlayerName(cid), [TAG_ITEMCOUNT] = amount, [TAG_TOTALCOST] = amount * self.npcHandler.shopItems[itemid].sellPrice, [TAG_ITEMNAME] = self.npcHandler.shopItems[itemid].realName } if(subType < 1) then subType = -1 end if(doPlayerRemoveItem(cid, itemid, amount, subType)) then local msg = self.npcHandler:getMessage(MESSAGE_SOLD) msg = self.npcHandler:parseMessage(msg, parseInfo) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg) doPlayerAddMoney(cid, amount * self.npcHandler.shopItems[itemid].sellPrice) if(NPCHANDLER_CONVBEHAVIOR ~= CONVERSATION_DEFAULT) then self.npcHandler.talkStart[cid] = os.time() else self.npcHandler.talkStart = os.time() end return true else local msg = self.npcHandler:getMessage(MESSAGE_NEEDITEM) msg = self.npcHandler:parseMessage(msg, parseInfo) doPlayerSendCancel(cid, msg) if(NPCHANDLER_CONVBEHAVIOR ~= CONVERSATION_DEFAULT) then self.npcHandler.talkStart[cid] = os.time() else self.npcHandler.talkStart = os.time() end return false end end por esta: -- Callback onSell() function. If you wish, you can change certain Npc to use your onSell(). function ShopModule:callbackOnSell(cid, itemid, subType, amount, ignoreCap, inBackpacks) if(self.npcHandler.shopItems[itemid] == nil) then error("[ShopModule.onSell]", "items[itemid] == nil") return false end if(self.npcHandler.shopItems[itemid].sellPrice == -1) then error("[ShopModule.onSell]", "Attempt to sell a non-sellable item") return false end local parseInfo = { [TAG_PLAYERNAME] = getPlayerName(cid), [TAG_ITEMCOUNT] = amount, [TAG_TOTALCOST] = amount * self.npcHandler.shopItems[itemid].sellPrice, [TAG_ITEMNAME] = self.npcHandler.shopItems[itemid].realName } if(subType < 1) then subType = -1 end if getPlayerSlotItem(cid, CONST_SLOT_BACKPACK).itemid ~= 0 then local bp = getPlayerSlotItem(cid, CONST_SLOT_BACKPACK) local z = getContainerItemsById(bp, itemid) if #z >= amount then for i = 1, amount do doRemoveItem(z[i].uid) end local msg = self.npcHandler:getMessage(MESSAGE_SOLD) msg = self.npcHandler:parseMessage(msg, parseInfo) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg) doPlayerAddMoney(cid, amount * self.npcHandler.shopItems[itemid].sellPrice) if(NPCHANDLER_CONVBEHAVIOR ~= CONVERSATION_DEFAULT) then self.npcHandler.talkStart[cid] = os.time() else self.npcHandler.talkStart = os.time() end return true else local msg = self.npcHandler:getMessage(MESSAGE_NEEDITEM) msg = self.npcHandler:parseMessage(msg, parseInfo) doPlayerSendCancel(cid, msg) if(NPCHANDLER_CONVBEHAVIOR ~= CONVERSATION_DEFAULT) then self.npcHandler.talkStart[cid] = os.time() else self.npcHandler.talkStart = os.time() end return false end else doPlayerSendCancel(cid, "I only buy items that are inside a BackPack") if(NPCHANDLER_CONVBEHAVIOR ~= CONVERSATION_DEFAULT) then self.npcHandler.talkStart[cid] = os.time() else self.npcHandler.talkStart = os.time() end return false end end
  2. 1 ponto
    Não é possível desencriptar, conforme descrito no tutorial '- Recomendo inicialmente criar uma cópia da pasta que ira encriptar, pois não é reversivo' só serve para o OTCv8
  3. Armas com efeitos

    Kill of sumoners reagiu a Celulose por uma resposta no tópico

    1 ponto
    local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1) setCombatParam(combat, COMBAT_PARAM_BLOCKSHIELD, 1) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatFormula(combat, COMBAT_FORMULA_SKILL, 1.0, 0, 1.0, 0) function onUseWeapon(cid, var) local chance = 10 -- chance em porcentagem de acontecer o script de double attack if chance <= math.random(1,100) then doCombat(cid, combat, var) else doCombat(cid, combat, var) addEvent(doCombat, 500, cid, combat, var) end return true end <melee id="7430" event="script" value="script.lua"/> https://tibiaking.com/forums/topic/86748-double-hit-na-arma/
  4. erro ao compilar

    Kayokyus reagiu a Naze por uma resposta no tópico

    1 ponto
    Este tópico foi movido para a seção de Suporte Otserv.
  5. TFS para OTX

    Cat reagiu a WooX por uma resposta no tópico

    1 ponto
    No geral vai ter que trocar todas as libs do datapack, diretórios data/lib e data/npc/lib. Eu discordo. Acho um esforço válido, a diferença não é gigantesca mas OTX2 diferente do TFS 0.4 recebe atualizações até hoje e possui algumas correções e melhorias que o TFS 0.4 não tem. Se esse é o único motivo de você querer a mudança você pode acabar querendo voltar atrás, TFS 0.4 também roda no linux sem problemas e embora no linux você tenha a disposição mais ferramentas pra lidar com esse tipo de ataque não é nada milagroso, dependendo da magnitude do ataque vão te derrubar seja no Windows ou Linux.
  6. Procuro equipe para otserv! narutibia

    tf235 reagiu a warlens por uma resposta no tópico

    1 ponto
    Meu nome é Warlens, sei tudo um pouco, e sou muito interessado em nrt 45°, estou disposto a ajudar sem fins lucrativos, meu discord para nós conversamos ZEKKEN#6932
  7. (Resolvido)Totem com managain ou lifegain

    Orravini reagiu a Naze por uma resposta no tópico

    1 ponto
    Oq quer não é difícil se realmente quer tenta fazer você precisa criar um movements, onEquip e um onDeEquip com esse item, fazer uma verificação de q se ele não for equipado no slot correto que queria retorna false (return false), caso seja equipado no slot certo, ira dar os efeito q deseja. Aqui tem um pequeno tutorial basico de movements: link Aqui tem um script de um item parecido com oq quer se nao igual: link E procure outros onEquip e onDeEquip e tente entender como funciona q vai conseguir. Qualquer duvida so mandar demoro mais respondo. @edit, e claro no onDeEquip colocar para retirar os efeitos q colocou na hr de equipar.
  8. Procuro equipe para otserv! narutibia

    tf235 reagiu a Hoshi por uma resposta no tópico

    1 ponto
    Oi, eu sou novo por aqui no TK pode me chamar de Hoshi ou Thiago Hoshigake < sim esse é o meu nome e eu queria te ajudar n quero nada em troca, posso te ajudar no mapa ou em vocation/spells só chamar no discord ThE BELzeBU#4215
  9. Pack de CLIENT'S DBO & NTO

    El Reverso reagiu a ITALOx por uma resposta no tópico

    1 ponto
    Olá TIBIA KING Hoje trago pra vocês um pack de Client's. como de DBO como de NTO. espero que vocês gostem. Download: Scan: https://www.virustotal.com/gui/file/79741ebb9a15f4d9e6fefef2187d1904d4e0fb4e19f6948b6209d47839ef0362/detection Não postem em outros fórum sem a minha permissão. é isto! bom aproveito a todos. 2019 - Bom dia.
  10. 1 ponto
    Este tópico foi movido para a área correta. Esta é uma mensagem automática! Pedimos que leia as regras do fórum!
Líderes está configurado para São Paulo/GMT-03:00

Informação Importante

Confirmação de Termo