9.1.2 Лазер

Какую задачу решает?
Свайпы являются одним из двух основных способов взаимодействия со смартфоном. Как и drag & drop мышью. Лазер это второстепенное оружие, позволяющее разрезать находящихся на одной линии врагов и ракеты. Ситуативно очень эффективное оружие.
Зачем используется
  • Более ситуативное оружие, чем зенитка. Удобно для уничтожения врагов, расположенных на одной линии, а также пока другое оружие находится на перезарядке.


  • Сбивает врагов при прямом попадании, при этом враг разрезается, сатисфай разрезания.
Как работает
  • Стрельба лазером выполняется свайпом или аналогом drag & drop мышью.


  • Игрок делает свайп и через две точки (точка начала касания и точка завершения касания) проводится прямая, по которой рисуется луч.


  • При первом касании экрана будет происходить выстрел зенитного орудия, непонятно, как этого избежать. Как вариант, можно возвращать снаряд, если после этого идёт свайп и стреляет лазер.


  • Пока лазер на перезарядке, можно тапать по значку (на рисунке в разделе 6. Пользовательская история это батарейка) для ускорения перезарядки.


То ли я видел тьюториалы по этой механике, то ли уже готовые ассеты в ассет сторе. Механика известная, надо смотреть варианты реализации и прототипировать.

Настраиваемые переменные
  • tapThreshold - минимальное расстояние между конечной и начальной точками свайпа, меньшее значение воспринимается как тап.


  • laserDamage - прямой урон лазером.


  • laserForce - возможно, понадобится сила физического воздействия, расталкивающая останки разрезанного врага. Если не удастся обойтись значением прямого урона.


  • batterySize - количество выстрелов в магазине.


  • cooldownTimer - таймер кулдауна.


  • cooldownTimerDecreasePerTap - величина, которая вычитается из таймера кулдауна по тапу по перезарядке.
Алярма!

Также возможен вариант «лазера», когда игрок чертит на экране любые фигуры, при этом имеется ограничение на длину пути. Имеет смысл оценить идею на этапе прототипирования.
Оглавление раздела