Chris Robinson
274f3c7b77
Force character state to update after switching view modes
2013-04-25 07:08:11 -07:00
Chris Robinson
e4eb4b7e30
Keep track of the character looping state
2013-04-25 06:29:17 -07:00
Chris Robinson
9da2c9153e
Don't store the animation group string in the character controller
2013-04-25 06:12:37 -07:00
Chris Robinson
2769adcee0
Implement switching to and from first-person animations
...
Note that the current animation gets interrupted, so switching to first person
may break movement until you stop and try to move again. This can be fixed by
alerting the character controller in the mechanics manager to force a state
update when switching POV.
2013-04-25 05:23:05 -07:00
Chris Robinson
9a2a32f2a5
Add a method to clear all Animation sources except the first
...
The first needs to remain, since that's where any mSkelBase entity comes from,
and where any retrieved nodes are from.
2013-04-25 05:02:11 -07:00
Chris Robinson
9be20b90f1
Fix potential infinite loop when layer 0 is empty
2013-04-25 03:35:40 -07:00
Chris Robinson
76c8e81908
Merge remote-tracking branch 'zini/master' into nifogre
2013-04-25 01:35:21 -07:00
Marc Zinnschlag
247a76766d
fixed a typo in a doxygen comment
2013-04-25 10:27:43 +02:00
Marc Zinnschlag
71fc8f5830
Merge remote-tracking branch 'scrawl/item' into next
2013-04-25 10:21:14 +02:00
Chris Robinson
86fda1bff6
Only set mSkelBase from the first objectlist
2013-04-25 00:52:26 -07:00
Chris Robinson
7eac37be23
Make sure the old layer is cleared before starting the next
2013-04-25 00:18:02 -07:00
Chris Robinson
09fc50948b
Add methods to disable and get info for a layer
2013-04-25 00:08:16 -07:00
Chris Robinson
24f1eba902
Keep track of whether an animation supplies movement
...
Also handle it when it doesn't.
2013-04-24 22:45:43 -07:00
scrawl
9e3917881d
Don't fail on nonexistent items in a levelled list
2013-04-25 04:44:30 +02:00
Chris Robinson
0817d59f23
Allow specifying where to start in an animation
2013-04-24 19:09:36 -07:00
scrawl
933f894148
Added Blind and Night Eye effects
2013-04-25 02:31:51 +02:00
scrawl
baa7a9160c
Rank condition should always fail if NPC is not in a faction
2013-04-25 02:31:39 +02:00
scrawl
a7092ef2d7
Fix activation not working sometimes
...
The current player cell was only being updated when the reference was not empty, causing it
to incorrectly detect a cell change the first time something was activated in a newly visited cell, immediately closing the opened dialogue again.
2013-04-25 02:31:39 +02:00
Nathan Jeffords
2dc01fe56b
fixed the type of iterator uses in MWWorld::Store
...
The containers type used to declare some iterators was not an exact match for the type of the container the iterator was being initialized from. This was causing build failure on windows.
2013-04-25 02:31:39 +02:00
scrawl
51580ead4f
Fix consecutive dialogue choices
2013-04-25 02:31:39 +02:00
Marc Zinnschlag
87ce2110dc
hotfix for CharacterPreview destructor
2013-04-25 02:31:38 +02:00
scrawl
cd57e3f896
Auto calculate attributes if there are not specified in the NPC record
2013-04-25 02:31:38 +02:00
Chris Robinson
333354fe62
Remove the character controller from the Animation class
2013-04-24 07:10:41 -07:00
Chris Robinson
b80891099e
Don't use the character controller to handle text keys
...
The Animation class has the Ptr and can call to whatever subsystem is needed.
2013-04-24 06:48:34 -07:00
Chris Robinson
e8cabc9434
Pass the loop count from loopgroup to the play method
...
Instead of queueing each iteration separately.
2013-04-24 06:32:11 -07:00
Chris Robinson
b482d5be09
Add a method to check if a given layer is playing
2013-04-24 05:23:45 -07:00
Chris Robinson
c58dfbe921
Specify the loop count to Animation::play
2013-04-24 04:56:39 -07:00
Chris Robinson
7241267d5c
Make an AnimationValue for each animation layer
2013-04-24 04:41:52 -07:00
Chris Robinson
102b3bdef9
Update position by reference
2013-04-24 01:57:51 -07:00
Chris Robinson
9e05ee53da
Avoid looking for the controller if there is no NonAccum node
...
Also, make sure there is a controller before updating the position.
2013-04-24 01:18:08 -07:00
Chris Robinson
544011e096
Fix 'start' text key fallback lookup
2013-04-24 00:40:58 -07:00
Chris Robinson
7e2995bc2f
Fix setting up active controllers
2013-04-23 19:43:26 -07:00
Chris Robinson
6a67a5e650
Merge remote-tracking branch 'zini/next' into nifogre
2013-04-23 16:57:48 -07:00
Chris Robinson
8c9e2e0ee9
Improve handling of reaching the stop animation text key
2013-04-23 05:34:08 -07:00
Chris Robinson
c4806f01f8
Use a separate list of controllers to update
...
This should make it easier to figure out what controllers need to be updated
for various animation sources and layers.
2013-04-23 04:08:09 -07:00
greye
cfccf0981d
update IndexedStore::setUp() for multiple datafile support
2013-04-23 14:36:38 +04:00
Chris Robinson
e4c5aac966
Keep track of the animation layers a given object list is animating on
...
This only tracks layers they explicitly animate on. They may animate on other
layers as well, if nothing else is animating on them.
2013-04-23 02:48:11 -07:00
Chris Robinson
e378176937
Don't update controllers that have already been updated
2013-04-23 00:15:31 -07:00
Chris Robinson
8782ae6976
Separate some Animation fields into a separate AnimLayer class
2013-04-22 23:52:28 -07:00
Chris Robinson
c3ce49798a
Fix animation velocity calculation
2013-04-22 21:34:39 -07:00
Chris Robinson
7279e015e9
Search the textkeys to check if an animation group exists
2013-04-22 20:59:55 -07:00
Chris Robinson
a2fc43c7df
Use reset to check that the animation exists and has the right markers
2013-04-22 20:41:54 -07:00
Chris Robinson
507d72ede5
Merge remote-tracking branch 'zini/master' into nifogre
2013-04-22 18:44:28 -07:00
Chris Robinson
bb64efc18e
Improve looping behavior
2013-04-22 05:08:52 -07:00
Chris Robinson
cc70c6263b
Use the NodeTargetValue for the NonAccum root
2013-04-22 04:10:46 -07:00
Chris Robinson
9485a4aa6d
Look through the whole animation stack to find the "velocity"
2013-04-22 01:40:41 -07:00
Marc Zinnschlag
29cb076113
Merge remote-tracking branch 'scrawl/rank'
2013-04-22 09:52:28 +02:00
Marc Zinnschlag
3fa35af796
Merge remote-tracking branch 'scrawl/master'
2013-04-22 09:52:24 +02:00
Chris Robinson
a7776e124c
Only set mNonAccumRoot from mSkelBase
2013-04-22 00:22:31 -07:00
Chris Robinson
a3511c62cf
Don't store textkeys in user object bindings
...
It's a bit unwieldy to have them stored in the 'skeleton master' instead
of the skeleton instance. And although the text keys are extracted for
each created instance now, this shouldn't be much worse than the
multimap copying going on before.
Plus, proper serialization can help for future optimizations.
2013-04-22 00:01:30 -07:00