Ir para conteúdo

Darcio Antonio

Membro
  • Registro em

  • Última visita

Tudo que Darcio Antonio postou

  1. Salve man!, testa ai local config = { cooldownHours = 6, -- tempo em horas para usar novamente level = 100, storage = 30015, -- armazena o timestamp da última vez que usou requiredItem = 6527, playerPositions = { {x = 247, y = 659, z = 13}, {x = 247, y = 660, z = 13}, {x = 247, y = 661, z = 13}, {x = 247, y = 662, z = 13} }, teleportPositions = { {x = 189, y = 650, z = 13}, {x = 189, y = 651, z = 13}, {x = 189, y = 652, z = 13}, {x = 189, y = 653, z = 13} } } function onUse(cid, item, fromPosition, itemEx, toPosition) if item.itemid == 1946 then doTransformItem(item.uid, 1945) return true end local players = {} for i, pos in ipairs(config.playerPositions) do local creature = getTopCreature(pos).uid if creature > 0 and isPlayer(creature) then -- Verificações individuais if getPlayerLevel(creature) < config.level then doPlayerSendCancel(cid, "Todos os jogadores precisam ter level " .. config.level .. " ou mais.") return true end if getPlayerItemCount(creature, config.requiredItem) < 1 then doPlayerSendCancel(cid, "Todos os jogadores precisam ter o item necessário (ID: " .. config.requiredItem .. ").") return true end local lastUse = getPlayerStorageValue(creature, config.storage) if lastUse ~= -1 and os.time() - lastUse < (config.cooldownHours * 3600) then local remaining = math.ceil(((lastUse + config.cooldownHours * 3600) - os.time()) / 60) doPlayerSendCancel(cid, "Todos os jogadores devem esperar " .. remaining .. " minutos para usar novamente.") return true end table.insert(players, creature) else doPlayerSendCancel(cid, "Todos os quadrados precisam estar ocupados por jogadores.") return true end end -- Tudo ok, teleporta e consome o item for i, player in ipairs(players) do doTeleportThing(player, config.teleportPositions[i], false) doSendMagicEffect(config.playerPositions[i], CONST_ME_POFF) doSendMagicEffect(config.teleportPositions[i], CONST_ME_ENERGYAREA) doPlayerRemoveItem(player, config.requiredItem, 1) setPlayerStorageValue(player, config.storage, os.time()) end doTransformItem(item.uid, 1946) return true end
  2. No meu caso uso OTX 2 e resolveu nessa parte aqui if(doPlayerRemoveItem(cid, itemid, amount, subType)) then Mudei para isso aqui if(doPlayerRemoveItem(cid, itemid, amount, subType, true)) then Porem no meu caso eu tenho adicionado a função de ignore item in slot! Que peguei dos nossos amigos Gringos!! Solved - NPCs buy from EQ Slots bug. (clost it) | OTLand
  3. Você tem que especificar oque você quer kkkkk Subir a mana e vida ou centralizar a msg ?
  4. Conseguiu resolver man ? estou com o mesmo problema!
  5. Sim consegui executar ja, deu mor trampo pra pagar aleatoriamente 1 por.1
  6. Fiz em video para melhor explicar Video
  7. + Alguem pode ajudar não retorna nada de nada
  8. é que tipo não esta retornando nada e tambem nao da erro de nada
  9. Vou tentar mano! @Vodkar seria isso para mostrar? return doPlayerPopupFYI(player, "Itens ".. result.free(query) .. "")
  10. TFS 1.x Existe esse script aqui, ele retora se existe itens dentro do dp X local town_id = 10 if getPlayerDepotItems(cid, town_id) > 0 then -- if depot box counts as an item, change 0 to 1 print("You have items in depot.") else print("Your depot has no items.") end Gostaria de saber se existe alguma forma de fazer ele retornar os ids dos itens que estão dentro dele! vão ser no máximo 6 itens só vai ser um DP especifico! @Vodkart vou te marcar pq vc é o deus dos script quem sabe kkkkkk
  11. Porque não retorna os valores ? function onSay(cid, words, param, channel) local res = db.getResult('SELECT `tfp` FROM `accounts` WHERE `name` = \''.. getPlayerAccount(cid) ..'\'') doPlayerPopupFYI(cid, "Você tem ".. res .." Adventure Points.") return true end ERRO QUE DA: No Banco de Dados:
  12. Ai @Vodkart sem duvidas vc é o mais pika mano! pqp
  13. Eu fiz em movimentes pra testar Pelo menos agora mostra um erro
  14. @Vodkart Ficou show man parabéns, agora uma pergunta, existe algum script que deleta 1 determinado item da casa do player, pq tenho um script q quando o player fica offline por tipo 3 dias ele remove a casa do player, ai gostaria de saber se tem como colocar pra antes de remover a casa do player e ao inves de levar os itens para o dp ele fazer uma varredura na casa por tipo 2 ou mais itens dos ids 1111, 2222, 3333 se ele encontrar os itens no chao da casa ele remove 'deleta' os itens ai depois ele manda os itens restantes para o depot do player, pq como disse estou criando um jogo de plantação ai quando ele remove a house as arvores vão para o dp do cara mas as arvores nao podem ser removida nem movidas euhehue! SCRIPT Q TENHO Q REMOVE A CASA DO PLAYER local function doCheckHouses() local dias = 3 local tempo = os.time() - (dias * 24 * 60 * 60) local registros = db.storeQuery("SELECT `houses`.`owner`, `houses`.`id` FROM `houses`,`players` WHERE `houses`.`owner` != 0 AND `houses`.`owner` = `players`.`id` AND `players`.`lastlogin` <= " .. tempo .. ";") if registros ~= false then local count = 0 print('house leave code') repeat count = count + 1 local owner = result.getNumber(registros, "owner") local houseId = result.getNumber(registros, "id") local house = House(houseId) if house and (owner > 0) then print(house:getName()) house:setOwnerGuid(0) end until not result.next(registros) print('house leave house count:' .. count) result.free(registros) end end function onStartup() addEvent(doCheckHouses, 10 * 1000) return true end
  15. @Vodkart nao foi por conta disso ai
  16. Xi mano deu isso aq tfs 1.3 ta
  17. Basicamente por hora o player cria o char, loga no game e anda a té encontrar uma fazenda 'casa' livre e da !buyhouse por isso queria fazer meio q automatico
  18. Existe alguma forma de quando o player criar um char, (a conta só pode ter 1 character já bloquiei isso no cofing do site) ele já receber uma casa no personagem dele? Pois estou desenvolvendo um game de plantação e precisaria muito disso! Grato dês de já:
  19. Ei man maquina virtual do google ? se for pq vc nao libero as portas ainda?
  20. Dependendo a versão é so trocar a pasta npcsystem por essa aqui https://www.mediafire.com/file/jtx8o7b2k8bft2o/npcsystem.zip/file Está em português os npcs então se quiser em inglês é só traduzir ok!
  21. Link off man remove o role ou arruma pfv!
  22. Pai esta dando esse erro aqui na distro quando vou entregar a recompensa! [11:7:30.059] [Error - NpcScript Interface] [11:7:30.059] data/npc/scripts/simple_task.lua:onCreatureSay [11:7:30.059] Description: [11:7:30.059] data/lib/100-shortcut.lua:260: attempt to index a boolean value [11:7:30.059] stack traceback: [11:7:30.060] data/lib/100-shortcut.lua:260: in function 'getItemNameById' [11:7:30.060] [string "task_sys = {..."]:85: in function 'getItemsFromList' [11:7:30.060] data/npc/scripts/simple_task.lua:53: in function 'callback' [11:7:30.060] data/npc/lib/npcsystem/npchandler.lua:458: in function 'onCreatureSay' [11:7:30.060] data/npc/scripts/simple_task.lua:8: in function <data/npc/scripts/simple_task.lua:8> A linha do script está asim! [1] = {name = "Ratos", start = 176201, monsters_list = {"Rato","Ratazana"}, level = 1, count = 50, points = 0, items = {{2696,10}}, reward = {{13126,1}}, exp = 400, money = 500}, A onde está dando o erro no LIB 100 etc. está asim function getItemNameById(itemid) return getItemDescriptionsById(itemid).name end function getItemPluralNameById(itemid) return getItemDescriptionsById(itemid).plural end
  23. Achei o novo mod dele segue o link gays!
  24. .Qual servidor ou website você utiliza como base? 8.60 0.4 Qual o motivo deste tópico? Edição no script! Você tem o código disponível? Se tiver publique-o aqui: <?xml version="1.0" encoding="UTF-8"?> <mod name="simple_task" version="3.0" author="Vodkart" contact="xtibia.com" enabled="yes"> <config name="task_func"><![CDATA[ tasktabble = { ["demonio"] = {monster_race={"demonio"}, storage_start = 200265, storage = 91065,count = 200,exp = 30000,money = 15000, reward = {{13511,1}}}, ["moita"] = {monster_race={"moita"}, storage_start = 200264, storage = 91064,count = 200,exp = 30000,money = 15000, reward = {{13512,1}}}, ["orakas"] = {monster_race={"orakas"}, storage_start = 200263, storage = 91063,count = 200,exp = 25000,money = 12000, reward = {{13513,1}}}, ["verme de zaion"] = {monster_race={"verme de zaion"}, storage_start = 200262, storage = 91062,count = 200,exp = 20000,money = 9000, reward = {{13514,1}}}, ["dalamor"] = {monster_race={"dalamor"}, storage_start = 200261, storage = 91061,count = 200,exp = 20000,money = 8000, reward = {{13515,1}}}, ["arguda"] = {monster_race={"arguda"}, storage_start = 200260, storage = 91060,count = 200,exp = 15000,money = 5000, reward = {{13516,1}}}, ["besta do pantano"] = {monster_race={"besta do pantano"}, storage_start = 200259, storage = 91059,count = 200,exp = 15000,money = 5000, reward = {{13517,1}}}, ["rabutri"] = {monster_race={"rabutri"}, storage_start = 200258, storage = 91058,count = 200,exp = 15000,money = 5000, reward = {{13518,1}}}, ["vampiro"] = {monster_race={"vampiro"}, storage_start = 200257, storage = 91057,count = 200,exp = 10000,money = 5000, reward = {{13519,1}}}, ["aranha de cristal"] = {monster_race={"aranha de cristal"}, storage_start = 200256, storage = 91056,count = 200,exp = 40000,money = 15000, reward = {{13520,1}}}, ["pata rachada"] = {monster_race={"pata rachada"}, storage_start = 200255, storage = 91055,count = 200,exp = 40000,money = 20000, reward = {{13521,1}}}, ["gigante"] = {monster_race={"gigante"}, storage_start = 200254, storage = 91054,count = 150,exp = 30000,money = 10000, reward = {{13522,1}}}, ["crocodilo"] = {monster_race={"crocodilo"}, storage_start = 200253, storage = 91053,count = 100,exp = 10000,money = 6000, reward = {{13220,1}}}, ["zumbi"] = {monster_race={"zumbi"}, storage_start = 200252, storage = 91052,count = 300,exp = 20000,money = 10000, reward = {{13218,1}}}, ["fantasma"] = {monster_race={"fantasma"}, storage_start = 200251, storage = 91051,count = 300,exp = 40000,money = 20000, reward = {{13219,1}}}, ["hydra"] = {monster_race={"hydra"}, storage_start = 200250, storage = 91050,count = 300,exp = 40000,money = 20000, reward = {{13217,1}}}, ["dragao"] = {monster_race={"dragao"}, storage_start = 200249, storage = 91049,count = 300,exp = 40000,money = 20000, reward = {{13210,1}}}, ["groto"] = {monster_race={"groto"}, storage_start = 200248, storage = 91048,count = 200,exp = 25000,money = 7000, reward = {{13155,1}}}, ["gork"] = {monster_race={"gork"}, storage_start = 200247, storage = 91047,count = 100,exp = 40000,money = 10000, reward = {{13154,1}}}, ["caranguejeira"] = {monster_race={"caranguejeira"}, storage_start = 200246, storage = 91046,count = 100,exp = 4000,money = 4000, reward = {{13151,1}}}, ["tartaruga gigante"] = {monster_race={"tartaruga gigante"}, storage_start = 200245, storage = 91045,count = 150,exp = 10000,money = 10000, reward = {{13127,1}}}, ["tartaruga"] = {monster_race={"tartaruga"}, storage_start = 200244, storage = 91044,count = 300,exp = 5000,money = 6000, reward = {{13128,1}}}, ["aranha mae"] = {monster_race={"aranha mae"}, storage_start = 200242, storage = 91042,count = 300,exp = 40000,money = 10000, reward = {{13129,1}}}, ["rex"] = {monster_race={"rex"}, storage_start = 200241, storage = 91041,count = 100,exp = 30000,money = 10000, reward = {{13130,1}}}, ["triceratops"] = {monster_race={"triceratops"}, storage_start = 200240, storage = 91040,count = 150,exp = 30000,money = 10000, reward = {{13131,1}}}, ["persona"] = {monster_race={"persona","monstro de agua"}, storage_start = 200239, storage = 91039,count = 200,exp = 25000,money = 10000, reward = {{13132,1}}}, ["golem de lodo"] = {monster_race={"monstro da caverna","golem de lodo"}, storage_start = 200238, storage = 91038,count = 100,exp = 4000,money = 3000, reward = {{13133,1}}}, ["gosma"] = {monster_race={"gosma"}, storage_start = 200237, storage = 91037,count = 50,exp = 5000,money = 2000, reward = {{13134,1}}}, ["vesma"] = {monster_race={"vesma"}, storage_start = 200236, storage = 91036,count = 300,exp = 40000,money = 3000, reward = {{13135,1}}}, ["dragao filhote"] = {monster_race={"dragao filhote"}, storage_start = 200235, storage = 91035,count = 150,exp = 25000,money = 10000, reward = {{13136,1}}}, ["monstro"] = {monster_race={"monstro","monstro do pantano"}, storage_start = 200234, storage = 91034,count = 150,exp = 4500,money = 3000, reward = {{13137,1}}}, ["rato"] = {monster_race={"rato","ratazana"}, storage_start = 200233, storage = 91033,count = 50,exp = 400,money = 500, reward = {{13126,1}}}, ["aranha"] = {monster_race={"aranha","aranha venenosa"}, storage_start = 200232, storage = 91032,count = 50,exp = 2000,money = 1000, reward = {{13138,1}}}, ["lobo"] = {monster_race={"lobo","lobo assassino","lobo branco"}, storage_start = 200231, storage = 91031,count = 150,exp = 4500,money = 2000, reward = {{13139,1}}}, ["verme"] = {monster_race={"verme"}, storage_start = 200230, storage = 91030,count = 150,exp = 6000,money = 3000, reward = {{13140,1}}}, ["ogro"] = {monster_race={"ogro","ogro guerreiro","ogro alado","ogro barbaro","ogro enfurecido"}, storage_start = 200229, storage = 91029,count = 150,exp = 10000,money = 3000, reward = {{13141,1}}}, ["besouro"] = {monster_race={"besouro"}, storage_start = 200228, storage = 91028,count = 50,exp = 900,money = 1000, reward = {{13142,1}}}, ["vespa"] = {monster_race={"vespa"}, storage_start = 200227, storage = 91027,count = 50,exp = 1200,money = 1000, reward = {{13143,1}}}, ["centopeia"] = {monster_race={"centopeia"}, storage_start = 200226, storage = 91026,count = 50,exp = 1700,money = 1000, reward = {{13144,1}}}, ["serpente"] = {monster_race={"serpente"}, storage_start = 200225, storage = 91025,count = 50,exp = 500,money = 1000, reward = {{13145,1}}}, ["escorpiao"] = {monster_race={"escorpiao"}, storage_start = 200224, storage = 91024,count = 50,exp = 2250,money = 1000, reward = {{13146,1}}}, ["troll"] = {monster_race={"troll"}, storage_start = 20023, storage = 91023,count = 500,exp = 25000,money = 10000, reward = {{13147,1}}}, ["cyclops"] = {monster_race={"cyclops"}, storage_start = 20022, storage = 91022,count = 500,exp = 25000,money = 10000, reward = {{13148,1}}}, ["ursos"] = {monster_race={"urso"}, storage_start = 200221, storage = 91021,count = 50,exp = 1150,money = 1000, reward = {{13149,1}}}, ["minotauros"] = {monster_race={"minotauro","minotauro guarda","minotauro mago","minotauro arqueiro"}, storage_start = 200220, storage = 91020,count = 1000,exp = 30000,money = 10000, reward = {{13150,1}}} } configbosses_task = { {race = "minotaur",Playerpos = {x = 189, y = 57, z = 7}, FromPosToPos = {{x = 186, y = 54, z = 7},{x = 193, y = 60, z = 7}},time = 5}, {race = "necromancer",Playerpos = {x = 196, y = 39, z = 7}, FromPosToPos = {{x = 195, y = 37, z = 7},{x = 198, y = 41, z = 7}}, time = 5}, {race = "dragon",Playerpos = {x = 208, y = 59, z = 7}, FromPosToPos = {{x = 206, y = 56, z = 7},{x = 209, y = 65, z = 7}}, time = 5} } function CheckTask(cid) for k, v in pairs(tasktabble) do if getPlayerStorageValue(cid,v.storage_start) >= 1 then return true end end return false end function finisheAllTask(cid) local config = { exp = {true,0000}, money = {true,0000}, items ={true,{{000,2},{0000,1}}} } local x = true for k, v in pairs(tasktabble) do if tonumber(getPlayerStorageValue(cid,v.storage)) then x = false end end if x == true then setPlayerStorageValue(cid, 521456, 0) local b = getGlobalStorageValue(63005) if b == -1 then b = 1 end if b < 11 then setGlobalStorageValue(63005,b+1) doBroadcastMessage('[Voce Completou a tarefa] '..getCreatureName(cid)..' was the '..b..' para termina a tarefa!.') doPlayerAddPremiumDays(cid, config.premium[1] == true and config.premium[2] or 0) doPlayerAddExp(cid, config.exp[1] == true and config.exp[2] or 0) doPlayerAddMoney(cid, config.money[1] == true and config.money[2] or 0) if config.items[1] == true then doAddItemsFromList(cid,config.items[2]) end doItemSetAttribute(doPlayerAddItem(cid, 7369), "name", "trophy "..getCreatureName(cid).." completou todo as tarefas.") end end end function HavePlayerPosition(cid, from, to) return isInRange(getPlayerPosition(cid), from, to) and true or false end function getRankStorage(cid, value, max, RankName) -- by vodka local str ="" str = "--[".. (RankName == nil and "RANK STORAGE" or ""..RankName.."") .."]--\n\n" local query = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = "..value.." ORDER BY cast(value as INTEGER) DESC;") if (query:getID() ~= -1) then k = 1 repeat if k > max then break end str = str .. "\n " .. k .. ". "..getPlayerNameByGUID(query:getDataString("player_id")).." - [" .. query:getDataInt("value") .. "]" k = k + 1 until not query:next() end return doShowTextDialog(cid, 2529, str) end function getItemsInContainerById(container, itemid) -- Function By Kydrai local items = {} if isContainer(container) and getContainerSize(container) > 0 then for slot=0, (getContainerSize(container)-1) do local item = getContainerItem(container, slot) if isContainer(item.uid) then local itemsbag = getItemsInContainerById(item.uid, itemid) for i=0, #itemsbag do table.insert(items, itemsbag[i]) end else if itemid == item.itemid then table.insert(items, item.uid) end end end end return items end function doPlayerAddItemStacking(cid, itemid, quant) -- by mkalo local item = getItemsInContainerById(getPlayerSlotItem(cid, 3).uid, itemid) local piles = 0 if #item > 0 then for i,x in pairs(item) do if getThing(x).type < 100 then local it = getThing(x) doTransformItem(it.uid, itemid, it.type+quant) if it.type+quant > 100 then doPlayerAddItem(cid, itemid, it.type+quant-100) end else piles = piles+1 end end else return doPlayerAddItem(cid, itemid, quant) end if piles == #item then doPlayerAddItem(cid, itemid, quant) end end function getItemsFromList(items) -- by vodka local str = '' if table.maxn(items) > 0 then for i = 1, table.maxn(items) do str = str .. items[i][2] .. ' ' .. getItemNameById(items[i][1]) if i ~= table.maxn(items) then str = str .. ', ' end end end return str end function doAddItemsFromList(cid,items) -- by vodka if table.maxn(items) > 0 then for i = 1, table.maxn(items) do local count = items[i][2] while count > 0 do if isItemStackable(items[i][1]) then doPlayerAddItemStacking(cid, items[i][1], 1) else doPlayerAddItem(cid, items[i][1],1) end count = count - 1 end end end end function pairsByKeys(t, f) local a = {} for n in pairs(t) do table.insert(a, n) end table.sort(a, f) local i = 0 local iter = function () i = i + 1 if a[i] == nil then return nil else return a[i], t[a[i]] end end return iter end ]]></config> <event type="login" name="TaskLogin" event="script"><![CDATA[ function onLogin(cid) registerCreatureEvent(cid, "KillTask") return true end]]></event> <talkaction words="!tarefa" event="buffer"><![CDATA[ domodlib('task_func') local param = string.lower(param) if param == "rank" then getRankStorage(cid, 521456, 20, "Task Rank Finalizadas") return true end local str = "" str = str .. "Lista de Tarefas :\n\n" for k, v in pairsByKeys(tasktabble) do local contagem = getPlayerStorageValue(cid, v.storage) if (contagem == -1) then contagem = 1 end str = str..k.." = ".. (not tonumber(contagem) and "["..contagem.."]" or "["..((contagem)-1).."/"..v.count.."]") .."\n" end str = str .. "" return doShowTextDialog(cid, 8983, str) ]]></talkaction> <event type="kill" name="KillTask" event="script"><![CDATA[ domodlib('task_func') function onKill(cid, target, lastHit) if(isMonster(target) == true) then local n = string.lower(getCreatureName(target)) for race, mob in pairs(tasktabble) do if getPlayerStorageValue(cid,mob .storage_start) >= 1 then for i = 1,#mob.monster_race do if n == mob.monster_race[i] then local contagem = getPlayerStorageValue(cid, mob.storage) if (contagem == -1) then contagem = 1 end if not tonumber(contagem) then return true end if contagem > mob.count then return true end if contagem > mob.count then return true end setPlayerStorageValue(cid, mob.storage, contagem+1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE,""..(contagem == mob.count and "Parabens! Voce terminou a tarefa de "..race.."." or "Criaturas Derrotadas: [" .. contagem .. "/" .. mob.count .. "] " .. race .. ".").."") end end end end end return true end]]></event> </mod> Olá, gostaria de saber se alguém pode me ajudar com uma coisinha, esse script foi feito pelo @Vodkart Gostaria de saber se teria como colocar para fazer as tasks somente 3x e nunca mais fazelas. Exemplo fez a de RATO, vc pode pegar ela mais 2x pra fazer, ai acabando não da mais pra fazer ela. Queria por isso em todas ai em cima. Se alguém souber fazer da uma luz para o pai pfv!

Informação Importante

Confirmação de Termo