# Датчики
Дрон обрел зрение!

Функции `get_pos_x()` и `get_pos_y()` возвращают текущие координаты x и y дрона. В стартовой позиции обе равны `0`. Позиция x увеличивается на `1` за каждую клетку в направлении `East`, а позиция y — на `1` за каждую клетку в направлении `North`.

`num_items(item)` возвращает имеющееся количество определенного предмета.
Например, `num_items(Items.Hay)` возвращает количество сена.

`get_entity_type()` и `get_ground_type()` возвращают тип объекта-сущности или земли, которая находится под дроном.

Сделать сальто, если дрон над кустом:
`if get_entity_type() == Entities.Bush:
	do_a_flip()`

Теперь разблокировано ключевое слово `None`! `None` — это значение, показывающее отсутствие значения.
Например, функция, у которой нет инструкции `return`, вернет `None`.

`get_entity_type()` возвращает `None`, если под дроном нет объекта-сущности.


Если ты хочешь узнать количество имеющихся у тебя технологий, используй функцию `num_unlocked(unlock)`.

Например, `num_unlocked(Unlocks.Speed)` вернет количество имеющихся повышений скорости.

`num_unlocked(Unlocks.Senses)` вернет `1`, если датчики разблокированы, в противном случае — `0`.

Также можно использовать `num_unlocked()` для предметов, объектов-сущностей и типов земли. Функция вернет `1`, если они разблокированы, в противном случае — `0`.

Обрати внимание: `num_unlocked(Unlocks.Carrots)` вернет количество раз, когда технология была разблокирована/улучшена.
`num_unlocked(Items.Carrot)` вернет только `0` или `1`. (Это распространяется на все растения.)