mamarulez
Mitglied
Ein "Segmentation Fault"-Error bedeutet bei SDL fast immer, dass ein typischer Windows "Blue Screen" verhindert wird (ich weiß, dass du Linux verwendest...), also ein unzulässiger Speicherzugriff, wie du richtig erkannt hast.
Da du erwähnst, dass dieser Fehler vorkommt, wenn du den Spieler in die oberste bzw. unterste Zeile stellst, vermute ich eventuell einen Array-Fehler (zum Beispiel "int array[5]" wird mit "array[5]" angesprochen etc.). Du benutzt doch sicherlich Arrays in irgendeiner Form um die Spieler-Position oder die Felder (Tiles) zu speichern?
Hast du immer bedacht, dass ein Array in C++ bei 0 anfängt? Also, dass "int array[5]" die Elemente von 0 bis 4 besitzt? Zu leicht passiert es einem, dass man in einer Schleife zum Beispiel so was macht: "for ( int i = 0; i < 5; i++ ) array[ i ] = 1;" Das würde in solch einem Fehler enden.
Ich hoffe ich konnte irgendwie helfen!
Da du erwähnst, dass dieser Fehler vorkommt, wenn du den Spieler in die oberste bzw. unterste Zeile stellst, vermute ich eventuell einen Array-Fehler (zum Beispiel "int array[5]" wird mit "array[5]" angesprochen etc.). Du benutzt doch sicherlich Arrays in irgendeiner Form um die Spieler-Position oder die Felder (Tiles) zu speichern?
Hast du immer bedacht, dass ein Array in C++ bei 0 anfängt? Also, dass "int array[5]" die Elemente von 0 bis 4 besitzt? Zu leicht passiert es einem, dass man in einer Schleife zum Beispiel so was macht: "for ( int i = 0; i < 5; i++ ) array[ i ] = 1;" Das würde in solch einem Fehler enden.
Ich hoffe ich konnte irgendwie helfen!