Commit graph

1370 commits

Author SHA1 Message Date
goat
f3d7c6f2ea don't access nullptr addon when shutting down early 2024-12-26 17:17:04 +01:00
Haselnussbomber
f98da094f4
Fetch market board uploader info from main thread (#2158) 2024-12-26 16:39:54 +01:00
goat
2e2feb144f fix some warnings 2024-12-26 14:11:14 +01:00
KazWolfe
1083081706
fix: Safely invoke marketboard events being sent to plugins. (#2150) 2024-12-25 23:33:23 +01:00
Haselnussbomber
3ccd93aaf1
Return nullable on XivChatType.GetDetails (#2143) 2024-12-17 15:56:55 +00:00
goat
722ee32353
Use MiniGame BGM scene for About tab (#2132)
* Use MiniGame BGM scene for About tab

* Use span comparison in GameGui.IsInLobby
2024-12-06 21:43:39 +01:00
nebel
75f414578d
Don't allow nameplate GameObject lookup when ObjectId is invalid (#2137) 2024-12-04 22:23:17 +01:00
Haselnussbomber
4c62158aea
Fix config option summaries (#2138)
* Fix config option summaries

* Obsolete LockonDefaultZoom_179 with error
2024-12-04 22:22:51 +01:00
Haselnussbomber
f7f1b0afc5
Use span comparison in GameGui.IsInLobby 2024-11-30 20:42:46 +01:00
Haselnussbomber
da718b64c1
Use MiniGame BGM scene for About tab 2024-11-30 19:59:42 +01:00
nebel
1830af59fd
Use object table index lookup for NamePlateGui GameObject resolution (#2129) 2024-11-28 18:19:11 +01:00
KazWolfe
4c9b2a1577
Add universalis response logging for diagnostics (#2124) 2024-11-25 19:21:07 +00:00
Aireil
de999b7895
Fix IsPvPExcludingDen (#2120) 2024-11-24 21:35:00 +01:00
Haselnussbomber
dbbc2306dd
NRE check LinkData in HandleLinkClickDetour (#2112) 2024-11-20 15:54:05 -08:00
srkizer
d19b7d70d5
Move UtfEnumerator from Dalamud to Lumina (#2111)
* Move UtfEnumerator from Dalamud to Lumina

Comes with some trivial cleanups.

* Update Lumina to 5.5.0
2024-11-20 09:32:49 -08:00
Infi
3a3d6b6e6a
Implement Print methods that work with Lumina SeString/ReadOnlySeString (#2106)
* 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
2024-11-19 02:05:28 +00:00
Infi
2f50276738
Switch PlayerPayload Encode/Decode to using Lumina (#2107)
* Switch PlayerPayload Encode/Decode to using Lumina
- This also fixes a bug that PlayerPayload would encode worldIds as byte (they are ushort)

* Remove comment
2024-11-18 17:29:53 -08:00
Haselnussbomber
0d9eed298c
Use correct type for GameInventoryItem.Stains (#2099) 2024-11-16 17:50:15 -08:00
Haselnussbomber
aa450a7199
Revert ItemHover/ItemOut hook removal (#2093)
* Revert ItemHover/ItemOut hook removal

* Update delegates for HandleItemHover hooks

* Fix HandleItemHoverDetour spam

* Update GameGui signature comments

* Use int in HandleItemOutDetour like the game does

* Hook AgentItemDetail vfuncs

* Add missing hook Dispose calls

---------

Co-authored-by: KazWolfe <KazWolfe@users.noreply.github.com>
2024-11-16 23:08:23 +00:00
Infi
c2588cec6b
Switch from CurrentGauge pointer to using the gauge fields address directly (#2094) 2024-11-16 14:51:38 -08:00
Haselnussbomber
3c8f68b308
Update config options (#2090) 2024-11-16 17:38:47 +01:00
nebel
abcb99d4ec
Add support for boxed outlined numbers in SeIconChar (#2088) 2024-11-16 00:34:49 +00:00
goat
bbaf600856
use correct gauge pointer 2024-11-15 19:31:41 +01:00
Kaz Wolfe
4436c58749
covfefe 2024-11-15 08:25:19 -08:00
Kaz Wolfe
b43a6b6bce
fix: OnLogin needs to be callable again 2024-11-15 08:24:04 -08:00
Kaz Wolfe
9ac1f5cdb4
Revert OnLogin event to only fire when LocalPlayer is present 2024-11-15 08:18:49 -08:00
Kaz Wolfe
d6dad8b44a
fix gamepad inputs for imgui 2024-11-15 00:20:51 -08:00
Haselnussbomber
94f16ac16e
Alias ClientState.IsLoggedIn to AgentLobby.IsLoggedIn (#2082) 2024-11-14 15:36:10 -08:00
Kaz Wolfe
b483b63bf2
GameInventoryItem matches StructSize from CS 2024-11-14 15:34:56 -08:00
Kaz Wolfe
913fe25cc5
InventoryItem size bump 2024-11-14 08:47:32 -08:00
KazWolfe
097f85eff6
Move more things to ClientStructs (#2080)
* 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>
2024-11-14 08:29:28 -08:00
Infi
7c6ed6de76
Use more of the CS version for ActionDetailHover (#2079)
* - Use CS for delegate
- Sync HoverActionKind with CS version

* Undo changes in favor of #2080
2024-11-13 21:56:30 -08:00
Infi
4e76669779
Add new city to the upload (#2078) 2024-11-13 21:56:00 -08:00
Kaz Wolfe
3a6312422c
Move HandleActionHover to CS
Co-authored-by: Infi <infiziert@protonmail.ch>
2024-11-13 19:44:35 -08:00
Infi
8668ea0d59
Fix universalis upload with itemId 0 (#2077) 2024-11-13 13:43:42 -08:00
Kaz Wolfe
c6b0db069e
fix: InventoryItem#Copy is a vfunc now 2024-11-12 16:07:28 -08:00
Kaz Wolfe
486192662d
New SetupTerritoryType sig
Co-authored-by: Ottermandias <70807659+ottermandias@users.noreply.github.com>
2024-11-12 08:40:10 -08:00
KazWolfe
67e6bcac61
fix: XivChatType respects the configured chat channel if not set (#2001) 2024-11-12 08:23:22 -08:00
Haselnussbomber
c0f05614c6
[api11] Some code cleanup and signature replacements (#2066)
* 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
2024-11-12 08:20:29 -08:00
Kaz Wolfe
084f8b55e7
fix cs breaks 2024-11-11 08:54:57 -08:00
Kaz Wolfe
720b1676e5
Merge branch 'master' into api11
# Conflicts:
#	Dalamud/Game/ClientState/Fates/Fate.cs
#	Dalamud/Game/Gui/NamePlate/NamePlateUpdateContext.cs
#	Dalamud/Interface/Internal/DalamudInterface.cs
#	Dalamud/Interface/Windowing/Window.cs
#	Dalamud/Utility/StringExtensions.cs
#	lib/FFXIVClientStructs
2024-11-11 08:38:20 -08:00
Haselnussbomber
c7facaf072
Rewrite parts of ClientState (#2065)
- Completely relies on hooks now, instead of the Framework.Update loop
- Support for Logout codes
2024-11-11 08:28:40 -08:00
Haselnussbomber
d4735980c8
[api11] Use Conditions address from CS (#2064) 2024-11-05 22:37:45 +01:00
wolfcomp
30d56e4d11
fix all warnings and breaking changes for CS (#2061) 2024-11-04 21:14:51 -08:00
Haselnussbomber
2a9ee760c6
Add IGameInventory.GetInventoryItems (#2008) 2024-11-04 16:28:06 +01:00
nebel
9a0bc50e23
Use hooks instead of lifecycle for NamePlateGui (#2060) 2024-11-04 14:21:07 +00:00
goat
8956bd54a9 fix some warnings 2024-11-04 15:01:09 +01:00
Asriel Camora
0b9af0e3f4
Update to Lumina 5 (new Excel parsing) (#2022)
* 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
2024-10-20 19:59:03 -07:00
Kaz Wolfe
4d6b8e59ef
apply low-hanging fruit for api11todos 2024-09-29 10:51:00 -07:00
srkizer
1f74293de4
Update Lumina and use MacroStringParser (#2033)
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.
2024-09-14 10:23:24 -07:00