2D Leveleditor



  • bekomme folgende Fehlermeldungen:

    1>------ Erstellen gestartet: Projekt: test Game, Konfiguration: Debug Win32 ------
    1> stdafx.cpp
    1>c:\users\osman\documents\visual studio 2010\projects\test game\test game\stdafx.h(98): error C2440: 'Typumwandlung': 'std::string' kann nicht in 'char *' konvertiert werden
    1> Kein benutzerdefinierter Konvertierungsoperator verfügbar, der diese Konvertierung durchführen kann, oder der Operator kann nicht aufgerufen werden
    1>c:\users\osman\documents\visual studio 2010\projects\test game\test game\stdafx.h(122): error C2039: 'pBitmapName': Ist kein Element von 'MapField'
    1> c:\users\osman\documents\visual studio 2010\projects\test game\test game\stdafx.h(37): Siehe Deklaration von 'MapField'
    1>stdafx.cpp(9): fatal error C1083: Datei (Include) kann nicht geöffnet werden: "Level.h": No such file or directory
    ========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========

    es geht um diese stelle im code:

    //Creates for each iWidth element iHeight elements 
    for(unsigned int i = 0;i < m_pLevelDatas->iWidth;i++) 
    { 
    m_MapField[i].resize(m_pLevelDatas->iHeight); 
    
    for(unsigned int z = 0;z < m_pLevelDatas->iHeight;z++) 
    { 
    //Sets it 0/pStandardFilename 
    m_MapField[i][z].strBitmapName = (char*)strStandardFilename; // Cursor hier
    m_MapField[i][z].Teleport.iMapID = 0; 
    } 
    } 
    }
    

    falls wer den gesamten code sehen will ist aus dem tutorial von dieser seite
    http://www.online-tutorials.net/spieleprogrammierung/programmieren-eines-einfachen-2d-leveleditors/tutorials-t-32-70.html

    hab nur 1 fehler ausgebügeld wo er nen konflikt von unsigned int und signed int gemeldet hat, ist hier also nicht aufgelistet



  • "pBitmapName" muss "strBitmapName" heißen.

    und aus "(char*)strStandardFilename" machst du "(char*)strStandardFilename.c_str()"

    Ob das dann allerdings Sinn macht ist eine andere Frage. Das scheint mir kein gutes Tutorial zu sein, die Speicherfunktion ist kompletter Schwachsinn. Dort wird die struct ganz einfach in den Stream geschrieben. Damit wird allerdings der string nicht gespeichert, nur die Adresse des Pointers. Erstaunlicherweise scheint es bei mir immer an der selben Stelle zu liegen und geht somit, aber zu 98% kriegst du nen Crash...



  • danke auf jedenfall, ja das tutorial ist aus einer etwas älteren zeit


Anmelden zum Antworten