Хранение местоположений, элементов и описаний для текстовой RPG Android - PullRequest
0 голосов
/ 19 октября 2011

Я работаю над текстовой RPG для Android (только построенной вокруг стандартных представлений и кнопок), чтобы разобраться с некоторыми вещами, прежде чем я начну играть в более насыщенную графику игру.Есть игрок, который перемещается по локациям, и в каждой локации есть набор возможных действий.У локаций и действий есть строки для имени и описания, которые отображаются textViews.

Мой вопрос заключается в том, как сохранить несколько локаций и действий для игры?В его текущем состоянии я просто вызываю new Location () несколько раз в onCreate (), но с 50 или около того я планирую, код будет массивным, и я уверен, что есть лучший способ сделатьЭто.Я думал о создании подкласса Location для каждого конкретного местоположения, но это было бы так же плохо.Я также посмотрел на JSON и использую базу данных SQLite, и я уверен, что есть и другие подходящие подходы.

У кого-нибудь есть ссылки или предложения по хранению этих предметов, связанных с сюжетом?

1 Ответ

0 голосов
/ 19 октября 2011

Если я правильно понимаю, в настоящее время у вас есть код инициализации объекта Location - и необходимые данные, жестко запрограммированные - в методе onCreate. Это довольно хорошее решение для прототипа, но если вам нужно больше, вам придется передать данные на аутсорсинг и при необходимости лениво инициализировать объекты Location.

Если вы не планируете модифицировать Locations, то я бы предложил JSON или даже проще: собственный текстовый протокол, который легко анализировать и хранить в файлах папки активов, Например, как это:

РАСПОЛОЖЕНИЕ 14 Кухня LOACTION_DESCRIPTION Заходя на кухню, вы чувствуете запах свежесрезанных помидоров на столе ... ACCESSABLE_LOCATIONS 13 10 24 54 AVAILABLE_ITEMS 56 23 12 8 ...

И вы можете анализировать файл построчно с помощью BufferedReader, создавая свой объект.

Если местоположения содержат информацию, которая может быть изменена, и изменения должны храниться постоянно, то вам необходимо использовать базу данных. Есть много учебников . Таким образом, вы можете сохранить изменения.

...