looop Geschrieben 4. Mai 2008 Geschrieben 4. Mai 2008 Hi, also ich habe seit einem halben Jahr Informatik in der Schule. Wir müssen nun ein Spiel (Projekt) programmieren. Jetzt habe ich schon einiges programmiert, nur ist es nicht fertig und ich komme nicht weiter. Also das Spiel soll ein kleines Kampfspiel werden, nicht so aufwändig, einfach zwei Mänchen, die sich nicht überkreuzen dürfen und die sich quasi "hauen". Nun, ich habe die zwei Mänchen nur progammiert, habe es geschafft, dass die beide Figuren nach rechts und nach links laufen, ebenfalls können sie springen und das sogar diagonal. Nun, jetzt kommen die Probleme: 1. Ich bekomme es nicht hin im Hauptprogramm beide Figuren auf einmal aufzurufen. Figur 1 und Figur 2 sind jeweils ein unterprogramm, doch nur die Figur die ich zuerst im Hauptprogramm aufrufe erscheint als erstes. Ich habe schon eine Vermutung...nämlich die Funktion clrscr (clearscreen) die ich oft verwendet habe...aber ich weiß nicht wie ich das jetzt hinkriegen soll. 2. Ich schaffe es irgendwie nicht, dass die Figur nicht aus dem Rand laufen darf. Also ich will nicht, dass die Figur weiterläuft, wenn sie die x-koordinate 75 erreicht hat. Ich habe versucht das hier zu machen, aber hat nicht geklappt, vielleicht habe ich es an der falsche Stelle geschrieben? Ich hab' es aber überall probiert, ich schaffe es nicht:-(: if (x==75) { x=x-1; } klappt aber nicht:-( so das sind nun meine zwei Probleme...könnt ihr mir bitte helfen:D Hier sollte eigentlich der Programmcode sein, aber ich habe einen Fehler beim erstellen des Threads bekommen, weil ich zuviele Zeichen habe, könnt ihr bitte vielleicht die cpp file rutnerladen? Achja, und für Verbesserungsschläge bin ich zwar offen, aber ich will jetzt nciht das ganze Programm umschreiben, die Lehrer sollen ja sehen, was ich DRAUF habe und wie ich das ganze Programmiere. Einfach nur bei den zwei oben genannten problemen helfen. Achja, falls jemand die .cpp datei runterladen möchte, damit er es übersichtlicher oder so etwas hat, hier ist ein rapidshare link: RapidShare: 1-Click Webhosting MfG looop Zitieren
flashpixx Geschrieben 4. Mai 2008 Geschrieben 4. Mai 2008 Hallo, ich habe einen Blick in den Code geworfen: Code bitte immer dokumentieren. Zusätzlich empfehle ich Dir, Dich überhaupt mit C/C++ wirklich im Detail beschäftigen, denn ich würde bei Spielen hier jede Figur in einen einzelnen Thread packen. Ebenso empfehle ich Dir Dein Programm im OOP Stiel zu programmieren, damit bekommst Du Übersicht hinein und Du kannst besser den Code warten bzw. verändern. Mein Vorschlag für Dein Projekt: Schreibe Dir für Deine Figur eine (!) Klasse. Aus dieser Klasse erzeugst Du Dir dann die 2 Figuren. In der Klasse ist die Bewegung, Aussehen usw abgelegt. Dann programmierst Du eine weitere Klasse, die die Spielelogik enthält, die Du dann aus dem Hauptprogramm auf rufst. Die Figurklassen ergänzt Du falls notwendig um die Threadfunktionalität, damit Du sie gleichzeitig bewegen kannst. HTH Phil Zitieren
Jan Jansen Geschrieben 4. Mai 2008 Geschrieben 4. Mai 2008 Ohne jetzt in deinen Quelltext gesehen zu haben: Die Bewegung eine Figur auf dem Bildschirm sollte in 2 Schritten erfolgen: 1. Übermalen der alten Figur (alte Position) mit der Hintergrundfarbe 2. Malen der neuen Figur (neue Position) damit musst du nicht den Bildschirm löschen und kannst beide Figuren zur gleichen Zeit darstellen Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.