- 0
pedido scripts [Resolvido] ajudem a retirar loop de efeito
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.
-
Conteúdo Similar
-
- 5 respostas
- 1783 visualizações
-
- 1 resposta
- 1350 visualizações
-
- 1 resposta
- 1382 visualizações
-
- 0 respostas
- 1375 visualizações
-
- 0 respostas
- 1292 visualizações
-
Pergunta
wevertonvrb 25
então gente eu estou com esse script que faz ficar subindo um efeito no top lvl
ele esta funcionando corretamente mas contem um bug no onAdvance
exemplo fica subindo um testo escrito "TOP LEVEL" em cima do personagem de maior lvl e
se alguem ultrapassar o lvl deste top o efeito é encerrado e transferido ao novo top ate aee 100%
mas se a pessoa que já é o top upar + um lvl ativa outro testo escrito "TOP LEVEL"
ou seja fica oque ja tinha junto com o +1 novo e se ele upar 10x fica 10 testo e assim vai isso acaba virando flood e atrapalha
então eu gostaria da ajuda de voces para colocar uma tag no onAdvance algo que dezative o efeito para que ele seja ativado novamen
local config = {
tempo = 3, --tempo em segundos
mensagem = {
texto = "TOP LEVEL", --não use mais de 9 caracteres
efeito = TEXTCOLOR_RED --efeito para a função doSendAnimatedText
},
efeito = nil, --efeito da função doSendMagicEffect
globalstr = 150202 -- uma global storage qualquer q esteje vazia
}
function TopEffect(cid)
local var = tostring(getGlobalStorageValue(config.globalstr)):gsub(':', ''):explode(',')
if not isCreature(cid) or getPlayerName(cid) ~= var[1] then return LUA_ERROR end
doSendAnimatedText(getCreaturePosition(cid), config.mensagem.texto, config.mensagem.efeito)
--doSendMagicEffect(getCreaturePosition(cid), config.efeito)
addEvent(TopEffect, config.tempo*1000, cid)
end
function onLogin(cid)
if tonumber(getGlobalStorageValue(config.globalstr)) then -- virgin
local query = db.getResult("SELECT `name`, `level` FROM `players` WHERE `group_id` < 2 ORDER BY `level` DESC LIMIT 1")
if (query:getID() ~= -1) then
setGlobalStorageValue(config.globalstr, ":"..query:getDataString("name")..",:"..query:getDataInt("level"))
TopEffect(cid)
end
else
TopEffect(cid)
end
registerCreatureEvent(cid, "CheckTop")
return true
end
function onAdvance(cid, skill, oldLevel, newLevel)
if skill ~= SKILL__LEVEL then return true end
local var = tostring(getGlobalStorageValue(config.globalstr)):gsub(':', ''):explode(',')
if newLevel > tonumber(var[2]) then
doBroadcastMessage("O jogador " .. getPlayerName(cid) .. " tornou-se o novo Top Level. Parabens!", 22)
setGlobalStorageValue(config.globalstr, ":"..getPlayerName(cid)..",:"..newLevel)
-----docancelTopEffect (cid) ---queria adicionar algo assim antes do TopEffect(cid) seja chamado assim cancelando e evitando o flood de textos
TopEffect(cid) ----aqui ele chama o TopEffect que faz surgir + 1 efeito
end
return true
end
@Poccnn
Link para o comentário
Compartilhar em outros sites
12 respostass a esta questão
Posts Recomendados