4

Для любителей поиграть в 101

Сразу уточню, что в посте я рассказываю о своей таблице подсчёта очков для игры 101 в Excel. Если вам не интересно, пропустите этот пост. Дальше будет много слов о структуре таблицы и её возможностях. Предупреждаю, что таблица работает на функциях, которые могут быть сильно не оптимизированы и избыточны; без использования макросов (возможно, есть автоматически созданные). Спасибо.


Будучи студентом и проживая в общежитии, я часто играю с друзьями в 101. И в зависимости от того, кто ведёт счёт, одна таблица счёта может занимать до половины листа А4, что заставляет производить огромное количество макулатуры. Далее текст - картинка (либо просто текст).


Естественно, хочется сэкономить, да и лень подсчётов берёт своё. Поэтому недавно мы перешли на электронную таблицу, в которой для каждого столбца подсчитывалась сумма очков.

Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост

Все помнят, что в этой игре есть обнуления счёта? На бумаге обычно пишешь "0", а здесь приходится писать "-101", что неудобно, в принципе.

Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост

Поработав несколько часов (уместен мем про рисованную сову), я получаю следующую таблицу, в которой такое обнуление (и не только) происходит автоматически:

Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост

Итак, давайте по порядку:

1. В глаза наверняка сразу бросился цвет. Голубые поля под именами окрашиваются в таковой цвет, если имя игрока прописано. Так сказать, поле является активным, если игрок существует. Если игрок не указан. поле становится серым. Сделано это для удобства, чтобы случайно не ввести лишнего или не пропустить поле. Красным сразу выделяется ячейка со счётом игрока, если счёт вышел за пределы игры. Счёт игрока в таком случае отображается только справа в дополнительном блоке (первоначально отображение предусмотрено не было). Также поле со счётом окрасится в светло-красный. Это сделано для удобства, чтобы случайно не ввести число не в то место. Тёмно-зелёным подсвечивается та ячейка, которая обнулила текущий счёт игрока (в автоматическом режиме). Не думаю, что стоит говорить о том, что для удобства, соседние ячейки выкрашены в светло-зелёный. Стоит также отметить, что если за один кон обнулились несколько человек, их поля будут тёмно-зелёными:

Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост

2. Размер. Таблица стала значительно шире. Для каждого игрока отводится 2 столбца (что для некоторых может быть неудобным), появился раздел управления и дополнительного отображение счёта.


Рассмотрим блок управления АЭС таблицей:

Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост

В самой первой строке пользователю предоставлена возможность выбора, до какого счёта будет вестись игра. Реализовано это через всплывающий список:

Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост

Далее идёт дополнительное отображение счёта игроков. И, как я уже сказал выше, он показывает счёт у выбывших игроков. В соответствии с правилами, играть в игру могут от 2 до 4 человек, но таблица рассчитана на игру до 6 человек для тех, кто играет в большой компании.

Следом за счётом пошли переключатели. Очень важные переключатели. Пока их всего два, но позже я добавлю ещё четыре.

Первый переключатель позволяет обнулять счёт при достижении игроком плюс/минус сто очков. Не каждый знает, но правилами игры это разрешено. И в действительности, есть люди, с которыми я, играя, не обнуляюсь на этих значениях. Хотите, обнуляйтесь, хотите - нет.

Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост
Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост

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

Важное замечание: таблица разрабатывается в Excel 2019 Preview сборках, была проверена в Excel 2016 (всё работает как часы) и в Excel на Android (тестовая версия): не отображаются переключатели, хотя есть шанс, что значение "истина"/"ложь" закрепляется за ячейками, и с мобильного устройства таблица полностью функциональна.


Что касается следующих четырёх строк, то эти переключатели пока в планах. На данный момент лишь меняют свой цвет на голубой, если при текущем игровом счёте их можно переключать в соответствии с правилами, устанавливаемыми игроками. Например, при желании, если вы играете до 501, вы можете обнуляться не только на +-500 и +-501, но и на +-201 и +-401. Если параметр выше "+-100 = 0" неактивен, то данные переключатели позволят обнуляться только на положительных значениях (аналогично примеру выше при игре до 501, можно будет обнулиться на 501, 201 и 401).

Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост
Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост

Ну и последняя строка. Она предназначена для тех, кто любит вклиниваться в середину игрового процесса, и если другие игроки хотят присваивать новичкам среднее значение счёта. К примеру, игроков было 3, и в игру вступает 4. Сначала необходимо посмотреть среднее значение, запомнить его или сразу вписать в новую колонку, а уже потом вводить имя. Почему такой порядок? Всё просто. Среднее значение при расчёте учитывает количество игроков, опираясь на имена игроков в первой строке таблицы. Если прописать имя игрока, то ему автоматически присвоится счёт, равный нулю. Среднее значение сразу поменяется. Округление среднего значения производится в меньшую сторону.

Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост

Техническая сторона.


Так как ячейки счёта, в которые пользователем вводятся очки, имеют функцию и условное форматирование, то в конце таблицы предусмотрены "восстановительные" поля. Это ячейки B53:B54, D53:D54, F53:F54, H53:H54, J53:J54 и L53:L54. Их нельзя и нет смысла заполнять, так как они не учитываются в некоторых расчётах.

Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост

Всего для одной игры я отвёл 50 строк. Кому-то может хватить, а кому-то нет.

Если вы захотите начать новую игру, тогда выполните любой из вариантов:

1. Заново скачайте таблицу.

2. Работайте в заранее созданной копии.

3. Скопируйте всю таблицу, создайте новый лист, вставьте таблицу (в те же поля) в новом листе, закрепите при желании первую строку, следуйте варианту 4).

4.1. Выделите восстановительные ячейки:

Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост

4.2. Продублируйте их до ячейки под номером 4. Ни в коем случае не восстанавливайте ячейку под номером 3, так как в ней не прописывается формула! В противном случае это может привести к ошибкам. Если вы продублировали формулу до 3 ячейки, очистите третью ячейку.

Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост

4.3. Очистите ячейку под номером 3.

Для любителей поиграть в 101 Карточная игра, 101, Игровой счёт, Автоматизация, Длиннопост

4.4. Проделайте пункты 4.1-4.3 для остальных столбцов, для которых требуется удалить данные.


Если вдруг так получилось, что 50 строк вам не хватило, то вы можете проделать варианты 1-4 с дополнительными подпунктами:

1. Запомните текущий счёт игроков на основании данных в закреплённой строке или панели со счётом справа.

2. Запомните настройки игры (счёт игры, параметры обнуления).

3. Восстановите счёт игроков, счёт игры и параметры обнуления.


Продолжайте играть!


Если остались вопросы или предложения, пишите в комментариях.


Загрузить файл с облака можно здесь.