Форум программистов, компьютерный форум CyberForum.ru

Арканоид. Вернуться в исходное состояние. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вычислить значение суммы с точностью http://www.cyberforum.ru/cpp-beginners/thread757833.html
C++ Определить количество цифр в числе n и сумму всех его цифр Дано натуральное n , определить количество цифр в числе n и сумму всех его цифр. Значение n ввести с клавиатуры. Добавлено через 25 секунд помогите пожалуйста, очень надо!!! Давайте темам осмысленное название. http://www.cyberforum.ru/cpp-beginners/thread757818.html
C++ Классы && С++ Отложение объявление на потом
У меня есть базовый класс (StudentDataBase) который я в дальнейшем хочу наследовать, но тут идёт привязка к Student fmog, как я могу объявить это, чтобы в дальнейшем заменить на допустим Teacher fmog, Help fmog? Необходимо это потому, что все методы этого класса используют node и я не могу в наследуемом классе объявить структуру отдельно - так как базовый класс использует node в методах....
C++ Алгоритм Кнута, Морриса и Пратта
//описание функции алгоритма Кнута, Морриса и Пратта int KMPSearch(char *string, char *substring){ int sl, ssl; int res = -1; sl = strlen(string); ssl = strlen(substring); if ( sl == 0 ) cout << "Неверно задана строка\n"; else if ( ssl == 0 ) cout << "Неверно задана подстрока\n";
C++ Описать основные переменные и функции http://www.cyberforum.ru/cpp-beginners/thread757763.html
опишите пожалуйста основные переменные и функции. очень буду благадарна #include <cstdlib> #include <iostream> #include <string> #include <locale.h>
C++ Перегрузить для класса оператор == (много ошибок) не могу разабраться в чем ошибки при компиляции... помогите пожалуйста код: #include "StdAfx.h" #include <conio.h> #include <string> #include <iostream> #include <fstream> #include <cstdlib> подробнее

Показать сообщение отдельно
MikeSoft
Эксперт C++
 Аватар для MikeSoft
3781 / 1765 / 85
Регистрация: 21.11.2009
Сообщений: 2,540
11.01.2013, 14:27     Арканоид. Вернуться в исходное состояние.
Pirokar, не особо вдавался в подробности, но на первый взгляд, после проверки "условия вылета" (функция GameMain) у вас тут же идёт переопределение gameState и вызов функции ProcessBall. Однако, возврат в исходное состояние описан в самом начале GameMain.

Возможно, есть смысл оформить некую функцию InitColdState и в ней выполнять необходимую подготовку, например:
C++
1
2
3
4
5
6
7
8
9
10
void InitColdState()
{
        paddle_x = PADDLE_START_X;
        paddle_y = PADDLE_START_Y;
        ball_x = paddle_x+PADDLE_WIDTH/2-4;
        ball_y = paddle_y-BALL_SIZE;
        ball_dx = 0; //Задают скорость мяча
        ball_dy = 0;//Задают скорость мяча
        gameState = GAME_STATE_START_LEVEL;
}
Соответственно, "истинность" условия if (gameState == GAME_STATE_INIT) должна будет вызвать InitColdState() и точно такой же вызов должен быть после "вылета за пределы".

Цитата Сообщение от Pirokar Посмотреть сообщение
Как сделать try catch, чтобы хотя бы вместо ошибки появлялось окошко с сообещнием "Игра окончена"? Я знаю только как консольное вывести...
Вывод диалогового окна осуществляется с помощью MessageBox.
 
Текущее время: 16:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru