Создание ролевой компьютерной игры 50) Переносим в Windows
Школа программирования
50) Программирование ролевой игры: Продолжаем перенос в Windows
Теперь, когда пустая форма у нас запускается и весь код компилируется без проблем, возьмемся непосредственно за игровую логику.
Добавим на форму меню с одним главным разделом "Игра". В нем реализуем также всего два пункта - "Новая" (назовем этот пункт NewGameItem) и "Выход". Обработку выбора пункта "Выход" можно создать сразу, выполнив в нем, например, единственную команду закрытия формы Close, а что делать при запуске нового сеанса игры?
// ----- procedure TGameForm.NewGameItemClick(Sender: TObject); begin
end; //
Посмотрим в исходный код модуля Main. Первые три процедуры и вспомогательные вызовы случайного генератора наверняка можно сразу вставить в данный обработчик (не забыв подключить нужные модули):
Кроме того, введем переменную IsGame, которая исходно, в момент создания формы, будет иметь значение false, а как только выполнится процесс начала новой игры, примет значение true. Зачем это нужно, будет ясно далее, пока лишь отметим, что так как генерация карты после открытия окна формы еще не выполнена, то любая попытка ее отобразить (а такое отображение Windows обычно делает автоматически) приведет к сбоям. Это нам и надо блокировать.
Добавим в текущий класс формы две новые переменнуе - RealTimeFlag и IsGame:
Кстати, в этом коде, судя по всему, недоработка - выходит, что у нас всегда напарники по команде будут воинами. Можете этот момент улучшить самостоятельно.
Теперь предварительные шаги по формированию игрового мира и вызов пункта меню "Новая" выполняются корректно.
Теперь нам нужна процедура GenerateHero (генерация параметров героя-играющего) у нас реализована в модуле LowLevel и поэтому требует ручного перепрограммирования. В ней последовательно происходит выбор различных параметров и настроек героя, которые мы вполне можем представить в виде последовательных модальных окон, в каждом из которых предлагаются варианты выбора. Этим займемся в следующий раз.
Текущий исходный код проекта (для Дельфи 7), всегда проверен и работоспособен:
d160507.zip , 22 kb
(c) 2004-2007 Сергей Бобровский : bo собака russianenterprisesolutions.com
Все эти учебные курсы рассчитаны не только на разработчиков, но и на всех тех, кто хочет стать ИТ-менеджером. Для этого как минимум нужно иметь общее представление о современных технологиях разработки и их истории и владеть соответствующей терминологией.
В книгах описаны десятки технологий, каждой из которых посвящены отдельные книги. Таким образом, купив один учебный курс, вы существенно сэкономите :) В книгах полностью описаны:
- Delphi (версия 2006, полностью совместимая с Delphi 2005/2006/2007 и Turbo Delphi) для обеих платформ - Win32 и .NET;
- C# (новый язык Microsoft, на котором базируется платформа .NET и все новые версии Windows);
- C++ для платформы Win32.
Охвачены также темы работы с файлами на этих платформах, создания файл-серверных, клиент-серверных, распределенных приложений, веб-программ (Indy, ASP.NET, веб-сервисы). Описаны языки SQL и OCL. Немало глав посвящены истории программирования и различных технологий. Особое внимание уделено созданию программ с помощью технологии ECO и языка моделирования UML - программы фактически рисуются, и теперь даже для создания корпоративных приложений и их переноса в Интернет не обязательно знать программирование!
Отдельная часть отведена технологиям организации групповой работы, управления требованиями, контроля версий, локализации и тестирования.
Тут подробнее про книги.