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
Emanuel Guevel
43e85ea0c6
Disallow redirection to info refusal for greetings
2013-01-20 17:44:09 +01:00
Emanuel Guevel
05796d85a4
NPC: take stats from NPDT12 into account
...
Some available stats (level, reputation and disposition) were not used
for NPC with auto-calculated stats.
2013-01-20 17:44:08 +01:00
Emanuel Guevel
951eb1b236
Dialogue: return a response from "Info Refusal" when disposition is not satisfied
2013-01-20 17:44:08 +01:00
Tom Mason
23dada0ee4
moved script handling on enable / disable into their own functions
2013-01-20 16:38:56 +00:00
Tom Mason
28c580d280
disabling and enabling containers causes scripts on contents to be disabled and enabled accordingly
2013-01-20 15:43:52 +00:00
Tom Mason
abe25c5f66
removed use of c++11 auto
2013-01-20 14:24:55 +00:00
Tom Mason
665a530e10
renamed realAdd to addImp
2013-01-20 14:14:34 +00:00
Tom Mason
3c6ddd7fa7
fixed isInCell method
2013-01-20 14:10:04 +00:00
Chris Robinson
85ca1e993f
Properly check if an animation exists before playing it
2013-01-19 21:55:04 -08:00
Nathan Jeffords
f55da17933
made some journal accessor methods constant
2013-01-19 16:21:41 -08:00
Nathan Jeffords
4c7ae3d1ff
prevent duplicate journal entries from being recorded
2013-01-19 16:21:15 -08:00
Nathan Jeffords
528c3da6da
record heard topics in journal
2013-01-19 16:20:22 -08:00
Chris Robinson
68779375b2
Implement WalkLeft and WalkRight character states
2013-01-19 16:19:47 -08:00
Nathan Jeffords
d6b956cdcf
fixed swapped day & month fields when created a stamped journal entry
2013-01-19 16:19:03 -08:00
Chris Robinson
a7b07ee5cf
Don't reset the animation when setting the same state
...
Unless looping is being toggled on.
2013-01-19 15:46:22 -08:00
Chris Robinson
e0541b52c4
Use a list to store and get state information
2013-01-19 14:56:24 -08:00
Mark Siewert
a8e02779b2
- Add support for multiple plugins trying to modify the same reference
...
- Fix a small signed/unsigned warning
2013-01-19 23:33:18 +01:00