Files
SDLPongCPP/.svn/pristine/b6/b6af1c96b170d4ce4a2d7dccce891612ca7b09a4.svn-base
T
2018-06-25 21:48:45 -04:00

60 lines
1.3 KiB
Plaintext

#ifndef _CBALL_HPP_
#define _CBALL_HPP_
/*** TrooperEngine DLL Header Files ***/
#include "TrooperEngine.hpp"
namespace Equipment {
class cBall : public VideoEngine::cSprite
{
public:
enum eBallState
{
OnCourt,
LeftOffCourt,
RightOffCourt,
Serve
};
cBall( const signed long int xpos = 0, const signed long int ypos = 0, const signed long int xarea = 0,
const signed long int yarea = 0, const unsigned long int warea = 0, const unsigned long int harea = 0,
VideoEngine::cImage** image = nullptr, VideoEngine::cCamera** camera = nullptr );
~cBall();
///Functions
void Move();
const bool isPaused();
void Pause();
void BounceX();
void BounceY();
void Reset( const int delay );
///Sets
void setSpeed( const float x = -10, const float y = -10 );
void setMaxSpeed( const float max = 10 );
void setMinSpeed( const float min = 5 );
///Gets
const MathEngine::Vector2 getSpeed() const;
const float getMaxSpeed() const;
const float getMinSpeed() const;
private:
private:
float m_maxSpeed;
float m_minSpeed;
bool m_boucedAllReady;// = false;
MathEngine::Vector2 m_speed;
eBallState m_ballState;
bool m_pause;// = false
};/// END CLASS DEFINITION cBall
}/// END NAMESPACE DEFINITION Equipment
#endif/// END IFNDEF _CBALL_HPP_