Базовый курс С++ Часть #70. Рефакторинг enum и игровые объекты

Часть #70. Рефакторинг enum и игровые объекты. (Базовый курс программирования на С ) Вы можете поддержать автора и купить курсы на Оглавление курса на Википедии: Базовый_курс_С++ 00:00 - Рефакторинг enum и игровые объекты 00:26 - О том, что не надо смешивать enum и enum class 01:40 - Переводим EBrick_Type в enum class 06:18 - Исправим условия в Open_Gate() и Is_Gate_Opened() 09:34 - Переводим EDirection_Type в enum class 12:00 - Переводим ETeleport_State в enum class 14:58 - Переводим EBall_State в enum class 16:17 - Переводим EKey_Type в enum class 17:10 - Переводим EGame_State в enum class 18:10 - Переводим ELetter_Type в enum class 20:46 - Переводим EFalling_Letter_State в enum class 21:48 - Группируем фильтры в #Ball 24:09 - Группируем фильтры в #Laser_Beam 25:19 - Группируем фильтры в #Platform 26:30 - Группируем фильтры в #Tools 27:42 - Вынесем класс AGate в свою пару файлов 30:24 - Группируем фильтры в #Border 31:14 - О замене вызова Rectangle() на AsConfig::Rect() 35:41 - Переименуем файлы Tools в Common 39:19 - Переносим методы конфига в класс AsTools 41:38 - Исправляем вызовы методов конфига 43:24 - Проверяем результат замены вызова Rectangle() на AsConfig::Rect() 45:04 - Заменяем вызов Rectangle() в AsBorder::Clear() 46:30 - Заменяем вызов Rectangle() в AsBorder::Draw_Element() 50:46 - Заменяем вызов Rectangle() в AFalling_Letter::Clear() 52:35 - Заменяем вызов Rectangle() в ALaser_Beam::Clear() 53:33 - Заменяем вызов Rectangle() в AsPlatform::Clear() 54:09 - Заменяем вызов Rectangle() в AsPlatform_Expanding::Draw_State() 55:35 - Добавим метод AsTools::Ellipse() 57:36 - Заменяем вызов Ellipse() в ABall::Clear() 58:39 - Заменяем вызов Ellipse() в ABall::Draw() 59:20 - Заменяем вызов Ellipse() в ABall::Draw_Parachute() 01:00:34 - Заменяем вызов Ellipse() в AsPlatform::Draw_Normal_State() и Draw_Expanding_Platform_Ball() 01:02:57 - : пишем код 01:04:00 - Создадим копипастом класс AsGame_Objects_Set 01:06:09 - Анализируем задачу представления разных игровых объектов в одном классе 01:08:37 - Пытаемся в конструкторе создать массив общих объектов 01:11:57 - Приведение объектов к другому типу на примере Begin_Movement() 01:13:36 - Приведение типов через оператор dynamic_cast 01:16:39 - Объединим классы AGraphics_Object и AMover в один - AGame_Object 01:19:44 - Сделаем доступ к игровым объектам через итератор 01:24:25 - Добавим метод AsBall_Set::Get_Next_Game_Object() 01:28:22 - Добавим копипастом интерфейсные методы в AsGame_Objects_Set 01:35:01 - Отнаследуем AsLaser_Beam_Set от AsGame_Objects_Set 01:37:46 - Представим модули и муверы в движке как игровые объекты 01:44:22 - Добавим в движок метод Add_Next_Module() 01:48:20 - Исправим стирание гейтов в AsBorder::Clear() 01:49:05 - : пишем код - -
Back to Top