Commit Graph

139 Commits (611a63acc69441d7ebab48b88b8a1af2d986b898)

Author SHA1 Message Date
Evil Eye 8ae4ee291f Attempt to fix restocking items in old saves 3 years ago
Petr Mikheev 157b14cdaa Fix #5821: NPCs from mods getting removed if mod order was changed 3 years ago
Andrei Kortunov f40e227686 Remove redundant formatting changes 3 years ago
Andrei Kortunov d12a0fdcb3 Mark only instances from groundcover files as groundcover objects 3 years ago
Andrei Kortunov 14cf0ce1dc Implement instanced groundcover 3 years ago
Andrei Kortunov 8084a336b5 Replace zeroes and nulls by nullptrs 4 years ago
Assumeru 72549651e0
Rework container resolution (#3006)
* Rework container resolution

* add optional argument to getCount

* remove now-redundant changes

* undo worldimp changes

* move save-fixing code to InventoryState

* replace Rng instances with Seeds
4 years ago
bzzt lost a hitlab login 9f0398c021 intersection by refnum tag + enable paging for acti,door,cont
Signed-off-by: Bret Curtis <psi29a@gmail.com>
4 years ago
bzzt lost a hitlab login 340d626589 static moving support
Signed-off-by: Bret Curtis <psi29a@gmail.com>
4 years ago
bzzt c0f128bcb3 disablesupprort
Signed-off-by: Bret Curtis <psi29a@gmail.com>
4 years ago
unknown 3b4782959e Allow targeting non-unique actors with StartScript (bug #2311) 4 years ago
Capostrophic c6e431d862 Avoid copying strings in SearchVisitor and readReferenceCollection 5 years ago
Andrei Kortunov c51aba0b13 Recharge items outside of player's inventory (bug #4077) 5 years ago
Andrei Kortunov abe1009e98 Do not resolve container's content during search 5 years ago
Andrei Kortunov 28252bb359 Merge branch 'hashRefID' into 'master'
Remove string copy in CellStore::search

See merge request OpenMW/openmw!77
5 years ago
Andrei Kortunov 413207f9af Reset old record, if its ID does not match with ID of new record (bug #4932) 5 years ago
fredzio 93ffdc915d SearchVisitor copy a new std::string everytime CellsStore::search is
called. Use a reference instead
5 years ago
Andrei Kortunov fcdb0c16bf Update jail state once instead of for every single hour 5 years ago
Andrei Kortunov e8b3ae8706 Improve ResetActors command (bug #4723) 6 years ago
elsid ed89126828
Fix warning implicit conversion changes singedness 6 years ago
Andrei Kortunov e06f0b797a Replace all NULLs to nullptr 6 years ago
Andrei Kortunov 8af021d729 Restore dynamic stats for actors in inactive cells (bug #1875) 6 years ago
Capostrophic 7ef6fa9f61 Remove deprecated GMST get* functions 6 years ago
Andrei Kortunov 5a4d0cec3a Use new logging system for game itself 6 years ago
Andrei Kortunov 977a27ecb7 Do not clear corpses until end of death animation (bug #4307) 6 years ago
tri4ng1e d310d36ea3
[Fix] Some PVS-Studio and cppcheck fixes 6 years ago
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.
6 years ago
scrawl c50b18b3bb
Move PathgridGraph out of CellStore
By definition this is not 'Mutable state of a cell' and does not belong in CellStore.

This change should improve startup times (graph is now loaded on demand) and edits to 'pathgrid.hpp' no longer cause the entirety of OpenMW to be rebuilt.
7 years ago
Andrei Kortunov 9943bd4d74 AiWander fast forwarding improvements (bug #3638) 7 years ago
scrawl 29556a1802 More consistent wording of errors/warnings
A Warning indicates a potential problem in the content file(s) that the user told OpenMW to load. E.g. this might cause an object to not display at all or as intended, however the rest of the game will run fine.

An Error, however, is more likely to be a bug with the engine itself - it means that basic assumptions have been violated and the engine might not run correctly anymore.

The above mostly applies to errors/warnings during game-play; startup issues are handled differently: when a file is completely invalid/corrupted to the point that the engine can not start, that might cause messages that are worded as Error due to the severity of the issue but are not necessarily the engine's fault.

Hopefully, being a little more consistent here will alleviate confusion among users as to when a log message should be reported and to whom.
7 years ago
MiroslavR 87fd011a28 Clean-up saves by dropping references with invalid RefNums (Fixes #1956) 8 years ago
scrawl a7d4928593 Properly handle moved references in respawning code (Fixes #3600) 8 years ago
MiroslavR 4a3529488b Fix possible reference duplication when the refID is modified by a plugin (Bug #3471) 8 years ago
MiroslavR d790747389 Implement deletion of moved references (Bug #3471) 8 years ago
Bret Curtis 2c90b0b78d fix a few spelling mistakes 8 years ago
scrawl 3e6cf17665 Warn about cellrefs with an empty refId (Bug #3238) 8 years ago
scrawl d0aba0d9ee Catch exceptions thrown during reference loading (Bug #3238) 8 years ago
scrawl 2821f46a18 Corpse clearing fix 8 years ago
scrawl f2f601b958 Implement corpse clearing (Fixes #2363) 8 years ago
scrawl c3ef387208 Vanilla-compatible creature/NPC respawning (Fixes #2369, Fixes #2467) 8 years ago
scrawl 6f9ca0f68f Add basic cell preloader class
Not properly in use yet, but seems to be working.
8 years ago
scrawl 69c2c4fcc1 updateMergedRefs before reading MVRF tags (Fixes #3161) 8 years ago
scrawl 1905f0bf2d Add support for placing BodyParts in a cell (Bug #3118) 8 years ago
scrawl e5d9ee30f4 Add count argument to copyObjectToCell
Fixes the gold bug introduced in c9ca5bc946
9 years ago
scrawl a344183247 Comment fix 9 years ago
scrawl 19d87c78f2 Add CellStore::forEachConst 9 years ago
scrawl 2fe2f53b02 Set the changed flag in CellStore::search (Fixes #3089) 9 years ago
scrawl d6bcb7906d Fix crash in a warning message 9 years ago
scrawl 359b0b3772 Rename for clarity 9 years ago
scrawl bdae572264 Merge pull request #840 from scrawl/movedrefs
Object movement between cells
9 years ago