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

Игрушка Танчики - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
AnyaSh
0 / 0 / 0
Регистрация: 19.12.2012
Сообщений: 12
19.01.2013, 15:22     Игрушка Танчики #1
у меня есть 1 свой танк, 2 вражеских. и сейчас если один вражеский попадет в другого вражеского, то подстреленный исчезает и выходит конец игры. как обработать событие чтобы вражеские не могли друг друга убивать?

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
void Field::moveShots()
{    
    for (int i = 0; i < bullets.size(); i++)  
    {
        Bullet *pb;
        pb = dynamic_cast <Bullet*> (bullets[i]);
 
        QRegion region = pb -> Move(height());
        pb -> NextStep();
 
        QRect shotR = pb -> Move(height());
 
        for (int j = 0; j < blocks.size(); j++)     //попадание пули в кубик
        {
            if (shotR.intersects(blocks[j]))
            {               
                blocks.erase(blocks.begin() + j);   
                bullets.erase(bullets.begin() + i);
                break;
            }
        }
        Tank* p_tanks;
        for (int j = 0; j < targets.size(); j++)        //попадание пули во вражеский танк
        {
            p_tanks = dynamic_cast <Tank*> (targets[j]);
            if (shotR.intersects(p_tanks->GetTank()))
            {               
                targets.erase(targets.begin() + j); 
                bullets.erase(bullets.begin() + i);
                gameEnded = true;
            }
        }
            p_tanks = dynamic_cast <Tank*> (tank);      //попадание пули в мой танк
            if (shotR.intersects(p_tanks->GetTank()))
            {               
                targets.erase(targets.begin()); 
                bullets.erase(bullets.begin() + i);
                gameEnded = true;
                
                break;
            }
 
 
        if (shotR.y() > height() || shotR.bottom() < 0 || shotR.right() > width() || shotR.left() < 0) //пуля вышла за пределы
        {                
            bullets.erase(bullets.begin() + i); 
 
            if (bullets.size() == 0)
                autoShootTimer->stop();
        }        
        update(region);
    }      
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.01.2013, 15:22     Игрушка Танчики
Посмотрите здесь:

танчики C++
C++ Диплом на С++ игрушка или программа обучающая
C++ Игрушка на паскале перевести в с++
C++ Танчики в graphics.h
Небольшая игрушка в консоли C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Invader_Zim
Twilight Parasite
 Аватар для Invader_Zim
153 / 149 / 2
Регистрация: 21.07.2011
Сообщений: 907
19.01.2013, 15:38     Игрушка Танчики #2
AnyaSh, отслеживай вжажеские и тупо не давай им умирать. Пусть пулька проходит через них
AnyaSh
0 / 0 / 0
Регистрация: 19.12.2012
Сообщений: 12
19.01.2013, 15:39  [ТС]     Игрушка Танчики #3
да блин у меня не получается(
Invader_Zim
Twilight Parasite
 Аватар для Invader_Zim
153 / 149 / 2
Регистрация: 21.07.2011
Сообщений: 907
19.01.2013, 15:47     Игрушка Танчики #4
та ты, блин, весь код может выложиш?)
Или это сурьезный коммерческий проЭкт?)
AnyaSh
0 / 0 / 0
Регистрация: 19.12.2012
Сообщений: 12
19.01.2013, 15:50  [ТС]     Игрушка Танчики #5
Могу выложить) только куда нибудь скинуть)) у меня в архиве весит 12.09 метра) а здесь максимум можно 10 метров выкладывать)
Invader_Zim
Twilight Parasite
 Аватар для Invader_Zim
153 / 149 / 2
Регистрация: 21.07.2011
Сообщений: 907
19.01.2013, 17:04     Игрушка Танчики #6
только сырцы? Не вериться)
AnyaSh
0 / 0 / 0
Регистрация: 19.12.2012
Сообщений: 12
19.01.2013, 17:23  [ТС]     Игрушка Танчики #7
Invader_Zim, http://files.mail.ru/F112888845A8430080357FD394538EF2 вот ссылка) если ее ща не забанят))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.01.2013, 17:14     Игрушка Танчики
Еще ссылки по теме:

C++ Танчики C++
C++ Графическое задание на С++: танчики

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
BumerangSP
29.01.2013, 17:14     Игрушка Танчики
  #8
 Комментарий модератора 
Тема закрыта по причине дублирования темы в двух разделах (кросспостинг).
Правила форума
Yandex
Объявления
29.01.2013, 17:14     Игрушка Танчики
Закрытая тема Создать тему
Опции темы

Текущее время: 05:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru