Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович

Игра Сокобан / Сокобан - Редактор - Улучшение

  • Допиливаем и дорабатываем редактор до товарного вида.
    Реализуем ещё несколько фишек.
  • Дата отправки отчёта: 4 сентября 2015 г.
  • Задание выполнено: за 1 час. 30 мин.
  • Чему научился: Использовать элементы управления toolStrip
  • Что было сложным: Обработать двойной щелчок мыши и сделать отдельный обработчик для user.
  • Комментарии: Немного доработала функции перехода между уровнями. Теперь вопрос о сохранении уровня задается только если в уровень вносились изменения (изменение размеров или элементов).
    Удалила звук, который выдается при нажатии на Enter в поле ввода размеров лабиринта. Для этого создала обработчик
            private void toolLevelSize_KeyPress(object sender, KeyPressEventArgs e)
            {
                if (e.KeyChar == (char)Keys.Enter)
                    e.Handled = true;
            }
  • Оценка видео-уроку:
Отчёт от 4004 за Игра Сокобан / Сокобан - Редактор - Улучшение




Оцени работу

 
Сохранить страницу:

24. Оля
Оля
ответить
→  Елена  # Игра Сокобан / Сокобан - Редактор - Улучшение / 2015-09-04 17:08

Елена, отлично, как обычно все на высшем уровне! ☀️


2146. Иван
Иван
ответить
→  Елена  # Игра Сокобан / Сокобан - Редактор - Улучшение / 2015-09-04 15:30

Спасибо за развернутый комментарий. В таких случаях почему-то использовал KeyDown. Не знал, что так легко Keys привести к char.  Вот как полезно проверять отчеты :)


1. Евгений Витольдович
Евгений Витольдович
ответить
→  Елена  # Игра Сокобан / Сокобан - Редактор - Улучшение / 2015-09-04 12:40

Молодец, Елена восклицательный знак


  • Отчёт оценивали:
    24Оля+1  

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Научился в редакторе заполнять области однотипными элементами.
Трудности: Такого не было.
Я сделал небольшое улучшение. Функцию SaveLevel сделал булевой, чтобы при переходе next и prev , когда выдавалась ошибка не было возможности перейти не исправив все ошибки (например - не установлен игрок, количество ящиков и мест доставки ящиков не совпадает и так далее - все ошибки, которые мы написали в формальном контроле).
Научился: Допиливать свои хотелки
Трудности: Состыковка статус бара и поля при изменении размеров формы
Немного переделал стилистику своей будущей игры. Взял спрайты из игры warcraft 2. Сразу не понравился способ изменения размеров уровня. По моему опыту - если дать возможность пользователю ввести данные неправильно - он обязательно введет их неправильно =) Поэтому вместо textbox сделал TrackBar'ы numericUpDownTextBox'ы отдельно на ширину и высоту. Изначально они не видны, а при нажатии на кнопку ресайза - появляются, и уровень масштабируется с учетом новых элементов на форме. Счетчики боксиков и место для их расположения расположил на СтатусБаре в нижней части формы. Там же отображается информация о сохранении уровня. Между стрелками переключения уровней поставил текстбокс ReadOnly для отображения номера уровня и общего количества уровней. Еще добавил горячие клавиши на наши элементы управления. 1 - wall, 2 - abox и т.д. Таким образом не обязательно кликать по ним мышкой, чтобы выбрать текущий, достаточно нажать клавишу.