Commit Graph

4075 Commits

Author SHA1 Message Date
Sam
99f6312e59 Sword AI structure 2023-03-21 20:03:17 -04:00
Sam
7365fcb530 Rolls cancel recover at the cost of additional energy, sitting ends active stances. 2023-03-21 20:03:15 -04:00
Sam
39b30b3458 Decontextualized some sword abilities, added UI for sword skill tree. 2023-03-21 19:59:05 -04:00
Sam
27463758e5 Finisher abilities 2023-03-21 19:59:03 -04:00
Sam
86dfa34ec9 Cleaving stance required abilities 2023-03-21 19:59:00 -04:00
Sam
fed96b2e15 Crippling stance required abilities 2023-03-21 19:58:13 -04:00
Sam
c3026d388a Defensive stance required abilities 2023-03-21 19:58:11 -04:00
Sam
a3d655970e Heavy stance required abilities 2023-03-21 19:56:32 -04:00
Sam
e0a7449a99 Crescent slash 2023-03-21 19:39:40 -04:00
Sam
fce9211d49 Secondaries for all stances 2023-03-21 19:39:39 -04:00
Sam
596fe715b8 Cleaving stance skill abilities. 2023-03-21 19:39:39 -04:00
Sam
c23139d501 Agile stance skill abilities. 2023-03-21 19:39:37 -04:00
Sam
ed0de15a5a Heavy stance skill abilities. 2023-03-21 19:39:35 -04:00
Sam
57806d7be9 Sword M1 abilities 2023-03-21 19:39:22 -04:00
Sam
61f0b424b9 Old sword mostly torn out, new sword framework in place 2023-03-21 19:39:22 -04:00
Sam
5f126bb5c6 Queued inputs are now culled after a period of time if they are not actively held 2023-03-21 19:39:19 -04:00
Sam
7ec9a7677f Stances change secondary abilities now. Contextual abilities try to fallback to no context if skill not owned for contextual ability. 2023-03-21 19:38:18 -04:00
Sam
b376228d45 Primary and secondary abilities can now be contextual. BasicStance character state added. 2023-03-21 19:38:15 -04:00
Sam
9875008efa Added stance component that persists even after sheathing weapon (does not yet work with M1 replacement). 2023-03-21 19:29:34 -04:00
Sam
d0a46ed82b Inputs now remain queued even when the input is released, until the input is used. 2023-03-21 19:26:06 -04:00
Imbris
61cb0ad39b Merge branch 'imbris/small-tweaks' into 'master'
Various small tweaks / fixes

Closes #1475

See merge request veloren/veloren!3817
2023-03-18 00:52:20 +00:00
Imbris
9e212935e5 Merge branch 'imbris/time-local-event-handling' into 'master'
Add metrics for timing subsections of State::tick

See merge request veloren/veloren!3825
2023-03-14 14:52:57 +00:00
Imbris
87bf44241b Add metrics for timing subsections of State::tick 2023-03-14 01:03:05 -04:00
Ben Wallis
45c8934b79 Merge branch 'xvar/queue-char-deletes' into 'master'
Changed character deletion to go via batch update

See merge request veloren/veloren!3562
2023-03-12 23:21:54 +00:00
Ben Wallis
6eedc02286 Changed character deletion to go via batch update 2023-03-12 23:21:53 +00:00
Samuel Keiffer
8febcf6b3d Merge branch 'sam/buffs' into 'master'
Auras and buffs no longer need to tick every tick

See merge request veloren/veloren!3814
2023-03-12 22:06:48 +00:00
Sam
42388976d7 Fixed issue with max health change over time buff being reset if re-applied. Addressed review comments. 2023-03-12 16:37:02 -04:00
flo
704af5ef7b bird_medium_scale 2023-03-12 18:08:21 +00:00
Imbris
6b8e22d6cc Improvements and fixes for interacting/collecting
* Inert entities like arrows no longer block interactions like picking
  up items! Logic looking for the closest entity will skip them.
* When pickaxe is not equipped and wielded we now show "Needs Pickaxe"
  as the hint text for mineable blocks.
* Mineable blocks that aren't pointed at now show the mining text hint
  instead of the text hint used for regular collectible blocks.
* Fixed recent bug where all interactables were showing the open text hint.
* Split `BlockInteraction` out of the `Interaction` enum in voxygen
  since we were using this enum for two different things.
2023-03-11 21:17:27 -05:00
Sam
4c79936c07 Added wrapper type to durations related to buffs and auras. 2023-03-11 16:47:11 -05:00
Sam
663db06844 Made auras no longer need to be mutably accessed every tick. 2023-03-11 16:45:12 -05:00
Sam
8a6a60d5bb Buffs from auras no longer need to be mutably accessed every tick in aura system to prevent applying a buff every tick and ensure duration only starts after leaving aura 2023-03-11 16:45:12 -05:00
Sam
9efac9957d Changed buff effects so they did not need to mutably change buffs every tick. Buff system now no longer mutably accesses buffs component. 2023-03-11 16:45:11 -05:00
Sam
b1b41e95f6 Queueable buffs now work with buffs without using a timer, tests too 2023-03-11 16:45:11 -05:00
Sam
e60080c293 Syncing Time from server to client now works 2023-03-11 16:45:10 -05:00
Sam
89aa934c3c Initial work 2023-03-11 16:45:10 -05:00
Imbris
19b5ed3487 Appease clippy 2023-03-11 11:06:08 -05:00
Imbris
619f62cb63 Use try_set for door destruction to avoid accidentally overwriting any
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).
2023-03-11 10:24:45 -05:00
Imbris
2d66145620 Add some documentation to pos_key/key_pos/pos_chunk methods which are easy to mix up 2023-03-11 10:24:45 -05:00
Imbris
0d8aa16d89 Avoid duplicate searches in the inventory for required items when
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)
2023-03-11 10:24:30 -05:00
Imbris
93eab4791d Remove ComponentKey TODO in Inventory::get_slot_of_item since item_definition_id contains component IDs! 2023-03-11 10:23:16 -05:00
Imbris
349d1726a6 Only emit SpriteUnlocked outcome if the sprite interaction kind is Unlock. Also rustfmt decided to make a bunch of changes. 2023-03-11 10:23:14 -05:00
Imbris
fe38b9b92b Add documentation to bool field 2023-03-11 10:21:39 -05:00
Imbris
b644ff7668 fmt 2023-03-11 08:06:46 -05:00
Imbris
e8a5de4e65 Switch from custom macro for grouping cfgs to cfg_if since rustfmt can't see through macros but is hardcoded to parse cfg_if and follow the module names inside it. 2023-03-11 08:06:46 -05:00
Monty Marz
277a402781 Initial quest window work, spot fixes 2023-03-10 22:16:26 +00:00
Marcel
9396fa9741 Merge branch 'Thegaming_Life/replacing_all_map2_with_RECT_SIZE_with_cpos_to_wpos_and_wpos_to_cpos' into 'master'
replaced CHUNK_SIZE by RECT_SIZE everywhere, and change the use (and remove...

See merge request veloren/veloren!3807
2023-03-06 21:03:35 +00:00
Thegaming Life
5ddc55be52 replaced CHUNK_SIZE by RECT_SIZE everywhere, and change the use (and remove... 2023-03-06 21:03:35 +00:00
Monty Marz
9a025cfcc8 More spot features 2023-03-03 23:21:37 +00:00
Thegaming Life
acbb7ccba9 Changed the chunk size to constant 2023-02-28 10:00:53 +00:00