Hallo zusammen!
Ich habe folgende Frage:
Bei meinem Spiel habe ich eine Basis Klasse GameObject.
Die sieht in etwas so aus:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
class GameObject
{
public:
GameObject(const LoaderParams* pParams);
virtual void draw();
virtual void update();
virtual void clean();
Vector2D& getPosition() { return m_position; }
Vector2D& getVelocity() { return m_velocity; }
Vector2D& getAcceleration() { return m_acceleration; }
protected:
Vector2D m_position;
Vector2D m_velocity;
Vector2D m_acceleration;
int m_width;
int m_height;
string m_sTextureID;
int m_currentFrame;
int m_currentRow;
};
|
Die Player-Klasse sieht dann etwa so aus und hat wie man sieht ihre
eigenen privaten Funktionen.
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
class Player : public GameObject
{
public:
Player(const LoaderParams* pParams);
virtual void draw();
virtual void update();
virtual void clean();
virtual void collision();
virtual string type() { return "Player"; }
void returnTest() { return test; }
private:
int test;
void movements();
void shiftColliders();
};
|
Nun meine Frage: Ist es möglich z.B. oben auf returnTest (angenommen test wäre statisch) zuzugreifen?
Falls ja wie steuere ich dorthin? Habe gerade die Durchsicht verloren ...
Auf public Funktionen von GameObjekt kann ich ja problemlos so drauf steuern:
|
C-/C++-Quelltext
|
1
2
3
4
|
for(vector<GameObject*>::size_type i = 0; i != pGameObjects.size(); i++)
{
pGameObjects[i]->draw();
}
|
Danke für eure Hilfe!
lg, Eric