Я делаю консольную игру под названием инопланетные космические корабли в качестве домашней работы. Он должен выглядеть примерно так: http://img74.imageshack.us/img74/8362/alieninvadersfdcl192720mu1.jpg. До сих пор так хорошо, что мне не разрешено использовать классы или объекты => только функции и массивы. У меня есть один цикл while, который проверяет кнопки, которые я нажимаю на клавиатуру, и в соответствии с кнопкой применяет некоторые функции. Проблема возникает, когда я пытаюсь снимать пропуст, потому что это делается с циклом «за», и когда я стреляю, я не могу двигаться. Может ли кто-нибудь дать мне представление о том, как должна выглядеть модель и как я могу сделать что-то вроде этой работы. Я не думаю, что это нужно, чтобы опубликовать мой код, но если хотите, я опубликую его.C++ параллельные петли
1
A
ответ
1
Я предполагаю, что вы не хотите играть с несколькими потоками. Это не обязательно для простой игры, подобной этой, и добавит немного сложности.
Так общий цикл для monothreaded игры:
state new_state = createInitialState();
do
{
input = readInput(); // non blocking !
new_state = modifyState(input, new_state);
updateScreen(new_state);
}
while (!exitCondition(input));
Ни одна из этих функций должна петля долго.
В вашем случае позиция ракеты должна быть обновлена в modifyState
с учетом времени с момента последнего modifyState
.
0
Я предполагаю, что вы используете матрицу для хранения всех данных и периодически печатаете содержимое матрицы (так вы создаете консольную игру). Итак, ваш код должен выглядеть примерно так:
render()
{
update_position(x,y);
if(missile_fired)
update_missile_position();
}
main()
{
for(;;)
{
read_input(&x,&y);
render();
draw_image();
}
}
Смежные вопросы
- 1. Параллельные петли в C++
- 2. Параллельные - потоки? петли?
- 3. параллельные (несимметричные) петли в python
- 4. Параллельные goroutines внутри петли for
- 5. предотвратить параллельные петли под управлением
- 6. параллельные петли foreach производят ошибку mclapply
- 7. Как использовать две параллельные петли, Python?
- 8. Параллельные петли для определения размера папки
- 9. Параллельные петли и случайные производят нечетные результаты
- 10. Параллельные петли с пакетом dataframe в Julia
- 11. Возможно ли параллельные петли «поперечного коллапса»?
- 12. Как вложить параллельные петли в последовательный цикл с помощью OpenMP
- 13. C Параллельные процессы
- 14. Параллельные коллекции в C#
- 15. C++ Параллельные запросы GET
- 16. Параллельные параллельные двоичные считыватели
- 17. Многопроцессорные параллельные петли не могут быть вложены под потоками
- 18. WebDriver: параллельные параллельные тесты
- 19. Параллельные параллельные сеточные сетки
- 20. Параллельные параллельные тесты
- 21. рисования Параллельные линии в C#
- 22. C Параллельные процессы и трубы
- 23. Просьба посоветуйте для петли петли C++
- 24. Как сделать параллельные параллельные проекты?
- 25. Выполняйте параллельные параллельные операции async.series
- 26. C# петли: перебор массива
- 27. C# - Формирование петли
- 28. События C# против петли
- 29. C# - Конкатенация внутри петли
- 30. непреднамеренной петли (C)
«Мне не разрешено использовать классы или объекты» - вздох! Этот пресловутый подход профессоров: изучите C, а не C++ ... – vines