Игра "Сапер" by STivO (v.1.2)

18.03.13

Задачи пользователя - Игры

Написана максимально приближенно к оригиналу игры "Сапер" для Windows

Скачать файлы

Наименование Файл Версия Размер
Сапер by STivO v.1.2.epf
.epf 118,68Kb
28
.epf 118,68Kb 28 Скачать
Сапер by STivO v.1.1.epf
.epf 117,02Kb
8
.epf 117,02Kb 8 Скачать
Сапер by STivO v.1.0.epf
.epf 123,42Kb
25
.epf 123,42Kb 25 Скачать

Кто не знаком с этой игрой, можете почитать тут http://ru.wikipedia.org/wiki/Сапёр_(игра)

Изменения в версии 1.2:

- Устранены баги при открытии ячеек

Изменения в версии 1.1:

- Открытие ячейки щелчком ЛКМ

- Установка флажков/вопросов щелчком ПКМ

P.S. Идея "отлова" нажатия ЛКМ, ПКМ была взята из статьи Ввод щелчком мыши: правым, левым, двойным


 

Все замечания и предложения приветствуются!

См. также

Классическая игра "Змейка" на 1С (управляемые формы)

Игры Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Бесплатно (free)

Игра "Змейка" в классическом варианте на управляемых формах в 1С. Собирайте яблоки и ставьте рекорд!

09.02.2024    2596    132    emilyabochkova    12    

22

Ключворды в 1С

Игры Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Создавайте новые ключворды или разгадывайте существующие.

1 стартмани

05.02.2024    1489    1    alexpvs    0    

6

Игра "5 букв"

Игры Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Абонемент ($m)

Игра "5 Букв", сделанная на 1С. В игре загадано слово, существительное в единственном числе. Нужно отгадать загаданное слово.

1 стартмани

29.12.2023    908    2    APTEM_SLV    9    

6

Пятнашки

Игры Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Цель - обучение хитростям нашей всеми любимой 1С.

28.11.2023    827    29    user1834118    0    

6

Кар магедон

Игры Платформа 1С v8.3 Конфигурации 1cv8 1С:ERP Управление предприятием 2 Россия Бесплатно (free)

Держись, российский геймдев, я уже еду. Бета тест, можно оформлять предзаказы, будет донатный магазин с модельками российского автопрома (по цене реальных авто).

01.11.2023    1615    36    user1834118    7    

11

Турнир по 1С. Танки на СКД

Игры Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

09.10.2023    1725    1    opx    1    

13

Плоский "Кубик Рубика"

Игры Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Вы можете собрать кубик Рубика? Я - только с помощью инструкции:). Попробуйте справиться с его плоским аналогом.

1 стартмани

29.05.2023    2002    6    Alxby    3    

13

Пасьянс Марии Стюарт (пасьянс Медичи) - попробуй изменить свою судьбу

Игры Платформа 1С v8.3 Россия Абонемент ($m)

Игра - пасьянс Марии Стюарт. Есть возможность создавать свои расклады, обмениваться раскладами и менять картинки карт.

1 стартмани

05.05.2023    2705    1    sandr13    0    

