Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AgentCharaCard: Fix reading decorations #1269

Closed
wants to merge 1 commit into from

Conversation

redstrate
Copy link
Contributor

I'm a total idiot and only tested this code against a full adventurer plate, and it turns out almost everything I did was completely wrong. I assumed the location of each decoration is static, but it turns out this structure is more extendable than I thought, I guess to support more decoration types in the future.

The decoration data is stored in two different fixed size arrays with five elements (since there's only five decoration types.) The first array is the row indices, where the hard-coded locations were before. The second array is some more decoration information, but currently I only know of and care about the type for now.

This does not affect base plates or borders, which are not considered decorations.

@redstrate redstrate marked this pull request as draft January 3, 2025 21:00
I'm a total idiot and only tested this code against a full adventurer plate, and it turns out almost everything I did was completely wrong. I assumed the location of each decoration is static, but it turns out this structure is more extendable than I thought, I guess to support more decoration types in the future.

The decoration data is stored in two different fixed size arrays with five elements (since there's only five decoration types.) The first array is the row indices, where the hard-coded locations were before. The second array is some more decoration information, but currently I only know of and care about the type for now.

This does not affect base plates or borders, which are not considered decorations.
@redstrate redstrate marked this pull request as ready for review January 3, 2025 21:19
Copy link
Contributor

github-actions bot commented Jan 3, 2025

Breaking Changes

Member exists in left but not in right

FFXIVClientStructs.FFXIV.Client.UI.Agent.AgentCharaCard: 1

Storage: 5

  • byte Backing
  • byte PatternOverlay
  • byte PortraitFrame
  • byte PlateFrame
  • byte Accent

@github-actions github-actions bot added the breaking change PR contains breaking changes and wont be merged before a new patch label Jan 3, 2025
@wolfcomp
Copy link
Collaborator

Will be held off until next API bump possibly 7.2

Haselnussbomber added a commit to Haselnussbomber/FFXIVClientStructs that referenced this pull request Feb 15, 2025
Add:
- BannerHelper
- CharaCard
- AgentBannerPreview
- AgentBannerPreviewState
- HelperInterface

Update:
- AgentCharaCard
- AgentBannerEditorState
- CharaView
- CharaViewPortrait
- RaptureGearsetModule
- UIModuleHelpers
- data.yml

Closes aers#1269
wolfcomp pushed a commit that referenced this pull request Feb 15, 2025
* Update Portrait/Adventurer Plate structs

Add:
- BannerHelper
- CharaCard
- AgentBannerPreview
- AgentBannerPreviewState
- HelperInterface

Update:
- AgentCharaCard
- AgentBannerEditorState
- CharaView
- CharaViewPortrait
- RaptureGearsetModule
- UIModuleHelpers
- data.yml

Closes #1269

* Fix size of BannerData

* Fix offsets of BannerData

* Fix Data8Struct.GearVisibilityFlag type

* Restore types of obsoleted fields

* Fix offset and comment of obsoletes in CharaViewCharacterData
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking change PR contains breaking changes and wont be merged before a new patch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants