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

1182 commits

Author SHA1 Message Date
Andrei Kortunov
de08c1cb1b Make Move and MoveWorld console commands move actors standing on moving object (bug #2274) 2018-08-25 10:34:33 +04:00
Andrei Kortunov
3d4f5536d2 Check for impact immediately when launch a projectile (bug #3059) 2018-08-24 15:03:54 +04:00
Andrei Kortunov
31f8bea1dd Rework spell effects management 2018-08-17 12:41:13 +04:00
Andrei Kortunov
8516aee6e0 Implement getHalfExtents() for non-actor objects 2018-08-17 12:40:01 +04:00
Marc Zinnschlag
088463ebe6 Merged pull request #1868 2018-08-17 09:37:49 +02:00
Andrei Kortunov
5a4d0cec3a Use new logging system for game itself 2018-08-14 23:05:43 +04:00
Andrei Kortunov
4003fa1296 Keep jailing state for one frame after leaving jail (bug #3788) 2018-08-13 11:10:01 +04:00
Andrei Kortunov
9dfd775bf2 Implement GetPCTraveling console command 2018-08-13 08:30:50 +04:00
Andrei Kortunov
a08048da4e Avoid dereference after null check 2018-08-01 19:30:30 +04:00
Andrei Kortunov
75835c8326 Prevent NPC from chosing farther pathgrid node 2018-07-29 18:18:05 +04:00
Capostrophic
f7887ab05f
Fix MSVC C4456 warning: declaration of 'stats' hides previous local declaration 2018-07-26 23:24:26 +03:00
Andrei Kortunov
3d1daaebab Rework manual spellcasting (e.g. via scripts) 2018-07-12 16:24:25 +04:00
Capostrophic
d09c327b20 Update changelog 2018-07-09 12:36:19 +03:00
Capostrophic
14d3b213a1
Fix double call of addContainerScripts on player in moveObject (fixes #4490) 2018-07-08 23:08:57 +03:00
Andrei Kortunov
7dff8d8fe2 Check cell for null 2018-06-25 10:26:58 +04:00
Marc Zinnschlag
7be069fcd2 Merged pull request #1743 2018-06-19 13:29:20 +02:00
Miloslav Číž
477e1437d2 Resolve conflicts 2018-06-14 15:30:28 +02:00
Andrei Kortunov
49ba00a3ec Add NPC validation to esmstore (bug #2772) 2018-06-14 16:48:16 +04:00
Miloslav Číž
d629c30fdb
Merge branch 'master' into screenshot360 2018-06-13 21:16:28 +02:00
Miloslav Číž
c3d7ee5a9e Resolve merge conflicts 2018-06-13 08:22:37 +02:00
Miloslav Číž
db8aaa74d6 Start cell border debug drawing 2018-06-13 01:48:31 +02:00
Andrei Kortunov
bde1d07d4e Use hitboxes and focused object for touch spells (bug #3374) 2018-06-07 16:12:27 +04:00
Andrei Kortunov
4666a6a0ab Use default hit formula as fallback 2018-06-07 16:12:27 +04:00
Andrei Kortunov
9e5d577a71 Aim from center of attacker to center of target 2018-06-07 16:12:27 +04:00
Andrei Kortunov
ab433102a4 Increase hit distance for player by halfExtents 2018-06-07 16:12:27 +04:00
Marc Zinnschlag
2ab31b0c18 Merged pull request #1723 2018-06-07 13:05:20 +02:00
elsid
dba79f4d4d
Fix warnings: catching polymorphic type by value
openmw/apps/openmw/mwworld/worldimp.cpp: In member function ‘virtual bool MWWorld::World::findExteriorPosition(const string&, ESM::Position&)’:
openmw/apps/openmw/mwworld/worldimp.cpp:2650:25: warning: catching polymorphic type ‘class std::invalid_argument’ by value [-Wcatch-value=]
             catch (std::invalid_argument)
                         ^~~~~~~~~~~~~~~~
openmw/apps/openmw/mwworld/worldimp.cpp:2654:25: warning: catching polymorphic type ‘class std::out_of_range’ by value [-Wcatch-value=]
             catch (std::out_of_range)
                         ^~~~~~~~~~~~

openmw/components/widgets/numericeditbox.cpp: In member function ‘void Gui::NumericEditBox::onEditTextChange(MyGUI::EditBox*)’:
openmw/components/widgets/numericeditbox.cpp:41:21: warning: catching polymorphic type ‘class std::invalid_argument’ by value [-Wcatch-value=]
         catch (std::invalid_argument)
                     ^~~~~~~~~~~~~~~~
openmw/components/widgets/numericeditbox.cpp:45:21: warning: catching polymorphic type ‘class std::out_of_range’ by value [-Wcatch-value=]
         catch (std::out_of_range)
                     ^~~~~~~~~~~~
2018-06-02 14:28:46 +03:00
Andrei Kortunov
24863f620b RotateWorld: rotate around world axis (bug #4426) 2018-05-30 16:35:52 +04:00
scrawl
cfdf99f601
Revert "Merged pull request #1573"
This reverts commit 7324bd368f, reversing
changes made to 810e4416f6.
2018-05-26 11:39:30 +00:00
scrawl
99ffaafe30
Revert "Merge pull request #1701 from akortunov/standfix"
This reverts commit da47fc79f5, reversing
changes made to 7324bd368f.
2018-05-26 11:35:48 +00:00
Bret Curtis
da47fc79f5
Merge pull request #1701 from akortunov/standfix
Do not apply queue movement for standing actors
2018-05-23 22:35:08 +02:00
Marc Zinnschlag
7324bd368f Merged pull request #1573 2018-05-23 17:00:29 +02:00
Capostrophic
867a5938ca Don't reset sneaking camera offset while in GUI (fixes #4420) 2018-05-20 10:24:20 +03:00
Andrei Kortunov
3636cf2015 Do not apply queue movement for standing actors 2018-05-05 22:41:26 +04:00
Andrei Kortunov
22fb1f3403 Play spellcasting effects from objects 2018-04-30 17:12:06 +04:00
tri4ng1e
d4d1703bcf
Some PVS-Studio and cppcheck fixes
cppcheck:
[apps/esmtool/record.cpp:697]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/esmtool/record.cpp:1126]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/esmtool/record.cpp:1138]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/niftest/niftest.cpp:36]: (performance) Function parameter 'filename' should be passed by reference.
[apps/niftest/niftest.cpp:41]: (performance) Function parameter 'filename' should be passed by reference.
[apps/opencs/model/prefs/boolsetting.cpp:25]: (warning) Possible leak in public function. The pointer 'mWidget' is not deallocated before it is allocated.
[apps/opencs/model/prefs/shortcuteventhandler.cpp:52]: (warning) Return value of std::remove() ignored. Elements remain in container.
[apps/openmw/mwstate/quicksavemanager.cpp:5]: (performance) Variable 'mSaveName' is assigned in constructor body. Consider performing initialization in initialization list.

PVS-Studio:
apps/opencs/model/filter/parser.cpp  582  warn  V560 A part of conditional expression is always true: allowPredefined.
apps/opencs/view/world/referencecreator.cpp  67  warn  V547 Expression '!errors.empty()' is always false.
apps/opencs/view/world/referencecreator.cpp  74  warn  V547 Expression '!errors.empty()' is always false.
apps/opencs/view/doc/loader.cpp  170  warn  V560 A part of conditional expression is always true: !completed.
apps/opencs/view/doc/loader.cpp  170  warn  V560 A part of conditional expression is always true: !error.empty().
apps/opencs/model/tools/pathgridcheck.cpp  32  err  V517 The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. Check lines: 32, 34.
apps/opencs/model/world/refidadapterimp.cpp  1376  err  V547 Expression 'subColIndex < 3' is always true.

apps/openmw/mwgui/widgets.hpp  318  warn  V703 It is odd that the 'mEnableRepeat' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:318, MyGUI_ScrollBar.h:179.
apps/openmw/mwgui/widgets.hpp  319  warn  V703 It is odd that the 'mRepeatTriggerTime' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:319, MyGUI_ScrollBar.h:180.
apps/openmw/mwgui/widgets.hpp  320  warn  V703 It is odd that the 'mRepeatStepTime' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:320, MyGUI_ScrollBar.h:181
apps/openmw/mwmechanics/actors.cpp  1425  warn  V547 Expression '!detected' is always true.
apps/openmw/mwmechanics/character.cpp  2155  err  V547 Expression 'mode == 0' is always true.
apps/openmw/mwmechanics/character.cpp  1192  warn  V592 The expression was enclosed by parentheses twice: ((expression)). One pair of parentheses is unnecessary or misprint is present.
apps/openmw/mwmechanics/character.cpp  521  warn  V560 A part of conditional expression is always true: (idle == mIdleState).
apps/openmw/mwmechanics/pathfinding.cpp  317  err  V547 Expression 'mPath.size() >= 2' is always true.
apps/openmw/mwscript/interpretercontext.cpp  409  warn  V560 A part of conditional expression is always false: rank > 9.
apps/openmw/mwgui/windowbase.cpp  28  warn  V560 A part of conditional expression is always true: !visible.
apps/openmw/mwgui/journalwindow.cpp  561  warn  V547 Expression '!mAllQuests' is always false.
apps/openmw/mwgui/referenceinterface.cpp  18  warn  V571 Recurring check. The '!mPtr.isEmpty()' condition was already verified in line 16.
apps/openmw/mwworld/scene.cpp  463  warn  V547 Expression 'adjustPlayerPos' is always true.
apps/openmw/mwworld/worldimp.cpp  409  err  V766 An item with the same key '"sCompanionShare"' has already been added.
apps/openmw/mwworld/cellstore.cpp  691  warn  V519 The 'state.mWaterLevel' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 689, 691.
apps/openmw/mwworld/weather.cpp  1125  warn  V519 The 'mResult.mParticleEffect' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1123, 1125.
apps/openmw/mwworld/weather.cpp  1137  warn  V519 The 'mResult.mParticleEffect' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1135, 1137.

apps/wizard/unshield/unshieldworker.cpp  475  warn  V728 An excessive check can be simplified. The '(A && B) || (!A && !B)' expression is equivalent to the 'bool(A) == bool(B)' expression.
apps/wizard/installationpage.cpp  163  warn  V735 Possibly an incorrect HTML. The "</p" closing tag was encountered, while the "</span" tag was expected.

components/fontloader/fontloader.cpp  427  err  V547 Expression 'i == 1' is always true.
components/nifosg/nifloader.cpp  282  warn  V519 The 'created' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 278, 282.
components/esm/loadregn.cpp  119  err  V586 The 'clear' function is called twice for deallocation of the same resource. Check lines: 112, 119.
components/esm/cellref.cpp  178  warn  V581 The conditional expressions of the 'if' statements situated alongside each other are identical. Check lines: 175, 178.
components/esmterrain/storage.cpp  235  warn  V560 A part of conditional expression is always true: colStart == 0.
components/esmterrain/storage.cpp  237  warn  V560 A part of conditional expression is always true: rowStart == 0.
2018-04-18 12:36:10 +00:00
scrawl
c02920bcd1
Merge pull request #1634
Conflicts:
	apps/openmw/mwworld/worldimp.hpp
2018-03-20 22:48:20 +00:00
Andrei Kortunov
fed3e56fc1 Weather manager: get rid of World dependency 2018-03-19 23:08:15 +04:00
Andrei Kortunov
53ef345680 Update magic effect particles after building new animation (bug #2254) 2018-03-19 10:43:22 +04:00
Andrei Kortunov
a0a30cdbf5 AI: hide torches during bad weather (bug #4334) 2018-03-19 08:03:53 +04:00
Miloslav Číž
db6107f12f
Merge branch 'master' into screenshot360 2018-02-25 11:25:19 +01:00
scrawl
a708ac488e
Don't call Store::setUp() unnecessarily
Fixes a threading issue with ESM::Land store caused by calling setUp() while it's being used.
2018-02-13 00:38:55 +00:00
scrawl
b1b8e31562
Use unique_ptr over new/delete (Fixes #4305) 2018-01-30 22:05:16 +00:00
scrawl
e2e48e0a50
Add default value for 'sAnd' GMST (Fixes #4269) 2018-01-14 00:27:05 +00:00
scrawl
d9d8de3061
Catch exceptions in updateWindowManager (Bug #4269) 2018-01-14 00:26:37 +00:00
Andrei Kortunov
1a58171e86 Do not allow to sell items from containers with zero capacity (bug #4268) 2017-12-17 18:09:25 +04:00
Andrei Kortunov
a28cc37501 Do not sell ingredients from organic containers 2017-12-05 10:24:58 +04:00
Miloslav Číž
4fc532d873 reference screenshot settings only from one place 2017-11-11 14:32:28 +01:00
Miloslav Číž
319ed2f9b8 disable 360 screenshots in vanity/preview mode 2017-11-10 15:23:44 +01:00
Miloslav Číž
d4fd08a63f save 360 screenshots in the configured directory 2017-11-09 16:49:46 +01:00
Miloslav Číž
7feba7e498 basic setup for 360 screenshots 2017-11-07 13:07:11 +01:00
Andrei Kortunov
03daf2b9e3 Fix a failed assert in the getCell() check during a new game start 2017-09-29 22:28:09 +04:00
Andrei Kortunov
7d703a13a3 Fix a crash in the World::isUnderwater() if the cell is empty 2017-09-24 16:28:05 +04:00
MiroslavR
f15de6d3ca ESS-Importer: Convert magic projectiles (Closes #2320) 2017-09-20 18:58:56 +02:00
spycrab
632d39ca76 Allow starting at an (unnamed) exterior cell using --start (Feature #3941) 2017-08-06 22:31:07 +02:00
scrawl
333648c975 Merge pull request #1324 from akortunov/doorfix
Improved doors detection
2017-07-31 17:42:53 +00:00
Andrei Kortunov
10eb6ec75f AI: Check angle between actor and door 2017-07-31 19:28:02 +04:00
Andrei Kortunov
920021c61b Update effects during rest (bug #3679) 2017-07-28 16:50:52 +04:00
scrawl
c9f8a220dc Update the tooltip when the focusObject is set 2017-07-20 20:59:36 +02:00
scrawl
a629d48df6 Update the facedObject after the camera is updated 2017-07-19 13:05:51 +02:00
Andrei Kortunov
37952c9a79 Added door detection based by ray casting 2017-07-03 22:08:29 +04:00
scrawl
951c4e12e0 Fix crash introduced by commit 1d8a9ff622 (Fixes #3940) 2017-06-30 00:52:02 +02:00
Bret Curtis
d785344fad purge all instances of <boost/shared_ptr.hpp>, clean up unused headers 2017-06-09 19:08:53 +02:00
Nicholas
f6f07f5497 clear mGoToJail flag on load 2017-06-02 13:33:47 -05:00
scrawl
1956602aa2 Merge pull request #1262 from Allofich/warnings
Fix more warnings
2017-04-21 14:34:36 +02:00
scrawl
c2240e3af1 Call the WindowManager::updatePlayer after the startup script is run 2017-04-21 00:51:13 +02:00
Allofich
ff3e307059 Pass parameters by const reference 2017-04-20 23:47:03 +09:00
scrawl
8f335b3484 Merge pull request #1245 from akortunov/tgm
Vanilla-like tgm
2017-04-11 21:34:44 +02:00
scrawl
0a061d45b7 Merge pull request #1239 from akortunov/projectilefix
Disable explosion effect for 0-range projectiles (bug #3730)
2017-03-26 20:30:43 +02:00
Andrei Kortunov
14b59e0e4b Vanilla-like tgm (fixes #3798) 2017-03-25 22:40:11 +04:00
Andrei Kortunov
860b556713 Disables explosion effect for 0-range projectiles (fixes #3730) 2017-03-25 19:53:24 +04:00
Allofich
5282556ae0 Show names on combat actors when RMB GUI is active
Fixes (#3797)
2017-03-22 20:04:29 +09:00
scrawl
c22fde2bcd Preload terrain while reading savegame 2017-03-14 19:27:56 +01:00
scrawl
a5247394dc (Re)set the inventory listener outside of the Animation class 2017-02-22 15:08:22 +01:00
scrawl
a45335ffc3 Do not reduce magicka in god mode 2017-02-21 16:33:18 +01:00
scrawl
7e02bb7348 Preload summoned creature models before the spell is cast 2017-02-20 19:58:00 +01:00
scrawl
57b585570a Preload magic effect visuals of the player's selected weapon/spell 2017-02-15 21:01:25 +01:00
scrawl
026a05718f Construct the WorkQueue in Engine 2017-02-14 07:58:16 +01:00
Allofich
6b53541571 Prevent AI actors from hitting unintended targets
(Fixes #3254)
2017-02-12 19:51:19 +09:00
scrawl
6ecc008813 Fix an issue uncovered by the last commit related to changing actor position without properly moving the actor 2017-02-10 02:43:49 +01:00
scrawl
3f3d00ffc9 Add CellPreloader::clear to avoid potential dangling CellStore pointer and to more aggressively clear preload state from a previous game 2017-02-09 04:03:38 +01:00
scrawl
0be86f69bc Write the player object first to increase the chance of preloading the player cells in time 2017-02-09 03:55:10 +01:00
scrawl
1d8a9ff622 Preload player cell as soon as the player is read from the savegame
Giving the worker thread something to do while the rest of the savegame is parsed.
2017-02-09 03:47:36 +01:00
scrawl
066aa2e60e Always run preloadCommonAssets even when the menu is skipped
Move to before the content files are loaded so we can do preloading in parallel with content file loading
2017-02-09 03:16:36 +01:00
scrawl
43d9f3d5c7 Update bullet debug drawer even when the game is paused so the collision mesh will show instantly even when the console is up 2017-02-08 18:53:24 +01:00
scrawl
206e2bf975 Fix camera rotation not being set after save game load (regressed with 1eb3384043) 2017-02-08 04:42:15 +01:00
scrawl
34deb6e7b1 Add 'showSceneGraph' command to export the scene or a particular object to .osgt for debugging purposes 2017-02-01 06:00:14 +01:00
scrawl
cc19b4bd8a Fix door rotation order in collision case (Bug #3707) 2017-01-19 02:19:44 +01:00
NeveHanter
811e9ad9f3 Fixed bug https://bugs.openmw.org/issues/3617 by allowing touch and target enchantments from ranged weapons and their projectiles to explode even when colliding with non-activable objects, terrain, water slab or when shoot underwater.
Also allowed projectiles to fly through the dead bodies as in vanilla.
2017-01-15 09:49:25 +01:00
scrawl
16a913c549 Add emission of water ripple particles for water-walking actors (Fixes #3608) 2016-11-20 18:47:12 +01:00
scrawl
385db50f2d Merge pull request #1131 from Allofich/waterwalking
Make water walking mechanics closer to original MW
2016-11-20 17:19:15 +01:00
Allofich
0e429ae41d Make water walking mechanics closer to original MW 2016-11-20 22:21:33 +09:00
MiroslavR
7e5ba4d435 Fix default values of some GMSTs 2016-11-17 19:43:02 +01:00
MiroslavR
5e46121046 Implement fleeing AI (Closes #1118) 2016-11-16 20:15:25 +01:00
Allofich
fee39afe38 Don't allow resting on water with water walking 2016-11-13 19:50:33 +09:00
Allofich
6ec37b5cfb Fix shadowing warnings 2016-10-02 17:48:54 +09:00
Allofich
0582f2d918 Adjust touch spell/telekinesis interaction 2016-09-23 21:44:49 +09:00
Allofich
0c603e986d Don't play touch spell explosions on non-activatable statics 2016-09-23 03:25:24 +09:00
Allofich
eecf412b85 Recreate vanilla-like behavior for telekinesis and touch spells 2016-09-23 01:16:03 +09:00
scrawl
8379291f70 Merge pull request #1072 from Allofich/range
Give "on touch" spells same range as vanilla MW
2016-09-21 17:39:44 +02:00
Allofich
37cc4e9efe Don't play area vfx for 0-area touch spells that hit non-actors 2016-09-22 00:14:08 +09:00
Allofich
563ae479e8 Give "on touch" spells same range as vanilla MW 2016-09-21 23:34:32 +09:00
Allofich
01774c656c Fix for blood effect texture overrides 2016-09-14 23:28:57 +09:00
Allofich
a033ba3bd2 Override spell textures by NiTexturingProperty 2016-09-14 23:03:04 +09:00
Allofich
368828b217 Update TODO comments 2016-09-10 01:38:05 +09:00
Allofich
f31342894a Put simpler condition first 2016-09-09 00:03:38 +09:00
Allofich
bca477ca8a Apply particle textures like original engine does 2016-09-08 23:59:23 +09:00
Allofich
502a758eff Use particle texture for "hit" effects 2016-09-08 23:58:00 +09:00
Allofich
02610828c1 Don't play area vfx for non-area spells on actors. 2016-09-08 02:07:01 +09:00
Allofich
88d992a020 Create area effect visual for non-area spells 2016-09-08 00:05:45 +09:00
scrawl
8677a6f803 Merge pull request #1044 from Allofich/magic
Changes to multi-effect spells
2016-09-05 00:03:10 +02:00
Allofich
f8270f6bd5 Consolidations and cleanup for multi-effect spells 2016-09-05 05:30:51 +09:00
Allofich
a36f7babc1 Double scaling of spell explosions 2016-09-05 02:18:57 +09:00
Allofich
37f07f7435 Combine into one multi-effect magic projectile 2016-09-04 22:35:29 +09:00
Allofich
10842462c7 Send lists of models and sounds to launchMagicBolt 2016-09-04 17:42:27 +09:00
Allofich
ecec7d8215 Fix spells having explosions for wrong range type 2016-09-04 17:42:27 +09:00
Allofich
a6216d883f Don't allow casting Water Walking in deep water 2016-08-31 04:37:50 +09:00
scrawl
67d3571fac Fix activation distance in third person mode 2016-07-10 17:10:19 +02:00
scrawl
6f376bd499 Merge pull request #983 from Allofich/telekinesis
Don't allow telekinesis on actors or teleport doors
2016-07-08 23:47:43 +02:00
Allofich
7a0f9a7989 Clean up, remove unnecessary code changes 2016-07-09 02:24:08 +09:00
Allofich
4e54338ce0 Implement and use getDistanceToFacedObject() 2016-07-08 23:28:49 +09:00
Allofich
7de3afaa7d Cleanups 2016-07-07 21:57:00 +09:00
Allofich
cb621939fd Streamline trap code 2016-07-07 21:56:54 +09:00
Allofich
35a23c3b49 Implement and use new method allowTelekinesis() 2016-07-07 21:54:31 +09:00
Allofich
8014f37879 Avoid duplicate code 2016-07-07 21:54:30 +09:00
Allofich
538209b0a2 Change variable to mRatio and initialize it 2016-07-07 21:54:29 +09:00
Allofich
e25e698978 Fix telekinesis check for activators 2016-07-07 21:54:29 +09:00
MiroslavR
d4e29e3e0c Clear projectiles on non-incremental time advances 2016-07-06 00:11:58 +02:00
Allofich
c1236f4113 Simplified code 2016-07-04 20:25:25 +09:00
Allofich
c02695e56d Cleanups and fixes 2016-07-04 16:06:16 +09:00
Allofich
64d298d2b5 Use raycast distance when player activates trapped object 2016-07-04 16:06:15 +09:00
Allofich
64d53a2314 Avoid double raycasts when using getFacedObject 2016-07-04 16:06:04 +09:00
Allofich
574e40db5e Don't allow telekinesis on activators 2016-07-04 01:50:47 +09:00
scrawl
b9b73d7b12 Replace "sys::default" with ESM::CellId::sDefaultWorldspace 2016-07-02 19:48:11 +02:00
MiroslavR
54f52f7bae Implement effect removal for abilities (Fixes #3455) 2016-07-01 18:50:28 +02:00
Allofich
b29e9e9c77 Don't allow telekinesis on actors or teleport doors 2016-07-01 02:27:20 +09:00
scrawl
c6601ab2ab Do not use the collision box offset for combat hit tests (Fixes #3201) 2016-06-10 23:47:01 +02:00
scrawl
12eea9ed69 Remove magic number in getMaxActivationDistance 2016-06-07 15:18:36 +02:00
scrawl
3645b3357e Fix improper assignement of spawn point in placeAt for non-actors (Bug #3417) 2016-06-02 21:24:19 +02:00
scrawl
a2153a6213 Remove outdated comment 2016-05-25 21:41:05 +02:00
scrawl
5d4f58c828 Fix being unable to activate objects when scripts are disabled
The if statement was a leftover of the previous activate implementation and is no longer needed.
2016-05-25 21:37:56 +02:00
scrawl
fcbcc004a3 Don't use unordered_map 2016-05-11 02:35:17 +02:00
scrawl
3584e59402 Fix incorrect parameter to changeCell (Fixes #3388) 2016-05-08 18:59:41 +02:00
Austin Salgat
84179c262f Update manual wandering to prevent actor from leaving/entering water
Water creatures will stay in the water, while land creatures will stay on land when wandering.
2016-04-16 16:39:13 -05:00
scrawl
5bd8ef247d Do not adjust the player position when loading a savegame (Fixes #2089) 2016-03-24 17:18:08 +01:00
scrawl
76b47c6d5d PlaceAt: don't correct spawn points for non-actors 2016-03-04 12:25:22 +01:00
scrawl
16dca126dd PlaceAt: don't use actor's X/Y rotation 2016-03-04 12:22:13 +01:00
scrawl
3d6323f13a Force-enable hasWater() for exterior cells (Fixes #3222) 2016-03-02 17:02:30 +01:00
scrawl
36bb255bc0 Use safePlaceObject in spawnRandomCreature 2016-02-29 17:30:38 +01:00
scrawl
be62ae758a Fall back to sides first 2016-02-29 17:26:52 +01:00
scrawl
6df71f6250 Factor out safePlaceObject function 2016-02-29 17:19:22 +01:00
scrawl
11f00e3aa9 Rename safePlaceObject to placeObject 2016-02-29 17:05:18 +01:00
scrawl
c3ef387208 Vanilla-compatible creature/NPC respawning (Fixes #2369, Fixes #2467) 2016-02-27 12:53:07 +01:00
scrawl
f99cd15f00 Vanilla-compatible activate / onActivate (Fixes #1629)
See https://forum.openmw.org/viewtopic.php?f=6&t=3074&p=34618#p34635
2016-02-26 13:08:35 +01:00
scrawl
8bd16e4d5a Don't compute the world matrix multiple times 2016-02-22 18:58:19 +01:00
scrawl
383524c688 Run physics in fixed timesteps, use the remainder to interpolate between current and previous state
Based on http://gafferongames.com/game-physics/fix-your-timestep/
2016-02-13 03:03:34 +01:00
scrawl
1cda2bf796 Preload sky & water from the main menu 2016-02-09 01:28:13 +01:00
scrawl
300379617e Accept a const CellStore in findInteriorPositionInWorldSpace 2016-02-05 01:19:45 +01:00
scrawl
41ebf62fb1 Accept a const CellStore in getNorthVector 2016-02-05 01:19:45 +01:00
Tobias Kortkamp
0659687bfb Some fixes for building on FreeBSD 2016-01-25 14:13:16 +01:00
scrawl
b0431833a1 Fix some defects reported by Coverity CI 2016-01-21 16:08:04 +01:00
scrawl
f0971ee8ad Implement Fixme script instruction 2016-01-20 04:07:07 +01:00
scrawl
41c571d4f4 Merge branch 'master' of https://github.com/OpenMW/openmw into lighting
Conflicts:
	apps/opencs/view/render/instancemode.cpp
2016-01-15 15:46:10 +01:00
scrawl
4e6a60672d When a spell explodes on an actor do not apply it to that actor twice (Fixes #3142) 2016-01-12 00:40:09 +01:00
scrawl
6546c05428 Move Fallback map to components/ 2016-01-11 23:10:16 +01:00
scrawl
4f8f166f69 Fix GetPcInJail to work as in the original engine 2016-01-11 22:57:25 +01:00
scrawl
f052c05018 Move werewolf functions from World to MechanicsManager 2015-12-26 18:23:13 +01:00
scrawl
e5d9ee30f4 Add count argument to copyObjectToCell
Fixes the gold bug introduced in c9ca5bc946
2015-12-19 16:48:32 +01:00
scrawl
29d0f448b4 Add const version of World::getAnimation 2015-12-19 16:15:45 +01:00
scrawl
2c51e7345f Use a separate collision type for doors (Fixes #1962) 2015-12-18 18:32:42 +01:00
scrawl
a0fb31e3b1 Accept a ConstPtr in getLOS 2015-12-18 18:03:47 +01:00
scrawl
029d467ea5 Accept a ConstPtr in getItemsOwnedBy, getContainersOwnedBy 2015-12-18 18:00:18 +01:00
scrawl
388aed1748 Accept a ConstPtr in findContainer, collision script functions, getUnderwater functions 2015-12-18 17:56:48 +01:00
scrawl
ed101ad35a Remove redundant getPlayerAnimation function 2015-12-18 17:44:57 +01:00
scrawl
c9ca5bc946 Accept a ConstPtr in placeObject 2015-12-18 17:42:59 +01:00
scrawl
6c505ca06f Accept a ConstPtr in getHitContact 2015-12-18 17:38:21 +01:00
scrawl
0796f49c17 Accept a ConstPtr in various physics getters 2015-12-18 17:36:14 +01:00
scrawl
553132cb51 Accept a ConstPtr in launchProjectile 2015-12-18 17:13:54 +01:00
scrawl
19d87c78f2 Add CellStore::forEachConst 2015-12-17 23:59:18 +01:00
scrawl
2fe2f53b02 Set the changed flag in CellStore::search (Fixes #3089) 2015-12-17 22:37:41 +01:00
Chris Robinson
808f701013 Use the actor's Head position for Say streams 2015-12-10 17:48:45 -08: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
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
f9dd549bff Restore FindContainerVisitor 2015-12-07 03:47:40 +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
5e99a3eda6 Rename CellStore Functor to Visitor 2015-12-06 18:13:04 +01:00
scrawl
67a6a8f5d4 Make projectiles receive lighting 2015-12-05 00:44:18 +01:00
scrawl
3f93af4181 Projectiles interact with the water surface (Fixes #2986) 2015-12-04 23:28:11 +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
0975f60d59 Stub out CellStore::get<T> accessors in preparation of reference movement between cells 2015-12-04 18:29:41 +01:00
scrawl
86881bcf39 In first person mode, attach sound listener to the camera 2015-12-03 15:16:20 +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
73448c72f6 Replace Play_NoTrack with playManualSound3D, and rename the latter 2015-11-25 04:24:26 -08: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
3453353091 AiCombat distance check takes into account collision box (Fixes #1699) 2015-11-18 19:00:43 +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
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
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
7b6fe149f2 getSpellSuccessChance return 0 for used powers (Fixes #2944) 2015-10-05 15:41:43 +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
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
scrawl
acbea2461b Fix a typo 2015-09-04 23:27:33 +02:00
Marc Zinnschlag
4b7a034cf9 Merge remote-tracking branch 'slothlife/weather-transition-fix' 2015-08-31 09:03:04 +02:00
slothlife
4fd00a75d5 Merge advanceTime and advanceTimeByFrame 2015-08-27 14:53:52 -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
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
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
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
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
86f0e505e9 Add a fixPosition for the --start exterior cell (Fixes #2790) 2015-08-13 17:08:20 +02:00
scrawl
71bc22401f Include cleanup 2015-07-24 18:23:23 +02:00
Marc Zinnschlag
ba9a9d16bb Merge remote-tracking branch 'scrawl/master' 2015-07-10 09:06:04 +02:00
scrawl
f12619b86a Implement fStromWindSpeed (Fixes #2764) 2015-07-10 02:34:00 +02:00
Alexander "Ace" Olofsson
b1cc74dd9a Explicity instantiate MWMechanics::Stat 2015-07-09 14:41:37 +02:00
Alexander "Ace" Olofsson
3655ef16af Explicitly instantiate ESM::StatState 2015-07-07 19:19:37 +02:00
scrawl
519fb9482a Minor cleanup 2015-07-02 18:45:11 +02:00
scrawl
ca21e9ecb1 Fix magic hit VFX showing when casting on a static object 2015-06-30 03:14:49 +02:00
scrawl
882e359008 Move attackStrength to the CharacterController, where it should have been to begin with
Only relevant for actors in active cells, so doesn't belong in CreatureStats. This change should slightly reduce the game's memory usage.
2015-06-26 05:15:07 +02:00
scrawl
a5670b5133 Merge branch 'master' of https://github.com/OpenMW/openmw into osg
Conflicts:
	apps/opencs/CMakeLists.txt
	apps/opencs/main.cpp
	apps/openmw/mwworld/player.hpp
2015-06-22 20:09:02 +02:00
scrawl
44582fe3b3 Don't use separate werewolf skills/attributes for non-player werewolves
Still need to deal with save files.
2015-06-21 17:28:18 +02:00
scrawl
b648722d3b Don't use the ParticleSystem for computing placeable bounds (Bug #2700) 2015-06-17 15:13:41 +02:00
scrawl
1c151f2f0a Re-enable some outcommented sky code 2015-06-16 20:56:48 +02:00
scrawl
3da8f6e62e Water ripples 2015-06-16 20:36:48 +02:00