|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
24.07.2010, 20:06 | #11 |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
Форма, на ней компонент Image с рисунком (это как бы фон) выше еще один Image (это подвижный), нужно как-то ограничить его перемещение по фону. Ну, как бы есть зоны, куда войти нельзя (или например проход, ограждения с краю). Перемещение реализовал с помощью стрелок. Так вот, как бы ввести ограничения?
Кстати, хороший код анти-мерцания компонента: "Form1(на чем компонент).DoubleBuffered:= True;"
даешь высокое напряжение
|
24.07.2010, 20:16 | #12 |
Негодник
Форумчанин
Регистрация: 10.11.2009
Сообщений: 880
|
Сравнивай координаты передвижного image его свойствами, а именно :
Top - верхняя граница Image Left - левая граница Image Top+Height - нижняя граница Image Left+Width - правая граница Image. допустим запретить уход за нижнюю границу формы: Код:
Если помог, проси поставить минус. Будь оригинален!
|
24.07.2010, 20:21 | #13 |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
Но по-моему, это для прямоугольной области ограниченния. А нужно, чтобы в любом месте, под любым углом задавать зоны ограничений. Это очень важно - это основа программы.
Может координаты области в виде массивов представить: первый димамический массив для зон ограничения ( что-то не понятна до конца его реализация)
даешь высокое напряжение
Последний раз редактировалось Vova777; 24.07.2010 в 20:43. Причина: добавление |
24.07.2010, 20:23 | #14 |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
Top+Height - ? Получается, что сумму координат сравниваем с Height формы???
Что получим в итоге ? Если сумма координат больше чем высота формы то делаем что нужно. иначе у-координату +1? И что получится? По-моему что-то не так... или просто мне не понятно...
даешь высокое напряжение
Последний раз редактировалось Vova777; 24.07.2010 в 20:46. |
24.07.2010, 20:37 | #15 |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
Слушай, а такой вопрос: Вот перемещение по диагонали свойствами Left\Top имейджа как реализовать (чтобы одновременно двигался и влево и вверх) со стрелок?
А по поводу кода на замену алгоритма поиска пути я что-то не понял ничего. Он собственно ведь путь не исчет? Ну это в принципе уже не важно....
даешь высокое напряжение
Последний раз редактировалось Vova777; 24.07.2010 в 20:40. Причина: добавление |
26.07.2010, 00:47 | #16 |
Негодник
Форумчанин
Регистрация: 10.11.2009
Сообщений: 880
|
в общем и частном - держи, я как то тоже заморачивался по этой теме: видать игру создаешь
Если помог, проси поставить минус. Будь оригинален!
|
27.07.2010, 19:21 | #17 |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
Да, игра будет потом. Код твой у меня не запускается.(
даешь высокое напряжение
|
28.07.2010, 00:35 | #18 |
Негодник
Форумчанин
Регистрация: 10.11.2009
Сообщений: 880
|
открой блокнотом unit1.pas (там код весь). если что не понятно, спрашивай. это на Turbo Delphi писалось
Если помог, проси поставить минус. Будь оригинален!
|
31.07.2010, 16:02 | #19 |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
Нет, в Delphi 7 (у меня стоит) от открывается, но не компилируется. Пишет, что ошибка на строке:
... private procedure c; var up,down,left,right:boolean; ... типа нужен end а найден var ну я переписал переменные к глобальным добавил. Так стало: на всех строках: ... VK_LEFT : begin left:=true; playerdx:=-1; moving:=1;c; end; VK_RIGHT: begin right:=true; playerdx:=1; moving:=2;c; end; ... типа Integer и Boolean несовместимы. Говоришь на Turbo Delphi писалось, а для Delphi 7 ничего у тебя случайно не найдется?
даешь высокое напряжение
|
31.07.2010, 16:23 | #20 |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
Да, я игру решил сделать. Если интересно, то сейчас хочу сделать что-то похожее по реализации геймплея на Resident Evil, Final Fantasy, Parasitive, Dino Crisis 2 (это для SPS, только я для PC делаю). Сюжет разработаю потом, сейчас пока нужно все отработать. А вообще проектов много рассматриваю: подобие Fallouta T., LAVA-Online, даже Diablo (только по реализации геймплея, а по остальному кардинальное отличие). Акцентировать на графическую часть, сюжетную нелинейность (т.е. относительную свободу действий, но и наличие определенной сюжетной линии), а также наличие захватываещего, интересного сюжета. Если ты в Final Fantasy VIII или IX играл, то по концепции ты меня понимаешь (там очень удачно сделано, даже на Delphi или С повторить можно (по С я не так уж), только на каждую "локацию" свои установки прописывать придется, но это ничего, вполне все осуществимо), а если не играл, то поиграй обязательно, графика потрясающая... Но лучше играть на PlayStation, там вообще вышка, ну или видеокарту покруче. Если сделать получится, то она достойно будет выглядеть, не хуже, чем выпущенная SquereSoft. В плане и сетевые вожможности (потом....). Ну так что, по предыдущему сообщению о проблеме подскажешь что-нибудь?...
даешь высокое напряжение
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
беда | Морячок | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 05.06.2010 15:41 |
беда на форме | lamerk | Microsoft Office Access | 2 | 29.11.2009 18:28 |
Беда не приходит одна! | Tayfun | Свободное общение | 6 | 30.12.2007 07:58 |