Jump to content
Close

Vodkart

Hero
  • Content Count

    2721
  • Joined

  • Days Won

    105

Vodkart last won the day on May 27

Vodkart had the most liked content!

About Vodkart

  • Rank
    Systems Developer!
  • Birthday 09/05/1999

Profile Information

  • Gender
    Masculino
  • I am
    Scripter

Recent Profile Visitors

61272 profile views
  1. é mais ou menos isso: local qry = db.getResult("SELECT * FROM `shop_pacc` WHERE `trans_state` = 0;") -- procura o trans_state 0 é que falta entregar if (qry:getID() ~= -1) then repeat local trans_id = qry:getDataInt("id") -- bloco que entrega itens db.executeQuery("UPDATE `shop_pacc` SET `trans_state` = 1 WHERE `id` = "..trans_id) -- muda o state para 1 que é entregue until not qry:next() qry:free() end
  2. @KaboFloww @KaboFloww esse é um action
  3. @Zazeros esqueci de excluir a linha, desculpa!! function HaveCreatureArena(area, remove, clean) for x = area[1].x - 1, area[2].x + 1 do for y = area[1].y - 1, area[2].y + 1 do local pos = {x=x, y=y, z=area[1].z} local m = getTopCreature(pos).uid if remove ~= false and m ~= 0 and isMonster(m) then doRemoveCreature(m) end if clean ~= false then doCleanTile(pos,false) end end end end local from, to = {x = 1105, y = 1113, z = 7}, {x = 1115, y = 1123, z = 7} local t = { lvl = 100, Time = 15, -- em minutos entrada = { {x = 1045, y = 1014, z = 6}, -- pos players {x = 1045, y = 1015, z = 6} }, saida = { {x = 1110, y = 1122, z = 7}, -- pos para onde eles irão {x = 1110, y = 1123, z = 7} }, monstros = { {{x = 1108, y = 1116, z = 7}, "Orc"}, -- defina pos dos montros e nomes {{x = 1108, y = 1117, z = 7}, "Orc"}, {{x = 1108, y = 1118, z = 7}, "Orc"}, {{x = 1108, y = 1119, z = 7}, "Orc"} } } function VarAnihiPlayer(cid) if not isCreature(cid) then return LUA_ERROR end if isInRange(getPlayerPosition(cid), t.saida[1], t.saida[#t.saida]) then doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end end function getPlayersInArea(fromPos, toPos) local players = {} for _, pid in ipairs(getPlayersOnline()) do if isInRange(getPlayerPosition(pid), fromPos, toPos) then table.insert(players, pid) end end return players end function onUse(cid, item, fromPosition, itemEx, toPosition) local check = {} if #getPlayersInArea(t.saida[1], t.saida[#t.saida]) > 0 then doPlayerSendCancel(cid, 'Aguarde, tem jogadores fazendo a quest.') return true end for _, k in ipairs(t.entrada) do local x = getTopCreature(k).uid if(x == 0 or not isPlayer(x) or getPlayerLevel(x) < t.lvl) then doPlayerSendCancel(cid, 'Está faltando player ou alguém não possui level '..t.lvl..' ou mais.') return true end table.insert(check, x) end HaveCreatureArena({from,to}, true, true) for _, summon in pairs(t.monstros) do doCreateMonster(summon[2], summon[1]) end for i, tid in ipairs(check) do doSendMagicEffect(t.entrada, CONST_ME_POFF) doTeleportThing(tid, t.saida, false) addEvent(VarAnihiPlayer, t.Time*1000, tid) doSendMagicEffect(t.saida, CONST_ME_ENERGYAREA) end doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945) return true end
  4. @Zazeros function HaveCreatureArena(area, remove, clean) for x = area[1].x - 1, area[2].x + 1 do for y = area[1].y - 1, area[2].y + 1 do local pos = {x=x, y=y, z=area[1].z} local m = getTopCreature(pos).uid if m ~= 0 and isMonster(m) then var = var +1 end if remove ~= false and m ~= 0 and isMonster(m) then doRemoveCreature(m) end if clean ~= false then doCleanTile(pos,false) end end end end local from, to = {x = 1105, y = 1113, z = 7}, {x = 1115, y = 1123, z = 7} local t = { lvl = 100, Time = 15, -- em minutos entrada = { {x = 1045, y = 1014, z = 6}, -- pos players {x = 1045, y = 1015, z = 6} }, saida = { {x = 1110, y = 1122, z = 7}, -- pos para onde eles irão {x = 1110, y = 1123, z = 7} }, monstros = { {{x = 1108, y = 1116, z = 7}, "Orc"}, -- defina pos dos montros e nomes {{x = 1108, y = 1117, z = 7}, "Orc"}, {{x = 1108, y = 1118, z = 7}, "Orc"}, {{x = 1108, y = 1119, z = 7}, "Orc"} } } function VarAnihiPlayer(cid) if not isCreature(cid) then return LUA_ERROR end if isInRange(getPlayerPosition(cid), t.saida[1], t.saida[#t.saida]) then doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end end function getPlayersInArea(fromPos, toPos) local players = {} for _, pid in ipairs(getPlayersOnline()) do if isInRange(getPlayerPosition(pid), fromPos, toPos) then table.insert(players, pid) end end return players end function onUse(cid, item, fromPosition, itemEx, toPosition) local check = {} if #getPlayersInArea(t.saida[1], t.saida[#t.saida]) > 0 then doPlayerSendCancel(cid, 'Aguarde, tem jogadores fazendo a quest.') return true end for _, k in ipairs(t.entrada) do local x = getTopCreature(k).uid if(x == 0 or not isPlayer(x) or getPlayerLevel(x) < t.lvl) then doPlayerSendCancel(cid, 'Está faltando player ou alguém não possui level '..t.lvl..' ou mais.') return true end table.insert(check, x) end HaveCreatureArena({from,to}, true, true) for _, summon in pairs(t.monstros) do doCreateMonster(summon[2], summon[1]) end for i, tid in ipairs(check) do doSendMagicEffect(t.entrada, CONST_ME_POFF) doTeleportThing(tid, t.saida, false) addEvent(VarAnihiPlayer, t.Time*1000, tid) doSendMagicEffect(t.saida, CONST_ME_ENERGYAREA) end doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945) return true end
  5. que estranho, nenhum deles somem? você pode me passar então a pos de inicio e final da sala? no caso de toda a sala da anihi ai, tipo um quadrado.
  6. é possível sim, basta fazer por movements!
  7. @poko360 o problema é o 'return true' no lugar errado, você está parando o looping. function onThink(interval, lastExecution) local from, to = {x = 148, y = 49, z = 7}, {x = 170, y = 60, z = 7} for _, pid in ipairs(getPlayersOnline()) do if isInRange(getPlayerPosition(pid), from, to) then doPlayerAddItem(pid, 2152, 4) doSendAnimatedText(getCreaturePosition(pid), '+400$', 65) end end return true end
  8. @Pifafa ja arrumei isso no script que postei... doRemoveItem(item.uid)
  9. local position, templepos = {x = 170, y = 94, z = 10}, {x = 165, y = 54, z = 7} local tempo = 10 function onUse(cid, item, fromPosition, itemEx, toPosition) doRemoveItem(item.uid) doTeleportThing(cid, position) doCreatureSetStorage(cid, 583441, 1) addEvent(function() if not isCreature(cid) then return LUA_ERROR end doTeleportThing(cid, templepos) doPlayerSendTextMessage(cid, 22, "Seu tempo acabou, e foi transportado de volta ao templo!") doCreatureSetStorage(cid, 583441, -1) end, 1000 * tempo) return true end obs: essa função teria que ser refeita, na verdade o bom seria fazer por globalevents! dava uma storage com os.time() e quando acabasse o tempo mandava ele para o templo..
  10. @pokadelo Muito estranho, na verdade não está dando erro em si, é como se na hora que fosse jogar os fires, os players não tivessem sido encontrados... que horas vai estar no discord? vou te auxiliar em tempo real.
  11. @pokadelo posso ver como ficou ali na parte das configurações? e outra... seu serve deve ser em milesegundos  nesta linha, troque "60" por "60000" <globalevent name="Storm_Fire_Start" interval="60" event="script"><![CDATA[ por <globalevent name="Storm_Fire_Start" interval="60000" event="script"><![CDATA[
  12. @pokadelo acho que a position Y do seu mapa está errado, nessa linha aqui: arena = {{x=32393,y=32463,z=7},{x=32423,y=32463,z=7}} -- posição começo e final da area está certo? 32463 as duas?? se sim, então deixa assim: arena = {{x=32393,y=32463,z=7},{x=32423,y=32464,z=7}} -- posição começo e final da area mas confere certinho a pos Y ai...
  13. me manda seu mods pra mim dar uma olhada

Open Tibia Server

Quer aprender a criar seu próprio servidor de Tibia? Então está no lugar certo, aqui você encontrará milhares de tutorias, scripts, códigos, mapas e utilitários para que você possa fazer o seu próprio servidor de Tibia partindo do zero.

Redes Sociais

Anuncie no Tibia King

Precisa de mais visibilidade em seus projetos? Quer publicidade para o seu servidor? Anuncie no Tibia King e faça sua divulgação, possuímos centenas de acessos simultâneos e milhares diários, com certeza será a sua solução! A publicação do seu anuncio é instantânea!

×
×
  • Create New...