DE
talkaction

[Talkaction] Rank

Por Demonbholder, 12 de mar. de 2011 em Actions e Talkactions

script
8
3.8k
12 de março de 2011 às 07:15

Faaala pessoal! Esses dias eu estava tentando uma coisa e não estava conseguindo; o meu problema permaneceu por vários dias, até que hoje de manhã eu consegui resolver!!! Aeeee...

 

Bom, é o seguinte, eu estava testando minhas habilidades quando percebi que eu não estava conseguindo criar um rank, que mostra os jogadores e o level deles em ordem do mais forte para o mais fraco; bom, depois de muitas tentativas eu consegui.

 

Servidor Testado: New Styller Yourots 0.7.5 (8.60)

 

Vamos logo ao script:

 

function onSay(cid, words, param)

t = {}
b = {}
n = 0
str = nil
str2 = ""

for i, pid in ipairs(getPlayersOnline()) do
t[i] = getPlayerLevel(pid)
end
doShowTextDialog(cid, 2160, getString(t))
end

function getString(t)

b = {}

for w, z in ipairs(getPlayersOnline()) do
b[w] = order(t)
e = getName().. " " .. b[w]
str = str == nil and e or str.. "\n" .. e
table.remove(t, table.find(t, n))
end
return str
end

function getName()

for s, d in ipairs(getPlayersOnline()) do
if order(t) == getPlayerLevel(d) and not(string.find(str2, getCreatureName(d))) then
str2 = str2 == "" and getCreatureName(d) or str2..getCreatureName(d)
p = getCreatureName(d)
break
end
end
return p
end

function order(t)

n = 0

for y, x in ipairs(t) do
if x > n then
n = x
end
end
return n
end

 

E a tag:

 

<talkaction words="!rank" script="nomeDoArquivo.lua" />

 

Da para fazer também um sistema de pontos por storage, se tiver alguém interessado avisa que eu acrescento.

 

De Scripter para Scripter:

 

Depois de várias horas tentando fazer isso, hoje eu consegui. Estava ficando quase sem letras pra usar no ipairs kkkkk. É isso, tive que criar várias funções, mas deu certo.

 

Até mais pessoal.

Editado Março 15 por Demonbholder

ElkilluraE
12 de março de 2011 às 07:49

Bem como você me explico foi mto dificil fazer esse script como visto, bem então só me resta agradecer pelos scripts inovadores e pela contribuição que vêm fazendo ao xTibia, Parabéns e REP+

Editado Março 12 por Elkillura

SecularS
12 de março de 2011 às 10:23

É Pra Rank De Magic, Axe, Distance, Fist?

Ou Só Level?

12 de março de 2011 às 10:26

Atualmente só level, mas como eu disse, qualquer coisa eu adiciono mais opções se você quiser.

Kuro o ShinigaK
12 de março de 2011 às 19:32

Muito Bom Cara Você E Seus Script Foda :D Rep+

15 de março de 2011 às 13:04

ahhhh, mal pessoal, tinha um pequeno erro na função getName() mas acabo de corrigi-lo; agora, esta perfeito.

15 de março de 2011 às 20:41

hm o do styller tem um rank completim em poucas linhas + o teu ta bacana

 

rep+

Editado Março 15 por fireelement

16 de março de 2011 às 20:26

Sim, aquele script com getHighScoreString, ou algo assim. Mas esse é sem usar aquela função.