Quad Pang
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
CollisionMaster.h
Go to the documentation of this file.
00001 #ifndef _COLLISION_MASTER_H
00002 #define _COLLISION_MASTER_H
00003 
00004 #include <list>
00005 
00006 // Forward declarations
00007 class MenuDisplay;
00008 class TimeDisplay;
00009 class TextDisplay;
00010 class Quad;
00011 class Bongo;
00012 class Arrow;
00013 class Ball;
00014 class Box;
00015 class XRes;
00016 class XCongo;
00017 class Hitti;
00018 class Engine;
00019 
00028 class CollisionMaster
00029 {
00030 public:
00032     CollisionMaster(Engine* pParent);
00034     bool UpdateCollisions();
00035 private:
00042     void AddToDeleteList(Quad* quad);
00044     void AddToNewList(Quad* quad);
00052 
00053     bool Collision(Quad *q1, Quad *q2);
00061     bool Collision(Arrow *arrow, Bongo *bongo);
00068     bool Collision(Arrow *arrow, Ball *ball);
00074     bool Collision(Box *box, Arrow *arrow);
00081     bool Collision(Box *box, Hitti *hitti);
00083     bool Collision(Box *box, Bongo* bongo);
00090     bool Collision(Box *box, Ball *ball);
00092     bool Collision(Ball *ball1, Ball *ball2);
00095     bool Collision(Ball *ball, Bongo *bongo);
00096 
00098     
00099     Engine *mpParent;
00100     std::list<Quad*> mQuadNewList;
00101     std::list<Quad*> mQuadDeleteList;
00102 };
00103 
00104 
00105 
00106 #endif // _COLLISION_MASTER_H
00107