\b;Objetivo
Como defesa contra formigas atacando de todos os lados, adapte o programa \c;Aranha2\n; para voar a uma determinada altitude.

\t;Programa
O programa necessário para esta tarefa é um pouco semelhante ao programa \c;Aranha2\n; que procura a formiga mais próxima, gira para ela e dispara:
\c;
\s;extern void object::Aranha2()
\s;{	
\s;	object    item;
\s;	
\s;	while (true)
\s;	{
\s;		item = radar(AlienSpider);
\s;		turn(direction(item.position));
\s;		fire(1);
\s;	}
\s;}
\n;
Você pode copiá-lo e colá-lo no editor e adaptá-lo. Substitua \c;radar(AlienSpider);\n; por \c;radar(AlienAnt);\n;, e escreva antes do laço \c;while\n; outro laço que ativa o jato abaixo do \l;atirador alado\u object\botfj; até o robô atingir uma altitude de 20 metros.

A instrução \c;\l;jet\u cbot\jet;()\n; controla o jato abaixo dos robôs alados. O número entre parênteses deve variar entre \c;-1\n; e \c;1\n;. \c; jet(1);\n; move o robô para cima com velocidade máxima. \c; jet(-1);\n; move o robô para baixo com velocidade máxima e \c;jet(0);\n;  estabiliza a altitude. Como o robô deve alcançar uma altitude precisa, mova-o para cima lentamente com \c;jet(0.2);\n;, espere até atingir a altura desejada e estabilize a altitude com \c;jet(0);\n;.

Para "esperar até alcançar a altura desejada", precisamos de um laço condicional: as instruções dentro do loop serão repetidas apenas enquanto uma determinada condição for verdadeira. A altitude do robô é dada por \c;position.z\n;. Nós já vimos que \c;position\n; dá a posição do robô. E uma posição é dada pelas três coordenadas x, y e z: o eixo x é o eixo oeste-leste, o eixo y é o eixo sul-norte e o eixo z é o eixo vertical. Portanto, devemos aguardar enquanto \c;position.z\n; for menor que 20:
\c;
\s;	while (position.z < 20)
\s;	{
\s;		wait(0.2);
\s;	}
\n;
Depois de esperar 0,2 segundos, o programa verificará se a altitude ainda está abaixo dos 20 metros. Se este for o caso, ele irá esperar um pouco mais, se não, o programa continua após o loop, ou seja, após a chave de fechamento \c;}\n;. Não esqueça de estabilizar a altitude após o laço com \c;jet(0);\n;.

\t;Veja também
\l;Programação\u cbot;, \l;tipos\u cbot\type; e \l;categorias\u cbot\category;.
