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

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Сокобан / Сокобан - Редактор - Сохранение

  • На четвёртом уроке мы закончим создание редактора уровней.
    Напишем самую главную функцию для сохранения сделанных изменений в файл.
    Затем добавим кнопки перехода к следующему и предыдущему уровню.
    Останется только немного облагородить интерфейс программы.
  • Дата отправки отчёта: 19 марта 2015 г.
  • Задание выполнено: за 10 час. 24 мин.
  • Чему научился: Вот этот урок по количеству новоприобретенных навыков компенсировал для меня все предыдущие. Новым было практически всё - и сама идея вставлять строки в серединку текстового файла, и сдвиги строк - интересно сделаны, можно будет использовать подобные алгоритмы в прикладных проектах, и создание пустого уровня (правда он у меня почему-то при создании  последний везде копирует, и я понял почему,  но это мне даже больше понравилось, - человечек и нужное кол-во ящиков и мест есть, остается только перераспределить и перерисовать стены - не буду исправлять).
  • Что было сложным: Пожалуй... справиться с такой проблемкой ... с resize... добавлю одну строку - нормально, добавляю один столбец - нормально, добавляю несколько столбцов - все нормально... но как только добавлю 2 или более строк и жму сохранение - вываливает ошибку, что такого элемента массива не существует. и правильно - z=1, delta=2 естественно, элемент[-1] не существует... но откуда он берется, я до сих пор не понял (однако, не теряю надежду, ищу), а проблему одолел прописыванием функции SaveLevel() в функцию добавления строки.
  • Комментарии: Урок очень хороший, очень классное объяснение всей идеи и этапов реализации, новые функции очень нравятся, буду использовать в своих наработках. Но положу небольшую ложку дегтя: сам принцип записи всех уровней в один файл,  и наработка множества сопутствующих технологий и алгоритмов кажется мне немного сложноватой. Решение сейчас прорабатываю: пробую сделать программку сохранения уровней в таблицу встраиваемой базы данных. Если получится, поделюсь решением.
  • Оценка видео-уроку:
Отчёт от 791 за Сокобан / Сокобан - Редактор - Сохранение




Оцени работу

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

1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Валерий Жданов  # Игра Сокобан / Сокобан - Редактор - Сохранение / 2015-03-19 21:57

Отличный отчет! Молоток!



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





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

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

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

Ты в любой момент сможешь отписаться от рассылки.


Научился: Реализации сохранения ;)
Good. ;) + Я доделал библиотеку RecourceLoader - теперь она работает, как нужно ;) / + Переделал адаптивность на разрешение - теперь лучше стали 'адаптироваться' размеры PicterBox'ов к разрешению ;) / + Тестил изменения размеров уровня - нашёл баг(У всевышнего он тоже есть), если изменить размер уровня на более большие то выдаст ислючение(IndexOF) - Исправил это добавив в тот самый цикл(переделки массива string на более большой) - написав в условие цикла - (Curr + Delta), вместо Curr ;) / При больших значениях(значит дельта больше) - выходило за рамки массива ;)


Научился: Перепроверять код десятки рад подряд.
Трудности: найти свои ошибки
Огромное спасибо Ильшату. Он очень помог, нашел ошибки и пофиксил их.