1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-16 04:19:55 +00:00
Commit graph

2475 commits

Author SHA1 Message Date
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
scrawl
91bf5ae237 Add new script instance when a container item is unstacked (Bug #2962) 2015-10-07 02:43:21 +02:00
scrawl
7b6fe149f2 getSpellSuccessChance return 0 for used powers (Fixes #2944) 2015-10-05 15:41:43 +02:00
Marc Zinnschlag
9279ae4ba0 Merge remote-tracking branch 'zelurker/removed_items' 2015-09-26 11:24:56 +02:00
scrawl
b9c6a6862a Don't reset god mode, scripts enabled and sky enabled flags when loading a save game
These flags aren't stored in the save file, so it makes no sense to reset them to their default each time a save game is loaded. Instead, reset on "new game".
2015-09-26 01:49:58 +02:00
Emmanuel Anne
2fff6b06cc removed items by mods do not break cell loading
like fortify intelligence potions removed by sris_alchemy which break the
loading of the firewatch mages guild
2015-09-25 14:23:49 +02:00
Alexander "Ace" Olofsson
caa119f13c Fix instantiation on non-Visual Studio 2015-09-24 15:55:38 +02:00
Alexander "Ace" Olofsson
7d4125d97f Fixes for building with unity build 2015-09-24 15:21:42 +02:00
scrawl
385f4f729c Implement SunDiscSunsetColor, fade the sun during sunrise & sunset 2015-09-21 19:43:48 +02:00
scrawl
a2a4532e71 Add the full-screen sun glare effect 2015-09-21 17:20:08 +02:00
scrawl
8de3ce90a7 Add comments for weather IDs 2015-09-19 18:04:24 +02:00
Marc Zinnschlag
96880b4dfe Merge remote-tracking branch 'scrawl/tabs' 2015-09-17 09:30:31 +02:00
scrawl
c4b5a41ac3 Improve combat AI vertical aiming (Fixes #1366, Fixes #1330) 2015-09-17 03:41:15 +02:00
scrawl
a47617c21f Fix tab indentations in apps/ and components/ 2015-09-16 20:45:37 +02:00
Marc Zinnschlag
2a981a5272 make sure local variables are loaded when trying to access them from outside of a script (Fixes #2659) 2015-09-15 13:58:07 +02:00
Marc Zinnschlag
2c37731494 Merge remote-tracking branch 'dteviot/MagicEffectsRefactorDraft3' 2015-09-12 08:41:12 +02:00
Marc Zinnschlag
0ff786bebd Merge remote-tracking branch 'origin/master' 2015-09-11 13:22:31 +02:00
Marc Zinnschlag
a445683312 Merge branch 'mergetool'
Conflicts:
	apps/opencs/CMakeLists.txt
	apps/opencs/model/tools/tools.cpp
2015-09-11 13:22:15 +02:00
dteviot
e9c796166a Added MWMechanics::isPlayerInCombat() 2015-09-10 18:48:34 +12:00
scrawl
cd0f8e556b Merge pull request #753 from slothlife/thunderstorm-support
Improve thunderstorm support.
2015-09-09 14:44:36 +02:00
slothlife
29d74f0249 Improve thunderstorm support.
Reversed settings for thunderstorms. Added thunder support to all
weather types. Implemented a simple lightning flash effect similar to
MW.
2015-09-08 22:05:33 -05:00
scrawl
e5d54fb539 Check for actor being the player in various actions 2015-09-07 22:15:17 +02:00
scrawl
acbea2461b Fix a typo 2015-09-04 23:27:33 +02:00
Marc Zinnschlag
69b9eadb52 refactored loading of land data 2015-08-31 16:13:26 +02:00
Marc Zinnschlag
4b7a034cf9 Merge remote-tracking branch 'slothlife/weather-transition-fix' 2015-08-31 09:03:04 +02:00
slothlife
2b48a20b76 Fix weather transition bugs 2015-08-28 23:12:39 -05:00
slothlife
d9a7986b3a Remove redundant fast forward check 2015-08-28 18:04:22 -05:00
slothlife
4fd00a75d5 Merge advanceTime and advanceTimeByFrame 2015-08-27 14:53:52 -05:00
slothlife
cd8ec5c11e Improve checking for older weather records 2015-08-27 13:44:06 -05:00
slothlife
7817c52cbb Discard old save game weather records 2015-08-27 09:57:32 -05:00
slothlife
c907ed517d Remove C++11 explicit on conversion operator 2015-08-26 23:34:15 -05:00
slothlife
54fa5273dc Refactor weather transitions to act more like MW
Fixed several issues:
* Waiting/jail time/training all now properly skip remaining transitions
* ChangeWeather no longer permanently sets the region's weather
* ChangeWeather being called during a transition now correctly queues up
another transition
* Corrected transition delta and factor calculations
* ModRegion settings are now saved
2015-08-26 22:59:21 -05:00
scrawl
b509a18065 Remove code setting PcRace (Fixes #2886)
This is already handled by the RaceCheck script.
2015-08-23 14:30:23 +02:00
Marc Zinnschlag
a52b947efe Merge remote-tracking branch 'dteviot/MagicEffectsRefactorDraft3' 2015-08-23 12:11:30 +02:00
scrawl
542c648e69 Fix incorrect assignment of PcRace, need to sort race IDs (Fixes #2884) 2015-08-22 22:53:06 +02:00
Marc Zinnschlag
50ec8b10f5 Merge remote-tracking branch 'dteviot/Bug2871' 2015-08-22 10:37:43 +02:00
scrawl
ba8e4c22aa Avoid using loops to wrap angle values (Fixes #2882) 2015-08-21 20:17:42 +02:00
dteviot
77a1d947cc extracted MWMechanics::getPlayer() 2015-08-21 21:12:39 +12:00
dteviot
85bc41dedb replaced FLT_MAX with numeric_limits. 2015-08-21 19:34:28 +12:00
dteviot
ff5ef7055e extracted function CreatureStats::isParalyzed() 2015-08-20 18:12:37 +12:00
scrawl
67bd6cd708 Remove empty line at the beginning of files
git ls-files -z | xargs -0 sed -i '1{/^$/d}'
2015-08-18 23:06:12 +02:00
Marc Zinnschlag
e888fd7034 Merge remote-tracking branch 'scrawl/delete_noop' 2015-08-17 18:21:56 +02:00
Marc Zinnschlag
3992125b61 Merge remote-tracking branch 'scrawl/master' 2015-08-17 14:05:51 +02:00
Marc Zinnschlag
b5f3f0522a Merge remote-tracking branch 'slothlife/weather-settings-fix' 2015-08-17 14:03:54 +02:00
scrawl
b583a2ec33 Make SetDelete a no-op for items in containers (Fixes #2864) 2015-08-17 00:06:26 +02:00
Jordan Ayers
be7bd9529d Classes shouldn't use MWBase::Environment to access their own members. 2015-08-16 16:56:44 -05:00
slothlife
3d419a612a Corrected some weather transition calculations
Reversed some formulas for Transition Delta and Clouds Maximum Percent
and implemented them. Refactored Weather some to encapsulate those
formulas (to more closely match MoonModel). Did some small cleanup of
WeatherManager.
2015-08-15 23:38:49 -05:00
scrawl
8426d376f0 Use separate touch spell raycasts for actors and objects (Fixes #2849) 2015-08-16 02:06:04 +02:00
scrawl
1e18a73b1c Don't play magic effect sounds & visual effects for unsuitable targets (Fixes #2811) 2015-08-13 17:08:21 +02:00
scrawl
211deeb63e Don't attempt to lock or unlock unsuitable objects (Fixes #2826) 2015-08-13 17:08:21 +02:00
scrawl
86f0e505e9 Add a fixPosition for the --start exterior cell (Fixes #2790) 2015-08-13 17:08:20 +02:00
scrawl
56b7196bea Remove incorrect implementation of "Clouds Maximum Percent" weather setting 2015-08-07 15:34:01 +02:00
slothlife
3235cecddf Use Glare View for visibility of celestial bodies
Fixed memory leak from Sun and Moon objects by pulling Updaters back out
into separate objects. Removed code related to
mCelestialBodyTransparency.
2015-08-07 00:08:18 -05:00
slothlife
ea2f88a355 Fix several sky rendering bugs, maybe also #639
Added code to hide the moons, sun, and stars for certain weather
effects. Lightly refactored CelestialBody and derived classes. Fixed
moons switching phase at 24:00.
2015-08-04 21:07:42 -05:00
slothlife
67a63cc662 Add some const correctness to MoonModel 2015-07-30 14:00:08 -05:00
Stanislav Bas
d13766cb3c Remove redundant template specializations 2015-07-30 16:08:22 +03:00
Stanislav Bas
f15adb4e4f Store::load() overwrites loaded records with the same IDs 2015-07-30 15:38:07 +03:00
slothlife
a4e1630ec2 Remove unreferenced member in MoonModel 2015-07-30 00:41:30 -05:00
slothlife
8dc7e158c6 Fix forward declaration of MoonState 2015-07-30 00:18:56 -05:00
slothlife
24ba54f4fe Implement accurate moon settings (fixes #672) 2015-07-29 23:57:45 -05:00
scrawl
7ba399fc92 Change a message to upper case spelling
More consistent with other loading messages
2015-07-28 03:21:44 +02:00