LandscapeEditorDrawSystem::eErrorType CustomColorsSystem::EnableLandscapeEditing() { if (enabled) { return LandscapeEditorDrawSystem::LANDSCAPE_EDITOR_SYSTEM_NO_ERRORS; } LandscapeEditorDrawSystem::eErrorType canBeEnabledError = IsCanBeEnabled(); if ( canBeEnabledError!= LandscapeEditorDrawSystem::LANDSCAPE_EDITOR_SYSTEM_NO_ERRORS) { return canBeEnabledError; } LandscapeEditorDrawSystem::eErrorType enableCustomDrawError = drawSystem->EnableCustomDraw(); if (enableCustomDrawError != LandscapeEditorDrawSystem::LANDSCAPE_EDITOR_SYSTEM_NO_ERRORS) { return enableCustomDrawError; } selectionSystem->SetLocked(true); modifSystem->SetLocked(true); landscapeSize = drawSystem->GetTextureSize(Landscape::TEXTURE_TILE_FULL); FilePath filePath = GetCurrentSaveFileName(); if (!filePath.IsEmpty()) { const bool isTextureLoaded = LoadTexture(filePath, false); drawSystem->GetCustomColorsProxy()->ResetLoadedState(isTextureLoaded); } else { drawSystem->GetCustomColorsProxy()->UpdateSpriteFromConfig(); } drawSystem->EnableCursor(landscapeSize); drawSystem->SetCursorTexture(cursorTexture); drawSystem->SetCursorSize(cursorSize); Texture* customColorsTexture = drawSystem->GetCustomColorsProxy()->GetSprite()->GetTexture(); drawSystem->GetLandscapeProxy()->SetCustomColorsTexture(customColorsTexture); drawSystem->GetLandscapeProxy()->SetCustomColorsTextureEnabled(true); if (!toolImageSprite) { CreateToolImage(512, "~res:/LandscapeEditor/Tools/customcolorsbrush/circle.tex"); } enabled = true; return LandscapeEditorDrawSystem::LANDSCAPE_EDITOR_SYSTEM_NO_ERRORS; }
LandscapeEditorDrawSystem::eErrorType HeightmapEditorSystem::EnableLandscapeEditing() { if (enabled) { return LandscapeEditorDrawSystem::LANDSCAPE_EDITOR_SYSTEM_NO_ERRORS; } LandscapeEditorDrawSystem::eErrorType canBeEnabledError = IsCanBeEnabled(); if ( canBeEnabledError!= LandscapeEditorDrawSystem::LANDSCAPE_EDITOR_SYSTEM_NO_ERRORS) { return canBeEnabledError; } LandscapeEditorDrawSystem::eErrorType enableCustomDrawError = drawSystem->EnableCustomDraw(); if (enableCustomDrawError != LandscapeEditorDrawSystem::LANDSCAPE_EDITOR_SYSTEM_NO_ERRORS) { return enableCustomDrawError; } selectionSystem->SetLocked(true); modifSystem->SetLocked(true); landscapeSize = drawSystem->GetHeightmapProxy()->Size(); copyPasteFrom = Vector2(-1.f, -1.f); drawSystem->EnableCursor(landscapeSize); drawSystem->SetCursorTexture(cursorTexture); drawSystem->SetCursorSize(cursorSize); drawSystem->GetLandscapeProxy()->InitTilemaskImageCopy(); drawSystem->GetLandscapeProxy()->InitTilemaskSprites(); enabled = true; return LandscapeEditorDrawSystem::LANDSCAPE_EDITOR_SYSTEM_NO_ERRORS; }