\b;Datový typ \c;object\n;
Tento datový typ používejte pro proměnné, které mají obsahovat popis objektu, ať už to má být robot, budova, surovina, nepřítel apod. Zde je seznam všech atributů objektu: 

\c;\l;int\u cbot\int;    object.category     \n;\l;Kategorie\u cbot\category; objektu
\c;\l;point\u cbot\point;  object.position     \n;Poloha objektu (x,y,z)
\c;\l;float\u cbot\float;  object.orientation  \n;Azimut objektu (0..360)
\c;\l;float\u cbot\float;  object.pitch        \n;Náklon objektu vpřed/vzad
\c;\l;float\u cbot\float;  object.roll         \n;Náklon objektu vpravo/vlevo
\c;\l;float\u cbot\float;  object.energyLevel  \n;Stav baterie (0..1)
\c;\l;float\u cbot\float;  object.shieldLevel  \n;Stav štítu (0..1)
\c;\l;float\u cbot\float;  object.temperature  \n;Teplota tryskového motoru (0..1)
\c;\l;float\u cbot\float;  object.altitude     \n;Výška nad zemí
\c;\l;float\u cbot\float;  object.lifeTime     \n;Stáří objektu
\c;object object.energyCell   \n;Baterie ve zdířce robota
\c;object object.load         \n;Náklad v drapáku robota
\c;\l;int\u cbot\int;    object.team         \n;Tým, do kterého objekt patří (viz \l;souboje programátorů\u battles;)
\c;\l;point\u cbot\point;  object.velocity     \n;Rychlost a směr pohybu objektu
\c;\l;bool\u cbot\bool;   object.dead         \n;Je objekt mrtvý?

Některé objekty navíc mají i další metody (příkazy). Jejich seznam najdete v sekci "Příkazy vyhrazené jen pro některé objekty" v \l;obsahu\u cbot; nápovědy jazyka CBOT.

\s;\c;category\n;
\l;Kategorie\u cbot\category; objektu říká, co je to za objekt, např. jaký je to druh robota, budovy, nepřítele, apod.

\s;\c;position\n;
Poloha objektu na planetě, v metrech. Souřadnice \c;x\n; a \c;y\n; představují polohu na mapě, souřadnice \c;z\n; představuje nadmořskou výšku. 

\s;\c;orientation\n;
Azimut objektu ve stupních. Tento atribut určuje, kterým směrem je objekt otočený. Azimut \c;0\n; znamená, že objekt směřuje na východ, tedy souběžně s kladnou poloosou \c;x\n;. Azimut se měří proti směru hodinových ručiček. 

\s;\c;pitch\n;
Náklon objektu vpřed nebo vzad. Hodnota \c;0\n; znamená, že objekt se nachází ve vodorovné poloze. Kladná hodnota znamená náklon vzad (objekt míří čelem k nebi), záporná hodnota znamená náklon vpřed (objekt míří čelem do země). 

\s;\c;roll\n;
Svislý náklon objektu vlevo nebo vpravo ve stupních. Kladná hodnota znamená, že objekt se naklání doleva, záporná hodnota znamená, že se naklání doprava. 

\s;\c;energyLevel\n;
Stav baterie v rozsahu 0 až 1. Běžná plně nabitá \l;baterie\u object\power; zde bude mít hodnotu \c;1\n;. \l;Jaderná baterie\u object\atomic; zde také bude mít hodnotu nejvýše 1, ale vydrží mnohem déle. Pozor: robot zde bude mít vždy hodnotu nula, protože energii neobsahuje robot, ale samotná baterie. Pro zjištění stavu baterie robota musíte napsat \c;energyCell.energyLevel\n;. 

\s;\c;shieldLevel\n;
Stav štítu robota nebo budovy. Hodnota \c;1\n; znamená, že objekt je nepoškozený. Pokaždé, když robot nebo budova dostane zásah nebo se prudce srazí s jiným objektem, stav štítu se sníží. Když hodnota klesne na \c;0\n;, další zásah nebo srážka objekt zničí. 
Roboti si mohou doplnit štít v \l;opravně\u object\repair;. Budovu lze opravit tím, že ji obklopíte silovým polem \l;mobilního štítu\u object\botshld;.

\s;\c;temperature\n;
Teplota tryskového motoru \l;létajícího robota\u object\botgj;. Hodnota \c;0\n; znamená, že tryskový motor je studený. Během letu teplota průběžně roste. Když dosáhne hodnoty \c;1\n;, tryskový motor se přehřeje a přestane fungovat, dokud opět trochu nevychladne. 

\s;\c;altitude\n;
Souřadnice \c;z\n; polohy objektu udává nadmořskou výšku, zatímco atribut \c;altitude\n; udává výšku nad zemí. Tento atribut má smysl pouze u \l;létajících robotů\u object\botgj; a \l;vos\u object\wasp;. Všechny ostatní objekty zde mají hodnotu nula. 

\s;\c;lifeTime\n;
Stáří objektu v sekundách od jeho vytvoření.

\s;\c;energyCell\n;
Toto je speciální atribut, který vrací informace o jiném objektu, v tomto případě o připojené baterii. To znamená, že atribut \c;energyCell\n; obsahuje všechny atributy běžného objektu, například \c;category\n; (PowerCell nebo NuclearCell), \c;position\n; (poloha baterie), atd.
Pokud chcete zjistit stav baterie robota, nezajímá Vás jeho vlastní atribut \c;energyLevel\n;, ale \c;energyCell.energyLevel\n;.
Pokud robot nemá žádnou baterii, \c;energyCell\n; obsahuje hodnotu \c;null\n;.

\s;\c;load\n;
Tento atribut také obsahuje popis jiného objektu: informace o předmětu, který \l;robotické rameno\u object\botgr; drží v drapáku. Pokud nedrží nic, atribut \c;load\n; obsahuje hodnotu \c;null\n;.

\s;\c;team\n;
Tým, do kterého robot patří. Používá se v \l;soubojích programátorů\u battles;. Pokud objekt nepatří do žádného týmu (např. v misi bez týmů nebo když je objekt surovinou), bude zde hodnota \c;0\n;.

\s;\c;velocity\n;
Aktuální rychlost a směr pohybu objektu. Hodnota je vyjádřena jako trojrozměrný pohybový vektor.

\s;\c;dead\n;
True, pokud byl objekt nedávno zabit (během přehrávání animace smrti). Všimněte si, že přístup k této nebo jakékoli jiné vlastnosti po dokončení animace smrti způsobí chybu, která zastaví program.

\b;Příklady
Proměnná typu \c;object\n; může obsahovat speciální hodnotu \c;null\n;, která znamená, že proměnná neobsahuje popis žádného objektu. Například:
\c;
\s;	object a;
\s;	a = radar(BotGrabberRoller);
\s;	if ( a == null )  // objekt neexistuje?
\s;	{
\s;	}
\s;	if ( a.position.z > 50 )  // je na kopci?
\s;	{
\s;	}
\n;

\t;Užitečné odkazy
\l;Programování\u cbot;, \l;datové typy\u cbot\type; a \l;kategorie\u cbot\category;.

