В период расцвета аркад 80-х, вы, вероятно, не задумывались о том, как попасть в топ-лист рекордов. Список рекордов в аркадах – это признание тех, у кого есть время, умение и четвертаки, чтобы быть лучшим из лучших. Если вы думаете, что я несколько драматизирую, то вспомните фрагмент фильма «Сейнфилд» (Seinfield), в котором Джордж Кастанца (George Castanza) попытался перетащить аркаду Frogger через улицу с оживленным движением, чтобы подсоединить ее к аккумулятору и сохранить свой рекорд. Даже если вы не такой большой эгоист, тем не менее лестно, что вы находитесь впереди других игроков. Конечно, менее сильные чувства вы испытаете, если будете знать, что список рекордов ограничен вашим телефоном, но идея остается такой же. В этой главе будет показано, как разработать список рекордов, который будет храниться в постоянной памяти мобильного телефона.
В этой главе вы узнаете:
► почему так важно хранить список рекордов;
► как представить список рекордов в игре;
► как сохранить и получить данные о рекордах с помощью системы управления записями J2ME (J2ME Record Management System, RMS);
► как добавить список рекордов в игру Space Out.
Важность сохранения достижений
Раньше лучшие игроки были известны лишь своими инициалами, которые высвечивались в списке рекордов аркад. Список рекордов в классической аркаде был очень важен для многих ранних игр, поскольку это был единственный способ продемонстрировать достижения игры.
Грустно, что списки рекордов теперь не так популярны, как когда-то, но мы не можем посетовать на достижения технологии. С другой стороны, это вовсе не означает, что списки рекордов полностью остались в прошлом. Например, в большинстве популярных игр, как Tony Hawk Pro Skater или Underground, до сих пор используются списки рекордов, чтобы почтить наиболее сильных игроков. Изменилось то, что применение списка рекордов в аркадах не только изменило его сущность, теперь он в меньшей степени используется для слежения за набранным числом очков. Тем не менее мне нравится идея списка рекордов, даже если в нем лишь друзья. Или просто забавно усовершенствовать свое мастерство в той или иной игре.
В этой главе рассматривается, как добавить список рекордов в игру Space Out, разработанную в предыдущей главе. Список рекордов представляет для вас как программиста мобильных игр сложность, поскольку вы должны сохранять список рекордов, чтобы он оставался в памяти и после закрытия приложения. Но подождите! Ведь в мобильных телефонах нет жестких дисков! Как же можно сохранить данные от одной игры к другой? Ответ лежит в Java Record Management System (Система управления записями в Java) или RMS, которая позволяет постоянно хранить данные в памяти телефона.
Перед тем как вы проникнете в сущность RMS, давайте рассмотрим, как смоделировать данные о рекордах. Иначе говоря, сперва вы должны установить, что и как вы будете хранить. Пока необходимо запомнить, что RMS позволяет хранить данные в специальном контейнере – хранилище записей (record store).
Знакомство с Java RMS
Как вы знаете, дисковые накопители не входят в стандартную комплектацию мобильных телефонов, по крайней мере, пока не входят. Поэтому необходимо найти другие способы хранения информации. К счастью, в мобильных телефонах есть область памяти, которая используется для постоянного хранения данных, поэтому вы можете использовать ее в своих целях. В отличие от жестких дисков, которые работают на основе файлов, фундаментальное понятие хранилища в J2ME – это хранилище записей.
...
В копилку Игрока
То, как телефон хранит данные, зависит от конкретной модели. В современных мобильных телефонах обычно используется память устройства, но в будущем телефоны могут иметь и микро жесткие диски или какие-либо другие средства хранения информации. Хорошо, что, с точки зрения программирования, способ хранения данных не важен.
Понятие о записях и хранилищах записей
Хранилище записей – это упрощенная база данных. Запись – это единица информации, имеющая уникальный числовой идентификатор (ID). Хранилище записей можно представить как таблицу, состоящую из двух колонок (рис. 19.1).
Рис. 19.1. Хранилище записей состоит из отдельных записей, имеющих уникальный ID
Каждое хранилище записей в RMS ассоциировано с пакетом мидлета и имеет текстовое имя, идентифицирующее ее. Так, например, хранилище списка рекордов для игры Space Out может называться HiScores, доступ к нему может быть получен только через приложение Space Out. Если вы распространяете другие игры вместе со Space Out в одном пакете, то остальные игры также будут иметь доступ к этому хранилищу.
Читать дальше
Конец ознакомительного отрывка
Купить книгу