SK

Getplayersinlevel(Level)

Por Skymagnum, 25 de ago. de 2012 em Mods, funções e outros

tibia
otserv
9
1.2k
SkymagnumS
25 de agosto de 2012 às 21:18

Olá, galerinha do Xtibia vim trazer outra função

 

function getPlayersInLevel(level)
local x = {}
for _, pid in ipairs(getPlayersOnline()) do
if getPlayerLevel(pid) == tonumber(level) then
table.insert(x, pid)
end
end
return x
end

 

 

exemplo de uso

 

function onSay(cid, words, param)
if tonumber(param) then
doPlayerSendTextMessage(cid, 27, "Tem " .. #getPlayersInLevel(tonumber(param)) .. " player's no level " .. tonumber(param) .. ".") return true
end
return doPlayerSendTextMessage(cid, 28, "Digite !comando é um número válido.")
end

 

 

espero que gostem

Editado Agosto 25 por Skymagnum

caoticC
25 de agosto de 2012 às 21:26

Pela nome da função nem entendi ai que vi o script que entendi

Devia ser getPlayerOnlineInLevel(level)

 

Mais ta legal assim mesmo.

Executa o loop na função getPlayerOnline e depois verifica quem tem o level do parametros.

Nivel Intermediario esta se tornando um otimo scrippter.

VodkartV
25 de agosto de 2012 às 21:28

Entendi, retorna os players de um certo level, parabéns amigo!

está avançando muito xD

 

rep+

26 de agosto de 2012 às 00:24

Seria interessante se ele fizesse uma checagem no banco excluindo os que já foram checados no getPlayersOnline.

 

Mas ta bacana a função, abç.

SkymagnumS
26 de agosto de 2012 às 00:29

É, não sei como fazer isso :S

 

 

mais obrigado pelo elogio

 

 

PS:vou procurar um geito de tentar faze aqui

VodkartV
26 de agosto de 2012 às 10:12

Seria interessante se ele fizesse uma checagem no banco excluindo os que já foram checados no getPlayersOnline.

 

Mas ta bacana a função, abç.

 

Mas se fosse para fazer desse modo não seria mais fácil retornar todos de uma vez? online/offline

26 de agosto de 2012 às 12:43

Mas o banco de dados não é atualizado automaticamente, o que pode causar com que a informação esteja desatualizada.

VodkartV
26 de agosto de 2012 às 13:41

daria para salvar todos os players online e depois checar

26 de agosto de 2012 às 19:26

Daria sim, apesar de que eu não usaria, principalmente com banco de dados lotado.