1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-02-07 03:40:15 +00:00

243 Commits

Author SHA1 Message Date
Mads Buvik Sandvei
f6a6c278dd More cleanup of scripted animations 2023-12-05 14:13:35 +00:00
Mads Buvik Sandvei
9ebec27daf use const. 2023-11-04 16:18:36 +01:00
Mads Buvik Sandvei
475bb1af65 Move calculating the animation direction into its own function to help simplify update(). Eliminate a pointless epsilon. 2023-11-04 14:34:41 +01:00
Mads Buvik Sandvei
cf5b782c76 More persist -> script language. 2023-10-29 14:53:03 +01:00
Mads Buvik Sandvei
92a5e52407 rename "persisted" animations to "scripted", because that is what they actually are. And begin teaching the animation system to distinguish between a scripted and an unscripted animation. 2023-10-29 14:53:03 +01:00
Mads Buvik Sandvei
354b028072 isMovementAnimationControlled should be private. 2023-10-22 17:23:27 +02:00
Mads Buvik Sandvei
45a2b8042d Derive the value of MovementAnimationControlled instead of storing it. 2023-10-22 17:23:27 +02:00
Alexei Dobrohotov
9723912ee0 Evaluate the attack early for non-biped attacks with no hit key (#7524) 2023-08-11 01:27:55 +03:00
elsid
b4868c6094
Filter evade directions by supported animations
To avoid trying those which will not lead to any actor movement due to absent
animation.
2023-07-22 17:30:40 +02:00
fteppe
125b21de20 Initial commit: In ESM structures, replace the string members that are RefIds to other records, to a new strong type
The strong type is actually just a string underneath, but this will help in the future to have a distinction so it's easier to search and replace when we use an integer ID

Slowly going through all the changes to make, still hundreds of errors

a lot of functions/structures use std::string or stringview to designate an ID. So it takes time

Continues slowly replacing ids. There are technically more and more compilation errors

I have good hope that there is a point where the amount of errors will dramatically go down as all the main functions use the ESM::RefId type

Continue moving forward, changes to the stores

slowly moving along

Starting to see the fruit of those changes.

still many many error, but more and more Irun into a situation where a function is sandwiched between two functions that use the RefId type.

More replacements. Things are starting to get easier

I can see more and more often the issue is that the function is awaiting a RefId, but is given a string
there is less need to go down functions and to fix a long list of them.

Still moving forward, and for the first time error count is going down!

Good pace, not sure about topics though, mId and mName are actually the same thing and are used interchangeably

Cells are back to using string for the name, haven't fixed everything yet. Many other changes

Under the bar of 400 compilation errors.

more good progress <100 compile errors!

More progress

Game settings store can use string for find, it was a bit absurd how every use of it required to create refId from string

some more progress on other fronts

Mostly game settings clean

one error opened a lot of other errors. Down to 18, but more will prbably appear

only link errors left??

Fixed link errors

OpenMW compiles, and launches, with some issues, but still!
2022-12-27 19:15:54 +01:00
Alexei Kotov
9b8399c353 Handle landing in the frame the jump is over (bug #5849) 2022-11-07 19:06:01 +03:00
Alexei Kotov
eadade9dfc Don't process unexpected hit text keys (bug #7042) 2022-10-13 02:07:23 +03:00
Alexei Kotov
961fe59736 Nitpicking in CharacterController::update() 2022-10-08 07:03:04 +03:00
clang-format-bot
ddb0522bbf
Apply clang-format to code base 2022-09-22 21:35:26 +03:00
Evil Eye
534994b42a Use more string_view in the character controller 2022-08-27 13:47:15 +02:00
Evil Eye
42e59878c5 Use string_view in more animation code 2022-08-23 18:25:25 +02:00
elsid
a66c095ec3
Cleanup openmw class and mechanics includes 2022-08-19 15:46:39 +02:00
Alexei Kotov
7f3d2c18e1 Evaluate melee hits on weapon release (bug #5057) 2022-08-13 01:15:42 +03:00
Alexei Kotov
3e34d5e9f2 Rewrite attack animation logic (bug #4127) 2022-08-11 15:55:26 +03:00
Alexei Kotov
ac892f2bfd Clean up updateWeaponState() 2022-08-08 20:45:29 +03:00
Alexei Kotov
e5ef9f1464 Improve upper body character state naming 2022-08-08 19:46:46 +03:00
psi29a
5cd4dbd9a9 Merge branch 'unrestrictedfailure' into 'master'
Spellcasting timing fixes (bug #4227)

Closes #4227

See merge request OpenMW/openmw!2201
2022-07-30 07:35:46 +00:00
Alexei Kotov
8005d3ca25 Rename updateState back into updateWeaponState 2022-07-29 17:22:51 +03:00
Alexei Kotov
a914d7a9b0 Spellcasting timing fixes (bug #4227)
Play spellcasting animation and VFX (but not hand VFX) if spellcasting failed due to insufficient magicka
Apply spellcasting fatigue loss when the spellcasting starts instead of when the spell is applied
2022-07-29 16:24:28 +03:00
Evil Eye
55134d1e31 Use string_view in the CharacterController 2022-07-26 17:23:00 +02:00
Alexei Kotov
2b019864b7 Remove more legacy states 2022-06-14 13:47:16 +03:00
Alexei Kotov
c2ac52c82a Remove dead code 2022-06-14 12:50:30 +03:00
Alexei Kotov
5dfce6205a Reset the idle animation after a movement animation ends
Fix non-biped actor idle reset
2022-06-14 12:50:30 +03:00
Alexei Kotov
1a646374b0 Always reset the idle animation after the landing animation ends 2022-06-14 12:50:30 +03:00
Alexei Kotov
69a1d8ac86 Restart idle instantly only after the hit state ends 2022-06-14 12:50:30 +03:00
Alexei Kotov
253de65d13 Fix knockout animation interruption/looping 2022-06-13 17:53:38 +03:00
Alexei Kotov
b8018024a6 Avoid passing weapon short group to refreshXAnims 2022-06-13 17:53:38 +03:00
Alexei Kotov
0a38c3ab78 Reset current animation states in a consistent way 2022-06-13 17:53:38 +03:00
Alexei Kotov
c2e637d661 Mark setAttackingOrSpell as const 2022-06-12 03:02:23 +03:00
Alexei Kotov
93068d71ea Use std::string_view whenever reasonable in CharacterController
C++ Core Guidelines SL.str.2
2022-06-11 04:54:50 +03:00
Alexei Kotov
97d4206a3d Improve CharacterController const-correctness
C++ Core Guidelines Con. 2
2022-06-11 02:08:43 +03:00
Alexei Kotov
788de7edcb Initialize most of CharacterController in-class
See C++ Core Guidelines C.48
2022-06-11 00:40:14 +03:00
elsid
77c09dff39
Store CharacterController by value in MWMechanics::Actor 2022-05-21 00:41:55 +02:00
elsid
ce3bba0cdc
Use std::list to store mechanics objects
To make the order of elements deterministic. Using memory address based objects
as map key makes order of elements there nondeterministic. Later it can be
replaced with vector when there are no indirect munipulations with container
inside iteration loops.

Change map key to const MWWorld::LiveCellRefBase* to avoid erasing and inserting
elements on MWWorld::Ptr update.

Store CharacterController by value instead of pointer to avoid redundant memory
allocation.
2022-05-20 00:47:10 +02:00
Evil Eye
7bd4971e0c Disallow non-bipedal hand-to-hand refreshes 2022-02-16 21:58:22 +01:00
unknown
5ebcd37da1 Rename method and restore swish sounds 2022-02-05 19:07:44 +01:00
Evil Eye
8752f78fa4 Remove weaponless, non-biped distinction 2022-02-01 21:58:55 +01:00
uramer
c31dedb89c Implement Yaw, Pitch and Use (attack / cast spell) in Lua self.controls 2022-02-01 18:47:20 +00:00
jvoisin
cf11870b1c Sprinkle some references where it makes sense 2021-06-24 00:28:09 +02:00
jvoisin
ee2446d5c4 Trim even more 2021-04-30 20:11:41 +02:00
fredzio
60f66f5e29 Remove never used parameter from CharacterController:update() 2021-01-09 21:28:27 +01:00
Nelsson Huotari
f78a5d795c Separate keyframes logic to provide basis for osgAnimation integration. 2020-11-18 22:48:47 +02:00
Andrei Kortunov
8ca3c3b123 Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
Petr Mikheev
bd6b984022 Smoothing speed in CharacterController 2020-09-22 22:50:44 +02:00
Petr Mikheev
63f828fea8 Bugfix for "turn to movement direction" 2020-06-26 20:04:02 +00:00