Tutorial Break / Continue
Continuação do tutorial de Loop!
Break
Break's são usados em Loop's, podendo parar o processo do mesmo.
loop faz uma conta rápida de um numero a outro, exemplo: de 0 a 500, com o Break você poderá parar essa conta em qualquer numero entre 0 e 500...
Exemplo:
1 2 3 4 5 6 7 8 9 10 | new string[20]; for ( new i = 0; i < MAX_PLAYERS; i++) { if (i == GetMaxPlayers()) { format(string, sizeof(string), "Slots: {1E90FF}%d" , i); SendClientMessageToAll(Branco, string); break ; } } |
Já se você mudar a ordem do código, colocando o format e o SendClientMessage fora das chaves do if que compara a variável do loop com o numero máximo de slots, ele terá um resultado diferente.
Exemplo de como ficaria o código:
1 2 3 4 5 6 7 8 9 10 | new string[20]; for ( new i = 0; i < MAX_PLAYERS; i++) { if (i == GetMaxPlayers()) { break ; } format(string, sizeof(string), "Slots: {1E90FF}%d" , i); SendClientMessageToAll(Branco, string); } |
No exemplo acima, ele não mandaria o resultado obtido e sim todos os resultados durante o progresso da conta, em um servidor de 3 slots por exemplo ele mandaria várias mensagems com a seguinte string:
0
1
2
Essa ordem ainda pode ser alterada, colocando o format e o SendClientMessage acima do if que contem o break, ficando assim:
1 2 3 4 5 6 7 8 9 10 | new string[20]; for ( new i = 0; i < MAX_PLAYERS; i++) { format(string, sizeof(string), "Slots: {1E90FF}%d" , i); SendClientMessageToAll(Branco, string); if (i == GetMaxPlayers()) { break ; } } |
O resultado nesse caso seria:
0
1
2
3
4
5
Continue
Da mesma forma que à uma função que pare um loop também à uma que faça ele continuar, e o nome é bem apropriado. continue. O continue pode ser usado para pular um ou mais numeros no loop, exemplo:
1 2 3 4 5 6 7 8 9 10 11 12 | new string[20]; for ( new i = 0; i < 5; i++) { if (i == 3) { continue ; } format(string, sizeof(string), "Slots: {1E90FF}%d" , i); SendClientMessageToAll(Branco, string); } return 1; } |
Neste exemplo, estariamos fazendo a conta com o resultado máximo de 5(que supostamente seria o numero de slots) então, o continue faria o loop pular o numero 3, o resultado seria esse:
0
1
2
4
Para pular mais de um numero é simples, você só precisa usar operadores ">, &&, <"
1 2 3 4 5 6 7 8 9 10 11 12 | new string[20] for ( new i = 0; i < 10; i++) { if (i > 3 && i < 7) { continue ; } format(string, sizeof(string), "Slots: {1E90FF}%d" , i); SendClientMessageToAll(Branco, string); } return 1; } |
Neste caso, ele pularia após o numero 3 e antes do numero 7, tendo o resultado:
0
1
2
3
7
8
9
Bom, fiz este tutorial básico por que ao fazer a lista de tutoriais notei que não há nenhum tutorial sobre o assunto, apesar de ser uma coisa simples, por não haver muitos lugares com informações algumas pessoas não sabem que utilidade pode ter Break e Continue, então ai está =)
========FUSÃO SA-MP======
=======VICTOR_FUSION=====
========FUSÃO SA-MP======
0 comentários:
Postar um comentário