Skip to content

feat: add dual progress bars, file list UI, sound alerts, taskbar fla…#9

Open
bazq3D wants to merge 3 commits into
Hancapo:masterfrom
bazq3D:master
Open

feat: add dual progress bars, file list UI, sound alerts, taskbar fla…#9
bazq3D wants to merge 3 commits into
Hancapo:masterfrom
bazq3D:master

Conversation

@bazq3D

@bazq3D bazq3D commented Jun 16, 2026

Copy link
Copy Markdown
Ekran görüntüsü 2026-06-16 191125 …shing, and path auto-detection
  • Moved asset extraction to a background thread using Task.Run to prevent UI freezing.
  • Added a 2-column layout to MainWindow: left side contains settings/actions, and right side displays a dynamic Selected Files ListBox.
  • Added "Remove" and "Clear All" buttons to manage the file queue dynamically.
  • Implemented a dual progress bar system in the footer:
    • PbOverall: tracks progress of multiple YMAPs/files currently processing.
    • PbItems: tracks asset/entity extraction progress within the active file.
  • Added sound notification (SystemSoundType.Question) upon successful extraction completion.
  • Implemented user32.dll FlashWindow integration to flash the application's taskbar icon when the background task finishes.
  • Automatically clears queues and resets progress bars upon completion.
  • Improved GTA V path auto-detection on startup by parsing Steam's 'libraryfolders.vdf' to support custom drive libraries, Rockstar registry, and Epic manifests.
  • Added input trimming to clean path names and fixed case-sensitivity issues during file picking (e.g., .YMAP / .YTYP capitalization).

bazq3D added 3 commits June 16, 2026 19:19
…shing, and path auto-detection

- Moved asset extraction to a background thread using Task.Run to prevent UI freezing.
- Added a 2-column layout to MainWindow: left side contains settings/actions, and right side displays a dynamic Selected Files ListBox.
- Added "Remove" and "Clear All" buttons to manage the file queue dynamically.
- Implemented a dual progress bar system in the footer:
  - PbOverall: tracks progress of multiple YMAPs/files currently processing.
  - PbItems: tracks asset/entity extraction progress within the active file.
- Added sound notification (SystemSoundType.Question) upon successful extraction completion.
- Implemented user32.dll FlashWindow integration to flash the application's taskbar icon when the background task finishes.
- Automatically clears queues and resets progress bars upon completion.
- Improved GTA V path auto-detection on startup by parsing Steam's 'libraryfolders.vdf' to support custom drive libraries, Rockstar registry, and Epic manifests.
- Added input trimming to clean path names and fixed case-sensitivity issues during file picking (e.g., .YMAP / .YTYP capitalization).
This commit fixes various compiler, MSBuild, and code analyzer warnings. It also adds robust error handling and null-safety to prevent the application from crashing when loading empty or invalid YMAP/YTYP files.

- Initialized _gameFileCache to null! to prevent CS8618 warning
- Marked TryResolve as returning Texture? to fix nullability warnings
- Replaced value type null check with Hash != 0 to fix CS0472
- Added null safety guards in GetEntityHashesFromFile for AllEntities, entitySets, and entities
- Wrapped file pickers/loading block in try-catch to prevent unhandled exception crashes
- Observed exceptions in empty catch blocks with Debug.WriteLine
- Removed IncludeAssets from Costura.Fody PackageReference
- Moved project files to repository root
This commit adds detailed console trace logs during YMAP/YTYP file loading and entity processing, helping debug cases where some YMAPs are not fully exported. It also updates the project reference in TexturesTesting.sln to match the repository root and optimizes GetYdr/GetYdd/GetYft lookups.
@bazq3D

bazq3D commented Jun 17, 2026

Copy link
Copy Markdown
Author

Added a commit fixes various compiler, MSBuild, and code analyzer warnings. It also adds robust error handling and null-safety to prevent the application from crashing when loading empty or invalid YMAP/YTYP files.

  • Initialized _gameFileCache to null! to prevent CS8618 warning
  • Marked TryResolve as returning Texture? to fix nullability warnings
  • Replaced value type null check with Hash != 0 to fix CS0472
  • Added null safety guards in GetEntityHashesFromFile for AllEntities, entitySets, and entities
  • Wrapped file pickers/loading block in try-catch to prevent unhandled exception crashes
  • Observed exceptions in empty catch blocks with Debug.WriteLine
  • Removed IncludeAssets from Costura.Fody PackageReference
  • Moved project files to repository root

and detailed console trace logs during YMAP/YTYP file loading and entity processing, helping debug cases where some YMAPs are not fully exported. It also updates the project reference in TexturesTesting.sln to match the repository root and optimizes GetYdr/GetYdd/GetYft lookups.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant