№9. Игра: шарик на плоскости.


В этом занятии мы попробуем написать игру, имитирующую шарик на плоскости. Поместим его в центр дисплея и в зависимости от наклона устройства он будет перекатываться в разные стороны. Для начала создадим новый проект и назовем его ball.

Cоздадим переменную ball.

Переменная ball у нас будет содержать значение типа спрайт. Спрайт — это такой объект, который виден на дисплее и который может двигаться по нему. Использование спрайтов удобно, так как из-за встроенных функций не приходится отрисовывать каждый кадр вручную. У спрайта есть координаты: x по горизонтали и y по вертикали. Каждая координата может принимать значения от 0 до 4 (так как дисплей у нас 5×5). 0 находится в нижнем левом углу. Поместим наш шарик в центр, т.е. в координаты 2, 2. Для этого используем блок «create sprite at x: … y: …» в разделе «игра».

Заметим, что в центре дисплея загорелся наш только что созданный шарик. Теперь научим устройство двигать этот шарик в зависимости от положения в пространстве. Чтобы считывать показания акселерометра воспользуемся блоком «поворот (°)  …» из подраздела «дополнительно» раздела «ввод».

Этот блок возвращает значение от -90 до 90  при повороте устройства вертикально (высота) или горизонтально (наклон). Так, если наклонить устройство вниз, то поворот по высоте будет отрицательным. Добавим условие.

При наклоне вниз шарик должен «скатываться» вниз. Для этого добавим блок «изменить … по значению» и укажем изменить y  на -1 для шарика.

Аналогично при повороте вверх значение y должно увеличиться.

Изменив высоту на наклон, а y на x напишем те же условия, но для движения по горизонтали.

Готово! Теперь в зависимости от наклона устройства шарик будет скатываться вниз. Так его с помощью поворотов можно перемещать по дисплею. Убедиться в этом можно с помощью встроенного эмулятора.