Senos
Moderator
- Messages
- 183
- Points
- 0
- Age
- 30
Scripting Intermediário! - 1
Lista de Aulas:
Olá, meu nome é João Victor vulgo nick é Wolf, e estou criando este tutorial para aprendizado da linguagem script do emulador. São aulas que estavam desatualizadas antigamente no eAthena, que eu me propus a atualizar e adicionar comandos como while, e outros exemplos afim de ajudar a todos da comunidade.
Primeiro assunto:
- While
No inglês o comando While significa enquanto, funciona da mesma forma que um if (verificação). Utilizando condição como base, ele criará um loop (laço) enquanto o valor que estiver nele for verdadeiro, vejamos um exemplo:
set @i, 1;while (@i < 100) { mes "Estou aprendendo loopings em Script!"; set @i, @i +1;}
Nesse caso, iniciamos o nosso contador que é o While, lembrando que primeiro atribuimos um valor a nossa variável que é igual a 1 (@i). Nosso While avalia se @i é menor que 100, caso for verdadeiro, a condição, ele executará o script, se não for, no caso a condição for falsa, ele sairá do loop (do laço).
A primeira volta de nosso loop, a instrução é verdadeira, então dentro do loop escrevemos a mensagem e somamos +1 a variável @i, com o operador de incrementação (+). Após terminar, o loop volta e avalia @i com o vlaor 2, se for verdadeiro, rodará mais uma vez, e assim por diante, até que chegue a seu limite e delimite como falsa, para quebrar o loop.
No caso se quisessemos fazer com if, fariamos dessa forma:
Retornar:if (@i < 100) { mes "estou aprendendo loops em script!"; set @i, @i +1; callsub Retornar;}
Como vimos, o comando while verifica primeiro a variável. Já o comando Do While, que iremos explicar agora, faz ao contrário. Mas porquê? Simples, ele executa o código primeiro, e só depois que verifica a variável, se ela for verdadeira, ele executará o código novamente, e não como o while que verifica primeiro para que depois possa executar ou não o script. Veja o exemplo:
Code:
set @i, 1;do { mes "Estou aprendendo loops em script!"; set @i, @i +1;} while (@i < 100);
Fim da aula de While!
Segundo assunto desta aula:
- For
A sintaxe (comando) for funciona da mesma maneira que o While, em conjunto com um if. Utilizando uma ou mais variáveis como base, junto com uma condição. Ele cria um loop também, enquanto o valor for verdadeiro ele executa, porém em uma linha só, vejamos:
for (set @i,1; //Como no While, setamos a variável e seu valor.
Agora nesse mesmo For, iremos incrementar a condição, como no While, veja:
Code:
for (set @i,1; @i <= 100;
Code:
for (set @i,1; @i <= 100; set @i, @i + 1)
Code:
for (set @i,1; @i < 100; set @i, @i + 1) { mes "Estou aprendendo loops em script!";}
Code:
set @i, 1;Retornar:if (@i < 100) { mes "Estou aprendendo Loopings em Script!"; set @i, @i + 1; callsub Retornar;}
Code:
for (for set @i,1; @i < 100; set @i, @i +1) { mes "Estou aprendendo Loopings em Script!"; }
@i < 100; É a condição para o loop se manter.
set @i,@i+1; É o complemento da variável, a incrementação na variável @i, para que a condição seja atingida.
Acabamos por aqui nossa primeira aula de script intermediário!
Agradeço ao Keoy por ter me ajudado sempre, ser meu professor antigamente e me ensinar muito tudo que sei, e me ter dado aulas com base para criação destes tutoriais.
Last edited by a moderator: