Ir para conteúdo
  • 0

Verificar Players (especifico) online


Mazynho

Pergunta

Galera é o seguinte:

 

Um script que faz uma varredura em todo server e vê se tem alguém do GroupID X online, se tiver alguém desse GroupID então exiba seus respectivos nomes.

 

Caso não seja encontrado nenhum com o GroupID X então retorne uma mensagem.

 

 

mais uma coisa se alguém poder postar uma lista com os IDs das cores da função doSendAnimatedText

 

E quais funções existem? Ex: function onThink, function onSay e para que serve cada coisa que fica dentro dos parenteses Ex: function onThink(cid, interval, lastExecution)

 

 

Teria como vocês postarem uma lista disso também.

Iniciei em .lua há alguns dias e, ainda não sei fazer isso.

Comecei a programar em .lua devido minhas necessidades não serem encontradas na net. kkkkk

Se esse script que estou fazendo funcionar como quero, irei posta-lo aqui no xtibia, como agradecimento pelas milhares de vezes que vocês min ajudaram.

Editado por Mazynho
Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

O primeiro:

 

function onSay(cid, words, param, channel)
 
    local stt = ""
 
    for i = 1, #getPlayersOnline() do
        local staff = getPlayersOnline()[i]
        if getPlayerGroupId(staff) >= 4 then
            if stt == "" then
                stt = getPlayerName(staff)
            else
                stt = stt..", "..getPlayerName(staff)
            end
        end
    end
    if stt ~= "" then
         doPlayerSendTextMessage(cid, 27, "Staff online: "..stt..".")
    else
         doPlayerSendCancel(cid, "Ninguém da staff on, no momento.")
    end
    return true
end
Link para o comentário
Compartilhar em outros sites

  • 0
COLOR_BLACK = 0
COLOR_BLUE = 5
COLOR_GREEN = 18
COLOR_TEAL = 35
COLOR_LIGHTGREEN = 66
COLOR_DARKBROWN = 78
COLOR_LIGHTBLUE = 89
COLOR_MAYABLUE = 95
COLOR_DARKRED = 108
COLOR_DARKPURPLE = 112
COLOR_BROWN = 120
COLOR_GREY = 129
COLOR_DARKPINK = 152
COLOR_PURPLE = 154
COLOR_DARKORANGE = 156
COLOR_RED = 180
COLOR_PINK = 190
COLOR_ORANGE = 192
COLOR_DARKYELLOW = 205
COLOR_YELLOW = 210
COLOR_WHITE = 215
COLOR_NONE = 255

São 215 cores, essas são as que tem nome declarado.

 

Seu segundo pedido, sobre explicar cada function do Open Tibia, é meio inviável, eu aprendi a usar cada uma e o que seus parâmetros retornavam, printando cada um e posteriormente nas sources.

 

Abraços.

Editado por Oneshot
Link para o comentário
Compartilhar em outros sites

  • 0

 

O primeiro:

function onSay(cid, words, param, channel)
 
    local stt = ""
 
    for i = 1, #getPlayersOnline() do
        local staff = getPlayersOnline()[i]
        if getPlayerGroupId(staff) >= 4 then
            if stt == "" then
                stt = getPlayerName(staff)
            else
                stt = stt..", "..getPlayerName(staff)
            end
        end
    end
    if stt ~= "" then
         doPlayerSendTextMessage(cid, 27, "Staff online: "..stt..".")
    else
         doPlayerSendCancel(cid, "Ninguém da staff on, no momento.")
    end
    return true
end

 

zipter98, valei pelo script, funcionou perfeitamente, só que tentei inserir ele no meu script e não consegui.

 

Queria que você você fizesse assim:

 

Ele iria falar !staff + Alguma coisa Ex: !rank axe

 

Ai dependendo do que for esse + Alguma coisa, ele enviará uma msg, pré definida, para esse um GroupID X

 

Ex:

!staff bola

Manda uma msg para o GroupID X

!staff cadeira

Manda uma msg para o GroupID Z

 

 

Ai teria uma condição la que se ele fale bola então mande uma msg Y para o GroupID X, Caso não tenha ninguém online desse GroupID mande essa msg para o GroupID seguinte X + 1, se o próximo GroupID também não tiver ninguém online então ele iria passar para o próximo GroupID, fazendo isso até chegar no GroupID 6, ai se não tiver ninguém do GroupID 6 então irá aparecer uma msg dizendo que estão offline.

 

Lembrando que cada GroupID tem sua msg e a msg seria enviada para todas as pessoas do GroupID

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...