Pull to refresh

Ай, Божья Коровка, улети на небо

Reading time2 min
Views1.5K
iPhone — умклайдет наших дней. Сжигает все свободное время на исполнение программистких желаний.
Вчера много было желаний, а сегодня стало на одно меньше. Почему. Потому что я сделал игрушку, основанную на диаграмме Вороного.

ladybirds

Стал ли от этого мир лучше, а люди — добрее?

Под habracut 3 легких картинки, 2 анекдота и 1 фрагмент кода.


Постановка задачи


На iПоле 320х460 раскиданы почти случайно точки. Точек 35.
Математики утверждают, что на эти точки можно набросить сетку. Так, что в каждой ячейке сетки будет только 1 точка.

ladybirds

Конечно, 35 ячеек сетки немедленно раскрасим в 6 разных цветов радуги (кроме красного, ясно почему).
Скажете ячеек на картинке не 35? Это потери jpeg.

Получим красивую картину в стиле 60-ых годов Пабло Пикассо. Полюбуемся.

Кое-что заметим. Ячейки-альтруисты сплетаются в причудливые цветные цепочки. Ячейки-мизантропы стоят особняком.

Цель игры


Твоя задача, читатель, проста. Прожить жизнь так, чтобы не было мучительно больно Прикоснуться пальцем к ячейке сетки — от твоего касания она задрожит и растает. И вместе с ней исчезнут все соседние ячейки такого же цвета.

На оставшиеся точки снова набрасывается сетка. По старому Правилу. Кстати, если что, по-научному это Правило называется диаграмма Вороного.

Ваша задача очистить поле от точек за минимальное число касаний.

Все.

Божьи Коровки


Поиграл в эту головоломку с месяц на 1000 наперед заданных раскладах. Понял, что игра слишком сложная для блондинок и чиновников. И слишком простая для айТишников — нет анимации, пива, девочек.

А почему бы часть точек не сделать динамичными? Пусть бегают по полю случайным образом, отражаясь от изгороди.

Бегающие точки изобразил красивыми Божьими Коровками, которых онглечане кличут ladybugs || ladybirds.

Девочка-дракон, значит по нашему, по-мордовски (с) Шрек.

ladybirds

С девочками Игра стала динамичнее и прикольнее.

Добавил фоновую музыку. Выбрал, конечно, Чижа.
Я его диск как-то раз полгода слушал в машине и не надоело.
На iPhone Чиж надоел за неделю.
Заменил Чижа на Баха, хорошо темперированного. Надеюсь, Чиж не обидется.
Тем более, что Бах надоел быстрее. Сделал его тише на 75%. Стало спокойно.
Чуть-чуть кода, так как для проигрыша фоновой музыки используем только avfoundation framework.

#import <AVFoundation/AVAudioPlayer.h>
#import <AVFoundation/AVFoundation.h>

NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"chiz" ofType:@"mp3"];
self.player =[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:soundPath] error:NULL];
player.delegate = self;
[player play];



Закругляюсь

Специально для комментариев, Читатель, я сделал игру бесплатной на два дня.

ladybirds

Надеюсь, этот пост уместно опубликовать в топике Разработка под iOS?

Обещанный анекдот

На прощание, как обычно, бородатый анекдот, но в тему.

Сидит на Хабре Божья Коровка, измученная вусмерть, просто никакая.
-Что случилось?
-Гребанный хабраэффект — Божья коровка, полети на небо, принеси нам хлеба, достали просто…

Не переключайтесь

Через месяц напишу про продолжение этой игры, в которой использовал механизм purchasing in app.
Tags:
Hubs:
Total votes 34: ↑17 and ↓170
Comments9

Articles