* Implement Print methods that work with Lumina SeString/ReadOnlySeString
* null terminate before passing to Utf8String
* Rename XivChatEntryReadOnly to XivChatEntryRaw
* Fix error from wrong conversion method
* Follow Rider suggestion
* Switch from AppendMacroString to BeginMacro for optimization
* More optimization suggested by kizer
* More kizer suggested optimizations
* Fix small mistake
* Use XivChatEntry and read/write to Byte fields accordingly
* Switch PlayerPayload Encode/Decode to using Lumina
- This also fixes a bug that PlayerPayload would encode worldIds as byte (they are ushort)
* Remove comment
* GameGui uses CS methods now
Co-authored-by: Infi <infiziert@protonmail.ch>
* Shove even more things over to CS
* Clean up NetworkHandlers too
* bump cs so things build at least
---------
Co-authored-by: Infi <infiziert@protonmail.ch>
* Remove unused code from ChatHandlers
* Replace sigs in DalamudAtkTweaks
* Resolve LocalContentId by using PlayerState.ContentId
* Resolve BuddyList address via UIState.Buddy
* Resolve ObjectTable address via GameObjectManager
* Resolve FateTable address via FateManager
* Resolve GroupManager address via GroupManager
* Resolve JobGauges address via JobGaugeManager.CurrentGauge
* Simplify ItemHover/Out event
* Resolve ToggleUiHide address via RaptureAtkModule.SetUiVisibility
* Resolve PopulateItemLinkObject via InventoryItem.Copy
* Add byte[].AsPointer extension
* Resolve addresses used by ToastGui via UIModule functions
* Use Length from Span as ObjectTableLength
* Replace OpenMapWithMapLink with CS call
* Resolve FrameworkAddressResolver with CS vtable
* Drop unnecessary ToArray in HandlePrintMessage
* Clean up event calls in HandlePrintMessageDetour
* Simplify LocalContentId further
This pointer can't be null, because it's part of the .data section.
* Compare SeStrings in FlyTextGui with SequenceEqual
* Use CS types in FlyTextGuis internal code
* Simplify reading SeStrings internally
* Remove AsPointer again
* Resolve Number/StringArray by type in NamePlateGui
* Fix crashes in HandlePrintMessageDetour
* Resolve InteractableLinkClicked with LogViewer.HandleLinkClick
* Refactor and upgrade to new excel design
* Obsolete ExcelResolver<T> and use only RowRef<T>
* Better benchmarking for Lumina
* Add custom game-supported RSV provider
* Refactor and move Lazy<T> and nullable/cached row objects to RowRefs
* Convert IRSVProvider to delegate, resolve strings by default
* Split IExcelRow into IExcelSubrow
* Extra lumina documentation
* Minor RSV CS fixes
* Fix UIGlowPayload warning
* Fix rebase
* Update to Lumina 5
No longer requires hook and main thread requirements on compiling macro
strings.
Needs lookup table fixing on Lumina; using reflection to fix for the
time being.