Quellcode durchsuchen

Absturz beim karten editor behoben, wenn die spielart den editor noch nicht unterstützt

Kolja Strohm vor 4 Jahren
Ursprung
Commit
5d9dafca6a
1 geänderte Dateien mit 15 neuen und 5 gelöschten Zeilen
  1. 15 5
      KSGClient/NachLogin/Editor/Karte/KartenEditor.cpp

+ 15 - 5
KSGClient/NachLogin/Editor/Karte/KartenEditor.cpp

@@ -202,12 +202,22 @@ void KartenEditor::setKarte( int id )
             }
             else
             {
-                editor->addStyle( Knopf::Style::Erlaubt );
                 editorF = getEditorKlasse();
-                editorF->setSchrift( schrift->getThis() );
-                editorF->setKlient( editorClient->getThis() );
-                editorF->setLadeAnimation( (Animation2D*)ladeAnimation->dublizieren() );
-                editor->addStyle( Knopf::Style::Sichtbar );
+                if( editorF )
+                {
+                    editor->addStyle( Knopf::Style::Erlaubt );
+                    editorF->setSchrift( schrift->getThis() );
+                    editorF->setKlient( editorClient->getThis() );
+                    editorF->setLadeAnimation( (Animation2D *)ladeAnimation->dublizieren() );
+                    editor->addStyle( Knopf::Style::Sichtbar );
+                }
+                else
+                {
+                    editor->removeStyle( Knopf::Style::Erlaubt );
+                    Text *err = new Text( "Der Editor wird von dieser Spielart noch nicht unterstützt. " );
+                    err->append( "Es stehen daher nicht alle Editorfunktionen zur verfügung." );
+                    nachLogin->zNachrichtenListe()->addNachricht( new Text( "Fehler" ), err, new Text( "Ok" ), 0 );
+                }
             }
         }
     }