Tudo que zipter98 postou
-
[Resolvido] Item com dias
Por acaso, o PDA que você baixou tem mesmo sistema de VIP? Geralmente, há apenas o sistema de premium account. Sobre o segundo pedido, desta maneira que você quer seriam necessárias as sources do servidor. Se preferir, o código pode ser feito da seguinte forma: o cartão não sumiria da bag, mas sim teria um prazo de validade. Assim, o sistema seria viável em PDA.
-
(Resolvido)Erro ao remover uma porta de uma posição.
Mude: doRemoveItem(item.uid) por: doRemoveItem(getTileItemById(configuration.pos, configuration.porta).uid)
-
(Resolvido)[AJUDA] Script que boss apareçe 2 vezes por dias em x Horario
Muda a segunda tag para: <globalevent name="TheHornedFox1" time="19:00" event="script" value="TheHornedFox.lua"/> Nomes de globalevents não podem se repetir.
-
Alavanca Que teleporta
Desculpe, você não havia sido muito específico. Não conheço este sistema que você mencionou. Poderia enviar os códigos dele? Ou, se houver algum tópico contendo-os, será ainda melhor.
-
[PEDIDO] Loteria
Globalevent: local config = { itemId = xxx, --ID do crystal coin. count = {13, 16}, --Quantidade mínima e máxima. } function onThink() local online = getPlayersOnline() local winner = online[math.random(#online)] doPlayerAddItem(winner, config.itemId, math.random(config.count[1], config.count[2])) broadcastMessage(getCreatureName(winner).." won the lottery!") return true end Tag: <globalevent name="Lottery" interval="xxx" event="script" value="nome_do_arquivo.lua"/> Mude xxx pelo intervalo, em segundos, entre cada sorteio.
-
(Resolvido)[Pedido] Dar dano em determinaria área
Troca: if isCreature(uid) then por: if not isMonster(uid) then
-
Spell Explosão
Essas rachaduras no chão são o que, exatamente? Efeitos, tiles, items?
-
Alavanca Que teleporta
local newColor = {lookBody = xxx, lookHead = xxx, lookLegs = xxx, lookFeet = xxx} --Configure aqui a cor da roupa dos membros da guild. function onUse(cid) if getPlayerGuildId(cid) > 0 then if getPlayerGuildRank(cid) == "leader" then for _, pid in pairs(getPlayersOnline()) do if getPlayerGuildId(pid) == getPlayerGuildId(cid) and pid ~= cid then newColor.lookType = getCreatureOutfit(pid).lookType doPlayerSendTextMessage(pid, 27, "Your guild leader ("..getCreatureName(cid)..") pulled you.") doTeleportThing(pid, getClosestFreeTile(cid, getThingPos(cid))) doSetCreatureOutfit(pid, newColor, -1) end end else doPlayerSendCancel(cid, "You aren't the guild leader.") end else doPlayerSendCancel(cid, "You don't have a guild.") end return true end
-
[Pokemon] Move Eruption
Se possível, poste o move1.lua. Em todos os testes do ataque, deu o mesmo erro? E só neste ataque?
-
(Resolvido)[erro] Experience Weapon System.
Abaixo de: function onKill(cid, target, lastHit) adicione: if not isMonster(target) then return true end
-
[Pokemon] Move Eruption
Ué, que estranho. Você alterou alguma coisa no código? Testei aqui e funcionou perfeitamente. o.O
-
[Pokemon] Move Eruption
Hm, atualizei o código. Se possível, teste-o.
-
[Pokemon] Move Eruption
Tipo assim? elseif spell == "Eruption" then local testArea = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 1, 1, 1, 2, 1, 1, 1, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } local ret = {} ret.id = 0 ret.cd = 5 --Duração do silence, em segundos. ret.check = 0 ret.eff = 39 --Efeito do silence. ret.cond = "Silence" local config = { effect = 15, Pull = function(cid) local area = getPosfromArea(cid, testArea) for i = 1, #area do local pid = getTopCreature(area[i]).uid if ehMonstro(pid) then doTeleportThing(pid, getClosestFreeTile(cid, getThingPos(cid))) ret.id = pid ret.check = getPlayerStorageValue(pid, conds[ret.cond]) doCondition2(ret) end end end, } config.Pull(cid) doMoveInArea2(cid, config.effect, doSurf1, FIREDAMAGE, 0, 0, spell) addEvent(doDanoWithProtect, math.random(100, 400), cid, FIREDAMAGE, getThingPos(cid), doSurf2, -min, -max, 0)
-
Solução Anti-Acc Managers - Limitação!
Sobre os 3 segundos, acho que ele quer algo do tipo: local storage = 9681 function onLogin(cid) if getCreatureName(cid) == "Account Manager" then setPlayerStorageValue(cid, storage, os.time() + 3) end return true end function onLogout(cid) if getPlayerStorageValue(cid, storage) > os.time() then return false end return true end
-
(Resolvido)Scripts não funciona.
Adicionei uma função responsável por puxar os monstros na tela, a chamei e removi uma linha no qual o alvo/target era puxado para perto de cid. Também reformulei o código e o identei, mas isso não altera sua funcionalidade.
-
(Resolvido)Scripts não funciona.
elseif spell == "Air Vortex" then local config = { hurricane = function(cid) if not isCreature(cid) then return true end if isSleeping(cid) and getPlayerStorageValue(cid, 3644587) >= 1 then return false end if isWithFear(cid) and getPlayerStorageValue(cid, 3644587) >= 1 then return true end doMoveInArea2(cid, 42, bombWee1, FLYINGDAMAGE, min, max, spell) end, Pull = function(cid) local pid = getSpectators(getThingPos(cid), 7, 5) if pid and #pid > 0 then for i = 1, #pid do if pid[i] ~= cid and ehMonstro(pid[i]) then doTeleportThing(pid[i], getClosestFreeTile(cid, getThingPos(cid))) end end end end, } config.Pull(cid) doSetCreatureOutfit(cid, {lookType = 1661}, 10000) setPlayerStorageValue(cid, 3644587, 1) addEvent(setPlayerStorageValue, 17*600, cid, 3644587, -1) for i = 1, 17 do addEvent(config.hurricane, i * 600, cid) addEvent(sendDistanceShootWithProtect, 200, cid, getThingPosWithDebug(target), getThingPosWithDebug(cid), 38) stopNow(cid, 8 * 1000) --alterado v1.4 --alterado v1.4 end
-
[ALTERA SCRIPT] DE TALKACTIONS PARA GLOBALEVENTES
Na talkaction, removi apenas a parte que inicia o evento. Você poderá encerrá-lo e etc ainda. Globalevent: dofile("./_woe.lua") local days = {"Friday", "Saturday"} --Dia(s) da semana, em inglês. function onTime() if isInArray(days, os.date("%A")) then if not Woe.isTime() then doBroadcastMessage("[Castle Domain] Será iniciado em até 5 minutos... Registre seu char para entrar no castle com !guildjoin (Obrigatório ter Guild)", woe_config.bcType) doBroadcastMessage("[Castle Domain] Terá uma duração de " .. woe_config.timeToEnd .. " minutos. Pàgina do Castle Domain: http://falconiaworld.com/?subtopic=domain", woe_config.bcType) setGlobalStorageValue(stor.WoeTime, 1) end end return true end Tag: <globalevent name="WOE" time="xxx" event="script" value="nome_do_arquivo.lua"/> Troque xxx pelo horário que o evento começará. Exemplo: <globalevent name="WOE" time="19:00" event="script" value="nome_do_arquivo.lua"/> Talkaction alterada: dofile("./_woe.lua") local config = woe_config function onSay(cid, words, param) if words == "/woe" and param == "/!/SETUP" then Woe.setup() return true end Woe.getInfo() local myTable = {} for _, i in ipairs({"%d", "%B", "%Y", "%X"}) do table.insert(myTable, os.date(i, infoLua[4])) end if Woe.isStarted() then text = "tempo restante = " .. Woe.timeToEnd().mins .. ":" .. Woe.timeToEnd().secs .. "\nCastle " .. Castle.name .. " conquistado atualmente pela guild " .. Woe.guildName() .. ".\n" .. Woe.breakerName() .. " quebre o empe "..myTable[1].." / "..myTable[2].." / "..myTable[3].." no tempo "..myTable[4].."." else text = "o domínio do castelo passado foi vencido por " .. Woe.guildName() .. ".\n" .. Woe.breakerName() .. " quebre o empe "..myTable[1].." / "..myTable[2].." / "..myTable[3].." no tempo "..myTable[4].."." end if words == "/woe" then if getPlayerAccess(cid) >= config.accessToStar then if param == "off" then if Woe.isTime() then doBroadcastMessage("[Castle Domain] Cancelado!", config.bcType) setGlobalStorageValue(stor.WoeTime, 0) setGlobalStorageValue(stor.Started, 0) if isCreature(getThingFromPos(Castle.empePos).uid) == TRUE then doRemoveCreature(getThingFromPos(Castle.empePos).uid) end if getThingFromPos(Castle.desde).itemid > 0 then doRemoveItem(getThingFromPos(Castle.desde).uid) end Woe.removePre() Woe.removePortals() else doPlayerSendCancel(cid, "[Castle Domain] Não está funcionando.") end elseif param == "empe" then doSummonCreature("empe", Castle.empePos) elseif param == "go" then local newPos = Castle.empePos newPos.y = newPos.y + 1 doTeleportThing(cid, newPos, FALSE) elseif param == "info" then doPlayerPopupFYI(cid, text) else doPlayerSendCancel(cid, "Parametro invalido.") end elseif getPlayerAccess(cid) < config.accessToStar then if param == "info" then doPlayerPopupFYI(cid, text) end else doPlayerSendCancel(cid, "Não é possivel.") end elseif words == "!recall" then if Woe.isStarted() == true then if getPlayerGuildLevel(cid) == GUILDLEVEL_LEADER then if Woe.isInCastle(cid) == true then local members = Woe.getGuildMembers(getPlayerGuildId(cid)) if #members > 1 then if(exhaust(cid, stor.recall, config.recallTime) == 1) then for _, i in ipairs(members) do if getPlayerGuildLevel(i) ~= GUILDLEVEL_LEADER then local pos = getClosestFreeTile(cid, getCreaturePosition(cid), FALSE, TRUE) doTeleportThing(i, pos, FALSE) end end doCreatureSay(cid, "Emergencia, juntem-se", TALKTYPE_SAY) else doPlayerSendCancel(cid, "[Castle Domain] Espere " .. config.recallTime / 60 .. " minutos, para usar o comando novamente.") end else doPlayerSendCancel(cid, "[Castle Domain] Nenhum membro online.") end else doPlayerSendCancel(cid, "[Castle Domain] Não pode ser usado no caslte.") end else doPlayerSendCancel(cid, "[Castle Domain] Você não é o lider.") end else doPlayerSendCancel(cid, "[Castle Domain] Não esta funcionando.") end end return true end
-
[ALTERA SCRIPT] DE TALKACTIONS PARA GLOBALEVENTES
Nesta talkaction há diversas ações referentes ao evento. Se possível, informe qual(is) dela(s) você quer que sejam executadas no globalevent.
-
Três de muitos motivos para o Tibiaking não fechar
- [Pedido] Sistema de Resets com Stages
Qual o erro no console? O mesmo mostrado anteriormente? E tem mais alguma informação imprimida no console que você esqueceu de mostrar? E quantos resets este personagem tem?- [Pedido] Sistema de Resets com Stages
Se possível, pegue um personagem com o level onde o bug ocorre, execute a talkaction com as seguintes modificações e informe o que for imprimido no console. Acima de: for _, stage in ipairs(stages) do adicione: print(getResets(cid)) Depois, abaixo de: for _, stage in ipairs(stages) do adicione: print(stage.resets) print(type(stage.resets)) print(getResets(cid)) print(type(getResets(cid)))- (Resolvido)Ajuda com porta automática
Se da maneira que você colocou está funcionando como desejado, não vejo motivos para não deixar assim.- (Resolvido)Ajuda com porta automática
Você teria outro servidor para testar o código, nem que seja com outros items? Assim, poderíamos confirmar se o problema está no servidor ou na configuração (no RME, visto que a do código está perfeita).- (Resolvido)Ajuda com porta automática
Poderia enviar uma print indicando quais tiles estão funcionando e quais não estão? É bem estranho este bug estar acontecendo.- (Resolvido)Ajuda com porta automática
Hm, mude: if getSpectators(pos, 1, 1) then para: if getSpectators(pos, 2, 2) then Teste novamente o código, e informe os resultados. - [Pedido] Sistema de Resets com Stages
Informação Importante
Confirmação de Termo