Skip to content

Implement LocalTextures API#93

Merged
ManlyMarco merged 19 commits intoIllusionMods:masterfrom
starstormhun:local-texture-selection
Oct 27, 2025
Merged

Implement LocalTextures API#93
ManlyMarco merged 19 commits intoIllusionMods:masterfrom
starstormhun:local-texture-selection

Conversation

@starstormhun
Copy link
Copy Markdown
Contributor

No description provided.

@starstormhun starstormhun changed the title Implement LocalTexture API Implement LocalTextures API Oct 27, 2025
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR implements a new LocalTextures API that allows plugins to control how textures are saved with character cards and studio scenes. The API provides three save modes: bundled (embedded in the file), deduped (shared between objects in studio), and local (saved separately to reduce file size but prevent sharing).

Key Changes:

  • Added TextureSaveType enum defining three texture save modes
  • Created LocalTextures API classes for Maker and Studio contexts with UI controls
  • Implemented LocalSaveChangedEventArgs for change notifications
  • Added embedded UI resources for the texture save type selector interface

Reviewed Changes

Copilot reviewed 14 out of 22 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/Shared.Core/TextureSaveType.cs Defines enum for texture save type options
src/Shared.Core/Events/LocalSaveChangedEventArgs.cs Event args for save type changes
src/Shared.Core/Maker/LocalTextures.cs Core Maker API implementation with UI setup
src/Shared.KKalike/Maker/LocalTextures.cs KK-specific Maker UI implementation
src/Shared.AIalike/Maker/LocalTextures.cs AI-specific Maker UI implementation
src/Shared.CharaStudio/Studio/LocalTextures.cs Studio API with scene save UI
src/PHAPI/*.cs PH-specific implementations
*.projitems Project file updates adding new source files

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/Shared.CharaStudio/Studio/LocalTextures.cs Outdated
Comment thread src/Shared.AIalike/Maker/LocalTextures.cs Outdated
Copy link
Copy Markdown
Collaborator

@ManlyMarco ManlyMarco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mostly good, using the same name for different APIs that do different but similar things is a bad idea though, it will get confusing fast.

Comment thread src/Shared.Core/TextureSaveType.cs
Comment thread src/Shared.Core/Maker/LocalTextures.cs Outdated
Comment thread src/Shared.Core/Maker/LocalTextures.cs Outdated
Comment thread src/Shared.CharaStudio/Studio/LocalTextures.cs Outdated
Comment thread src/PHAPI/Maker/LocalTextures.cs Outdated
Comment thread src/Shared.Core/Utilities/ImageTypeIdentifier.cs Outdated
…e start

Co-authored-by: ManlyMarco <39247311+ManlyMarco@users.noreply.github.com>
@ManlyMarco ManlyMarco merged commit 868d39b into IllusionMods:master Oct 27, 2025
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.

3 participants