Цитата:
|
Спасибо, так и сделаю. У меня квест, вид комнаты не сверху, а от 1-го лица. Конечно можно по похожей структуре сделать rpg Типа Timezero, только будет значительнее сложнее, но все же.
|
Я всегда считал, что тазик (TimeZero) рулит.
По сути. Используйте MVC. В основе модели системы комнат лежит граф. Вершины графа - модели, описывающие их веса (если нужно) и связи с соседними вершинами. Контроллер инициализирует граф из какого-либо источника данных - сервер, хмл, текстовый файл, придумайте сами. Контроллер получает от View - интерфейса пользователя, того же сервера, если он вдруг задумает рулить нашим тонким клиентом - команды. Типа: пошли вправо, пошли вверх. Смотрим. В модели (вершина N 121) "вправо" означает связь с вершиной N 122 и переход по связи имеет вес 12 у.е. Ок, UI показывает подтвежденный факт перехода, например, рисуя новый интерьер, который, кстати, тоже описан в этой модели-вершине ссылкой на модель итерьера. А с персонажа снимают, например 12 * 0.3 ОД. Как-то так я бы сделал =). Кстати, подменяя View и оставляя контроллер и модель нетронутыми, можно получить и первое лицо и вид сверху и просто ASCII представление Вашей мега-игры.