scrawl
ed3486e816
Improve const-correctness in writeAdditionalState
2015-12-18 00:19:06 +01:00
scrawl
b48445dea7
Accept a ConstPtr in getScript
2015-12-18 00:12:03 +01:00
scrawl
19d87c78f2
Add CellStore::forEachConst
2015-12-17 23:59:18 +01:00
scrawl
d4eba794c3
Add ConstPtr
2015-12-17 23:34:52 +01:00
scrawl
2fe2f53b02
Set the changed flag in CellStore::search ( Fixes #3089 )
2015-12-17 22:37:41 +01:00
scrawl
04b6571d7d
Fix logic for scripting access of deleted objects
2015-12-17 20:34:50 +01:00
scrawl
e564c26314
Fix deleted objects being accessible in the Cells cache
2015-12-17 20:18:15 +01:00
scrawl
689dea4cb3
Add instant spell effects to the actor's magic effect list
...
Via http://forum.openmw.org/viewtopic.php?f=2&t=3212&start=20#p36208
2015-12-17 19:49:37 +01:00
scrawl
d6bcb7906d
Fix crash in a warning message
2015-12-17 16:11:20 +01:00
scrawl
271fcb80c6
Remove container scripts before deleting container
2015-12-14 02:57:55 +01:00
scrawl
359b0b3772
Rename for clarity
2015-12-12 22:37:23 +01:00
scrawl
18cce3a6f9
Don't reset delete flag when loading reference from a save game ( Fixes #2724 )
2015-12-12 22:34:59 +01:00
scrawl
850092a5e5
Store: be consistent about struct / class usage
...
Don't inherit a struct from a class, and vice versa.
2015-12-12 22:34:59 +01:00
scrawl
cc2315a0de
Minor fix
2015-12-11 16:59:13 +01:00
scrawl
b856460f86
ESMStore: fill mIds in setUp()
2015-12-11 16:55:28 +01:00
Chris Robinson
808f701013
Use the actor's Head position for Say streams
2015-12-10 17:48:45 -08:00
Chris Robinson
a47bdecac7
Add missing include
...
Since Ptr is used directly in the header, a forward declaration isn't good
enough.
2015-12-10 17:47:55 -08:00
scrawl
57b7cac13f
Merge pull request #850 from MatthewRock/fix-2952-2
...
Fix for bug #2952 : Enchantment Merchant Items reshuffled EVERY time 'barter' is clicked
2015-12-09 20:12:45 +01:00
MatthewRock
ddd4004c95
Fix: remove space
2015-12-09 18:26:33 +01:00
MatthewRock
3b254ad631
Allows the same item to have multiple ancestors
2015-12-09 18:24:35 +01:00
scrawl
bdae572264
Merge pull request #840 from scrawl/movedrefs
...
Object movement between cells
2015-12-09 14:10:57 +01:00
scrawl
bc1f7499ab
Do not allow deleting the player object ( Fixes #2982 )
2015-12-09 00:26:39 +01:00
MatthewRock
b0e6a52595
Replace ancestor with parent
2015-12-08 22:45:16 +01:00
MatthewRock
aa721fe1f6
Fix bug 2952 with merchant and levelled items
2015-12-08 22:39:11 +01:00
Marc Zinnschlag
071ba3a4df
Merge remote-tracking branch 'scrawl/werewolf'
2015-12-08 09:28:35 +01:00
scrawl
07b064f616
Rename to lowerCaseInPlace
2015-12-07 22:49:15 +01:00
scrawl
136a425cec
Use the Werewolf field of view override ( Fixes #3064 )
...
Need to re-run the settings importer for the feature to work.
2015-12-07 16:11:47 +01:00
scrawl
621347b20f
Remove moved ref handling from listRefs()
...
Not needed since we now load cells when a reference is moved there.
2015-12-07 03:55:26 +01:00
scrawl
1875aa4a18
Restore getNearbyDoor
2015-12-07 03:53:46 +01:00
scrawl
f9dd549bff
Restore FindContainerVisitor
2015-12-07 03:47:40 +01:00
scrawl
965bea45c0
AiEscort makes the actor side with target in fights (Bug #2697 )
...
Also will follow the player through teleport doors.
2015-12-06 23:38:51 +01:00
scrawl
4b0ecaa0a0
Fix physics bug
2015-12-06 22:10:01 +01:00
scrawl
51b892195b
Restore getReadOnlyDoors()
2015-12-06 21:58:25 +01:00
scrawl
abcf91be5b
Port over more game logic to the visitor pattern
2015-12-06 20:43:50 +01:00
scrawl
9ea475d00c
Port LocalScripts::addCell to new CellStore interfaces
2015-12-06 20:33:22 +01:00
scrawl
a517f4f9ba
Add CellStore::forEachType to help with porting over game logic to the new interfaces
2015-12-06 20:32:39 +01:00
scrawl
0af33b5abd
Throw exception if moveTo() is passed an object not part of *this
2015-12-06 20:05:13 +01:00
scrawl
176a3c16f4
Resolve moved references loaded from a save game
2015-12-06 20:00:24 +01:00
scrawl
671561ea37
Write moved references to the save game file (not resolved on loading yet)
2015-12-06 19:11:25 +01:00
scrawl
2219231230
Missing updateMergedRefs()
2015-12-06 18:46:49 +01:00
scrawl
138957c49a
Special case objects with no refnum
2015-12-06 18:43:52 +01:00
scrawl
5e99a3eda6
Rename CellStore Functor to Visitor
2015-12-06 18:13:04 +01:00
scrawl
2301080c63
Load CellStore when an object is moved there
2015-12-06 18:04:48 +01:00
scrawl
811df1e97b
Pass the ESM reader list to CellStore constructor
2015-12-06 18:03:55 +01:00
scrawl
67a6a8f5d4
Make projectiles receive lighting
2015-12-05 00:44:18 +01:00
scrawl
6181594251
Disable freezeOnCull for magic projectile particles
2015-12-05 00:33:01 +01:00
scrawl
a8938589f6
Magic projectiles rotate during flight
2015-12-05 00:33:01 +01:00
scrawl
3f93af4181
Projectiles interact with the water surface ( Fixes #2986 )
2015-12-04 23:28:11 +01:00
scrawl
3dcefd17fc
Fix CellStore::count()
2015-12-04 20:03:14 +01:00
scrawl
3aa53f3cb4
Object cell movement tracker works. Savegame handling is still missing and some game functionality is still stubbed out.
2015-12-04 19:46:02 +01:00
scrawl
64b4926127
Add reference moving logic - untested
2015-12-04 18:29:41 +01:00
scrawl
7a983340bf
Add comment
2015-12-04 18:29:41 +01:00
scrawl
fc449233be
Restore support for inserting objects into a cell
2015-12-04 18:29:41 +01:00
scrawl
0975f60d59
Stub out CellStore::get<T> accessors in preparation of reference movement between cells
2015-12-04 18:29:41 +01:00
Marc Zinnschlag
e0c9265148
Merge remote-tracking branch 'origin/master'
2015-12-03 15:56:24 +01:00
scrawl
d0c6b407b4
Fix isUnderwater checks being off by one for exterior cells
2015-12-03 15:16:50 +01:00
scrawl
86881bcf39
In first person mode, attach sound listener to the camera
2015-12-03 15:16:20 +01:00
Chris Robinson
816015d6e6
Avoid inheriting from Sound for sound types
2015-12-02 16:09:24 -08:00
scrawl
3d12b2ca9d
Add NifFileManager to avoid duplicate parsing of the NIFFile in SceneManager and BulletShapeManager.
2015-12-02 14:59:32 +01:00
scrawl
cd4a1ffd16
Fast version of dynamic_cast for MWClass
2015-11-29 14:26:52 +01:00
scrawl
c9bfe01120
Fix applying of weather changes after serving a jail sentence
2015-11-28 17:57:35 +01:00
Marc Zinnschlag
6facce9d13
Merge remote-tracking branch 'origin/master'
2015-11-28 10:02:37 +01:00
scrawl
d97dda05c9
Don't attempt to play unset weather sounds
2015-11-28 05:55:36 +01:00
scrawl
4687c4baad
Do not assert() for invalid land data in plugins (Bug #3037 )
...
The resizing of LTEX store to the correct number of plugins was done in the load() method, but the load method won't be called if a plugin contains LAND records but doesn't contain LTEX records. For such plugins the Store<ESM::LandTexture>::search() function would then fail an assertion.
2015-11-27 21:57:15 +01:00
scrawl
89783e047b
Fix typo
2015-11-27 19:40:31 +01:00
Marc Zinnschlag
7cc950ed64
Merge remote-tracking branch 'origin/master'
2015-11-27 10:34:22 +01:00
scrawl
44dd62067e
Remove some unnecessary per-frame store searches
2015-11-27 02:13:56 +01:00
scrawl
783594033a
Optimize MWMechanics::Spells
...
Use pointers as map keys instead of string IDs. Resolves a nasty performance bottleneck on functions like hasCommonDisease() that previously had to look up all contained spells from the ESM store on every call. hasCommonDisease() is called hundreds of times per frame by the AI target update since it's used to calculate target disposition.
The total cost of hasCommonDisease() was 2.7% of the frame loop, now it's negligible.
2015-11-27 01:07:15 +01:00
Chris Robinson
aac903484c
Remove a really unnecessary method
2015-11-25 04:24:26 -08:00
Chris Robinson
73448c72f6
Replace Play_NoTrack with playManualSound3D, and rename the latter
2015-11-25 04:24:26 -08:00
scrawl
edfcb45ad7
Fix crash when onPcEquip script removes the equipped item ( Fixes #3016 )
2015-11-24 22:55:17 +01:00
scrawl
71cd57a3b5
Optimize World::getTimeStamp
...
World::getTimeStamp was searching through the globals store on every call. Not a big issue, but slow enough to show up in the profiler.
2015-11-22 23:55:21 +01:00
scrawl
62169a7039
Use a single-precision PositionAttitudeTransform in speed critical places
2015-11-22 19:54:26 +01:00
scrawl
43de13fa99
Do not allow resting on lava
2015-11-20 19:22:31 +01:00
scrawl
2d302aef99
Implement stayOutside script variable
2015-11-20 05:05:43 +01:00
scrawl
27617468c8
Fix the collision shape not updating when scaling an object via script
2015-11-20 03:29:58 +01:00
scrawl
5f143dee2d
Fix lighting incontinuity at nightfall and sunrise
2015-11-20 03:22:35 +01:00
scrawl
3453353091
AiCombat distance check takes into account collision box ( Fixes #1699 )
2015-11-18 19:00:43 +01:00
scrawl
71d9e7dc52
Read Ambient Loop Sound ID and Rain Loop Sound ID from the INI file
2015-11-16 02:21:45 +01:00
Marc Zinnschlag
de98ee0062
Merge remote-tracking branch 'scrawl/esm_rewrite'
2015-11-14 14:25:08 +01:00
scrawl
05498ad592
Refactor: InputManager no longer depends on Engine
2015-11-14 03:01:24 +01:00
scrawl
b8e11cf197
Merge commit 'pull/upstream/678' into HEAD
...
Conflicts:
apps/esmtool/record.cpp
apps/opencs/model/doc/savingstages.cpp
apps/opencs/model/world/land.cpp
apps/opencs/model/world/land.hpp
apps/opencs/model/world/landtexture.cpp
apps/openmw/mwworld/store.cpp
components/esm/loadland.cpp
components/esm/loadland.hpp
2015-11-13 01:34:36 +01:00
scrawl
8cd41f0ed4
Increase the ray distance for dropObjectOnGround ( Fixes #3010 )
2015-11-12 23:05:44 +01:00
scrawl
9e3eb8291f
Rotations: fix the rotation order for doors
2015-11-12 02:09:00 +01:00
scrawl
3647af8d73
Rotations: use different rotation order when object is rotated via script ( Fixes #2062 )
2015-11-12 01:44:00 +01:00
scrawl
b4ce73f179
Rotations: remove LocalRotation
...
This never existed in vanilla MW in the first place. The reason we got confused was because of a strange behaviour where the order of applying rotations changes as soon as a script touches the object's rotation.
2015-11-12 01:16:37 +01:00
scrawl
666fbba1e0
Rotations: World::rotateObject takes radians instead of degrees
...
Cuts down on the amount of redundant degree<->radians conversions in the codebase.
2015-11-12 01:09:39 +01:00
scrawl
6405049add
Rotations: move doors via Rotation rather than LocalRotation
...
Now LocalRotation is unneeded, will remove in next commit.
2015-11-12 00:58:29 +01:00
scrawl
8aacbc398f
Rotations: don't wrap the angle values for non-actors
...
It's not really necessary, and just complicates logic elsewhere. Neither does vanilla MW do it. As well, the question is if wrapping to [-PI, PI] or [0, 2*PI] would be the desired range.
2015-11-12 00:52:36 +01:00
MatthewRock
a662a00c62
Fixing bug for merchant
2015-11-10 19:18:02 +01:00
scrawl
682f30ef9c
Fix incorrect uses of PhysicsSystem::getHalfExtents
...
Did not account for translation of collision box (mMeshTranslation in actor.cpp)
2015-11-03 19:05:36 +01:00
scrawl
a5f8ffb83d
aimToTarget: Fix the collision box translation not being taken into account
2015-11-03 18:15:47 +01:00
scrawl
de97a8a3da
Do not allow disabling the player object
2015-11-03 17:53:57 +01:00
scrawl
802620a86b
Use TimeOfDayInterpolator for Land Fog Depth
...
Fixes the sudden fog jump at nightfall.
2015-11-01 23:03:16 +01:00
scrawl
45bf3e6788
Create TimeOfDayInterpolator class to refactor time handling in WeatherManager
2015-11-01 22:59:26 +01:00
scrawl
8da4530957
Use INI-imported underwater fog settings ( Fixes #2907 , Fixes #1511 )
2015-11-01 22:09:27 +01:00
scrawl
bd9dc58560
Use the correct scale for actor swim height ( Fixes #2833 )
2015-11-01 21:45:58 +01:00
scrawl
e13eb625d3
New water WIP
...
Changes compared to old (Ogre) water:
- Uses depth-texture readback to handle the underwater fog in the water shader, instead of handling it in the object shader
- Different clipping mechanism (glClipPlane instead of a skewed viewing frustum)
- Fixed bug where the reflection camera would look strange when the viewer was very close to the water surface
- Toned down light scattering, made the waterColor a bit darker at night
- Fixed flipped water normals and strange resulting logic in the shader
Still to do: see comments...
2015-10-29 00:25:23 +01:00
scrawl
f36d463617
Enchantment error handling fix ( Fixes #2959 )
...
Catch errors about missing enchantments before they propagate up the stack and interrupt the whole frame update.
2015-10-13 18:15:39 +02:00
Marc Zinnschlag
379d13c7b9
Merge remote-tracking branch 'scrawl/unstack_script'
2015-10-07 08:12:02 +02:00