TopLevel Effect

Bruno
Por Bruno
em Globalevents e Spells
  • 1
  • 2

Bruno

Ousadia e Alegria
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 01/05/08Posts: 2571Gênero: Masculino

Introdução

Ele simplesmente manda um efeito para o Top Level caso ele estiver online, além disso, ele checa quando o top é ultrapassado e o efeito passa automaticamente ao novo top.

 

Instalação:

 

Em data/creaturescripts/creaturescripts.xml adicione:

 

<event type="login" name="TopEffect" event="script" value="topeffect.lua"/>
<event type="advance" name="CheckTop" event="script" value="topeffect.lua"/>
Agora crie um arquivo em data/creaturescripts/scripts com o nome topeffect.lua e adicione:

--[[
	Script by Bruno Minervino para o Tibia King
	Caso for postar, colocar os créditos
]]

local config = {
	tempo = 10, --tempo em segundos
	mensagem = {
		texto = "[TOP]", --não use mais de 9 caracteres
		efeito = TEXTCOLOR_LIGHTBLUE --efeito para a função doSendAnimatedText
	},
	efeito = 30, --efeito da função doSendMagicEffect
	globalstr = 5687 -- uma global storage qualquer q esteje vazia
}

--[[ Não mexa em nada abaixo ]]
local topPlayer = getGlobalStorageValue(config.globalstr) > 0 and getGlobalStorageValue(config.globalstr) or 0

function onLogin(cid)
	local query = db.getResult("SELECT `id`, `name`, `level` FROM `players` WHERE `group_id` < 2 ORDER BY `level` DESC LIMIT 1")
	if (query:getID() ~= -1) then
		local pid = query:getDataString("id")
		local name = query:getDataString("name")
		if getPlayerName(cid) == name then
			if topPlayer ~= getPlayerID(cid) then topPlayer = getPlayerID(cid) end
			setGlobalStorageValue(config.globalstr, pid)
			TopEffect(cid)
		end
	end
	registerCreatureEvent(cid, "CheckTop")
	return true
end

function onAdvance(cid, skill, oldlevel, newlevel)
	if skill == 8 then
		local query = db.getResult("SELECT `id`, `name`, `level` FROM `players` WHERE `group_id` < 2 ORDER BY `level` DESC LIMIT 1")
		if (query:getID() ~= -1) then
			local level = tonumber(query:getDataString("level"))
			if level < newlevel and topPlayer ~= getPlayerID(cid) then
				doBroadcastMessage("O jogador " .. getPlayerName(cid) .. " tornou-se o novo Top Level. Parabens!", 22)
				topPlayer = getPlayerID(cid)
				doSaveServer()
				setGlobalStorageValue(config.globalstr, getPlayerID(cid))
				TopEffect(cid)
			end			
		end
	end
	return true
end

function TopEffect(cid)
	if not isPlayer(cid) then return true end
	if topPlayer == getPlayerID(cid) then
		doSendAnimatedText(getCreaturePosition(cid), config.mensagem.texto, config.mensagem.efeito)
		doSendMagicEffect(getCreaturePosition(cid), config.efeito)
		addEvent(TopEffect, config.tempo * 1000, cid)
	end
end

function getPlayerNameById(id)
	local query = db.getResult("SELECT `name` FROM `players` WHERE `id` = " .. db.escapeString(id))
	if query:getID() ~= -1 then
		return query:getDataString("name")
	end
	return 0
end

function getPlayerIdByName(name)
	local query = db.getResult("SELECT `id` FROM `players` WHERE `name` = " .. db.escapeString(name))
	if query:getID() ~= -1 then
		return tonumber(query:getDataString("id"))
	end
	return 0
end

function getPlayerID(cid)
	return getPlayerIdByName(getPlayerName(cid))
end

Espero que gostem :)

Atenciosamente,
Bruno Minervino

 

Tibia Clients - Downloads Window

LeoTK

Leo
avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 05/12/11Posts: 1249Gênero: Masculino

Teria alguma print de como fica in-game?

 ?️ Projeto NTO NS ?️

? Detalhes ?

?️ Mapa próprio em produção ?️

?️ Versão: 8.60 ?️

? War System ?

⚔️ Jutsus Próprios baseado no anime ⚔️

? Itens com as características e efeitos do anime ?

? Para mais detalhes acesse as redes sociais do servidor abaixo ?

? Usando como referencias Anime/Jogos/Wallpapers etc... para trazer algo mais próximo possível do universo de Naruto ?

 

? Redes Sociais ?

? Facebook ?

