Ir para conteúdo
Entre para seguir isso  
Socket

Flag System

Recommended Posts

Socket    0
Socket
Nome do Sistema: Flag System

Nome do Autor: Socket

Servidor Testado e/ou Versão do Tibia: Crying Damson 6pl1-gui 8.54

Descrição e/ou Informações Adicionais: Um simples sistema de flag utilizando análise combinatória (clique).

Crie um arquivo chamado flags.lua em data/lib com esse conteúdo:

 

Flags = {}

function Flags.Load(cid, storage, max)
   local result, flag = {}, getPlayerStorageValue(cid, storage)

   for i = max, 0, -1 do
       if(flag >= (2 ^ i)) then
           table.insert(result, 2 ^ i)
           flag = flag - 2 ^ i
       end
   end

   return result
end

function Flags.Save(cid, storage, flags)
   local flag = 0

   for i, v in ipairs(flags) do
       flag = flag + v
   end

   setPlayerStorageValue(cid, storage, flag)
end

function Flags.Has(cid, storage, max, flag)
   for i, v in ipairs(Flags.Load(cid, storage, max)) do
       if(v == flag) then
           return true
       end
   end

   return false
end

function Flags.Add(cid, storage, max, flag)
   if(not Flags.Has(cid, storage, max, flag)) then
       local flags = Flags.Load(cid, storage, max)

       table.insert(flags, flag)
       Flags.Save(cid, storage, flags)
   end
end

function Flags.Remove(cid, storage, max, flag)
   if(not Flags.Has(cid, storage, max, flag)) then return true end
   local flags = Flags.Load(cid, storage, max)

   for i, v in ipairs(flags) do
       if(v == flag) then
           table.remove(flags, i)
       end
   end

   Flags.Save(cid, storage, flags)
end

Atenciosamente, Socket.

Compartilhar este post


Link para o post
Oneshot    24
Oneshot

Grande Socket!

 

Uma ótima biblioteca e eu já sei muito bem para o que você desenvolveu essas funções rs... O código está muito bem construído e creio que elas serão úteis para quem souber usar-las corretamente, não é? heh...

 

Aprovado!

Você será remunerado em V$ 50, obrigado pela contribuição

O script recebeu uma nota B+.

Compartilhar este post


Link para o post
Conde2    0
Conde2

Muito bom o code scoket, ainda mais para quem quer criar groups com flags distintas e tudo mais.

Se você pensar bem tem muitas utilidades o script, da para usar um storage para definir INFINITAS coisas hahahha

É só saber usar analise combinatória, e a cabeça hahahahahha

Compartilhar este post


Link para o post
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×