Chris Robinson
535cd8360f
Load extra animations for NPCs
2013-02-05 18:09:43 -08:00
Chris Robinson
8b1e7b95ba
Attempt to load the skeleton source if it doesn't yet exist
2013-02-05 17:55:12 -08:00
Chris Robinson
c839502743
Setup base_anim.nif as an initial skeleton source for biped creatures
2013-02-05 17:16:45 -08:00
Chris Robinson
054ef3113a
Check existing skeleton sources if the current one has no animation root
2013-02-05 17:15:40 -08:00
Chris Robinson
16933e3926
Scale the accumulation root translation
2013-02-05 16:59:20 -08:00
Chris Robinson
600fe06f00
Use a vector of skeletons to handle animation sources
2013-02-05 16:29:51 -08:00
Chris Robinson
e217a3d25c
Silence some console spam
2013-02-05 15:51:26 -08:00
Emanuel Guevel
a4f051e85a
Fix game files import
2013-02-06 00:51:05 +01:00
Emanuel Guevel
6e3c016351
Add archives to settings imported by mwiniimporter
...
Add Morrowind.bsa by default.
2013-02-06 00:51:05 +01:00
Chris Robinson
ee3764e9b3
Increase max slope to 60. 45 is too low.
2013-02-05 15:07:48 -08:00
Chris Robinson
8c0bb1ff4d
Rotate movement in the movement solver
2013-02-05 14:02:14 -08:00
Michal Sciubidlo
347a734364
Move OpenDialog to editor and use it in startup dialogue.
...
Remove debug output from DataFilesList.
2013-02-05 22:06:36 +01:00
Chris Robinson
f7f1adfb9d
Don't accumulate animations with activators
2013-02-05 12:55:06 -08:00
Chris Robinson
2c39760bd5
Move the movement solver code to mwworld's physics system
2013-02-05 12:45:10 -08:00
Michal Sciubidlo
f7e5ea24f4
Merge branch 'startup' into cs_load.
...
Fix include in textinputdialog.cpp.
2013-02-05 21:23:49 +01:00
Chris Robinson
0a4568bd11
Move the PtrMovementList typedef to MWWorld
...
Use it for the doPhysics parameter, too
2013-02-05 11:03:39 -08:00
Chris Robinson
2cdda96798
Clear out some unneeded doPhysics stuff
2013-02-05 10:23:26 -08:00
Chris Robinson
3251796ba0
Fix left/right movement
2013-02-05 09:57:08 -08:00
Chris Robinson
d50832081c
Remove the unneeded PhysicActor field from MovementSolver
2013-02-05 09:37:02 -08:00
Chris Robinson
a782a9109b
Store the vertical velocity in the physic actor
2013-02-05 09:24:22 -08:00
Chris Robinson
82e4da4e64
Get the half-extents from the physicactor
2013-02-05 07:41:57 -08:00
Chris Robinson
1c604445ba
Store movement vectors as they get returned
2013-02-05 06:59:01 -08:00
Chris Robinson
4bd1e63ac1
Merge remote-tracking branch 'zini/master' into animation2
...
Conflicts:
apps/openmw/mwworld/worldimp.cpp
2013-02-05 03:26:46 -08:00
Marc Zinnschlag
c409f1184e
cleaned up object movement and fixed a bug regarding local scripts
2013-02-05 12:19:06 +01:00
Chris Robinson
786cb6e928
Merge remote-tracking branch 'zini/master' into animation2
2013-02-05 02:57:02 -08:00
Marc Zinnschlag
86fb3574a0
Merge remote-tracking branch 'wheybags/master' into next
2013-02-05 11:55:47 +01:00
Chris Robinson
bd4fdf47a3
Merge remote-tracking branch 'zini/master' into animation2
...
Conflicts:
apps/openmw/mwrender/sky.cpp
2013-02-05 02:27:57 -08:00
scrawl
09180666b2
Merge branch 'master' of git://github.com/zinnschlag/openmw into terrainfix
2013-02-05 00:21:42 +01:00
scrawl
58cf182db2
better place for syncing
2013-02-05 00:21:29 +01:00
scrawl
596628d339
Fix terrain derived data update (bug 534, bug 544)
2013-02-04 23:13:01 +01:00
Chris Robinson
5ee298cdc1
Make sure the player updates last
2013-02-04 14:08:38 -08:00
Michal Sciubidlo
66ec4ca7d9
Split launcher specific code from DataFilesList back to DataFilesPage.
2013-02-04 22:14:14 +01:00
Chris Robinson
2f8affc955
Make sure the player's controller is properly updated when they change
2013-02-04 12:58:06 -08:00
Chris Robinson
ee9b19d2ed
Make sure to remove a Ptr from the activators when requested
2013-02-04 12:04:06 -08:00
Chris Robinson
39cf7b0b42
Pass the Ptr of the object being moved to the move method
...
This prevents having to store another copy of it, which risks getting out of
sync.
2013-02-04 11:17:48 -08:00
Chris Robinson
1a5cb8760d
Rotate movement vector to world space before passing to the movement solver
2013-02-04 11:04:20 -08:00
Chris Robinson
6b32fa7999
Use the correct position for the actor
2013-02-04 09:48:21 -08:00
scrawl
bf037b7d29
Removed problematic ModVertexAlpha method, now done in shader
2013-02-04 18:03:03 +01:00
Chris Robinson
1747c1e01a
Integrate a new movement solver to handle object movement and collisions
...
Temporary, and pretty breoken. Needs some serious integration fixes.
2013-02-04 07:10:14 -08:00
Marc Zinnschlag
ba0d13fc12
moved code for creating new base content records into the Document class
2013-02-04 13:50:38 +01:00
Marc Zinnschlag
4c973a0f67
constructing documents from a file list instead of a single name
2013-02-04 13:46:54 +01:00
Marc Zinnschlag
3f0a49a2f6
Merge branch 'master' into startup
...
Conflicts:
apps/opencs/CMakeLists.txt
2013-02-04 10:22:37 +01:00
Chris Robinson
91513206a0
Don't use per-animation accumulation values
...
This breaks walking diagonally and "jumping" (which technically wasn't jumping
anyway).
2013-02-03 12:02:51 -08:00
Chris Robinson
51d5efeeb2
Work out the state in the character controller update method
2013-02-03 07:15:34 -08:00
Mark Siewert
3e43db5f76
Merge remote-tracking branch 'upstream/master' into multiple_esm_esp
2013-02-03 16:14:41 +01:00
Tom Mason
ac112ef972
refactored special variable code
2013-02-03 13:27:27 +00:00
Marc Zinnschlag
c97553703a
fixes for static build without cg
2013-02-03 13:47:55 +01:00
Marc Zinnschlag
a4872e3217
rewrote the opencs cmake scripts (more compact and no more annoying warnings)
2013-02-03 13:30:40 +01:00
Chris Robinson
23acf4b130
Don't break right away when the animation time remaining is 0
2013-02-03 01:38:42 -08:00
Chris Robinson
60a75cb5ee
Make sure to keep the character preview animation updated
2013-02-03 00:54:50 -08:00
Chris Robinson
7fe877d8ea
Add a couple more character states
2013-02-03 00:19:22 -08:00
Chris Robinson
007a5963de
Handle most state changes in the character controller when setting the movement vector
2013-02-02 23:39:43 -08:00
Tom Mason
f785659297
Implemented OnPCAdd special variable
...
Had to edit OpAddItem in miscextensions.cpp, as local variables were not being initialised
for items added through it.
Does not get reset on drop, as per original morrowind.
2013-02-02 17:36:12 +00:00
Michal Sciubidlo
155cca0c9a
Upload missing files.
...
Fix folder name.
Keep Qt optional.
Move open dialogue from doc to tools.
Rename 'load' to 'open'.
Deleted wrong comment.
2013-02-02 18:36:01 +01:00
Marc Zinnschlag
67a1ec5166
added provisional startup dialogue
2013-02-02 16:14:58 +01:00
Chris Robinson
c23a96d606
Run an aniamtion update after "playing" the inventory idle
...
This is so all the NPC parts get updated correctly.
2013-02-02 06:08:03 -08:00
Chris Robinson
fc7590694d
Revert "Revert "Use a child scene node for the accumulation root""
...
This reverts commit 376dfed15b
.
I was wrong. It's needed at least for NPCs since they're attaching multiple
animated skeletons to an object, and they all need to be offset correctly.
Would be nice to use a Node, Bone, or TagPoint instead of a hefty SceneNode,
though.
2013-02-02 05:43:37 -08:00
Marc Zinnschlag
85697e4628
reverted to C++03
2013-02-02 13:24:28 +01:00
Chris Robinson
7f87c1873b
Use an array to store the entity parts
2013-02-02 02:53:22 -08:00
Chris Robinson
376dfed15b
Revert "Use a child scene node for the accumulation root"
...
This reverts commit d6f923f274
.
We don't need it for any of the NIFs we're currently handling. As long as
there's no NIF files that would break it, we should require a stationary root
if an animation wants to accumulate. If we must, a better idea may be to inject
an extra bone into the skeleton instance and make that the accumulation root.
2013-02-01 08:50:32 -08:00
Michal Sciubidlo
492482de7f
Add "open" option in opencs.
2013-02-01 00:42:03 +01:00
Tom Mason
0f58e03343
Unequipping items will reset OnPCEquip variable
2013-01-31 19:04:39 +00:00
Tom Mason
9ad08520fd
Implemented OnPCDrop special variable
...
Scripts are responsible for resetting to 0, as investigation showed that is how vanilla handled it.
2013-01-31 18:45:32 +00:00
Tom Mason
0fc5ee5149
allow OnPCEquip special variable to be of any type
2013-01-31 17:46:16 +00:00
Chris Robinson
d6f923f274
Use a child scene node for the accumulation root
2013-01-30 22:28:18 -08:00
Tom Mason
09f9557ecb
Implemented OnPCEquip special variable
2013-01-31 00:34:16 +00:00
Tom Mason
dc91211b12
Fixed Small bug where scripts were being removed when they shouldn't be.
...
Scripts should only be removed when the item is being moved to another cell, otherwise they should remain active.
2013-01-31 00:21:04 +00:00
Michal Sciubidlo
ac62dd050d
Rename datafilespage to datafileslist
2013-01-30 21:08:27 +01:00
Michal Sciubidlo
f029a9011a
Move datafilespage to shared space.
2013-01-30 20:21:03 +01:00
Chris Robinson
b6354c6282
Don't share skeleton instances between bounded parts on an NPC
...
However, a skeleton instance will still be shared between entities in an entity
list.
2013-01-30 09:29:16 -08:00
Chris Robinson
5c3a7f7d52
Avoid handling animation states
...
We don't need them anymore
2013-01-30 07:34:07 -08:00
Chris Robinson
360f7bfac8
Apply animations to bones manually
...
Couple reasons for this:
* This paves the way for allowing animations specified in other skeletons to
be applied to the character (NPCs and certain creatures can have multiple
animation sources, but Ogre is incredibly strict when it comes to sharing
animations between skeletons).
* It will allow for entities to be animated based on the character's skeleton,
without having to duplicate the mesh for each skeleton it can be used on.
This doesn't impact Ogre's ability to efficiently deform skinned meshes, nor
does it get in the way of hardware skinning.
2013-01-30 07:04:18 -08:00
Chris Robinson
600d3bf9eb
Make sure the player node's visibility cascades
2013-01-30 02:38:50 -08:00
Chris Robinson
04d4c125ba
Print when an animation event is unhandled
2013-01-29 02:00:42 -08:00
Chris Robinson
d4ddaa3d95
Only register activators that have a MWRender::Animation object
2013-01-29 01:08:52 -08:00
Chris Robinson
99efe4e494
Remove an unnecessary class member
2013-01-29 01:02:55 -08:00
Chris Robinson
879359f39d
Set the animation state loop flag as appropriate
2013-01-29 00:50:52 -08:00
Chris Robinson
92d0c55f32
Add a flag to specify if an animation should be playing
2013-01-29 00:43:42 -08:00
Chris Robinson
fdabef65a1
Use a method to update an object's cell in the mechanics manager
...
This prevents destroying and recreating the object's character controller (and
messing up the current animation) when moving between cells.
2013-01-29 00:19:24 -08:00
Chris Robinson
8d98f3649c
Use a separate class to handle activator mechanics
2013-01-28 23:39:11 -08:00
Chris Robinson
7df4d0d19f
Remove an unnecessary cast
2013-01-28 21:41:51 -08:00
Chris Robinson
7b71b4eb31
Add a missing include
2013-01-27 03:03:48 -08:00
Chris Robinson
0cd3880b20
Merge remote-tracking branch 'zini/master' into animation2
2013-01-26 04:54:52 -08:00
Chris Robinson
b1ffdf855f
Reset the initial state of animated nodes on the skeleton instances
...
This is so the animation specifies node keyframe data based on the node's
parent. This will also be necessary for applying animations from different
skeleton sources, as they can have different binding positions (even native
.skeleton resources will need to specify animation data this way).
2013-01-26 04:48:53 -08:00
Mark Siewert
dca8dc4fdb
Merge remote-tracking branch 'upstream/master' into multiple_esm_esp
...
Conflicts:
apps/openmw/engine.cpp
apps/openmw/mwworld/cellstore.cpp
apps/openmw/mwworld/store.hpp
apps/openmw/mwworld/worldimp.cpp
apps/openmw/mwworld/worldimp.hpp
components/esm/esmreader.hpp
- Quick hack: OMW::Engine::prepareEngine only loads translation data for the first master file.
2013-01-25 18:22:01 +01:00
Emanuel Guevel
19dff822f4
Dialogue: do not filter on disposition for creatures
2013-01-24 19:43:21 +01:00
Emanuel Guevel
ed9a9904b4
Dialogue filter: search script variables case-insensitively
2013-01-24 19:39:31 +01:00
Marc Zinnschlag
90d05858ef
disabling dialogue sub-views for now
2013-01-22 11:50:08 +01:00
Marc Zinnschlag
cd662af634
Merge branch 'globals'
2013-01-22 11:47:24 +01:00
Chris Robinson
05f8b8c283
Specify the text key to reset animations to
2013-01-22 00:31:45 -08:00
Chris Robinson
37fe1bd3f0
Handle looping in the Animation object
2013-01-21 22:51:13 -08:00
Marc Zinnschlag
2756d3ee94
Merge remote-tracking branch 'wheybags/containerscripts'
2013-01-21 23:02:45 +01:00
Tom Mason
f5f3c2e62d
enabling / disabling should not affect scripts
2013-01-21 20:06:08 +00:00
Chris Robinson
e956a1cbc0
Merge SpecialIdle character state into Idle
2013-01-21 03:24:52 -08:00
Chris Robinson
6905bd18ba
Filter out the group name from the text keys
...
It's already in the animation name, and the text keys are animation-specific
anyway.
2013-01-21 02:59:12 -08:00
Chris Robinson
536f8104e6
Do not create an 'all' animation.
2013-01-20 17:24:43 -08:00
Chris Robinson
e1e76bde76
Combine a loop into another where it's used
2013-01-20 15:39:43 -08:00
Mark Siewert
713d324eeb
- Minor code cleanup
2013-01-20 19:07:33 +01:00
Tom Mason
31c71c029d
objects with scripts attached, that are inside containers will behave correctly when the container is moved
2013-01-20 17:01:30 +00:00
Emanuel Guevel
736e471613
Print a fallback text when no topic response is found
2013-01-20 17:44:09 +01:00