tankGame.h
class myTank;
class TankSteering;
//enum KEYS{ W, S, A, D,J,K};
class TankGame{
public:
TankGame(ALLEGRO_DISPLAY* display);
~TankGame();
myTank* m_player;
TankSteering* m_TankSteering;
void Update();
void Render();
};
myTank.h
class TankGame;
class TankSteering;
class myTank : public MovingEntity {
public:
myTank(TankGame* tank_game, Vector2D pos, ALLEGRO_DISPLAY* display);
~myTank();
void Update();
void Render();
....blah....
private:
....blah....
TankSteering* m_pSteering;
TankGame* m_tankGame;
};
tankSteering.h
class myTank;
class TankGame;
class TankSteering
{
public:
TankSteering(myTank* player, TankGame* tankGame);
//TankSteering();
~TankSteering();
Vector2D Calculate();
Vector2D Player_Steering();
private:
TankGame* m_pTankGame;
float m_fMaxForce;
myTank* m_tplayer;
float m_fDesRateForce;
};
TankGame.cpp
TankGame::TankGame(ALLEGRO_DISPLAY* display)
{
m_player = new myTank(this, Vector2D(200.0f, 200.0f), display);
//m_TankSteering = new TankSteering(this);
for(int i = 0; i < 6; i++)
{
keys[i] = false;
}
}
blah blah
the thing is, when i remove the line "m_player = new myTank(this, Vector2D(200.0f, 200.0f), display);" in my tankGame, it work. But when i add this line in TankGame constructor, error "error Run-Time Check Failure #0" happened. when i create an object of myTank in mainfunction, it worked. Someone can help me
Edited by linhmai27, 26 November 2012 - 12:48 AM.






