\b;Type \c;object\n;
Utilisez ce type pour les variables qui contiennent les caractéristiques d'un objet, que ce soit un robot, un bâtiment, une matière première, un ennemi, etc. Voici toutes les propriétés d'un objet : 

\c;\l;int\u cbot\int;    object.category     \n;\l;Catégorie\u cbot\category; de l'objet
\c;\l;point\u cbot\point;  object.position     \n;Position de l'objet (x,y,z)
\c;\l;float\u cbot\float;  object.orientation  \n;Orientation de l'objet (0..360)
\c;\l;float\u cbot\float;  object.pitch        \n;Angle de bascule de l'objet
\c;\l;float\u cbot\float;  object.roll         \n;Angle d'inclinaison de l'object 
\c;\l;float\u cbot\float;  object.energyLevel  \n;Niveau d'énergie (0..1)
\c;\l;float\u cbot\float;  object.shieldLevel  \n;Niveau de bouclier (0..1)
\c;\l;float\u cbot\float;  object.temperature  \n;Chaleur du jet (0..1)
\c;\l;float\u cbot\float;  object.altitude     \n;Altitude par rapport au sol
\c;\l;float\u cbot\float;  object.lifeTime     \n;Durée de vie de l'objet
\c;object object.energyCell   \n;batterie ou pile du robot
\c;object object.load         \n;Objet transporté par le préhenseur
\c;\l;int\u cbot\int;    object.team         \n;Équipe de l'objet (Voir \l;batailles de code\u battles;)
\c;\l;point\u cbot\point;  object.velocity     \n;Vitesse de l'objet
\c;\l;bool\u cbot\bool;   object.dead         \n;L'objet est-il mort?

De plus, certains objets ont des méthodes (instructions) supplémentaires. Se reporter à la \l;la liste principale\u cbot; dans la section \c;"Instructions spécifiques pour certains objets".

\s;\c;category\n;
\n;La \l;catégorie\u cbot\category; d'un objet vous permet de savoir de quoi il s'agit, par exemple de quel type de robot, bâtiment, ennemi, etc.

\s;\c;position\n;
Position de l'objet sur la planète, en mètres. Les coordonnées \c;x\n; et \c;y\n; correspondent à la position à plat, alors que \c;z\n; correspond à l'élévation absolue par rapport au niveau de la mer.

\s;\c;orientation\n;
Orientation de l'objet, en degrés. Une orientation de \c;0\n; correspond à un objet tourné vers l'est, donc vers l'axe \c;x\n; positif. Le sens de l'orientation est anti-horaire.

\s;\c;pitch\n;
Inclinaison avant/arrière de l'objet, en degrés. Une valeur positive indique que le robot monte.

\s;\c;roll\n;
Inclinaison latérale de l'objet, en degrés. Une valeur positive indique que le robot penche à gauche.

\s;\c;energyLevel\n;
Niveau d'énergie. Une \l;batterie standard\u object\power; entièrement pleine donne la valeur \c;1\n;. Une \l;pile atomique\u object\atomic; ne dépasse jamais le niveau \c;1\n;; elle dure simplement plus longtemps.
Notez que le niveau d'énergie d'un robot est toujours nul. En effet, l'énergie est contenue dans la pile ou la batterie qui est placée à l'arrière du robot, et non dans le robot lui-même. Il faut donc écrire \c;energyCell.energyLevel\n; pour connaître l'énergie à disposition.

\s;\c;shieldLevel\n;
Niveau du bouclier du robot ou du bâtiment. Un niveau de \c;1\n; correspond à un bouclier en parfait état. Avec un niveau de \c;0\n;, le prochain choc ou tir ennemi sera fatal.
Les robots peuvent régénérer leurs boucliers sur le \l;centre de réparation\u object\repair;. Le bouclier d'un bâtiment est régénéré s'il se trouve dans la sphère protectrice du \l;robot bouclier\u object\botshld;.

\s;\c;temperature\n;
Température du réacteur pour les \l;robots volants\u object\botgj;. \c;0\n; correspond à un réacteur froid et \c;1\n; à un réacteur bouillant, provisoirement hors d'usage.

\s;\c;altitude\n;
Contrairement à la position \c;z\n; qui est absolue, l'altitude est relative au niveau du sol. L'altitude n'a de sens que pour les \l;robots volants\u object\botgj; et la \l;guêpe\u object\wasp;. Pour tous les autres robots ou pour les bâtiments, cette valeur est nulle.

\s;\c;lifeTime\n;
Donne l'âge de l'objet, en secondes.

\s;\c;energyCell\n;
Cette information est spéciale, dans la mesure où elle contient les caractéristiques d'un autre objet, la pile ou la batterie en l'occurrence. On y retrouve donc toutes les caractéristiques de l'objet de base, telles que \c;category\n;, \c;position\n;, etc.
Pour connaître le niveau d'énergie d'un robot, il ne faut pas accéder à \c;energyLevel\n;, mais à \c;energyCell.energyLevel\n;.
Si le robot n'a pas de pile ni de batterie, \c;energyCell\n; vaut \c;null\n;.

\s;\c;load\n;
Cette information est spéciale, comme la précédente. Elle contient les caractéristiques de l'objet transporté par le \l;robot préhenseur\u object\botgr;. S'il ne transporte rien, \c;load\n; vaut \c;null\n;.

\s;\c;team\n;
L'équipe du robot. Utilisé dans \l;bataille de codes\u battles;. Si l'objet n'a pas d'équipe affectée (par exemple, dans les niveau non basé sur les équipes ou l'objet étant une ressource), ceci est égal à \c;0\n;.

\s;\c;velocity\n;
Vitesse actuelle de l'objet, dans chacun des axes x,y et z. Doit être traité comme un vecteur tridimensionnel.

\s;\c;dead\n;
True si l'objet a été tué récemment (pendant la lecture de l'animation de mort). Notez que l'accès à cette propriété ou à toute autre propriété après la fin de l'animation de mort provoquera une erreur qui arrêtera le programme.

\b;Examples
Le type \c;object\n; prend la valeur particulière \c;\l;null\u cbot\null;\n; lorsque l'objet n'existe pas. Par exemple:
\c;
\s;	object a;
\s;	a = \l;radar\u cbot\radar;(BotGrabberRoller);
\s;	if ( a == null )  // objet n'existe pas?
\s;	{
\s;	}
\s;	if ( a.position.z > 50 )  // sur une hauteur?
\s;	{
\s;	}
\n;

\t;Voir aussi
\l;Programmation\u cbot;, \l;types\u cbot\type; et \l;catégories\u cbot\category;.

