Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Создание ролевой компьютерной игры 164) Продолжаем перенос в Windows


Школа программирования

164) Программирование ролевой игры: Продолжаем перенос в Windows

Предыдущий выпуск по ролевой игре, был N 159.

*

Обращаю внимание - мой почтовый ящик из-за спама сменился. Новый - в конце рассылки.
Кроме того, на адреса домена мэйл ру от меня письма не уходят, поэтому если пишете мне, то на мейл ру я ответить вам не смогу.

*

Перенос в Дельфи.

Итак, компилятор добрался до модуля LowLevel, и сообщает об отсутствии в разделе реализации всех необходимых процедур и функций.

Форма программы создана автоматически. В первую очередь требуется договориться о переносе содержимого модуля Main - главный цикл управления - в наш новый проект, связав точки клавиатурного управления с какими-то новыми пользовательскими действиями, например, нажатием на кнопки или выбор пунктов меню. В исходном коде есть функции, которые не привязаны к интерфейсу напрямую (в частности, генерация карты), однако генерация персонажа уже подразумевает взаимодействие с человеком.

Напрашивается выведение всех действий, связанных с началом игры, в некоторую процедуру, которая не только будет вызываться в начале программы один раз, но и может быть вызвана в дальнейшем по желанию игрока, чтобы он мог приступить к новой партии. Однако проблема с продвижением вперед пока связана с отсутствием работоспособного и компилируемого кода. Ведь в модуле LowLevel пока нет ни одной полноценной реализации подпрограмм взаимодействия с пользователем.

Поступить можно так. Создадим пустые реализации всех процедур и функций этого модуля, чтобы весь проект компилировался успешно, после чего по шагам продолжим перенос работающего кода в Windows. Конечно, такие типы данных, как TTileRecord, предназначенные для хранения символов, отображающих элементы игры на карте, теперь не нужны. Кроме того, внесем небольшую модификацию в описание подключаемых модулей в раздел реализации, чтобы трансляция выполнялась корректно:

  implementation uses Hero, Texts, Game, Tables, Magik, Quest
  {$IFDEF DOS_GAME}
          , CRT
  {$ENDIF}

                ;

Только реализацию функции IntToStr для простоты, дабы не подключать стандартные библиотеки Delphi, оставим собственной, без модификации по сравнению с DOS-версией. Вот теперь, когда пустая форма запустится, возьмемся непосредственно за игровую логику - в следующем выпуске.

Исходные тексты будут в следующем выпуске.


(c) 2004-2007 Сергей Бобровский : bo собака russianenterprisesolutions.com

Школа программирования с нуля
Все предыдущие выпуски базового курса всегда тут:
http://www.infiltration.ru/p/

Неофициальный сайт поддержки (со срочными вопросами - сюда):
www.prog-begin.net.ru.


Мои книги (учебные курсы) "Технологии Delphi / C++ / C#. Разработка приложений для бизнеса".
http://shop.piter.com/display.phtml?a_id=17681&web_ok=all

Все эти учебные курсы рассчитаны не только на разработчиков, но и на всех тех, кто хочет стать ИТ-менеджером. Для этого как минимум нужно иметь общее представление о современных технологиях разработки и их истории и владеть соответствующей терминологией.
В книгах описаны десятки технологий, каждой из которых посвящены отдельные книги. Таким образом, купив один учебный курс, вы существенно сэкономите :) В книгах полностью описаны:
- Delphi (версия 2006, полностью совместимая с Delphi 2005/2006/2007 и Turbo Delphi) для обеих платформ - Win32 и .NET;
- C# (новый язык Microsoft, на котором базируется платформа .NET и все новые версии Windows);
- C++ для платформы Win32.
Охвачены также темы работы с файлами на этих платформах, создания файл-серверных, клиент-серверных, распределенных приложений, веб-программ (Indy, ASP.NET, веб-сервисы). Описаны языки SQL и OCL. Немало глав посвящены истории программирования и различных технологий. Особое внимание уделено созданию программ с помощью технологии ECO и языка моделирования UML - программы фактически рисуются, и теперь даже для создания корпоративных приложений и их переноса в Интернет не обязательно знать программирование!
Отдельная часть отведена технологиям организации групповой работы, управления требованиями, контроля версий, локализации и тестирования.
Тут подробнее про книги.

Мои книги, которые пока доступны в продаже:


Дизайн рассылки: Алексей Голубев - Web-дизайн и web-программирование


В избранное