.| Autor | Beitrag |
|---|---|
|
000 16.03.2002, 22:13 Darkman|two |
nAbend also ich schreib grad son kleines Progrämmchen wo es eine Klasse geben soll mit mit den Methoden schlagen und wegrennen und dann noch Name eingeben und dann noch zwei Variabeln wo ich dann den Namen drin Speicher und eine wo die Healthanzeige ist. So jetzt will ich in der Main Funktion dann Klasse Spieler und Klasse Gegner machen dann hab ich ja das einmal für den spieler und eine für den gegner nur wenn ich jetzt in der Methode schlage der Gegnerischen Klasse schaden zufügen will. Wie muss ich das machen?? -- |
|
Profil || Suche |
|
001 16.03.2002, 22:37 KillerDoc |
Mach halt noch eine Methode GetHurt in der Klasse. Dann kannst du das zb so machen: Player.schlagen(&Gegner,10) // Gegner 10 healths abziehen. und in der methonde schlagen kannst du dann auf die GetHurt Methode von Gegner zugreifen... CFigur::GetHurt(int healths) lazy sunday afternooon Dieser Beitrag wurde am 16.03.2002 um 22:38 von KillerDoc bearbeitet. |
|
Profil || Suche |
|
002 16.03.2002, 22:49 Darkman|two |
im großen und ganzen versteh ich das irgendwie dann müsste meine klasse so aussehen: |
|
Profil || Suche |
|
003 16.03.2002, 23:04 KillerDoc |
Target wird als Parameter an schlagen übergeben... int schlagen(); sondern mit int schlagen(CPlayer* Target, int healthabzug); deklarieren. und int getroffen(); braucht natürlich auch eine infromation wie stark derjenige denn nun getroffen wurde dh du musst auch hier einen parameter übergeben also gehört das so deklariert: int getroffen(int healthabzug); Bei Methoden kannst du genauso wie bei normalen globalen Funktionen Parameter übergeben :) lazy sunday afternooon |
|
Profil || Suche |
|
004 16.03.2002, 23:13 Darkman|two |
jo des mit den Parametern weis ich nur wie setze ich jetzt den Zeiger von Target auf die Klasse Gegner die ich ja mit CPlayer Gegner erstelle weil ich ja auhc noch die Klasse CPlayer Player erstelle... Kannst du mit des auch noch grade erklären?? thx für die jetzige Mühe -- |
|
Profil || Suche |
|
005 16.03.2002, 23:20 KillerDoc |
naja. du übergibst beim aufruf von schlagen einfach die Adresse von Gegner. Die bekommst du mit dem & Operator. CPlayer Player; allright ? --lazy sunday afternooon |
|
Profil || Suche |
|
006 16.03.2002, 23:27 Darkman|two |
jo des war ja vorher auch klar nur muss ich CPlayer in der main.cpp datei deklarieren oder in der class.cpp ?? sichelrich nciht in der class.h oder in alle oder nur in den beiden ersten?? dann wär es das eigentlich -- |
|
Profil || Suche |
|
007 16.03.2002, 23:34 KillerDoc |
Deklariert gehörts entwedr in der .cpp datei wo die die instanzen deklariert werden, also in deinem fall wahrscheinlich main.cpp oder - wie es schöner ist in einer eigenen header datei - class.h von mir aus dann musst du allerdings natürlich die class.h in deiner main.cpp #include'n --lazy sunday afternooon |
|
Profil || Suche |
|
008 16.03.2002, 23:36 Darkman|two |
aso ok also reicht es wenn ich des nur in der class.h deklariere hät die sowieso in die main includiert nur ich hab es bis jetzt eigneltich meist immer in der main.cpp in der main funktion gemacht nur ich war mir nicht ganz sicher ob des dann net mehr geht naja ok thx für deine Hilfe. -- |
|
Profil || Suche |
|
009 16.03.2002, 23:50 Darkman|two |
hmm doch nochmal nen kleines prob :(( tut mir ja leid das ich noch nicht soviel Erfahrung hab mit Klassen mit Funktionen komm ich viel besser klar nur ich will des halt mit den Klassen lernen...naja ok |
|
Profil || Suche |
|
010 16.03.2002, 23:56 KillerDoc |
errr. Die Instanzen von CPlayer - also Gegner und Player solltest du natürlich schon in der main.cpp bzw. in der main funktion deklarieren.. ich dachte du willst wissen wo du die Klasse selbst deklarieren sollst :) --lazy sunday afternooon |
|
Profil || Suche |
|
011 17.03.2002, 00:03 Darkman|two |
nene aber wenn ich die doch in der main.cpp bzw. in der main funktion deklariere dann fehlen die mir doch wieder in der class.cpp wo ich die methoden drin erstelle. Also cih mach das so ne class.h wo die klassen rein kommen ne class.cpp wo die methoden drin erstellt werden und in der main.cpp kommt dann die main funktion und da wird dann alles aufgerufen z.B. soll Gegner geschlagen werden? Ja dann schlage(CPlayer* Target, int Healthabzug); so dachte ich des verstehst?? oder ist da nen gravierender denkfehler drin?? -- |
|
Profil || Suche |
|
012 17.03.2002, 00:11 KillerDoc |
Hmm also so von der idee her stimmts eh. Was du machen solltest.. - kA ob dus nicht eh schon machst - am anfang jeder eigenen header datei solltest du sowas einbauen: #ifndef _NAMEDERDATEI_H_ und am ende der header datei noch #endif das stellt sicher das in deinem projekt keine header datei zweimal included wird --lazy sunday afternooon |
|
Profil || Suche |
|
013 17.03.2002, 00:19 Darkman|two |
hmm jetzt hab ich auf einmal 8 Fehler :( |
|
Profil || Suche |
|
014 17.03.2002, 00:26 KillerDoc |
in der class.cpp gib auch noch ein #include "class.h" rein... icq hab ich leider ned.. ich mag das programm ned :) lazy sunday afternooon |
|
Profil || Suche |
|
015 17.03.2002, 00:49 Darkman|two |
hmm irc hab ich installier sag mal wie der server heißt quakenet.irc ?? oder wie ?? |
|
Profil || Suche |
|
016 17.03.2002, 00:52 KillerDoc |
irc.quakenet.eu.org is der server --lazy sunday afternooon |
|
Profil || Suche |
|
017 17.03.2002, 01:05 Tron |
in einem token darf kein '.' sein, also "clas_h" statt "clas.h" --'KEINE PANIK' - aus der Triologie in fuenf Baenden von Douglas Adams 'FÜR DEINN FERD' - aus 'Gevatter Tod' von Terry Pratchett |
|
Profil || Suche |

