Разработка Android - Создание настольной игры - PullRequest
1 голос
/ 04 октября 2011

Я пытаюсь наметить лучший способ разработки образца игры.Я хотел бы создать настольную игру, которая будет вести себя как слова с друзьями (не по правилам игры).Например, я хочу, чтобы доска представляла собой шестистороннюю доску с заданным количеством игровых фишек.Когда на нее помещают игровой предмет (например, шашку или мяч), я бы хотел, чтобы этот предмет «привязался» к ближайшему месту.Мой вопрос в том, как лучше всего оформить доску?Должно ли это быть сделано в качестве фонового изображения?Или нарисовать доску вживую?Если да, то как мне создать «привязку к» и зарегистрировать, когда фигура на доске?Я также хочу убедиться, что плата нарисована в правильных размерах для разных телефонов.

Спасибо за любые предложения Джейсон

1 Ответ

3 голосов
/ 04 октября 2011

Вероятно, это слишком широкий вопрос для SO.Но я попробую.Немного предисловия, я лично не пытался сделать то, что вы пытаетесь.Поэтому, пожалуйста, не принимайте то, что я предлагаю, как то, что вы должны делать.

На вашем месте я бы создал объект GameBoard и объект GamePiece.Поместите все, что связано с созданием и хранением информации для доски в классе GameBoard.Нарисуете ли вы свою доску в java или начнете с графики и строите оттуда, зависит от нескольких вещей.Насколько специализированной вы хотели бы, чтобы доска выглядела? (У вас будет больше контроля, если вы начнете с графики, если хотите сделать ее причудливой) Если вы просто ищете сетку линий и ничего необычного, я думаю, выбыло бы хорошо просто нарисовать его из Java.Вы когда-нибудь хотите использовать больше / меньше 6 строк / столбцов?Если вы хотите использовать другое число, это может быть легче сделать, когда придет время, если вы будете рисовать из Java, а не из сохраненного графика.Ваша игровая доска также должна быть в состоянии отслеживать, какие фигуры на ней и где они находятся.

Что касается оснастки: вы будете создавать сенсорный слушатель, который позволит вам перетаскивать GamePiece под пальцем.Внутри события Finger_Up в вашем слушателе вы проверите текущий Rect куска по сравнению с Rect на GameBoard и попадете в любой слот, который он пересекает больше всего.Справедливое предупреждение, когда вы создаете сенсорный слушатель, вам придется использовать какую-то очень грубую линейную алгебру, чтобы брать необработанные события движения с сенсорного экрана и указывать, где рисовать фигуру дальше.

...