Postado Novembro 19, 2012 12 anos Este é um post popular. Algumas LIBs úteis em OTServ Introdução: Não sou NENHUM expert em lua e estou LONGE de ser. Porém, ontem eu vim procurar algum tutorial que me evidenciasse facilmente o assunto em questão e não encontrei, então resolvi estudar um pouquinho e trazer para vocês Fonte: A fonte do meu estudo foi um site muito conhecido por scripters, que é: Lua-Users.org Explicações: Optei por incluir nesse tutorial explicações somente das libs que eu achei mais interessantes e que pude ver uma utilidade em OTServ, como Math, Os e Table. Se você acha que faltou algo de interessante ou que alguma explicação pode ser melhorada, por favor, poste construtivamente aqui, quem sabe até eu possa aprender mais Da Biblioteca Math...math.abs(v): retorna o valor absoluto de v -- o valor positivo math.floor(v): retorna o valor inteiro mais proximo e menor ou igual a v -- arredonda para baixo math.ceil(v): retorna o valor inteiro mais proximo e maior ou igual a v -- arredonda para cima math.min(a,b,c,d,...): retorna o menor valor do conjunto especificado entre parêntesis (a,b,c,d,....) math.max(a,b,c,d,...): retorna o maior valor do conjunto especificado entre parêntesis (a,b,c,d,....) math.random(a,b): retorna um valor aleatório entre a e b, incluindo ambos Da Biblioteca Os... os.date(): retorna uma string no formato MM/DD/YY HH:MM:SS. os.date('*t'): retorna uma tabela contendo {hour, min, wday, year, yday, month, sec, day, isdst(true)} os.date('!*t'): retorna uma tabela contendo {hour, min, wday, year, yday, month, sec, day, isdst(false)} os.time(): retorna o horário do sistema utilizando Unix Timestamp --(Conversor: http://www.unixtimestamp.com/index.php) os.difftime(t2, t1): retorna os segundos de diferença entre os tempos t2 e t1 Da Biblioteca Table... table.insert(table, [pos,] v): insere um elemento de valor v na tabela table na posição pos. --NOTA: Se não for especificada a pos, o elemento será inserido no fim da tabela. table.remove(table [, pos]): remove o elemento da tabela table que está indicado pelo índice pos. NOTA: Se não for especificada a pos, removerá o último elemento da tabela. table.concat(table [, sep [, i [, j]]]): Concatena (une) os elementos da tabela table a fim de formar uma string. --NOTA: sep é o elemento separador e i e j são os índices de começo e fim, respectivamente, dos elementos que serão concatenados. table.sort(table [, comp]): reordena os elementos da tabela table segundo as especificações de comp. --NOTA: O padrão é: function(a,b) return a<b end, ou seja, reordernação ascendente. Da Biblioteca String... string.lower(s) ou s:lower(): Retorna a string s após fazer com que todos seus caracteres maiúsculos se tornem minúsculos. --Tudo minúsculo, oposto de string:upper string.upper(s) ou s:upper(): Retorna a string s após fazer com que todos seus caracteres minúsculos se tornem maiúsculos. --Tudo maiúsculo, oposto de string:lower string.gsub(s, pattern, replace [, n]) ou s:gsub(pattern, replace [,n]): Retorna o texto s após substituir os caracteres pattern do texto pelos caracteres definidos em replace, sendo n o limite de subtituições, que caso não seja definido, é ilimitado. string.len(s) ou s:len(): Retorna a quantidade de caracteres da string s. string.reverse(s) ou s:reverse(): Retorna a string s reordenada de forma contrária. string.rep(s, n) s:rep(n): Gera uma string que são n cópias da string s concatenadas. Outras bibliotecas... tonumber(a): Converte a string a para números. OBS: OBRIGATÓRIO DEFINIR // NÃO-OBRIGATÓRIO DEFINIR Considerações Finais: Esse tutorial foi feito para dar uma noção do quão úteis podem ser essas libs. Quem já tem essa noção e já sabe trabalhar acha um tutorial desse desnecessário, mas assim como eu, muitos não sabem que podem ter grande utilidade. Dica: Sempre que estiverem a fim, deem uma olhada no Lua-Users.org, site citado no início do tutorial, na parte Fonte. Há muitas coisas legais lá, e se cresce bastante estudando assim, apesar de o site estar em inglês. Até a próxima! Creditos : Guiminhah Editado Novembro 19, 2012 12 anos por GodMarini (veja o histórico de edições) Contato; god.marinii [email protected]
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.