\b;Programmes envoyés par Houston
Voilà un programme développé par nos ingénieurs.

Il permet au \l;robot bouclier\u object\botshld; de suivre et de protéger le \l;robot hachoir\u object\botphaz;.
\c;
\s;extern void object::SuivrePhazer()
\s;{
\s;	object  obj;
\s;	point   dest;
\s;	float   dist;
\s;	
\s;	obj = \l;radar\u cbot\radar;(\l;PhazerShooter\u cbot\category;);
\s;	\l;if\u cbot\if;( obj == null )
\s;	{
\s;		\l;message\u cbot\message;("Phazer pas trouvé");
\s;		\l;return\u cbot\return;;
\s;	}
\s;	\l;shield\u cbot\shield;(1);  // déployer le bouclier
\s;	
\s;	\l;while\u cbot\while;( true )
\s;	{
\s;		obj = \l;radar\u cbot\radar;(PhazerShooter);
\s;		\l;if\u cbot\if; ( obj == null )  break; // si pas de hachoir, sortir de la boucle
\s;		
\s;		dist = \l;distance\u cbot\dist;(obj.position, position);
\s;		\l;if\u cbot\if; ( dist < 5 ) // si assez proche
\s;		{
\s;			\l;wait\u cbot\wait;(1);    // attendre
\s;		}
\s;		\l;else\u cbot\if;  // Sinon se rapprocher
\s;		{
\s;			dest.x = (obj.position.x-position.x) * ((dist-5)/dist)+position.x;
\s;			dest.y = (obj.position.y-position.y) * ((dist-5)/dist)+position.y;
\s;			dest.z = (obj.position.z-position.z) * ((dist-5)/dist)+position.z;
\s;			\l;goto\u cbot\goto;(dest, 0, 1, 1);
\s;		}
\s;	}
\s;}
\n;
\b;Archives
Résumé des programmes déjà reçus:

o  \c;\l;ServiceTour1\u programs/8_ServiceTower1;\n;
o  \c;\l;CollectTitane3\u programs/7_CollectTitanium3;\n;
o  \c;\l;KillAnt1\u programs/6_KillAnt1;\n;
o  \c;\l;CollectTitane2\u programs/5_CollectTitanium2;\n;
o  \c;\l;CollectTitane1\u programs/4_CollectTitanium1;\n;
o  \c;\l;Recharge2\u programs/3_Recharge2;\n;
o  \c;\l;Recharge1\u programs/2_Recharge1;\n;
o  \c;\l;EchangeBatterie1\u programs/1_SwitchCell1;\n;