13
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Serj1C 483 19.04.12 12:43 Сейчас в теме
Мне понравилось. Единственное, что пришлось поправить - открытие поля одним щелчком мыши (при Активизации Ячейки а не при Выборе)
2. STivO 60 19.04.12 12:48 Сейчас в теме
(1) Serj1C, Спасибо. Да, изначально так и было, но в данном случае невозможно было бы установить флажок/метку. Хотя есть те, кто их не используют.
3. _apelsin4ik 28.06.12 11:08 Сейчас в теме
Вообще, вполне играбельная программа. Мне понравилась)
4. ShantinTD 91 15.08.12 11:17 Сейчас в теме
реально продумал. молодец. борись за правую кнопку.
5. codmal 65 18.09.12 10:51 Сейчас в теме
По поводу нерешённой проблемы с управлением (не отлавливается событие ПКМ) :
она решена в публикациях "Ввод щелчком мыши: правым, левым, двойным" и "Игра «Сапёр»"
http://infostart.ru/public/62233/
http://infostart.ru/public/62411/
6. DrAku1a 1678 02.01.13 18:51 Сейчас в теме
Предлагаю алгоритм автоматического решателя:
//--- DrAku1a
// анализ игрового поля, открытие 100% пустых клеток и установка флажков.
// с высокой вероятностью - выигрыш
Функция ОткрытьСмежныеЯчейки(Поле, ЭлементПоле) Экспорт
	фл=ложь;
	Пока СостояниеИгры=1 Цикл
		фл=ложь;
		Для x = 0 по ВысотаПоля - 1 Цикл
			Для y = 0 по ШиринаПоля - 1 Цикл
				чм = Поле[x][y];
				Если (чм>0) и (чм<9) Тогда
					чя = 0;
					Для dx=-1 По 1 Цикл
						Для dy=-1 По 1 Цикл
							xx = x + dx; yy = y + dy;
							Если (dx=0 и dy=0) или (xx<0) или (xx>=ВысотаПоля) или (yy<0) или (yy>=ШиринаПоля) Тогда
								Продолжить;
							КонецЕсли;
							Если Поле[xx][yy]=0 Тогда
								чя = чя + 1;
							ИначеЕсли Поле[xx][yy]=9 Тогда
								чм = чм - 1;
							КонецЕсли;
						КонецЦикла;
					КонецЦикла;				
					Если (чя=чм) и (чм>0) и (чм<9) Тогда
						фл = Истина;
						Для dx=-1 По 1 Цикл
							Для dy=-1 По 1 Цикл
								xx = x + dx; yy = y + dy;
								Если (dx=0 и dy=0) или (xx<0) или (xx>=ВысотаПоля) или (yy<0) или (yy>=ШиринаПоля) Тогда
									Продолжить;
								КонецЕсли;
								Если Поле[xx][yy]=0 Тогда
									Поле[xx][yy]=9;
								КонецЕсли;
							КонецЦикла;
						КонецЦикла;
					ИначеЕсли чм=0 Тогда
						Для dx=-1 По 1 Цикл
							Для dy=-1 По 1 Цикл
								xx = x + dx; yy = y + dy;
								Если (dx=0 и dy=0) или (xx<0) или (xx>=ВысотаПоля) или (yy<0) или (yy>=ШиринаПоля) Тогда
									Продолжить;
								КонецЕсли;
								Если Поле[xx][yy]=0 Тогда
									фл=Истина;
									ЭлементПоле.ТекущаяСтрока = Поле[xx];
									ЭлементПоле.ТекущаяКолонка = ЭлементПоле.Колонки[yy];
									ОткрытьЯчейку();
									Если СостояниеИгры=0 Тогда
										Сообщить("Ой...");
										ИзобразитьЧислоМин();
										Возврат истина;
									КонецЕсли;
								КонецЕсли;
							КонецЦикла;
						КонецЦикла;
					КонецЕсли;
				КонецЕсли;
			КонецЦикла;
		КонецЦикла;	
		Если не фл Тогда
			Прервать;
		КонецЕсли;
	КонецЦикла;
	ИзобразитьЧислоМин();
	Возврат фл;
КонецФункции
Показать

(Прошу прощения за названия переменных)

Далее - в форме - переделываем процедуру
Процедура ПолеВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)

	ОткрытьЯчейку();
	
	//DrAku1a ---
	ОткрытьСмежныеЯчейки(Поле, ЭлементыФормы.Поле);
	
КонецПроцедуры
Показать


Всё! Теперь после клика на ячейку - будет открыта часть поля, затем анализируются клетки окружения, выставляются флажки и открываются клетки... Т.е., компьютер уже думает за нас :)
AerinSwift; dimidron1; STivO; +3 Ответить
7. STivO 60 03.01.13 10:22 Сейчас в теме
(6) DrAku1a, Весьма забавно получилось) С первого хода несколько раз выигрывал, "читерство" получается))
dimidron1; +1 Ответить
8. пользователь 20.03.13 00:51
Сообщение было скрыто модератором.
...
9. alean 35 23.05.13 11:39 Сейчас в теме
понравилось.
прекрасно реализовано!
10. Gendalf_beliy 04.09.14 14:10 Сейчас в теме
я так понял эта обработка для платформы 7.7?
11. Ёпрст 1063 04.09.14 13:49 Сейчас в теме
(10) нет, это для снеговика
12. STivO 60 04.09.14 14:31 Сейчас в теме
13. Gendalf_beliy 08.09.14 17:56 Сейчас в теме
(10) Gendalf_beliy, для 8.2
(12)
Спасибо за ответ, тогда скачаю.
Просто показалось, что цветовой оформление такое же как у 1с 7.7.
Ксати создание сапер, это одно из заданий обучения 1с для школьников ))
Оставьте свое сообщение