Conversation
…ilable, upgrades charge up front and refund on refusal
…an upgrade syncs in on a client that does not own the table
Author
… gold tokens get a gold-rimmed circle
… first row is focused again once a list refills
…ce and identify tab
…the abandon dialog shows A and B glyphs and hides the row tooltip, and Y no longer closes the gamble result
…e the map is zoomed in to the default level or closer
…ng Drop only rolls on axes instead of also on crossbows
…quipped and hotbar items first
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Changes to the enchanting table, the merchant panel's gamepad controls, the bounty map pins, inventory tooltips on a gamepad and two loot config rules.
Set item marker
Set items carry a rune marker in the inventory grid, but the enchanting table showed them with nothing to tell them apart. This puts the same marker on item icons in the table.
MultiSelectItemListElement, so one call there covers the whole table (list rows and grid cells).Set Item Coloras the inventory, including the Auga sprite, and the same items: magic set pieces and vanilla sets.SetItem, empty rows included.The inventory marker itself is unchanged.
Messages when an action cannot go through
With an inventory provider registered (a craft-from-containers mod), an item or the materials a tab is showing can stop being reachable while the tab is open: another player opens the chest, or takes the item out of it. The table already refused to pay out for something it could not take, but it did so silently, so the button just did nothing.
InventoryManagement.RemoveItemreturns how many it removed instead ofvoid, asRemoveExactItemalready does.Two new strings in
English.json:mod_epicloot_item_unavailableandmod_epicloot_upgradefailedmessage.Known gap: if the response to an upgrade request never arrives (the table's owner disconnects mid-request), the materials stay spent.
Upgrade tab refresh on a client that does not own the table
After an upgrade, the upgrade tab kept showing the cost of the level that had just been bought until the table was closed and reopened. Only the table's owner writes the new level and raises the level changed events. Any other client refreshed on the success response, which arrives before the ZDO sync that carries the new level, and nothing refreshed again when the sync landed.
EnchantingTablenow keeps the last feature levels it saw and re-reads them whenever the ZDO's data revision moves, raisingOnFeatureLevelChangedandOnAnyFeatureLevelChangedfor any that changed.Disenchant tab no longer lists unidentified items
An unidentified item is magic, so it passed the disenchant check and showed up in the disenchant tab. Unidentified items are now excluded there.
Equipped sort on the augment tab
The augment tab's sort dropdown has a fourth option, Equipped, that lists equipped and hotbar items first. Within each group the items are ordered by rarity, then by name.
MultiSelectItemList.SortModegainsEquipped, sorted byEnchantingUIController.SortByEquipped.AddEquippedSortMode, whichAugmentUIcalls inAwake, so the prefab is untouched and the other tabs keep their three options.SortMode, so the option is only added when the prefab's dropdown has exactly the three existing options before it.One new string in
English.json:mod_epicloot_enchanting_equipped.Gamepad focus when every list is empty
When every list on a tab was empty, the focus controller took focus away from each list in turn and nothing got it back once a list refilled, so the gamepad had no row selected until the tab was reopened.
Right stick scrolls the products list
On the sacrifice and identify tab the products list had no gamepad scrolling, so a long list of products could not be read with a controller.
GamepadScroll.ApplyRightStickYhas aScrollRectoverload next to theScrollbarone. It scrolls by pixels per second, so the speed does not depend on the list's length or the frame rate.MultiSelectItemList.ScrollWithRightStickexposes it, andSacrificeUIcalls it on the products list.Right stick scrolls inventory item tooltips
A long item tooltip could only be scrolled with the mouse wheel, so on a controller the bottom of it could not be read.
ScrollWheelHandlernow also applies the right stick to the tooltip's scroll rect while a gamepad is active, through the sameGamepadScroll.ApplyRightStickYoverload as the products list.InventoryGrid, so tooltips anywhere else are unaffected. The check is cached per tooltip owner.Merchant panel gamepad buttons
StoreGui.Updateis what closes the store under it. That update was skipped while a dialog was open, so the store stayed up behind the inventory. It now runs whenever the inventory is visible.Bounty map pins
MinimapController.CreateBountyPinInfo.Loot config
RestrictedItemsinloottables.json, by item name and by prefab name, next to the other tankards.No prefab or bundle changes.
Testing
The set marker was checked in game on the enchanting table.
The upgrade tab refresh on a client that does not own the table builds, but has not been checked in game yet.
The messages were tested with two clients on one server, both on this build with a craft-from-containers mod registered as an inventory provider. Player A is at the table with linked chests in range; player B is at the chest. A does not switch tabs or reselect after B acts.
Item gone (A selects the chest item, B takes it or leaves the chest open, A presses the button)
Materials gone (A carries the item, the materials are only in the chest; A selects, B opens the chest, A presses)
Upgrade tab
Regression, single player