Skip to content

rkalinkin/game

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

Game prototype

Прототип игры семейства match 3 (3 в ряд)

  1. Логика
    a. поле 10x10
    b. реализовать удаление 3 и более кристаллов одного цвета в ряд
    c. после удаления кристаллы которые выше удаленных смещаются вниз
    d. в освободившиеся верхние ячейки добавляются новые кристаллы случайного цвета
    e. специальные виды камней и комбинации - реализовывать не надо, но надо понимать что они есть и архитектурно предусмотреть возможность их реализации

  2. Визуализация и интерфейс
    a. визуализация поля - в текстовом виде (таблица), цвет кристалла обозначается буквой от A до F (6 вариантов)
    b. ввод от пользователя - m x y d. (x, у - координаты (0-9))
    d - направление одной буквой (lrud - left, right, up, down)
    c. или q - выход из игры

  3. Техническое
    a. игра - консольное приложение на lua. запускается через lua интерпретатор
    b. реализация должна быть с использованием ООП
    c. архитектурно разделить модель и визуализацию. Интерфейс модели должен содержать 5 методов

    • i. init() - создание поля
    • ii. tick() - выполнение действий на поле
    • iii. move(from, to) - выполнение хода игрока
    • iv. mix() - перемешивание поля
    • v. dump() - вывод поля на экран

    d. основной цикл

    • i. init заполняет поле (рандом)
    • ii. ждем ввода от пользователя и move перемещает один кристалл
    • iii. tick выполняется пока происходит хоть одно изменение на поле, после каждого тика визуализируем поле (dump())
    • iv. далее ждем ввода новых координат от пользователя
    • v. если возможных перемещений - нет, то перемешиваем кристаллы (mix) чтобы возникли новые варианты перемещений - но не возникло новых готовых троек

Пример вывода:

  | 0 1 2 3 4 5 6 7 8 9 
- - - - - - - - - - - - 
0 | A B C D E F A B C D  
1 | В A B C D E F A B C  
2 | A B C D E F A B C D  
3 | В A B C D E F A B C  
4 | A B C D E F A B C D  
5 | В A B C D E F A B C  
6 | A B C D E F A B C D  
7 | В A B C D E F A B C  
8 | A B C D E F A B C D  
9 | В A B C D E F A B C  
> 

Пример команды:

> m 3 0 r   - выполнение хода
> mix       - перемешивание поля
> q         - выход из игры

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages