Ben Evans University Second Year Project. Game Called Defender.

Dependencies:   mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers CheckAlienCollision.h Source File

CheckAlienCollision.h

00001 #ifndef CHECKALIENCOLLISION_H
00002 #define CHECKALIENCOLLISION_H
00003 
00004 // Included Headers ------------------------------------------------------------
00005 #include "mbed.h"
00006 #include "Position.h"
00007 #include "Alien.h"
00008 
00009 /** CheckAlienCollision class
00010 * @brief Check Alien Collision parent class
00011 * @author Benjamin Evans, University of Leeds
00012 * @date May 2020
00013 */         
00014 class CheckAlienCollision: virtual public Position{    
00015     public: 
00016     // Function prototypes -----------------------------------------------------
00017         
00018          /** Checks if alien collides with a sprite
00019          * @param alien @details Alien object
00020          */
00021         bool check_alien_collision(Alien alien);
00022         
00023     protected: 
00024     // Function prototypes -----------------------------------------------------
00025         
00026         /** Checks if alien collides with top right of sprite and return flag
00027          * @param alien @details Alien object
00028          * @param alien_pos @details vector2D of alien xy position
00029          * @return check_collision @details check collision flag 
00030          */
00031         bool check_top_right(Alien alien, Vector2D alien_pos);
00032         
00033          /** Checks if alien collides with top left of sprite and return flag
00034          * @param alien @details Alien object
00035          * @param alien_pos @details vector2D of alien xy position
00036          * @return check_collision @details check collision flag 
00037          */
00038         bool check_top_left(Alien alien, Vector2D alien_pos);
00039         
00040         /** Checks if alien collides with bottom right sprite and return flag
00041          * @param alien @details Alien object
00042          * @param alien_pos @details vector2D of alien xy position
00043          * @return check_collision @details check collision flag  
00044          */
00045         bool check_bottom_right(Alien alien, Vector2D alien_pos);
00046        
00047         /** Checks if alien collides with bottom left sprite and return flag
00048          * @param alien @details Alien object
00049          * @param alien_pos @details vector2D of alien xy position
00050          * @return check_collision @details check collision flag 
00051          */
00052         bool check_bottom_left(Alien alien, Vector2D alien_pos);
00053         
00054     // Variables ---------------------------------------------------------------
00055         
00056         /** Length of sprite in x direction */
00057         int sprite_x_length; 
00058         
00059         /** Length of sprite in y direction */
00060         int sprite_y_length; 
00061         
00062         /** Flag if there is is a alien collision*/
00063         bool alien_collision_flag;
00064         
00065          /** Flag if the alien that colided is tracking */
00066         bool alien_track;
00067 };
00068  
00069 #endif