Hello, I have been making a pong clone and I have run into some trouble with collision. It is not that I cannot get collision to work, it is(I think) my approach that is flawed. I have searched on google for help, however I could not find anything.
collision.h
#ifndef COLLISION_H
#define COLLISION_H
#include <SFML\Graphics.hpp>
#include "Ball.h"
#include "Player.h"
#include "Enemy.h"
class Collision{
public:
Collision();
~Collision();
//return true if there is a collision detected
bool BOP_Collision(sf::RenderWindow& App, const Player* const player = NULL, const Enemy* const enemy = NULL); //BOP = boundries on paddle
bool BOB_Collision(sf::RenderWindow& App, const Ball* const ball); //BOB = boundries on ball
bool POB_Collision(sf::RenderWindow& App, const Player* const player = NULL, const Enemy* const enemy = NULL, const Ball* const ball = NULL); //POB = paddle on ball
private:
sf::Vector2f pVector; //vector for the player
sf::Vector2f eVector; //vector for the enemy
sf::Vector2f bVector; //vector for the ball
};
#endif
collision.cpp
#include "Collision.h"
Collision::Collision(){}
Collision::~Collision(){}
bool Collision::BOP_Collision(sf::RenderWindow& App, const Player* const player = NULL, const Enemy* const enemy = NULL){
pVector = player->getPosition();
eVector = enemy->getPosition();
}
bool Collision::BOB_Collision(sf::RenderWindow& App, const Ball* const ball){
}
bool Collision::POB_Collision(sf::RenderWindow& App, const Player* const player = NULL, const Enemy* const enemy = NULL, const Ball* const ball = NULL){
}
The error is with
pVector = player->getPosition(). It says "Error: the object has type qualifiers that are not compatible with the member function". Thank you in advance for all your help.