diff options
| author | manuel <manuel@mausz.at> | 2011-04-09 12:34:06 +0200 |
|---|---|---|
| committer | manuel <manuel@mausz.at> | 2011-04-09 12:34:06 +0200 |
| commit | 7e4bc8ece49543533c4e27f5d6bc867c1bada601 (patch) | |
| tree | 261881edeed4c703c9f1fce5111705a013df8bdc /pacman-c++/mainwidget.cpp | |
| parent | a4fc700dfe22c252824ac81711da4bd0bf94def5 (diff) | |
| download | foop-7e4bc8ece49543533c4e27f5d6bc867c1bada601.tar.gz foop-7e4bc8ece49543533c4e27f5d6bc867c1bada601.tar.bz2 foop-7e4bc8ece49543533c4e27f5d6bc867c1bada601.zip | |
collision detection fix
Diffstat (limited to 'pacman-c++/mainwidget.cpp')
| -rw-r--r-- | pacman-c++/mainwidget.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/pacman-c++/mainwidget.cpp b/pacman-c++/mainwidget.cpp index 072d417..63280f2 100644 --- a/pacman-c++/mainwidget.cpp +++ b/pacman-c++/mainwidget.cpp | |||
| @@ -62,8 +62,8 @@ Transmission::map_t createDummyMap() | |||
| 62 | 62 | ||
| 63 | map[0][0] |= Transmission::bonuspoint; | 63 | map[0][0] |= Transmission::bonuspoint; |
| 64 | map[1][0] |= Color::red | Transmission::pacman | Transmission::direction_right; | 64 | map[1][0] |= Color::red | Transmission::pacman | Transmission::direction_right; |
| 65 | map[2][0] |= Color::blue | Transmission::pacman | Transmission::direction_up; | 65 | //map[2][0] |= Color::blue | Transmission::pacman | Transmission::direction_up; |
| 66 | map[3][0] |= Color::green | Transmission::pacman | Transmission::direction_down; | 66 | //map[3][0] |= Color::green | Transmission::pacman | Transmission::direction_down; |
| 67 | 67 | ||
| 68 | /* auto place normal points*/ | 68 | /* auto place normal points*/ |
| 69 | for (unsigned int x = 0; x < Constants::map_size.width; ++x) | 69 | for (unsigned int x = 0; x < Constants::map_size.width; ++x) |
| @@ -97,7 +97,7 @@ MainWidget::MainWidget() | |||
| 97 | 97 | ||
| 98 | QTimer *timer = new QTimer(this); | 98 | QTimer *timer = new QTimer(this); |
| 99 | connect(timer, SIGNAL(timeout()), this, SLOT(tick())); | 99 | connect(timer, SIGNAL(timeout()), this, SLOT(tick())); |
| 100 | timer->start(100); | 100 | timer->start(Constants::tick); |
| 101 | 101 | ||
| 102 | startGame(); | 102 | startGame(); |
| 103 | } | 103 | } |
| @@ -318,6 +318,13 @@ void MainWidget::tick() | |||
| 318 | { | 318 | { |
| 319 | i.next(); | 319 | i.next(); |
| 320 | i.value()->move(mov); | 320 | i.value()->move(mov); |
| 321 | QList<QGraphicsItem *> list(i.value()->collidingItems()); | ||
| 322 | for(int j = 0; j < list.count(); ++j) | ||
| 323 | { | ||
| 324 | if (list.at(j)->parentItem() == i.value()) | ||
| 325 | continue; | ||
| 326 | list.at(j)->setOpacity(0.6); | ||
| 327 | } | ||
| 321 | } | 328 | } |
| 322 | } | 329 | } |
| 323 | 330 | ||
