Ir para conteúdo

Tprocheira

Conde
  • Total de itens

    566
  • Registro em

  • Última visita

Tudo que Tprocheira postou

  1. Conde do Monte Zafor, VAI! USE SUAS CONTAS FANTASMAS, AGORA!!!
  2. NÃO JV! Vocês vão anunciar dia 30 de fevereiro às 23:61!! Afs (Cara, seu português é horrível...)
  3. pauersin me lambe! (noa, noa ten xhocolate) OK, PAREI COM O TIOPÊS. Quero o semsasao de volta, ele era 'leca'l
  4. FAIL! (Agumon não é Pokemon...)
  5. Parabéns velho! Espero que você continue sendo o ótimo user que você sempre foi! Boa sorte no seu novo cargo! \\
  6. @JV~ Sim, a versão do TFS 0.4 vai ser equivalente à versão 1.0 do OpenTibiaServer. Só que segundo a equipe do TFS, eles vão focar, principalmente, em performance (tempo em Server Save, Clean, etc), além das 'features' que são sempre implementadas \\
  7. momento powerzin eu também so pegador, vale? sim, vale eba \o/
  8. TENSO acho que já sei a lista de usuários que vão ser banidos (LF - EU - X)
  9. Afs Sem AOL é foda :s Senti essa lá dentro. (mas eu também ri ) \\
  10. ADICTE, VOSE E DUMAU1 ele me alertou uma vez
  11. Ei Jv, se você quer esse negócio do Barzinho ser loko da linguissa, fale com seus 'cuntato' e faça a mágica vo senti falta do powersin, ashava os tiopemse deel valido bls
  12. @up~ nemri :s pois é, o que deu com a Guerreira?
  13. uaehueahaehu euri (do comentário do lf 'cabeça de cone')
  14. euriumpocoalto dumau isso so faltava o cigarro ser marrom :s
  15. Essa é a versão 8.4? Porque ela tem que ser, caso contrário, não funcionará... \\
  16. acho que sim :s pelo menos eu ri no tópico dele EI! COMO O POWERZIN TEM NOME EM ITALICO!?
  17. na proxima solta especial
  18. euri mas isso é verdade, só aho que não deveriam colocar posts que tem como conteúdo a letra 'q'...
  19. Hail Wikipedia!
  20. @JV Mas mesmo que esse seja o desejo do dono do Empire (ou antigo, seja lá o que for), a licença dele é GPL, o que garante livre divulgação e edição do mesmo. Caso ele não queira isso, ele teria que registrar o mapa dele em uma outra licença (de comercialização), e não na GPL. \\
  21. Eu ia baxa Mas, por que ninguém pode colocar o mapa para download? Ele, por acaso, está sob direito de cópia?!
  22. Hail Under irmã do Under! ela deu sorte de não ser parecida contigo aseahsue :*² (não me bane plix)
  23. Se separam itens em uma lista com uma vírgula (não reticências). Aquilo teve o sentido de mostrar o que faz parte da sintaxe do loop. Caso você não tenha percebido, os loops while e for não possuem dois comandos, como o repeat tem... \\
  24. Você pode usar o while com qualquer coisa, como while getPlayerStorageValue(cid, 5000) < 5 do \\
  25. Tprocheira

    Loops

    Fala galerinha do XTibia.com! Como tenho visto poucos tutoriais de nível avançado na nossa sessão de scripting, decidi fazer este tutorial completo sobre loops em LUA. Basicamente, existem 3 tipos de loops que podem ser usados, os quais são: repeat ... until, while e for. Recomendações: -Conhecimento completo sobre Arrays; -Conhecimento intermediário sobre LUA OFF-OpenTibia Repeat Loop Este é raro de se ver, já que ele tem uma sintaxe maior e faz a mesma coisa que o while. A sua sintaxe é a seguinte: Este tipo de loop funciona da seguinte maneira: Você tem uma variável para a qual você atribui o valor 0. Então, você da o comando repeat, o qual irá repetir o código. Para que o loop não seja infinito, você terá que adicionar a linha until var == valor, e antes disso, algo que aumente o valor da variável, no nosso caso, foi usado var = var+1, o que, após o script ter sido executado, irá aumentar o valor da variável var em um. Um exemplo de OpenTibia: local var = 0function onUse(cid, item)local rand = math.random(1, 10)repeatdoPlayerSay(cid, rand, 2)var = var+1until var == 5return trueend Isso fará com que o player fale um número qualquer (randomizado pelo math.random) até que a variável var tenha valor 5. Como pôde perceber, esse tipo de loop é um pouco complicado, já que você tem que aumentar a variável e para se fechar o loop você precisa colocar uma 'função' (until var == 5) para que ele termine. While Loop Esse, mesmo que pouco usado, ainda é usado atualmente. Ele funciona quase da mesma maneira que o repeat, a não ser pelo fato de que não existe o until var == valor. A sua sintaxe é a seguinte: Neste caso, você terá que adicionar um end no lugar do until, mas percebam que ainda é preciso usar o var == var+1. Um exemplo de OpenTibia: local var = 0function onUse(cid, item)while var < 5 dodoPlayerSay(cid, "I'm crazy!", 2)var == var+1endend Este script fará com que o player fale I'm Crazy 5 vezes (ou até a varíavel var estar com o mesmo valor citado no início do loop). Você pode usar ele para criar um script após o final do while. Por exemplo, depois que ele falar as 5 vezes, ele morrerá de cansaço. For Loop Este, na minha opinião pessoal, é o melhor e mais flexível tipo de loop em LUA, porém não funciona com nenhuma condição (ele simplesmente vai repetir até o valor estipulado). Com ele, você consegue checar cada item de uma tabela, podendo ser nomes, posições, ou qualquer outra coisa. A sua sintaxe é uma das mais fáceis: Você pode substituir a palavra index por qualquer outra coisa. Para determinar o valor inicial e o valor máximo à ser usado, você troca a letra a pelo valor mínimo e b pelo valor máximo. Caso você queira checar cada item de uma tabela, você fará da seguinte maneira: Isso vai exibir na tela do usuário as seguintes palavras: Você pode usá-lo para repetir algum código. Por exemplo, caso você queira esvaziar a sua array sem ter que 'chutar' quantos valores ela vai ter e sem repetir o código, o que você pode fazer, é usar o loop! local names = {"Me", "You", "He"}function Bla()for i = 1, #names dotable.remove(names, i)endend Isso irá remover todos os nomes da tabela, sem ter que repetir o código! Um exemplo de OpenTibia: 20 Itens dentro de uma backpack! Você também pode parar o loop após ele ter efetuado a sua ação, tudo que você tem à fazer, é adicionar o comando break (quebrar) após o seu código. Um exemplo muito interessante (não é de minha autoria, e sim de Colandus), é um script que checa uma área e atribui um valor à uma variável se estiver (o tile) vazio ou com algum player. local position = {fromx = 584, fromy = 371, tox = 595, toy = 381, z = 7}local area = ""function onUse(cid, item, frompos, item2, topos)area = "Creatures at area:\n"for i = position.fromy, position.toy dofor j = position.fromx, position.tox dolocal pos = {x = j, y = i, z = position.z, stackpos = 253}local getThing = getThingfromPos(pos).uidif isCreature(getThing) == 1 thenarea = area .. "1 "elsearea = area .. "0 "endendarea = area .. "\n"enddoPlayerSendTextMessage(cid, 17, area)return 1end Você também pode usar Iterators com um loop for. Para isso, farei um tutorial mais tarde! \\
  • Quem Está Navegando   0 membros estão online

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