Aktuelle Zeit: 28.04.2024, 11:18

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Problem mit OOP
BeitragVerfasst: 30.10.2009, 13:38 
Offline

Registriert: 03.06.2009, 17:39
Beiträge: 19
Hallo erstmal. Ich hab folgendes Problem:
Ich hab in meinem Spiel die Klasse "Spieler". Sie enthält Variablen, Methoden und so weiter. Wie kann ich aber ein SceneNode der Klasse hinzufügen. Am ende soll etwa sowas hier möglich sein:

Code:
spieler->setPosition(blablabla)
... = spieler->getAttribut(stärke) //getAttribut ist eine Methode von der Klasse Spieler


Mit Spieler will ich also das SceneNode ansprechen, aber gleichzeitig auch die Klasse, die z.b. die Variable "Stärke" enthält.

Danke schonmal im vorraus uns tschuldigung wenn es etwas umständlich erklärt ist.

Edit: OOP steht füt ObjektOrientierte Programmierung


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Problem mit OOP
BeitragVerfasst: 30.10.2009, 16:03 
Offline

Registriert: 17.11.2007, 11:15
Beiträge: 19
Wie wärs damit? Das ist eher im Sinne der OOP:

Code:
player->getSceneNode()->setPosition(..);
player->getAttributes().get(ATTR_STRENGTH);


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Problem mit OOP
BeitragVerfasst: 14.11.2009, 19:59 
Offline
Benutzeravatar

Registriert: 17.04.2007, 08:42
Beiträge: 460
Wohnort: Willich, NRW
>Wie kann ich aber ein SceneNode der Klasse hinzufügen?

In dem die Klasse mit der nötigen FUnktionalität ausstattest.

Code:
class Player
{
private:
  ISceneNode* node;
  ...

public:
  ...
  void setSceneNode(ISceneNode* newNode) { node = newNode; }
  ISceneNode* getSceneNode(void) { return(node); }
  ...
};


Und schon verwaltet deine Klasse einen SceneNode, auf den man zugreifen kann und somit manipulieren kann.

Code:
Player* p = new Player;
p->setSceneNode(new ISceneNode);
p->getSceneNode()->setPosition(blablabla);
...


Ich hoffe ich habe den Kern der Frage getroffen?

_________________
Bild

Irrlicht - From Noob To Pro A Guideline

--

Sonstige Projekte, Blog : http://www.rpdev.net


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de