Neues Problem bei snake



  • Hi
    ich hab mal vor ein paar Montaen mit einem snake Spiel in der Konsole angefangen und heute hab ich mich mal wieder drangesetzt.

    Mein Problem ist, das ich die schlange immer wenn sie eine Frucht ist um 1 "X" wächst aber iwi bekomm ich dies nicht so hin hab die schlange in einer Struktur gespeichert, das die schlange nur max. 10 X groß sein kann.
    Die Frucht ich in x- und y-positon unterteilt und sie als interger variable gespeichert.

    Schon mal vielen Dank für euere Antworten 😉



  • lolipoplol schrieb:

    Mein Problem ist, das ich die schlange immer wenn sie eine Frucht ist[...]

    Ja, genau!
    Verblüffend!
    Ich habe auch immer ein Problem, wenn meine Frucht eine Schlange ist.



  • Unnützer Beitrag, sowas gehört hier nicht hin oder wie alt bist du?

    Ein paar Details wäre nicht schlecht, du könntest eine Check machen, wie lang deine Schlange, ist und dann eben Speicher oder es lassen. Mehr kann man im Moment, denke ich mal, nicht zu sagen.

    MfG



  • yihaaa schrieb:

    Unnützer Beitrag, sowas gehört hier nicht hin oder wie alt bist du?

    Ein paar Details wäre nicht schlecht, du könntest eine Check machen, wie lang deine Schlange, ist

    Check!
    38 / 17cm!

    Okay?

    Sollten Teilnehmer an diesem Forum Ihre Beiträge nicht nochmal durchlesen, bevor sie diese posten?
    Das gilt auch fuer Dich!



  • Gilt auch für dich: "ihre" nicht "Ihre". Also lass das, du machst dich so nur lächerlich.



  • KMT schrieb:

    Gilt auch für dich: "ihre" nicht "Ihre". Also lass das, du machst dich so nur lächerlich.

    Du kannst ja ab jetzt auf die Rechtschreibung achten.

    lolipoplol schrieb:

    Mein Problem ist, das ich die schlange immer wenn sie eine Frucht ist um 1 "X" wächst aber iwi bekomm ich dies nicht so hin hab die schlange in einer Struktur gespeichert, das die schlange nur max. 10 X groß sein kann.

    Was hältst Du denn von diesem Post?



  • Kann ein Mod bitte die Beiträge löschen? Verdammt noch mal...

    ich hab mal vor ein paar Montaen mit einem snake Spiel in der Konsole angefangen und heute hab ich mich mal wieder drangesetzt.

    So weit so gut. Ein kleiner Tipp im Voraus: Versuch nicht allzu lange Pausen innerhalb von Projekten einzulegen. Schnell vergisst man das Wesentliche, das Interesse (und den Enthusiasmus), und es ist vorbei.

    Mein Problem ist, das ich die schlange immer wenn sie eine Frucht ist um 1 "X" wächst aber iwi bekomm ich dies nicht so hin hab die schlange in einer Struktur gespeichert, das die schlange nur max. 10 X groß sein kann.

    Ich denke, hier meinst du, dass immer wenn die Schlange die Frucht isst, sie um ein Glied ('X') wächst.

    Dein Problem ist offensichtlich. Du benutzt C-Style Arrays. Nimm bitte, bitte einfach einen STL-Container. Du wirst uns hier bis in alle Ewigkeit plagen wenn du dir nicht **einmal std::vector **ansiehst.

    Edit: Ja, achtet bitte alle auf die Rechtschreibung. Flüchtigkeitsfehler sind egal, solange man nicht anfängt schwerwiegende Missverständnisse zu provozieren (die Schlange ist die Frucht? Hä?). Aber dann bitte auch nicht ausfallend werden.



  • vielen Danl für die Antworten und sry wegen den Rechtschreibfehlern 🙂
    Was ist ein C-style array? sry bin noch kompletter Anfänger



  • lolipoplol schrieb:

    Was ist ein C-style array? sry bin noch kompletter Anfänger

    Im Googlen oder was?

    Das ist "C-Style" Arrays:

    int a[5];
    int b[] = {1, 2, 3};
    

    Eigentlich sind es normale Arrays, aber da man in C++ ausschließlich STL-Container nutzt, sagt man stattdessen "C-Style" (weil man sie immer in C genommen hat).
    Das sind also sozusagen echte Arrays, für die das Type-Trait std::is_array true ergibt, und der sizeof -Operator auch die Länge des Arrays zurückgibt. Man sollte es aber wirklich nur da benutzen, wo man fast nicht damit arbeitet.
    Denn Achtung!
    Gerade für Anfänger ist es mit diesen Arrays oft sehr verwirrend, weil es Syntax-Tücken gibt. Nimm wo es geht lieber einen STL-Container:

    std::vector<int> a(5);
    
    std::vector<int> b{1, 2, 3}; //In C++11 unterstützt
    

    Das beste an diesen STL-Containern ist, dass die Größe dynamisch ist. Man kann also beliebig Elemente irgendwo einfügen und wieder löschen. Perfekt, wenn man also an Benutzereingaben oder Berechnungen angewiesen ist - und auch überall sonst macht es eigentlich keinen Sinn etwas anderes zu nehmen. (Außer bei einigen Ausnahmen, aber das lernst du noch).



  • ok vielen Dank 😉


Anmelden zum Antworten