Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.04.2009, 11:06   #1
kos1nus
Пользователь
 
Регистрация: 14.07.2008
Сообщений: 47
Вопрос как сделать игровове поле, т.е. каждая клетка должна иметь свои параметры и координаты вида X Y

вообшем мне необходимо сделать шахматы. я никак не могу придумать как сделать игровове поле, т.е. каждая клетка должна иметь свои параметры и координаты вида X Y.

какой элемет для этого можно использовать?
kos1nus вне форума Ответить с цитированием
Старый 12.04.2009, 11:50   #2
Лукманов Александр
работа не волк....
Форумчанин
 
Аватар для Лукманов Александр
 
Регистрация: 09.06.2008
Сообщений: 337
По умолчанию

Создайте массив с элементами TShape. А потом разукрашивайте их через одну.
Цель, для которой требуются неправые средства, не есть неправая цель.
Лукманов Александр вне форума Ответить с цитированием
Старый 12.04.2009, 14:12   #3
Манжосов Денис :)
Участник клуба
 
Регистрация: 29.01.2008
Сообщений: 1,039
По умолчанию

Ну к примеру
Клетка имеет размер 25 px. Карта размером 25 * 10, 25*10. (Смотря сколько клеток в шахматах (я не помню)). Значит массив для обращения к элементам должен быть такой
Код:
type
  XY = record
  X,Y: integer;
end;  
var
  Map: array [1..10] of XY;
  // Либо
  Map: array [1..10] of TPoint;
Манжосов Денис :) вне форума Ответить с цитированием
Старый 12.04.2009, 20:03   #4
kos1nus
Пользователь
 
Регистрация: 14.07.2008
Сообщений: 47
По умолчанию

предлагаете просто клетку нарисовать? боюсь сложно будет каждый раз поле перерисовывать . . . я планировал использовать какой нибудь эллемент. ну к примеру image. присвоить каждому image свои координаты и через них находить нужный элемент. возможно ли сделать что то подобное?
kos1nus вне форума Ответить с цитированием
Старый 12.04.2009, 21:08   #5
DeKot
Участник клуба
 
Аватар для DeKot
 
Регистрация: 12.08.2008
Сообщений: 1,977
По умолчанию

В шахматах поле стандартное 8 х 8 и не изменяется в процессе игры - верхняя левая клетка - белое поле и далее вправо/вниз поочередно черная/белая клетки. Фигур всего шесть - пешка, ладья, конь, слон, ферзь,король. Каждая фигура может быть черной или белой.
Берем переменную status - от 1 до 12 , шесть белых фигур, шесть черных и 0 - пустая клетка. Объявляем массив 8 x8 [0..7,0..7] типа byte и каждой клетке просваиваем статус по расстановке фигур от 0
до 12 . Индекс в массиве каждой клетки легко просчитывается по координатам - (если клетка 50 х 50 пикселей) то 200 х 400 - соответствует 4 по горизонтали и 8 по вертикали (d1 - по шахм. терминологии).
И не сомневайся даже ... отдых - кайф, работа - лажа!
DeKot вне форума Ответить с цитированием
Старый 12.04.2009, 21:32   #6
kos1nus
Пользователь
 
Регистрация: 14.07.2008
Сообщений: 47
По умолчанию

окей . . . уговорили. буду рисовать.

спасибо большое всем за помошь!
kos1nus вне форума Ответить с цитированием
Старый 13.04.2009, 10:39   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Создайте массив с элементами TShape. А потом разукрашивайте их через одну.
Может проще DrawGrid или StringGrid?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.04.2009, 13:57   #8
Лукманов Александр
работа не волк....
Форумчанин
 
Аватар для Лукманов Александр
 
Регистрация: 09.06.2008
Сообщений: 337
По умолчанию

Хм.. а я про DrawGrid не слышал. Надо будет посмотреть. StringGrid не очень красиво, но обрабатывать легче.
Цель, для которой требуются неправые средства, не есть неправая цель.
Лукманов Александр вне форума Ответить с цитированием
Старый 13.04.2009, 19:37   #9
kos1nus
Пользователь
 
Регистрация: 14.07.2008
Сообщений: 47
По умолчанию

вы можете не спорить зря . . . мне на висуал бейсике нада это сделать. так что советы для делфи мне не помогут =\

From Stilet: Мне что закрыть эту тему за нарушения? Почему язык не указал?

Последний раз редактировалось Stilet; 17.04.2009 в 17:11.
kos1nus вне форума Ответить с цитированием
Старый 13.04.2009, 21:20   #10
DeKot
Участник клуба
 
Аватар для DeKot
 
Регистрация: 12.08.2008
Сообщений: 1,977
По умолчанию

Еще одно подтверждение - суть программа, а язык - это просто инструмент.В Basic те же понятия переменных, операторов подпрограмм, что и во всех ЯВУ. Хотите научиться программингу - разберетесь в алгоритме, а на нет и суда нет.
И не сомневайся даже ... отдых - кайф, работа - лажа!
DeKot вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как получить чужой комп в свои руки zetrix Безопасность, Шифрование 7 13.11.2008 16:32
как вытащить значение из sql запроса след.вида Tanuska___:) БД в Delphi 3 29.09.2008 15:54
Как сделать более точные координаты мышки xGroupers Общие вопросы Delphi 7 24.04.2008 23:02
Подскажите, как загрузить свои курсоры в Dlephi? Sequrity Общие вопросы Delphi 1 23.11.2007 22:49
Как вписывать объекты в свои процедуры? schveine Помощь студентам 4 02.10.2007 13:46