0 / 0 / 0
Регистрация: 13.04.2016
Сообщений: 27
|
||||||
1 | ||||||
Движение змейки10.08.2018, 18:34. Показов 2007. Ответов 13
0
|
10.08.2018, 18:34 | |
Ответы с готовыми решениями:
13
Как происходит движение змейки? Синхронное движение ProgressBar и TrackBar, движение в обратную сторону Как сделать чтобы уровень змейки и уровень яблока совпадал? Движение змейки |
Модератор
|
|||||||||||
10.08.2018, 21:18 | 2 | ||||||||||
Сообщение было отмечено Painkiller13 как решение
Решение
У Вас же здесь бесконечный цикл!
Обрабатывается одна клавиша и потом прерывание уходит в вечный цикл. Добавлено через 6 минут Если я правильно понял смысл Вашего кода, то надо так
Добавлено через 42 минуты Если надо отслеживать удержание клавиш, то можно так
1
|
0 / 0 / 0
Регистрация: 13.04.2016
Сообщений: 27
|
|
11.08.2018, 17:10 [ТС] | 3 |
Почему то происходит один шаг за одно нажатие, хотя змейка должна продолжать двигаться постоянно, а клавиши просто давать направление
0
|
Модератор
|
|
11.08.2018, 18:19 | 4 |
Вы какой вариант, пробовали? С таймеров?
После отпускания клавиши змейка должна двигаться в выбранном направлении? Или только пока удерживаешь клавишу? По диагонали может двигаться?
0
|
0 / 0 / 0
Регистрация: 13.04.2016
Сообщений: 27
|
|
11.08.2018, 18:28 [ТС] | 5 |
я переписал весь код, что вы отправили, движение происходит только при нажатии клавиш
Добавлено через 2 минуты да, она должна двигаться в выбранном направлении
0
|
Модератор
|
||||||
11.08.2018, 18:32 | 6 | |||||
Вот ещё вариант:
Таймер на Форму поставили? Добавлено через 1 минуту Я же два разных варианта посылал! Там же написано.
1
|
0 / 0 / 0
Регистрация: 13.04.2016
Сообщений: 27
|
|
11.08.2018, 18:40 [ТС] | 7 |
теперь движется без остановки, но когда меняю направление идет небольшой рывок, а когда нажимаю несколько раз одну клавишу скорость увеличивается
0
|
Модератор
|
|
11.08.2018, 18:53 | 8 |
Да, это я скопировал с Вашего кода. Подумал что Вам так и надо.
Чтобы скорость оставалась неизменной в блоке Select Case e.KeyValue уберите + и - перед знаком =. Добавлено через 2 минуты Попробуйте закомментировать Timer1.Start(), но тогда может срабатывать немного с опозданием. Проверьте.
1
|
0 / 0 / 0
Регистрация: 13.04.2016
Сообщений: 27
|
|||||||||||
11.08.2018, 19:00 [ТС] | 9 | ||||||||||
решил эту проблему, просто обнулил upmove,leftmove перед каждым движением
Убрал шаг сразу после нажатия, вроде помогло
0
|
Модератор
|
||||||
11.08.2018, 19:03 | 10 | |||||
Сделайте так. Тоже самое но короче.
0
|
0 / 0 / 0
Регистрация: 13.04.2016
Сообщений: 27
|
|
11.08.2018, 19:05 [ТС] | 11 |
так он по диагонали ходит
0
|
Модератор
|
||||||
11.08.2018, 19:12 | 12 | |||||
Да, диагональ осталась. Я подправил посмотрите.
1
|
0 / 0 / 0
Регистрация: 13.04.2016
Сообщений: 27
|
|
11.08.2018, 19:15 [ТС] | 13 |
Так работает, спасибо за помощь!
0
|
Модератор
|
|
11.08.2018, 19:31 | 14 |
Ок! Удачи!
0
|
11.08.2018, 19:31 | |
11.08.2018, 19:31 | |
Помогаю со студенческими работами здесь
14
Реализовать движение змейки Движение змейки - разобрать код Осуществить движение змейки без задержки на ожидания ввода Перемещение змейки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |