![]() |
Я буквально пару дней назад начал изучать midletPascal
И вот решил написать игру!:rolleyes: Возник вопрос-как ограничить поле игры,например у меня передвигается по экрану кубик в 4 разных направлениях,как сделать чтобы он не заходил за экран? И еще как организовать цикл, чтобы кубик передвигался сам с заданным шагом до границ экрана?:dontknow: Спасибо! Все! С ограничением поля разобрался сам! И с передвижение кубика тоже! Возник другой вопрос Вот кусок кода: Код:
pw:=getWidth; И еще, как сделать, чтобы при нажатии на GA_RIGHT GA_LEFT GA_DOWN кубик двигался по тойже логике, что и выше в моем коде, причем мгновенно. У меня так не получается: Делал проверку на нажатую кнопку и если нажата GA_DOWN, то кубик останавливается, и только по повторному нажатию, кубик двигается вниз! Помогите решить проблему! Кто-то есть живой на форуме??(( |
Ответ: Как организовать цикл
Вообще, чтобы кубик не двигался сразу при запуске, нужно использовать GetKeyPressed вместо GetKeyClicked. Во-вторых, repaint в приведенном коде нужен только один в конце (перед x:=x+1). В-третьих, лучше загрузить изображение один раз и выводить его, чем каждый раз писать drawImage(loadImage('/1.png'), x, y);
|
Ответ: Как организовать цикл
Спасибо за понятные разъяснения! Буду пробовать!
|
Ответ: Как организовать цикл
Да, частично вопрос решен, а как быть, чтобы при нажатии на GA_RIGHT GA_LEFT GA_DOWN кубик двигался по тойже логике, что и выше в моем коде, причем мгновенно.
|
Ответ: Как организовать цикл
Всетаки, логика работы не совсем понятна, я не внимательно прочитал:
Код:
if (Key=GA_RIGHT) then По идее, при нажатии кнопки получается что если до конца экрана 5 пикселей, то перерисовываем экран, иначе не делаем ничего. Как-то бессмыслено. Что всетаки должно получиться в итоге? Кубик должен при нажатии кнопки продвигаться на один пиксель или начинать двигаться до конца экрана? |
Ответ: Как организовать цикл
Значит по одному нажатию кнопки GA_RIGHT кубик должен двигаться до конца экрана по оси x и если он заходит за границу экрана-вывести сообщение и остановить.
Также по логике для остальных кнопок! |
Ответ: Как организовать цикл
Тогда примерно так(пишу с головы, не проверял):
PHP код:
|
Ответ: Как организовать цикл
Что-то не работает. Запутался вообщем!
Может вы меня не так понимаете! Мне надо сделать так, чтобы кубик никогда не останавливался и менял свое направления по нажатию GA_RIGHT и тд не оставляя за собой след, аесли заходит за границы поля,то высветить сообщение и остановить. |
Ответ: Как организовать цикл
В общем, вот так. Код точно рабочий, проверено.
Изучайте :) PHP код:
|
Часовой пояс GMT +4, время: 18:20. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot