For Nikhil

Dependencies:   4DGL-uLCD-SE EthernetInterface Game_Synchronizer MMA8452 SDFileSystem mbed-rtos mbed wave_player

Fork of 2035_Tanks_Shell by ECE2035 Spring 2015 TA

Tank/tank.h

Committer:
jford38
Date:
2015-10-29
Revision:
21:edfeb289b21f
Parent:
14:36c306e26317
Child:
22:3c68eea5a609

File content as of revision 21:edfeb289b21f:

#ifndef TANK_H__
#define TANK_H__


class Tank {
    public:
    
        int x, y;               // Keep track of your tank's position.
        int w;                  // Tank width.
        int h;                  // Tank height. 
        int tank_color;         // Tank color. Duh :)
        float barrel_theta;     // Barrel angle. 
        int barrel_length;      // Length of the barrel.
        int wheel_rad;          // Radius of the wheels.
        
        
        // Construct a tank given its starting position (sx, sy),
        // its width and height, and its color.
        Tank(int sx, int sy, int width, int height, int color);
        
        // Calculate the bounding box of your tank for collision checking.
        int min_x(void);
        int min_y(void);
        int max_x(void);
        int max_y(void);
        
        // Calculate the position of the end of the barrel.
        void barrel_end(int& bx, int& by);
        
        // Reposition the tank!
        void reposition(int dx, int dy, float dtheta);
        
        // Draw the tank!
        void draw();
};

#endif