Ir para conteúdo

Featured Replies

Postado

.Qual servidor ou website você utiliza como base? 

OTX1264

Qual o motivo deste tópico? 

 

Está surgindo algum erro? Se sim coloque-o aqui. 

Citar

Nenhum Erro no Console

 

Você tem o código disponível? Se tiver publique-o aqui: 

 local config = {
	effect = 30, -- Efeito que vai usar
	storage = 998899, -- Storage que o player precisa ter
	tempo = 30, -- Tempo em segundos 1200 - 20 minutos
	text = '--[[TOP #1]]--'
}

local PremiumEfect = CreatureEvent("PremiumEfect")

function PremiumEfect.onLogin(player)
player:registerEvent("PremiumEfect")
local resultId = db.storeQuery("SELECT `id`, `name`, `level` FROM `players` WHERE `group_id` < 2 ORDER BY `level` DESC LIMIT 1")
	if (resultId ~= false) then
		local pid = result.getDataString(resultId, "id")
		local name = result.getDataString(resultId, "name")

		local namereal = player:getName()
		if namereal == name then
			SendEffect(player:getId())
			result.free(resultId)
			return true
		else
			return
		end
	end
end

function SendEffect(cid)
	local player = Player(cid)
		if not player then return end
			player:getPosition():sendMagicEffect(config.effect)
			player:say(config.text, TALKTYPE_MONSTER_SAY)
			addEvent(SendEffect, config.tempo*1000, player:getId())
return true
end

PremiumEfect:register()

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 

Somente o TOP 1 Loga no servidor. os outros players recebem mensagem de servidor offline.

 

Resolvido por Vodkart

Ir para solução
Postado
  • Solução
local config = {
	effect = 30, -- Efeito que vai usar
	storage = 998899, -- Storage que o player precisa ter
	tempo = 30, -- Tempo em segundos 1200 - 20 minutos
	text = '--[[TOP #1]]--'
}
local PremiumEfect = CreatureEvent("PremiumEfect")
function PremiumEfect.onLogin(player)
	player:registerEvent("PremiumEfect")
	local resultId = db.storeQuery("SELECT `id`, `name`, `level` FROM `players` WHERE `group_id` < 2 ORDER BY `level` DESC LIMIT 1")
	if (resultId ~= false) then
		local pid = result.getDataString(resultId, "id")
		local name = result.getDataString(resultId, "name")
		local namereal = player:getName()
		if namereal == name then
			SendEffect(player:getId())
		end
		result.free(resultId)
	end
	return true
end
function SendEffect(cid)
	local player = Player(cid)
	if not player then return end
	player:getPosition():sendMagicEffect(config.effect)
	player:say(config.text, TALKTYPE_MONSTER_SAY)
	addEvent(SendEffect, config.tempo*1000, player:getId())
	return true
end
PremiumEfect:register()

 

Postado
  • Autor
Em 11/11/2021 em 19:15, Vodkart disse:

local config = {
	effect = 30, -- Efeito que vai usar
	storage = 998899, -- Storage que o player precisa ter
	tempo = 30, -- Tempo em segundos 1200 - 20 minutos
	text = '--[[TOP #1]]--'
}
local PremiumEfect = CreatureEvent("PremiumEfect")
function PremiumEfect.onLogin(player)
	player:registerEvent("PremiumEfect")
	local resultId = db.storeQuery("SELECT `id`, `name`, `level` FROM `players` WHERE `group_id` < 2 ORDER BY `level` DESC LIMIT 1")
	if (resultId ~= false) then
		local pid = result.getDataString(resultId, "id")
		local name = result.getDataString(resultId, "name")
		local namereal = player:getName()
		if namereal == name then
			SendEffect(player:getId())
		end
		result.free(resultId)
	end
	return true
end
function SendEffect(cid)
	local player = Player(cid)
	if not player then return end
	player:getPosition():sendMagicEffect(config.effect)
	player:say(config.text, TALKTYPE_MONSTER_SAY)
	addEvent(SendEffect, config.tempo*1000, player:getId())
	return true
end
PremiumEfect:register()

 

Obrigado!! Deu tudo certo.. pelo que entendi era o result.free que estava em local incorreto?

Postado
3 horas atrás, xBlackWolf disse:

Obrigado!! Deu tudo certo.. pelo que entendi era o result.free que estava em local incorreto?

Negativo.

Foi o “else+return” que fez travar.

Explicação: você fez uma condição que apenas o top 1 ao logar passasse pela condição de forma correta.


Porem, ao adicionar um else, todos que não fossem top 1 iriam dar return ao logar, ou seja, o creaturescript iria fazer com que não fosse possivel logar.

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo