Commit graph

1008 commits

Author SHA1 Message Date
goaaats
c67ed345b7 Add prizes 2025-04-01 01:27:44 +02:00
goaaats
104504f6a6 Add 2025 april fools 2025-03-31 22:51:12 +02:00
KazWolfe
126e96689b
fix: Repair broken contextmenu test (#2231)
- Bump clientstructs
2025-03-31 18:25:47 +02:00
Haselnussbomber
6160252418
Update GameInventoryItem (#2219)
* Update GameInventoryItem

- Resolve symbolic InventoryItem, used in HandIn
- Harden Materia/MateriaGrade/Stains results
- Make sure GameInventoryItem is constructed correctly

* Remove some duplicate code from InventoryWidget

* Fix null check
2025-03-28 09:00:14 -07:00
goaaats
f94f03e114 Merge branch 'api12' 2025-03-26 20:44:48 +01:00
Blair
19ba6a961f
Switch INotificationManager and ITitleScreenMenu to use ISharedImmediateTexture (#1879)
* Switch INotificationManager and ITitleScreenMenu to use ISharedImmediateTexture #1879

* Remove SetIconTexture
Remove some remarks that no longer apply

* Cleanup StyleCop warnings
2025-03-26 20:36:18 +01:00
Haselnussbomber
2f029567e4
Fixing colors and NounResolver (#2208)
* Fixing colors and NounResolver

* Remove failing special case NounProcessor selftest
2025-03-25 17:32:24 -07:00
Kaz Wolfe
67561af32f
fix: Lumina updates 2025-03-25 09:28:57 -07:00
Kaz Wolfe
919ca87bbe
update clientstructs
- fix broken gamepad sig by delegating to CS
2025-03-24 21:58:23 -07:00
Kaz Wolfe
5dcd1cc52f
chore: fix angry compiler 2025-03-24 13:36:01 -07:00
Kaz Wolfe
2176b32219
chore: Bump ClientStructs and make it build again 2025-03-24 13:25:13 -07:00
Haselnussbomber
fdbfdbb2cd
Add SeStringEvaluator service (#2188)
* Add SeStringEvaluator service

* Move DrawCopyableText into WidgetUtil

* Use Icon2RemapTable in SeStringRenderer

* Beautify some code

* Make sure to use the correct language

* Add SeString Creator widget

* Fix getting local parameters

* Update expressionNames

* misc changes

* Use InvariantCulture in TryResolveSheet

* Add SeStringEvaluatorAgingStep

* Fix item id comparisons

* Add SheetRedirectResolverAgingStep

* Add NounProcessorAgingStep

* Update SeString.CreateItemLink

This also adds the internal ItemUtil class.

* Fix name of SeStringCreator widget

* Add Global Parameters tab to SeStringCreatorWidget

* Load widgets on demand

* Update SeStringCreatorWidget

* Resizable SeStringCreatorWidget panels

* Update GamepadStateAgingStep

* Experimental status was removed in #2144

* Update SheetRedirectResolver, rewrite Noun params

* Fixes for 4 am code

* Remove incorrect column offset

I have no idea how that happened.

* Draw names of linked things

---------

Co-authored-by: Soreepeong <3614868+Soreepeong@users.noreply.github.com>
Co-authored-by: KazWolfe <KazWolfe@users.noreply.github.com>
2025-03-24 09:00:27 -07:00
Kaz Wolfe
e84654005e
fix: Force devs to choose between ValueClamped and ValueUnclamped 2025-03-23 18:28:07 -07:00
goat
1676522ea8
clamp value of all easings by default
(cherry picked from commit 1aada98393)
2025-03-23 18:15:29 -07:00
KazWolfe
a2124bb73d fix: Attempt to better handle hook disposal (#1803)
- Use a Weak Concurrent Collection to track scoped hooks
- Make `Hook`s remove themselves from the Tracked Hook list.
2025-03-13 22:42:09 +01:00
KazWolfe
577977350f
fix: Attempt to better handle hook disposal (#1803)
- Use a Weak Concurrent Collection to track scoped hooks
- Make `Hook`s remove themselves from the Tracked Hook list.
2025-03-13 22:16:28 +01:00
Cytraen
e6017f96c0
fix: only enable ImGui asserts when adding a valid dev plugin path (#2185) 2025-03-01 14:39:13 +01:00
Cytraen
3a9dc48c11
fix: trim quotes from dev plugin before validation (#2186) 2025-03-01 14:38:14 +01:00
nil
cd03ef7d02
fix: always scan for dev plugins when opening the plugin installer (#2184)
* fix: scan for dev plugins on plugin installer window open

* fix: show scan dev plugins button based on plugin locations and not installed plugins
2025-03-01 01:37:58 +00:00
goaaats
dd47147538 Installer: if main-repo cross update is available, adjust warning message 2025-02-27 21:38:12 +01:00
srkizer
d932f2f06e
fix: apply scale to TSM entry (#2169) 2025-01-10 17:52:54 +01:00
Haselnussbomber
f2c132c7d8
Allow setting a DisplayOrder on commands (#2162)
* Allow setting a DisplayOrder on commands

* Linq on demand

* Sort commands in /help alphabetically

* note default in xmldoc

---------

Co-authored-by: goat <16760685+goaaats@users.noreply.github.com>
2025-01-09 21:15:14 +00:00
goat
35b49823e5 WindowSystem: fix clickthrough option not applying to child windows, persist options
Persistence is pretty WIP. I want to offer multiple presets in the future, and save more things like window positions.
2024-12-30 21:14:08 +01:00
goat
b36bdb2086 Revert "clamp value of all easings by default"
This reverts commit 1aada98393.
Breaks the API.
2024-12-30 13:59:59 +01:00
goat
0cac90b032 plugin installer: only allow feedback for non-outdated plugins 2024-12-29 19:01:49 +01:00
goat
1aada98393 clamp value of all easings by default 2024-12-29 16:53:16 +01:00
goat
2e77e90532 title screen menu: some visual fixes
Use SeStringRenderer to render menu entries
Clamp alpha values to avoid flickering
2024-12-29 13:49:31 +01:00
goat
c79b1cd83a config: save asynchronously to prevent hitches 2024-12-29 13:17:03 +01:00
goat
01980c3133 plugin installer: add linebreak after ban reason 2024-12-29 12:42:43 +01:00
goat
10f4009a0c don't implicitly depend on DataManager in data widget load functions 2024-12-26 17:17:04 +01:00
goat
2e2feb144f fix some warnings 2024-12-26 14:11:14 +01:00
goat
8b06ae3f00 add ImGui assert options to experimental tab 2024-12-25 17:04:35 +01:00
goat
12bf2f4478 replace nonfunctional managed asserts with proper imgui-handled assert mechanism 2024-12-25 12:47:38 +01:00
goat
8276c19c6f add plugin enable/disable/toggle commands 2024-12-23 21:00:02 +01:00
goat
8572ed8b1e ProfileCommandHandler -> PluginManagementCommandHandler 2024-12-23 17:05:35 +01:00
Infi
2e6cb6ef00
- Add chat notification back to AutoUpdate (#2146)
- ImRaii UI elements in AutoUpdate tab
- Fix scoping in IconButton
2024-12-19 22:19:50 +01:00
srkizer
70af62885b
chore: remove [Experimental] from SeStringRenderer (#2144)
It hasn't caused problem for a while (though performance probably can be
better), and looks good enough to remove this attribute.
2024-12-17 07:31:44 -08:00
Haselnussbomber
da718b64c1
Use MiniGame BGM scene for About tab 2024-11-30 19:59:42 +01:00
srkizer
db4b6cea2c
Avoid re-creating title version string every frame (#2117)
* Avoid re-creating title version string every frame

* Marked title version string that it has been changed by Dalamud by
  appending a newline payload with a string expression embedded within,
  which the game will ignore (effectively `<br(!Dalamud!)>`.)
* Added `PluginManager.LoadedPluginCount` which will count the number of
  loaded plugin without making a copy of the plugin list.
* Made TitleScreenMenuWindow.OnVersionStringDraw` update the title
  version text addon only if number of loaded plugin changes or the text
  is missing the custom suffix from the first point.

* Use OriginalTextPointer to determine if SetText(ROS) has been called
2024-11-25 17:09:43 -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
Haselnussbomber
52e8fca7f1
Add InventoryWidget (#2097)
* Add InventoryWidget

* Update InventoryWidget

- Use GameInventoryItem.GetReadOnlySpanOfInventory
- Display Stains
- Display Materia

* Display CrafterContentId in InventoryWidget

* Fix display of HQ items in InventoryWidget

Also removes the Base ItemId, because Dalamud doesn't apply flags.

* Make columns Itemid and Quantity copyable
2024-11-16 17:50:58 -08:00
nebel
abcb99d4ec
Add support for boxed outlined numbers in SeIconChar (#2088) 2024-11-16 00:34:49 +00:00
Kaz Wolfe
d7abf9fe0d
Fix Fate aging step; report Tuliyollal taxes
- FATE table test needs a zone with FATEs in it.
- Use a `byte` rather than an `int` so we don't overflow like crazy.
2024-11-14 23:27:46 -08:00
Kaz Wolfe
fd6d52d33b
Extend IconBrowserWidget range
Resolves #2074.

Co-authored-by: ItsBexy <103910869+itsbexy@users.noreply.github.com>
2024-11-12 20:24:20 -08:00
Kaz Wolfe
10fc7656d3
bump cs, ts name fix 2024-11-12 10:26:21 -08:00
Julian
57cc2f36f9
feat: Encourage developers to use DLLs for devPlugins (#1958)
* Add file dialog to add a dev plugin
* Require dev plugins to be paths to the DLL
* Only allow .dlls in the dev plugin setting entry
* Update dev plugin location hint
* update wording

---------

Co-authored-by: KazWolfe <KazWolfe@users.noreply.github.com>
2024-11-12 08:27:23 -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
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
wolfcomp
30d56e4d11
fix all warnings and breaking changes for CS (#2061) 2024-11-04 21:14:51 -08:00