Ir para conteúdo

getStringBar(Vr,Vm,quant) - Barra de progresso


Posts Recomendados

Eaí.

Estava criando um sistema de pet por channels, daí senti que seria legal fazer com que tivesse uma barrinha de experiência

Ficará tipo assim:

FyEaTid.png (40 quadradinhos)

 

O legal é que dá pra você modificar a largura da barrinha, mas manter os mesmos valores, como na foto:

mjuYHSM.png (60 quadradinhos)

 

Daí você pode modificar os valores, como por exemplo, 7 de 10 em 20 quadradinhos:

qziaKmu.png

 

A função é a seguinte:

function getStringBar(Vr,Vm,quant)     local retorno = {barra,min=Vr,max=Vm,porcentagem=math.floor((Vr/Vm)*100)}     local Q = quant/Vm     Vr = Vr*Q     Vm = Vm*Q     str = "["     local trigger = false     for i = 1, Vm do          if i <= Vr then               str = str .. "=          else               if not trigger then                    str = str .. "|"                    trigger = true               end               str = str .. "-"          end     end     retorno.barra = str..]"     return retornoend

Ela retornará o seguinte array:

retorno = {

   barra (que será a barrinha inteira, tipo [=====|----------]

   min (que é o valor usado, como o 7 da terceira foto)

   max (o valor máximo usado, como o 10 da terceira foto)

   porcentagem (que é a porcentagem do 7 para o 10, no caso 70%)

}

 

Exemplo de uso:

local gsb = getStringBar(10,20,50)doPlayerSendTextMessage(cid, "4", gsb.min.." "..gsb.barra.." "..gsb.max.." ("..gsb.porcentagem.."%)")
Que dará o seguinte resultado:
iZeZztu.png
 
Daí vai de sua imaginação!
 
Esclarecendo:
> getStringBar(valor,valor máximo,quantidade de quadradinhos)
 
Esta função não é muito simples de se usar, mas quis deixar retornando o array mesmo, até pra aumentar as possibilidades de uso.
Talvez ela seja uma função daquelas que você usa uma vez a cada vinte códigos, mas sempre é bom deixá-la por perto.
Valeu!
Link para o comentário
Compartilhar em outros sites

Utilizo bastante a função que você mencionou, realmente são inúmeras formas de criação e edição para se fazer utilizando-a. Parabéns por trazê-la ao fórum, alguns não a conhecem.

Link para o comentário
Compartilhar em outros sites

  • 1 year later...
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...