Ir para conteúdo

Demonbholder

Infante
  • Total de itens

    1551
  • Registro em

  • Última visita

  • Dias Ganhos

    24

Tudo que Demonbholder postou

  1. lol, é por isso que não se deve falar assuntos pessoais com esse tipo de gente favor remover
  2. Favor reportar o tópico quando este estiver em seção incorreta. Movido para dúvidas sobre ot servidores. Até.
  3. Anyur, em caso de dúvida resolvida, reporte a moderação para mover o tópico, e não feche-o. Tópico movido.
  4. Na verdade, os scans certos são esses: Dlls e Distro Mapa Não me parece ter algum vírus comprometedor em nenhum, parece mais para executar os arquivos mesmo. Até.
  5. Você tem 48 horas para adicionar os créditos, caso contrário seu tópico será fechado. Notificado via pm.
  6. Demonbholder

    Loopings

    Faaaaala galerinha do éks! Tudo bem? Bom, eu sei que existem vários tutoriais no éks de loopings em lua, porém, nenhum esclarecedor ou completo. Enfim, a proposta deste tutorial é explicar todos os loopings de lua, sendo eles: for e seus subtipos, repeat e while. Espero que vocês gostem e espero críticas construtivas abaixo. Introdução Bom, os loopings são extremamente úteis em lua, e são usados em quase todos scripts mais avançados. Eles servem para executar uma cadeia quantas vezes desejados. Um looping, definido como repetição em português, pode ser infinito, ou finito. Looping Infinito: No caso, uma repitação que nunca acaba, executará a cadeia infinitamente, a menos que seja quebrada. Looping Finito: Executa uma cadeia até que algo aconteça, tal como chegar ao limite dado, ou cumpra ou descumpra uma condição. Também pode ser quebrado antes de seu fim. Podemos usa-los para checar todos valores de uma tabela, para checar todos os caracteres de uma string, entre outras funções. Looping For Sem dúvida o looping mais utilizado de todos e talvez o mais importante a ser aprendido. O for tem dois subtipos: For número: Este looping executa uma cadeia tantas vezes. Podemos ditar a ordem em que o bloco será repetido, vamos aos exemplos e as explicações. O for número, assim como o for genérico e o while requer o end para delimitar a extensão da cadeia que vai ser repetida. A sintaxe do for é a seguinte: for variável = 1ºn, 2ºn, 3ºn do bloco end Variável: O for número exige a variável para guardar o número de repetições e a ordem dela. Número 1: O primeiro número deve ser, obrigatoriamente, menor que o segundo. Será o primeiro número que a variável assumirá. Número 2: Deve ser maior que o primeiro número, será o último número que a variável assumirá. No caso, a variável assumirá primeiro o valor do primeiro número e irá executar o bloco tantas vezes até chegar ao segundo número. Exemplo: for i = 5, 20 do bloco end No caso, a variável é i e ela começara tendo o valor 5 e por último terá o valor 20. Ele executará o bloco 15 vezes, pois 20-5=15. Exemplo2: for i = 5, 20, 5 do bloco end Agora temos o primeiro exemplo do terceiro número, que será a ordem que o looping se repetirá. A variável vai começar 5, depois pula para 10, pois 5+5=10, depois pula para 15, pois 10+5=15 e por último pula para 20, pois 15+5=20. No caso, repetirá 4 vezes, pois a variável assumirá 4 números: 5, 10, 15 e 20. Vou mostrar um exemplo: for i = 0, 10, 2 do print(i) end Vai executar assim: >> 0 >> 2 >> 4 >> 6 >> 8 >> 10 Para fazermos um for numérico infinito, usamos o seguinte exemplo: for i = 1, math.huge do bloco end math.huge é infinito e por isso o looping se torna infinito, pois nunca chegara ao seu final. For genérico: Este for server para executar funções iteradores, sendo as mais usadas a pairs e ipairs, as quais serão explicadas a seguir. Pairs: A função pairs chama os valores da tabela em duas variáveis, a primeira é o index e a segunda é o valor. Se o index não existir, o padrão é um número que aumenta a cada vez que não houver index. A vantagem dessa função é que pode-se usar os index fora de ordem numérica, ao contrário do ipairs. Ipairs: A função ipairs chama os valores da tabela, também, em duas variáveis, assim como a função pairs. A diferença é que, assim que ele acha um valor de index fora da ordem numérica, ele para de chamar os valores da tabela. A vantagem dessa função é que retorna os valores em ordem. As funções pairs e ipairs apenas podem ser usadas em tabelas. Vamos aos exemplos: t = { [1] = 20, [2] = 40, [3] = 50, ["teste"] = 60, [5] = 80, [7] = 90, [4] = 100 } for index, valor in pairs(t) do print(index .. " : " .. valor) end for index, valor in ipairs(t) do print(index .. " : " .. valor) end O seguinte bloco produzirá isso graças a função pairs: >> 2 : 40 >> 7 : 90 >> 3 : 50 >> 1 : 20 >> 4 : 100 >> teste : 60 >> 5 : 80 Pode-se perceber que a função pairs não é em ordem e aceita qualquer valor como index. Graças a função ipairs, ela produzirá isso: >> 1 : 20 >> 2 : 40 >> 3 : 50 >> 4 : 100 >> 5 : 80 Pode-se perceber que o ipairs não aceita valor de string como index e os números precisam seguir uma ordem numérica correta. Enfim, creio que o pairs e o ipairs tenham sidos explicados, e assim encerramos o for. While O While, assim como o for requer um end para delimitar a extensão do bloco a ser repetido. Este looping repete o bloco enquanto a condição dada for verdadeira. Se você precisar usar uma variável, é necessário apresenta-la antes do looping. Vamos aos exemplos: i = 0 while i ~= 100 do print(i) i = i + 1 end Nesse caso ele irá repetir 100 vezes, ou seja, o último valor que i irá assumir será 99 e o primeiro é 0. Claro que não é necessário declarar e usar variáveis, assim como no seguinte exemplo: while getPlayerMana(cid) < 100 do doPlayerAddMana(cid, 20) end Nesse caso, adicionará 20 de mana até que a mana do jogador seja, no mínimo, 100. Para gerar um while infinito, usamos qualquer valor que seja diferente de FALSE e diferente de nil, assim: while true do print("OK") end while 1 do print("OK") end Esses são dois exemplos de loopings infinitos. Repeat Ao contrário dos outros loopings, o repeat não exige um end, mas sim um until. Until é outra palavra reservada da linguagem lua. O repeat em português seria: repita bloco until condição Ele repete o bloco até que a condição seja verdadeira, ao contrário do while que repete o bloco enquanto a condição for verdadeira. Vamos a outros exemplos: i = 1 repeat i = i + 1 print("OK") until i == 100 No caso ele printa OK 100 vezes, ou seja, até que a condição i == 100 retornar TRUE (verdadeira). Para fazermos um repeat infinito, usamos: repeat bloco until nil Como nil nunca vai ser TRUE, o looping é infinito. break A palavra break é outra das palavras reservadas de lua, e serve para parar uma repetição. O break literalmente quebra o laço de repetição, vamos a um exemplo: i = 0 while true do print("OK") i = i + 1 if i == 100 then break end end Normalmente, usando while true criamos o looping infinito, mas como temos a checagem do valor de i com o if e usamos o break para quebrar o laço, o looping irá parar de se repetir quando i for igual 100. O break pode ser usado em qualquer looping. Fonte Manual de Referência de Lua 5.1 É isso então galera, espero que gostem e comentem, abraços.
  7. Agora sim eu gostei de ver Lanza! Descobri o resultado pela sign lá em baixo, agora sim agilizou tudo.
  8. 48 horas para adicionar os devidos créditos. Notificado via pm.
  9. Demonbholder

    Fechado

    genial vc hein haxy
  10. Demonbholder

    Mophus

    Vamos sim, agradeço a compreensão. Abs. é o linshun ou o haxy que tem o vídeo
  11. Demonbholder

    Mophus

    Você acha que eu vou ter medo de algum dos que tavam no skype? Vcs são todos homossexuais, não tenho medo. O resto do pessoal zoaram ele o suficiente. Admito, eu também.
  12. 1- Sherman 2- Itoouch 3- Bê Lanza
  13. @julinhoxd12 Postar algo não condizente com o assunto principal do tópico é considerado flood. Caso volte a se repetir, terei de alerta-lo. Fica aqui o alerta verbal. Até.
  14. Aquela ali é a foto verdadeira dele, sério.
  15. foto atualizada dele:
  16. @Tiagohells Se você continuar com flood, irei lhe suspender. Fica o alerta verbal.
  17. Demonbholder

    Mophus

    Vcs estão mexendo com quem não tem ousadia... kkkk
  18. Na verdade o procedimento é aquele sim, creio que ele não tentou fazer nada contra o usuário não. Tópico movido para dúvidas sobre ot servidores.
  19. Exato, não vamos fugir do assunto principal do tópico. Só responda quem quiser contribuir para sanar a dúvida dele. Caso contrário irei alerta-los por flood.
  20. Fala pessoal, hoje eu tive um ideia para refazer a função addEvent que é uma função que acompanha somente a biblioteca de OtServers. Pensando nisso, eu resolvi refaze-la em lua pura. Como funciona: A função executa as funções desejadas depois de tantos milisegundos. Função function addEvent(func, time, ...) i = os.time() for a = 1, math.huge do if os.time() - i >= time/1000 then func(...) break end end end Parâmetros: Como primeiro parâmetro, usamos a função desejada, tal como, print, por exemplo. No segundo parâmetro usamos o tempo em milisegundos. Por último, colocamos os argumentos da função usada no primeiro parâmetro. Exemplo de Uso addEvent(print, 5000, "Inicio") addEvent(print, 6000, "Meio") addEvent(print, 7000, "Fim") A seguinte ordem acontecerá: S Palavra 5 > Inicio 6 > Meio 7 > Fim Bom, simples e útil. To sem saco para escrever aqui, abraços.
  21. Demonbholder

    Mophus

    iiii, vai ter que preparar seu caixão hein lordz
  • Quem Está Navegando   0 membros estão online

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