Найти тему

Кликер в среде Winforms C#: улучшаем функционал программы.

Оглавление

Всем привет! Сегодня мы продолжим разрабатывать наш кликер, и добавим ему несколько функций. Приступим!

1. Добавляем уровни.

Для начала, давайте добавим систему уровней в наш кликер. Для этого создадим 5 условий в методе button1_Click, которые проверяют значение в поле (переменной) click. Алгоритм такой:

Если кликов меньше 100, то за каждый клик начисляется 1 очко.

Если кликов больше или равно 100, но меньше 1000, то за каждый клик начисляется 2 очка.

Если кликов больше или равно 1000, но меньше 10000, то за каждый клик начисляется 8 очков.

Если кликов больше или равно 10000, но меньше 100000, то за каждый клик начисляется 32 очка.

Если кликов больше или равно 100000, но меньше 1000000, то за каждый клик начисляется 128 очков.

А вот так это выглядит в нашей программе.
А вот так это выглядит в нашей программе.

Теперь проверим, работает ли наша система уровней.

А теперь сделаем небольшое косметическое дополнение, и выведем наш уровень под кнопкой. Для этого будем использовать элемент label. Перетягиваем его из панели элементов и изменяем начальный текст на "Уровень 1". По вкусу настраиваем шрифты и размеры. У меня получилось так:

-3

Теперь добавляем в каждое условие изменение текста нашего label на число нашего уровня. Для этого присваиваем полю Text класса Label это число. Вот так:

-4

А теперь проверим код на работоспособность:

Почему в нашем текстбоксе уже есть значение 100, а уровень все еще первый? На самом деле все просто. Прошлое значение переменной - 99 - находится в пределах уровня 1, поэтому при нажатии кнопки срабатывает первое условие, а не второе. А именно во втором условии текст изменяется на "Уровень 2". Как исправить подобное, будет описано в следующей статье. А пока переходим ко второй функции, которую мы добавим в наш кликер.

2. Сохранение и загрузка.

А второй функцией, которую мы сегодня добавим, будет сохранение и загрузка значений нашей переменной click. Для начала создадим две кнопки, которые будут отвечать за эти два события.

Должно получиться примерно так.
Должно получиться примерно так.

Теперь создаем два метода, которые обрабатывают нажатия на кнопки SAVE и LOAD соответственно. Для этого дважды кликаем по каждой кнопке.

Сначала запрограммируем кнопку SAVE. В теле метода пишем код, который создает файл формата .txt, и пишем в него значения с нашего текстбокса. Выглядит это так:

Данный код создаем файл Save.txt и записывает в него значение с поля Text класса TextBox
Данный код создаем файл Save.txt и записывает в него значение с поля Text класса TextBox

А теперь запрограммируем кнопку LOAD.

Готово!
Готово!

Для проверки достанем наш исполняемый файл и добавим его в папку, чтобы он не создал нам .txt файл на рабочем столе. Теперь запустим файл, сделаем несколько кликов и нажмем SAVE, после чего выйдем из программы. Затем снова зайдем и нажмем LOAD.

Как мы убедились, все наши функции работают.

Ну а на этом у меня все. По нашему кликеру будут еще статьи, так как его еще можно дорабатывать.

Не забывайте ставить лайки и писать комментарии. Всем до скорого!