? Youtube ?
? Discord ?

 

? Tutoriais / Conteúdos ?

♨️ Clique Aqui ♨️

 

 

Bruno

Ousadia e Alegria
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 01/05/08Posts: 2571Gênero: Masculino

Teria alguma print de como fica in-game?

Ele fica subindo um efeito de texto, de x em x tempos, com a mensagem: [TOP]

É algo um tanto quanto simples...

Atenciosamente,
Bruno Minervino

 

Tibia Clients - Downloads Window

Xtudomuito

avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 14/04/15Posts: 191

Poderia dizer como coloco uma storage com valor tipo (5212,4), pq no msm Server tem graduação:

 

(5212,1) genin

(5212,2) chunin

(5212,3) jounin

(5212,4) hokage

 

aí quem fosse o top vira a graduação hokage.

Bruno

Ousadia e Alegria
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 01/05/08Posts: 2571Gênero: Masculino

Poderia dizer como coloco uma storage com valor tipo (5212,4), pq no msm Server tem graduação:

 

(5212,1) genin

(5212,2) chunin

(5212,3) jounin

(5212,4) hokage

 

aí quem fosse o top vira a graduação hokage.

setPlayerStorageValue(cid, 5212, 1) -- genin

setPlayerStorageValue(cid, 5212, 2) -- chunin

setPlayerStorageValue(cid, 5212, 3) -- jounin

setPlayerStorageValue(cid, 5212, 4) -- hokage

Atenciosamente,
Bruno Minervino

 

Tibia Clients - Downloads Window

Xtudomuito

avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 14/04/15Posts: 191

Eu n entendo muito de script, poderia dizer onde eu coloco no seu script.

Josegvb

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 23/09/12Posts: 1041Gênero: Masculino

hola, fiz o test com o script e fica lindao demais porem nao e ativado so com o top, o script e ativado qndo qualquer um upa 1 lvl ele "vira o top" msm sendo lvl 3 e tendo lvls 500 no server

Bruno

Ousadia e Alegria
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 01/05/08Posts: 2571Gênero: Masculino

hola, fiz o test com o script e fica lindao demais porem nao e ativado so com o top, o script e ativado qndo qualquer um upa 1 lvl ele "vira o top" msm sendo lvl 3 e tendo lvls 500 no server

Vou verificar e para encontrar o bug e arrumar.

Atenciosamente,
Bruno Minervino

 

Tibia Clients - Downloads Window

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino
Refiz o código de outro jeito, as TAGS são as MESMAS.



bossisg.png

Bruno

Ousadia e Alegria
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 01/05/08Posts: 2571Gênero: Masculino

Refiz o código de outro jeito, as TAGS são as MESMAS.

 

Créditos ao Bruno: http://pastebin.com/raw.php?i=pr8G8DQH

HAahhaa, depois vou testar e atualizo no principal.

Esse foi um dos meus primeiros scripts quando comecei mexer com lua, nunca mais alterei ele.

 

Vlw vod.

Atenciosamente,
Bruno Minervino

 

Tibia Clients - Downloads Window

Laionel

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 19/07/15Posts: 4Char no Tibia: Laionel

Ficaria melhor se tivesse alguma Print .-.

adoration

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 21/07/15Posts: 15

Como pongo el storage al top lvl?

Bruno

Ousadia e Alegria
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 01/05/08Posts: 2571Gênero: Masculino

Como pongo el storage al top lvl?

Pode colocar nas funções onLogin e onAdvance.

Atenciosamente,
Bruno Minervino

 

Tibia Clients - Downloads Window

adoration

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 21/07/15Posts: 15

ñao entendi XD

 

function onLogin(player)
player:loadVipData()
player:updateVipTime()
local loginStr = "Welcome to " .. configManager.getString(configKeys.SERVER_NAME) .. "!"
if player:getLastLoginSaved() <= 0 then
loginStr = loginStr .. " Please choose your outfit."
player:sendOutfitWindow()
else
if loginStr ~= "" then
player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)
end
loginStr = string.format("Your last visit was on %s.", os.date("%a %b %d %X %Y", player:getLastLoginSaved()))
end
player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)
??

Bruno

Ousadia e Alegria
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 01/05/08Posts: 2571Gênero: Masculino

Cara, me refiro à função do script que eu postei aqui...

Se você prestar atenção ele trata essas duas funções...

Então nelas você poderia usar para atribuir uma storage ao top level.

Atenciosamente,
Bruno Minervino

 

Tibia Clients - Downloads Window

  • 1
  • 2