Suchergebnisse
Suchergebnisse 1-20 von insgesamt 34.
Ok, danke, das Problem wäre gelöst, allerdings kann man wenn man z.B. oben kollidiert nicht mehr nach l. und r. während man W drückt.
Ich habe jetzt die Kollisionsabfrage in die Game-Klasse verlagert. Jetzt habe ich aber das Problem, dass wenn man sich schräg bewegen möchte (z.B. W+D) die Kollisionsfunktion nicht richtig funktioniert. Dazu ein kleiner Ausschnitt: 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 31 32 33 34 35 36 37 // CheckMovement // void CPlayer::CheckMovement() { if(sf::Keyboard::isKeyPressed(sf::Keyboard::W)) { Move(0, -10); cout << "w" << endl; if(sf::Keybo...
Ja, so wollte ich das ja machen. Die Kollisionsabfrage in der Game-Klasse. Vielen Dank für eure Hilfe, ich werde mich demnächst dransetzen und berichten.
Vielen Dank euch allen! Ja, ich benutze Include-Guards, aber die bringen in dem Fall nichts gg. die Kreisdeklaration. Bezüglich des Interfaces, dafür wollte ich ja CGame nehmen. Ich werd mal gucken wie ichs mache und berichten.
Ich werd mal noch ein bisschen herumexperimentieren. Bis jetzt war bei der Pointerübergabe halt immer das Problem, dass wie ich schon im Startpost geschrieben habe, eine Kreisdeklaration stattfindet, d.h. sich die Klassen gegenseitig deklarieren müssten. Wenn ich etwas neues herausbekomme melde ich micht natürlich. Über andere Lösungsmöglichkeiten würde ich natürlich gerne trotzdem informiert werden.
Das Problem ist dann ja aber, dass im Bewegungs-Code der CPlayer-Klasse vor dem Bewegen eine Kollisionsabfrage stattfinden muss. Allerdings hat CPLayer weder Zugriff auf m_Block von CLevel (,um selbst die Kollisionsabfrage zu machen) noch auf die Kollisionabfrage von CGame.
Hallo, ich habe zum Test ein kleines 2D-Jump&Run geschrieben. Man kann noch nicht viel machen, außer herumlaufen, herumspringen und dabei kollidieren. Ich habe folgende Klassen: CGame: Rendert das gesamte Bild CLevel: Rendert ein Array von Blöcken (CBlock-Instanzen(sf:prite)), überprüft Tastendrücke und Kollisionen, und steuert den View des Levels CPlayer: Enthält Informationen über den Spieler Der Code ist zwar vom Speicherverbrauch, etc. sauber geschrieben, allerdings gefällt mir die gesamte U...
@NachoMan Danke, aber ich benutze lieber ein normales 2D-Array, da ich mir die Funktionen dafür dann lieber selber schreibe, um mehr zu lernen. Zitat von »dot« Tut mir leid, wenn du den Eindruck hattest, dass ich angespannt wär. Ich führ solche Grundsatzdiskussionen gern, weil ich immer was dabei lernen kann. Das ganze war eigentlich nicht so direkt an dich gerichtet... Nein, ich meinte nicht explizit dich. Außerdem war das auch ein bisschen ironisch gemeint. Also ich führe selbst auch gerne sol...
Chill down. Ich machs jetzt so, dass ich als Membervariable ein 2D-Array an Instanzen erzeuge und diese dann nicht mehr per Konstruktor, sondern Init-Methode mit Werten fülle.
Ich habs jetzt aber doch hinbekommen, mal gucken wie es weitergeht. Vielen Dank an Alle, die mir versucht haben, zu helfen. 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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 #include <SFML/Graphics.hpp> #include <SFML/System.hpp> #include <iostream> using namespace std; #include "game.hpp" #i...
Ok, die Initialisierungslisten versteh ich eigentlich, aber mit den 2fachen Vektoren fällt mir das etwas schwer, das darauf anzuwenden. Könntet ihr mir sagen, wie das geht?
Zitat von »Checkmateing« Nebenbei: Der Typ heißt Heiko Kalista, steht ja sogar in Großbuchstaben da, jedenfalls der Nachname. Wie man da das A am Ende mit einem O verwechseln kann, das ist mir doch ein wenig schleierhaft. Tippfehler, habs aber schon vorhin selbst bemerkt und behoben.
Zitat von »Checkmateing« Vielleicht auch schon früher, weil es nicht so gut erläutert, aber erwähnt ist, blättere mal auf Seite 236 und lies dort nach dem ersten Absatz Text. Irre ich mich oder werden "diese komischen Dinger" da wirklich erwähnt? Nebenbei: Der Typ heißt Heiko Kalista, steht ja sogar in Großbuchstaben da, jedenfalls der Nachname. Wie man da das A am Ende mit einem O verwechseln kann, das ist mir doch ein wenig schleierhaft. MfG Check Ja, aber mit den Fortgeschrittenen Themen hab...
Zitat von »eXpl0it3r« Zitat von »Nathax« Das Problem ist ja die Aufteilung in 2 Klassen, aber kann ich den Vektor irgendwie als Membervariable von CGame definieren, da CGame den CBlock ja nicht kennt? Ein Include der block.hpp führt zur Typneudefinition oder so. Was? Du hast CBlock und nimmst dies als Membervariabel von CGame, damit CGame weiss was CBlock ist, musst du einfach die Header Datei von CBlock in der Header Datei von CGame inkludieren. Um Typen Neudefinitionen zu verhindern, musst du...
Das Problem ist ja die Aufteilung in 2 Klassen, aber kann ich den Vektor irgendwie als Membervariable von CGame definieren, da CGame den CBlock ja nicht kennt? Ein Include der block.hpp führt zur Typneudefinition oder so.
Ok, danke. Und wie bau ich das jetzt in die Header- und .cpp-Datei ein, und wie greife ich auf die Elemete des Vectors zu? Edit: Hier die Datein: game.hpp: C-/C++-Quelltext 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #include <SFML/Graphics.hpp> #include <SFML/System.hpp> using namespace std; class CGame { public: CGame(sf::RenderWindow *Window); void Render(); void LoadLevel(); void DrawLevel();; void MoveView(int X, int Y); private: sf::RenderWindow *m_pApp; sf::Color m_PixelColor[40][11];...
Hallo, ich habe eine Game-Klasse, die für das Rendern und so zuständig ist. In der Methode LoadLevel() wird aus einem PNG ein Level geladen. Dabei wird Pixel für Pixel in zwei ineinander verschachtelten For-Schleifen durchgegangen. Dieser Pixel soll dann in seiner Farbe im Fenster gezeichnet werden. Dafür habe ich die Klasse CBlock mit dem Konstruktor C-/C++-Quelltext 1 CBlock(int XPos, int YPos, int Width, int Height, sf::Color Color) der ein Shape erzeugt und das Shape in einer Membervariablen...
Ich wollte halt ein Programm machen, dass eine Playlist mit Youtube-Videos beeinhaltet. Dazu wollte ich den Video-Namen und den Video-Url und die Länge in Min. und Sek. speichern. Das Auslesen der Zeit aus der Playlistdatei hat allerdings nicht so gut geklappt und allgemein fand ich es blöd für jedes Video die Zeit angeben zu müssen, deshalb habe ich mir gedacht es mit dem Auslesen der Werte zu versuchen. Da jenes sehr schwierig zu sein schien, habe ich micht weiterhin mit der Auslese-Methode au...
naja, egal ich muss den titel nicht mehr herausfinden, habs anders gelöst! Danke an alle
Ich möchte halt C++ lernen und suche eine Möglichkeit es mit dieser Sprache umzusetzten.