Ir para conteúdo
  • Cadastre-se

MaTTch

Membro
  • Total de itens

    510
  • Registro em

  • Última visita

  • Dias Ganhos

    12

Tudo que MaTTch postou

  1. Tenta fazer assim (não testei): Vai em data/npc/lib e procura por um arquivo chamado npchandler.lua, abra ele e procure pela função: function NpcHandler:greet(cid) e dentro dessa função, apague essa parte: self:say(msg) e veja se deu certo. OBS: é pra apagar onde esta self:say(msg) e não self:say(msg, cid).
  2. Olá. A algum tempo atrás eu havia feito essa função, mas decidi compartilhar com vocês. Você pode instala-la definitivamente na sua libs ou pode apenas usar em algum script ocasional: function getCombatAreaPos(centerpos, area) -- by MaTTch if(type(area) ~= "table") then error("area is not a table") return false elseif(not centerpos) then return false end local t, center, ret = {}, {}, {} for n in ipairs(area) do for i = 2, 3 do if(table.find(area[n], i)) then center = {n, table.find(area[n], i)} break end end end if(#center == 0) then error("area do not h
  3. Como o Danihcv disse ali em cima, pode ser algum script interferindo.
  4. Vai no seu items.xml, procure por "fieldabsorbpercentfire" e apaga.
  5. Verdade... Tinha me esquecido dessa função, farei uma futura edição disso pra galera aqui.
  6. :hum: Algo não esta certo... Poste seu script do look pra mim dar uma olhada.
  7. Atualizei o tutorial, olhe no 5° passo. Eu tinha me esqueci dessa parte...
  8. Não entendi... Não quer aparecer nada no look?
  9. No client Tibia não... Uma forma é através de uma janela de opção, mas que só deve ser possível no OTClient. Você pode mudar dessa forma: local config = { [1] = {9999, math.floor(vaultMoney/getItemInfo(9999).worth)}, [2] = {ITEM_CRYSTAL_COIN, math.floor((vaultMoney/getItemInfo(ITEM_CRYSTAL_COIN).worth)-(math.floor(vaultMoney/getItemInfo(9999).worth)*100))}, [3] = {ITEM_PLATINUM_COIN, math.floor((vaultMoney/getItemInfo(ITEM_PLATINUM_COIN).worth)-(math.floor(vaultMoney/getItemInfo(ITEM_CRYSTAL_COIN).worth)*100))}, [4] = {ITEM_GOLD_COIN, math.floor(vaultMoney%100)} } No numero
  10. local config = { showGamemasters = getBooleanFromString(getConfigValue('displayGamemastersWithOnlineCommand')) } function onSay(cid, words, param, channel) local strings, i, position, added = {""}, 1, 1, false for _, pid in ipairs(getPlayersOnline()) do if(added) then if(i > (position * 7)) then strings[position] = strings[position] .. "," position = position + 1 strings[position] = "" else strings[position] = i == 1 and "" or strings[position] .. ", " end end added = false if((config.showGamemasters or getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_GAM
  11. Bom galera eu resolvi fazer o Vault System a pedido de um amigo meu e decidi compartilhar com vocês. Testado em 8.60 TFS 0.4 EDIT -- O script foi arrumado, pois havia um bug que o player ganhava golds. Vamos lá. 1° - Vá em data/actions/scripts e crie um arquivo chamado vault.lua, e dentro você coloca isso: local vaultStorage = 99991 -- storage em que ficara armazenado os golds ------------------//* Functions //------------------- local function getPlayerFreeSpace(cid) -- by MaTTch local checkSlots, space = {3,5,6,10}, 0 local function getContainerFree(container)
  12. Da algum erro no console? Você adicionou recentemente algum creaturescript?
  13. Sim, mas use o que já esta em multilinguagem logo acima. Ai é você que decide, por NPC, Talkactions, Movements e etc... tem varias formas.
  14. Quem tem o storage 8971 maior ou igual a 2, ele respondera em português e quem tem menos de 2, ele respondera em inglês.
  15. local config = { langStorage = 8971, [55560] = {6533, eng = "Text1", pt = "Texto1"}, [55561] = {6533, eng = "Text2", pt = "Texto2"} } function onUse(cid, item, fromPosition, itemEx, toPosition) if(config[item.uid] ~= nil) then if(getPlayerStorageValue(cid, item.uid) == -1) then local book, text = doPlayerAddItem(cid, config[item.uid][1], 1), getPlayerStorageValue(cid, config.langStorage) >= 2 and config[item.uid].pt or config[item.uid].eng doSetItemText(book, text) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "You have found a "..getItemNameById(config[item.uid][1])..
  16. local config = { --[uid] = {bookId, "texto"} [55560] = {6533, "Texto1"}, [55561] = {6533, "Texto2"} } Dentro do [ ] você coloca o uniqueid do baú, o 6533 é o ID do livro e o "Texto1" é o que vai ser escrito dentro, então se tu clicar no baú que tem o uid 55560, vai ganhar o item de id 6533 (livro) que dentro vai estar escrito "Texto1". em actions.xml você coloca: <action uniqueid="55560-55561" event="script" value="NOME_DO_ARQUIVO.lua"/> perceba que os números do uniqueid vai do 55560 ao 55561 que é o mesmo que esta no script, você pode muda-los.
  17. Esqueci das virgulas, tenta agora: local config = { specific_weapons = "yes", -- Somente armas especificas poderãoo dar cri­tico? (("yes" / true) / ("no" / false)) critical_chance = 25, -- 1 a 100 critical_damage = 200, -- damage + critical_damage% critical_weapons = { [2400] = {30, 100}, [2222] = {25, 200} } } config.specific_weapons = getBooleanFromString(config.specific_weapons) function onStatsChange(cid, attacker, type, combat, value) if(type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS) then if(specific_weapons) then
  18. local config = { --[uid] = {bookId, "texto"} [55560] = {6533, "Texto1"}, [55561] = {6533, "Texto2"} } function onUse(cid, item, fromPosition, itemEx, toPosition) if(config[item.uid] ~= nil) then if(getPlayerStorageValue(cid, item.uid) == -1) then local book, text = doPlayerAddItem(cid, config[item.uid][1], 1), config[item.uid][2] doSetItemText(book, text) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "You have found a "..getItemNameById(config[item.uid][1])..".") setPlayerStorageValue(cid, item.uid, 1) else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "It's
  19. local config = { specific_weapons = "yes" -- Somente armas especificas poderãoo dar cri­tico? (("yes" / true) / ("no" / false)) critical_chance = 25 -- 1 a 100 critical_damage = 200 -- damage + critical_damage% critical_weapons = { [2400] = {30, 100}, [2222] = {25, 200} } } config.specific_weapons = getBooleanFromString(config.specific_weapons) function onStatsChange(cid, attacker, type, combat, value) if(type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS) then if(specific_weapons) then for weapon_ids, arrays in pairs(config.critical_weapons) do if(getPlayerSlot
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo