Tischtennis-Stil-Frage
-
Hallo!
Ich bin gerade dabei bei meinem Tsichtennisspiel zu berechnen, wie der Ball fleigt, wenn man ihn wie anstößt und wie ich mitkrige ob der Ball schon 2 mal aufgekommen ist und so.
Ich programmiere OOP, daher wollte ich wissen, wer denn nun wissen muss, wie oft der Ball schon aufgekommen ist, und wo der Ball sich befindet, ob man jetzt eine Angabe machen muss oder nicht.
Ich habe 4 Klassen:
Die Platte, Den Ball, Die Tischtenniskelle und die Hauptklasse, die alles kontrolleirt, quasi der Zuschauer ist.Was meint ihr?
Gruß, Maxi
-
Mach doch einfach einen Zähler.
-
hä?
Hast du meine Frage nicht verstanden? Dass ich einen Zähler machen muss, weiß ich auch. Aber es geht mir darum, ob der Ball wissen muss, wie oft er schn aufgekommen ist, oder die Platte oder der Beobachter oder wer auch immer.
Und welches Objekt wissen muss, ob jetzt eine Angabe gemacht werden muss und so wieter.
Maxi
-
Also ich weiß nicht, das mußt Du Dir halt überlegen, dafür bist Du ja als OO-Analysator und OO-Designer zuständing...!
Du könntest versuchen, die Wirklichkeit möglichst genau abzubilden!
Ist das denn 'ne Regelfrage? (Bin PingPong-Newb!)
Sowas wie "berührt-geführt" im Schach?!Weil dann interessiert das weder die Platte, noch den Ball selber, wie oft dieser aufgekommen ist, sondern nur den "Schiedsrichter", Deine hierarchisch oben-liegende "Kontroll"-Klasse - Deinen Zuschauer halt.
Ansonsten wär's wohl das einfache, wenn der Ball selber zählt, wie oft er aufgetitscht ist...
-
also, als erfahrener tischtennisspieler, was zum teufel ist die tischtenniskelle? etwa der tischtennisschläger?
also weder die platte, weder der ball noch der schläger muss das wissen.
der ball hat eigenschaften, wie geschwindigkeit, größe, materialeigenschaften, ..... alles was man braucht.
der tisch ebenfalls: größe, materialeigenschaften netzhöhe-breite-tiefe, alter :),.....
der schläger hat sowas wie position größe ausrichtung (winkel), belageigeschaften (schnell langsam mit oder ohne noppen),....
ich würde mir dann eine klasse "spieler" schreiben, die aus dem spieler selbst besteht und einen tischtennisschläger hat.
dann würde ich mir eine klasse "tischtennisspiel" schreiben, die übernimmt alle überwachungen. und kontrolliert das spiel. sie hat dann eine platte einen ball und zwei spieler (die jeweils ihre eigenen schläger haben).
das spiel beginnt mit irgendeinem spieler und dieser darf nun einen aufschlag machen. dazu übergibt die klasse "tischtennisgame" dem spieler1 den aktuell benutzen ball. dieser macht dann einen aufschlag, z.b. mit der funktion "MacheAufschlag". diese funktion bekommt dann einen ball und intern wird dann mit hilfe des schlägers und dem ball eine position, eine gechwindigkeit und eine eigenrotation errechnet und zurückgegeben. das ist dann die startposition des balles. die klasse "tischntennisgame" sorgt dann dafür, das mit den geeigneten physikalischen gesetzen der ball "seinen lauf nimmt" und zählt dann natürlich mit wie oft er z.b. aufgekommen ist, etc.
natürlich muss nach jeder bewegung des balles überprüft werden ob einer der beiden spieler in das spielgechehen eingreift. sei es weil er ball auf der anderen seite ankommt, oder ein spieler verrrückt "spielt" und auf die platte steigt und zum gegner rüberläuft und dort wass macht
man kann es natürlich auch ganz anders machen. das hängt halt davon ab aus welcher perpektive man das ganze betrachtet.
-
Hm, Danke erstmal.
Ich mache es jetzt so, dass der Ball die Platte fragt, ob er auf ihr aufgekommen ist. Daraus errechent er seine neue Flugrichtung und so weiter.
Außerdem zählt der Ball, wie oft er aufgekommen ist und wenn er mehr als zweimal aufgekommen ist, dann gibt die Klasse CTischtennis der Kelle einen neuen Ball und sagt ihr, dass sie eine Aufgabe machen soll.Da mir für mein erstes Spiel die Animation von Modellen zu kompliziet ist, habe ich keine Speilerklassen, sonder eben nur die Kellen. Sie müssen eben selber die Aufgaben machen und nicht der Spieler.
Ich denke mal, dass geht so klar und ich hoffe, dass ich irgendwann auch mal fertig werde
Gruß, Maxi
-
Original erstellt von Maxi:
Da mir für mein erstes Spiel die Animation von Modellen zu kompliziet ist, habe ich keine Speilerklassen, sonder eben nur die Kellen. Sie müssen eben selber die Aufgaben machen und nicht der Spieler.Ähhhhh... daß Du 2 Spieler-Klassen hast, muß ja nicht bedeuten, daß diese auch irgendwas auf den Bildschirm rendern müssen...!!!