other changes that already occured that tick.
Also get terrain/block change resources from the ecs once to avoid the
overhead of fetching them from the ecs (and aquiring/releasing runtime
borrow).
interacting with sprites and rustfmt decides to format a bunch of
stuff...
* Add PartialEq impls between ItemDefinitionId<'_> and
ItemDefinitionIdOwned.
* Remove unused Serialize and Deserialize derives from
ItemDefinitionId<'_>
* Add Inventory::get_slot_of_item_by_def_id which acts like
Inventory::get_slot_of_item but accepts a ItemDefinitionIdOwned
reference instead of an Item reference.
* Add some TODOs for some potential optimizations
* Rustfmt decided now was the time to format some random stuff I didn't
touch. Maybe I fixed something it was getting stuck on???? But some
files I didn't make any changes (although might have inadvertantly saved
them when viewing in editor (with fmt on save)).
* InvSlotId passed to SpriteInteract character state instead of
refinding the item in the inventory (if it moved we simply give up on
the state as if the requirements weren't met). (overall in this change
3 searches for the item in the inventory are reduced to a single one)
Allow the camera's zoom to be locked by a keybind
or a Gameplay setting. The zoom lock
behavior can be changed between Toggle
and Auto, where Auto only locks the camera
zoom while specific movement/combat inputs
are being pressed. (closes!1528)
A temporary fading notification is shown at the
top of the screen, informing the player of
the setting change (when the keybind is
used) or that the zoom is locked (when
the player might have forgotten the zoom
is locked, and is trying to zoom).
i18n strings are added for English and German,
but no other languages.
To implement the simplistic fading text, the
behavior was extracted into an impl
called `ChangeNotification`, where
reasons are quantified by `NotificationReason`.
The infinite climb bug should be fixed by !3792
(Refactor energy and poise regen), so we
can safely remove the need for the
character to have at least 10 energy to
climb.
The minimum energy needed to start climbing is
now 1 energy.
This was suggested by James M#8698.