К ленте

Цифровое решение для подсчета очков в настольных играх

Проект SCORECOUNT предлагает цифровое решение для подсчета очков в настольных играх, позволяя игрокам сосредоточиться на игре, а не на бюрократии.

Цифровое решение для подсчета очков в настольных играх

Воскресный вечер — это время, когда семьи собираются вместе, чтобы насладиться настольными играми. Однако всегда возникает вопрос: кто будет записывать очки? Как правило, желающих не находится, и в итоге именно дядя оказывается с ручкой и бумагой, пытаясь справиться с подсчетами. Использование ноутбука с Excel или смартфона для этих целей не приносит удовольствия, и многие предпочитают традиционный способ с ручкой и бумагой. Но разве это обязательно? В век цифровых технологий стоит задуматься о более удобном решении. Сегодня мы представляем проект "SCORECOUNT", который призван облегчить жизнь всем, кто устал от подсчета очков в настольных играх.

С проектом "SCORECOUNT" мы запускаем новое сообщество на ArtsBlog. Вы можете участвовать, предлагая свои идеи и решения. Пишите нам на почту ([email protected]) или оставляйте комментарии. Мы рады видеть ваши предложения и готовы включить их в наши публикации, при этом вы будете упомянуты, если пожелаете. Все проекты сообщества являются открытыми и не предназначены для коммерческой выгоды.

Обратите внимание: комментарии, содержащие дискриминацию, рекламу или спам, будут удалены. Мы используем современные инструменты для модерации, но не можем гарантировать 100% защиту от нежелательного контента. Если вы заметили что-то подозрительное, сообщите нам по почте ([email protected]). Подробности о защите данных можно найти в нашей политике конфиденциальности.

SCORECOUNT

01. Требования

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

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

Проект будет адаптирован для использования на смартфонах и планшетах, а в качестве CSS-фреймворка будет использован Bootstrap 5.2, в то время как для функциональности мы применим jQuery 3.6. Мы будем работать с числами, чтобы вычислять среднее количество очков, набранных каждым игроком за раунд.

Вкратце:

  • Несколько игроков
  • Имена игроков
  • Ввод очков за раунд
  • Подсчет очков для каждого игрока
  • Вычисление среднего количества очков
  • Динамическое количество раундов
  • Использование на смартфонах и планшетах
  • Bootstrap 5.2 и jQuery 3.6
  • Защита данных

02. Базовый скрипт

Базовый скрипт уже удовлетворяет всем вышеуказанным требованиям. Мы предлагаем вам поработать с ним и изучить, как он функционирует. Код доступен для ознакомления, и вы можете скачать его в конце статьи, чтобы попробовать свои силы в доработке проекта.


    SCORECOUNT

			Über
			Keine Lust mehr auf Stift & Papier? Lass dir die Punkte deines Spiels einfach für jeden Spieler zusammenzählen. Die Spielernamen können geändert werden.

			SCORECOUNT

			SCORECOUNT
			Keine Lust mehr auf Stift & Papier? Lass dir die Punkte deines Spiels einfach für jeden Spieler zusammenzählen. Trage die Anzahl der Spieler ein und lege los!

$(document).ready(function(){
	$('.album').hide();
	$('#go').on('click', function () {
		var players_sum = $('#players').val();
		if (players_sum > 12){
			var players_sum = 12;
		}
		for (i = 0; i < players_sum; i++) {
			var player_num = i + 1;
			$('#player-cards').append('# Punkte123')
		}
		$('.intro').hide();
		$('.album').show();
		$('.card').on('input', function () {
			// Counter
			var scorecount = 0;
			$('input', this).each(function () {
				var get_input_value = $(this).val();
				if ($.isNumeric(get_input_value)) {
					scorecount += parseFloat(get_input_value);
				}
			});
			var input_filled = $('table :input', this).filter((i, el) => el.value.trim() !== '').filter((i, el) => el.value.trim() !== '-').length;
			var score_average = scorecount / input_filled;
			var score_average = Math.round(score_average);
			$('#total', this).html(' ' + scorecount);
			$('#average', this).html(' ' + score_average);
			// New round
			if( $('table tr:last input' ,this).val().length !== 0 ) {
				var nextround = parseFloat($('table tr:last td.rounds' ,this).text()) + 1;
				$('table tr:last' ,this).after('' + nextround + '');
				var rowpos = $('table tr:last' ,this).position();
				$('.card-body' ,this).scrollTop(rowpos.top);
			}
		});
	});
});
// Notification Modal
$(function () {
	var modal_template_01 = '';
	var modal_template_02 = 'Titel';
	var modal_template_03 = '';
	var modal_template_04 = 'Text';
	var modal_template_05 = '';
	var modal_template_06 = '';
	// Clean input
	$('#restart').on('click', function() {
		var modal_template_02 = 'Achtung!';
		var modal_template_04 = 'Möchten Sie die Eingaben wirklich Löschen?';
		var modal_template_07 = 'clean-form';
		$('#notify').html(modal_template_01 + modal_template_02 + modal_template_03 + modal_template_04 + modal_template_05 + modal_template_06 + modal_template_07 + modal_template_08 + modal_template_09 + modal_template_10 + modal_template_11 + modal_template_12);
		$('#clean-form').on('click', function() {
			location.reload(true);
		});
	});
});

03. Как это может развиваться

Проекты сообщества зависят от участия самих участников, поэтому здесь есть много возможностей для роста и развития. Мы приглашаем вас делиться своими идеями или даже готовыми решениями. Я не собираюсь ставить какие-либо ограничения, а лишь предлагаю вам подумать о том, что можно улучшить. Я с нетерпением жду возможности работать с вами и наладить связь с сообществом. С уважением, ваш Андреас.

Возможные функции:

  • Изменение порядка игроков в зависимости от очков
  • Выделение игрока, который ведет в игре
  • Экспорт результатов или создание скриншота
  • Игроки с цветными карточками
  • Анимации
  • Более дружелюбный дизайн

04. Скачивание

Я собрал все необходимые файлы, чтобы вам было проще настроить проект. Надеюсь, вы получите столько же удовольствия от работы над проектом, сколько и я.

artsblog-проект-scorecount-master

Размер файла: 1,7 МБ