Ir para conteúdo
  • Cadastre-se

Vodkart

Héroi
  • Total de itens

    3259
  • Registro em

  • Dias Ganhos

    229

Tudo que Vodkart postou

  1. local THRONE_POS = {x = 2561, y = 2446, z = 5} local STORAGE_EVENT = 83902 local STORAGE_PLAYER = 73289 local DUR = 15 -- in minutes local days = {"Monday", "Saturday", "Thursday"} -- coloque os dias function OpenEvent() for _, tid in ipairs(getPlayersOnline()) do setPlayerStorageValue(tid, STORAGE_PLAYER, 1) end setGlobalStorageValue(STORAGE_EVENT, 1) doBroadcastMessage("O Evento castle foi aberto e vai durar ".. DUR .." minutos.", 25) end function getWinnerCastle() CastleWalls() local player = getTopCreature(THRONE_POS).uid if getGlobalStorageValue(STORAGE_EVENT) < 0 t
  2. Dá sim, porém a casa seria aleatória? Já que o código vai pegar a que esta livre no banco de dados e dar para o jogador... function doAddHousePlayer(cid) local query, player = db.getResult("SELECT `id` FROM `houses` WHERE `owner` = 0;"), getPlayerGUID(cid) if (query:getID() ~= -1) then local houseid = query:getDataInt("id") setHouseOwner(houseid, player, true) end return true end function onLogin(cid) local stor = 785421 if getPlayerStorageValue(cid, stor) <= 0 then doAddHousePlayer(cid) setPlayerStorageValue(cid, stor, 1) local hid = getHouseByPlayerGUID(getPlayerGUID(c
  3. Só tenho uma dúvida, se vários jogadores usarem essa mesma spell juntos? vai lotar a area de monstros ou de players... E como vai fazer para o monstro que foi enviado para lá voltar? pq ele não volta sozinho né?
  4. usa essa função function isWalkable(pos) -- by Nord / editado por Omega if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false elseif isCreature(getTopCreature(pos).uid) then return false elseif getTileInfo(pos).protection then return false elseif hasProperty(getThingFromPos(pos).uid, 3) or hasProperty(getThingFromPos(pos).uid, 7) then return false end return true end dps como vai ser aleatorio pode usar assim: local pos = {x = 10, y = 10, z = 7} -- pode ser uma pos aleatoria claro if isWalkable(p
  5. function getGuildLeaderName(GuildName) -- function by vodkart local leader = db.getResult("SELECT `players`.`name` FROM `players` WHERE `players`.`id` = (SELECT `guilds`.`ownerid` FROM `guilds` WHERE `guilds`.`name` = ".. db.escapeString(GuildName) .. ")") if(leader:getID() ~= -1) then return leader:getDataString("name") end return nil end if not RealCastle then RealCastle = { itemid = 10091, openStorage = 722374, guildStorage = 722375, dateStorages = {722376,722377,722378} } function RealCastle:isInside(cid) local thingPos = getThingPos(cid) local areas = {
  6. vc editou tudo errado... manda o arquivo original sem alterações...
  7. @DigoleraZica eu estava achando que todos da guild ganhassem o item, por isso estava procurando essa parte no código, mas pelo que vi, só estavam ganhando 30% a mais de exp... realCastle = { itemid = 10091, open_storage = 100005, guild_storage = 100006, dateStorages = {100007,100008,100009}, frompos = {x = 2189, y = 522, z = 6}, topos = {x = 2282, y = 614, z = 6}, storages = { -- só modifique os storages se necessário accessTime = 100010, running = 100013 } } function getGuildLeaderName(GuildName) -- function by vodkart local leader = db.getResult("SELECT `playe
  8. @Muvukavdd eu que troquei a storage, usa assim: <?xml version="1.0" encoding="ISO-8859-1"?> <mod name="Perfect Auto Loot" version="2.0" author="Vodkart" contact="none.com" enabled="yes"> <config name="Loot_func"><![CDATA[ info = { vip = true, directory = "data/logs/autoloot", Warn_Bp_Slots = 5, -- quando tiver 5 ou menos slots na BP vai avisar o jogador Talkaction_delay = 5, -- em segundos // delay para remover e adicionar item BlockMonsters = {}, BlockItemsList = {2123,2515}, Money_ids = {2148, 2152, 2160, 2159, 9971}, -- id das moedas do ot Max
  9. <?xml version="1.0" encoding="ISO-8859-1"?> <mod name="Perfect Auto Loot" version="2.0" author="Vodkart" contact="none.com" enabled="yes"> <config name="Loot_func"><![CDATA[ info = { vip = true, directory = "data/logs/autoloot", Warn_Bp_Slots = 5, -- quando tiver 5 ou menos slots na BP vai avisar o jogador Talkaction_delay = 5, -- em segundos // delay para remover e adicionar item BlockMonsters = {}, BlockItemsList = {2123,2515}, Money_ids = {2148, 2152, 2160, 2159, 9971}, -- id das moedas do ot Max_Slots = {free = 3, premium = 5}, Storages = {988801, 988802, 988
  10. posta o resto do sistema, principalmente o código onde os players recebem as rewards.
  11. db.query("UPDATE `players` SET `resets`= ".. (resets+1) ..",`experience`= 0 WHERE `players`.`id`= "..playerid)
  12. tenta adicionar na lib: function doRemovePlayersFromArea(from, to, pos) for _, pid in pairs(getPlayersOnline()) do if isInRange(getPlayerPosition(pid), from, to) then doTeleportThing(pid, pos) end end end
  13. Sim... igual no pokemon msm né... vai pegar por exemplo a chance da larva que é de 5% e + item que aumenta por exemplo, 25% e somar, ficando 30% ao total... é isso? mas é um item para TODOS os mobs ou é um item individual para cada mob?
  14. é um boss que nasce em um determinado script ou é feito pelo spawn no mapper editor?
  15. function onSay(cid, words, param, channel) if(param == "") then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "Please type a message for broadcast.") and true end if not (exhaustion.check(cid, 1000)) then exhaustion.set(cid, 1000, 60) broadcastMessage("[/all] --> "..getPlayerName(cid) .." [".. getPlayerLevel(cid) .. "]: " .. param, MESSAGE_STATUS_CONSOLE_ORANGE) broadcastMessage("[/all] --> "..getPlayerName(cid) .." [".. getPlayerLevel(cid) .. "]: " .. param, MESSAGE_INFO_DESCR) else doPlayerSendTextMessage(cid, MESSAGE_S
  16. function onKill(cid, target) local monsters = { ["larva"] = {chance = 5, name = "bug", effect = 10}, ["bug"] = {chance = 10, name = "scarab", effect = 10}, ["scarab"] = {chance = 15, name = "ancient scarab", effect = 10} } if isPlayer(cid) and isMonster(target) then local var = monsters[getCreatureName(target):lower()] if var then if var.chance >= math.random(1, 100) then doSummonCreature(var.name, getThingPos(target)) doSendMagicEffect(getThingPos(target), var.effect) end end end return true end
  17. me fala como o script funciona agora e como você quer que ele funcione futuramente. pq realmente está só para nascer 1x até o server fechar e abrir novamente...
  18. é que eu acho que o tempo do efeito a seta é de 2 segundos se não me engano né? usa assim para ver: local config = { itemid = {2434, 7730}, --IDs dos items, para aumentar só colocar repetir o padrao Ex: {2471, 7730, 2160}. --Edited by Zefz/Vabrindox drop_effect = 296, --Efeito que aparecerá em cima da corpse, OPCIONAL! Se não quiser, coloque false. time = 30 -- em segundos } function doEffectCorpse(position, corpse_id, seconds) local corpse = getTileItemById(position, corpse_id).uid if corpse <= 1 or not isContainer(corpse) then return true end doSendMagicEffe
  19. local config = { itemid = {2434, 7730}, --IDs dos items, para aumentar só colocar repetir o padrao Ex: {2471, 7730, 2160}. --Edited by Zefz/Vabrindox drop_effect = 296, --Efeito que aparecerá em cima da corpse, OPCIONAL! Se não quiser, coloque false. time = 60 -- em segundos } function doEffectCorpse(position, corpse_id, seconds) local corpse = getTileItemById(position, corpse_id).uid if corpse <= 1 or not isContainer(corpse) then return true end doSendMagicEffect(position, config.drop_effect) if seconds ~= 1 then addEvent(doEffectCorpse, 1000, position, corpse_id, seconds-1) end en
  20. @Doidodepeda function onSay(cid, words, param, channel) local t = string.explode(param, ",") if t[1] ~= nil and t[2] ~= nil then local list,ips = {},{} for _, tid in pairs(getPlayersOnline()) do if #ips == 0 or not isInArray(ips, getPlayerIp(tid)) then list[#list+1] = tid ips[#ips+1] = getPlayerIp(tid) end end for i = 1, #list do doPlayerAddItem(list[i],t[1],t[2]) doBroadcastMessage(getPlayerName(cid) .. " Acabou de dar: " .. t[2] .." ".. getItemNameById(t[1]) .. " para todos os players online!") end else doPlayerPopupFYI(cid, "No parm...\nSend:\n
  21. -- Checasse qual o id da looktype do player. if getCreatureOutfit(cid).lookType == 136 then bloco end -- Checar se é male ou female if getPlayerSex(cid) == PLAYERSEX_FEMALE then -- female bloco end -- Checasse se ele tem addon ou não. if getCreatureOutfit(cid).lookAddons == 3 then -- full addon bloco end
  22. https://tibiaking.com/forums/topic/97733-resolvidocomo-abrir-quantas-tasks-quiser-script-do-vodkart/
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo