Koncord
aa1f5c3cd3
[Client] Change pointer type to reference
2017-06-27 21:58:36 +08:00
David Cernat
75a60a4700
[Client] Update debug in CellStore
2017-06-02 05:26:07 +03:00
David Cernat
7177d56cfb
[Client] Only require refNumIndex & mpNum for CellStore::searchExact()
2017-05-27 16:59:23 +03:00
David Cernat
bdc8b7f863
[Client] Send level creatures in ObjectPlace reply to ActorList request
2017-05-06 08:40:36 +03:00
David Cernat
8d41a0c53b
[Client] Make LocalActor initialization include newly spawned Actors
2017-05-05 02:46:16 +03:00
David Cernat
ebf9df3fe2
[Client] Add getMergedRefs() method to CellStore
2017-05-02 03:29:52 +03:00
David Cernat
9b58973929
[Client] Remove variable added by tes3mp to CellStore that is not used
2017-05-02 02:42:37 +03:00
David Cernat
bb9ea6ccd4
[Client] Also include list of creatures in reply to ActorList
2017-04-05 06:22:01 +03:00
David Cernat
ca92be14a5
[Client] Reply to ActorList request with list of NPCs
2017-04-05 05:54:25 +03:00
David Cernat
4644235cf6
[Client] Use mpNum in exact searches for objects
2017-04-04 10:07:15 +03:00
David Cernat
e5cf632e1d
[Client] Stop creating new reference numbers for placed/spawned objects
2017-04-04 06:01:48 +03:00
David Cernat
df051a777a
Merge pull request #181 from OpenMW/master
...
Add OpenMW commits up to 4 Mar 2017
2017-03-04 22:56:16 +02:00
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.
2017-03-04 21:48:31 +01:00
Koncord
b0ebad8b83
[Client] Fix crash on Linux
2017-02-22 16:30:07 +08:00
David Cernat
88f891b5bd
[Client] Make it possible to easily iterate through container items
2017-02-14 23:10:45 +02:00
David Cernat
59c3dbe6af
Merge pull request #120 from OpenMW/master while resolving conflicts
...
# Conflicts:
# README.md
2016-12-30 23:59:30 +02:00
MiroslavR
87fd011a28
Clean-up saves by dropping references with invalid RefNums ( Fixes #1956 )
2016-12-22 20:48:58 +01:00
Koncord
6e6237541a
Fix "comparison between signed and unsigned integer expressions"
2016-12-21 16:13:39 +08:00
David Cernat
a4647de048
Break away from OpenMW by giving RefNum indexes to new created objects
2016-10-30 00:21:55 +03:00
David Cernat
1f982e4dc7
Find objects from world packets using both ID and reference number
2016-10-28 21:31:41 +03:00
David Cernat
47ebd24b4a
Merge pull request #79 from OpenMW/master while resolving conflicts
...
# Conflicts:
# .travis.yml
# apps/openmw/mwinput/inputmanagerimp.cpp
2016-10-24 09:18:21 +03:00
David Cernat
a6fa0073a0
Find items by mRefNum.mIndex instead of mRefNum for WorldPackets
2016-10-23 23:13:42 +03:00
David Cernat
40f1db2d86
Create SearchByRefNumCustomVisitor in CellStore that returns entire Ptr
2016-10-22 17:47:21 +03:00
David Cernat
cc98a25dcf
Add searchByRefNum method to OpenMW's CellStore
2016-10-22 16:47:11 +03:00
scrawl
a7d4928593
Properly handle moved references in respawning code ( Fixes #3600 )
2016-10-18 23:51:45 +02:00
David Cernat
8686b9cc12
Merge pull request #29 from OpenMW/master
...
Add OpenMW commits from end of July
2016-08-04 00:56:36 +03:00
MiroslavR
4a3529488b
Fix possible reference duplication when the refID is modified by a plugin (Bug #3471 )
2016-07-22 03:58:23 +02:00
MiroslavR
d790747389
Implement deletion of moved references (Bug #3471 )
2016-07-22 01:59:02 +02:00
davidcernat
ab309180c2
Add useful debug info for cell changes
2016-07-21 23:07:37 +03:00
Aesylwinn
b4a000913c
Merge remote-tracking branch 'yar/master' into Even
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/mwdialogue/filter.cpp
# apps/openmw/mwmechanics/character.cpp
# apps/openmw/mwworld/localscripts.cpp
# components/CMakeLists.txt
# components/compiler/exprparser.cpp
# components/sceneutil/workqueue.cpp
2016-07-17 23:50:52 -04:00
davidcernat
7bf08e5e5a
Fix transition between exterior cells for non-local players
...
Make the local player send a packet whenever moving from one exterior cell to another, don't require objects to have RefNums to be moved correctly between exterior cells, and increase the packet priority for cell changes.
2016-07-17 22:03:20 +03:00
scrawl
0720a19fc0
Add support for placing BodyParts in a cell (Bug #3118 )
2016-07-07 23:50:48 +08:00
Bret Curtis
2c90b0b78d
fix a few spelling mistakes
2016-04-07 11:55:49 +02:00
scrawl
3e6cf17665
Warn about cellrefs with an empty refId (Bug #3238 )
2016-03-07 22:44:03 +01:00
scrawl
d0aba0d9ee
Catch exceptions thrown during reference loading (Bug #3238 )
2016-03-07 21:28:50 +01:00
scrawl
2821f46a18
Corpse clearing fix
2016-03-01 11:31:08 +01:00
scrawl
f2f601b958
Implement corpse clearing ( Fixes #2363 )
2016-02-27 13:20:50 +01:00
scrawl
c3ef387208
Vanilla-compatible creature/NPC respawning ( Fixes #2369 , Fixes #2467 )
2016-02-27 12:53:07 +01:00
scrawl
6f9ca0f68f
Add basic cell preloader class
...
Not properly in use yet, but seems to be working.
2016-02-07 00:14:13 +01:00
scrawl
69c2c4fcc1
updateMergedRefs before reading MVRF tags ( Fixes #3161 )
2016-02-03 19:13:26 +01:00
scrawl
1905f0bf2d
Add support for placing BodyParts in a cell (Bug #3118 )
2016-01-02 01:30:06 +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
a344183247
Comment fix
2015-12-18 02:34:42 +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
scrawl
d6bcb7906d
Fix crash in a warning message
2015-12-17 16:11:20 +01:00
scrawl
359b0b3772
Rename for clarity
2015-12-12 22:37:23 +01:00
scrawl
bdae572264
Merge pull request #840 from scrawl/movedrefs
...
Object movement between cells
2015-12-09 14:10:57 +01:00
scrawl
07b064f616
Rename to lowerCaseInPlace
2015-12-07 22:49:15 +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
4b0ecaa0a0
Fix physics bug
2015-12-06 22:10:01 +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
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
d0c6b407b4
Fix isUnderwater checks being off by one for exterior cells
2015-12-03 15:16:50 +01:00
Stanislav Bas
67c8f95c4e
Load/read methods (for ESM records) accept a deleted flag in OpenMW
2015-07-22 22:15:37 +03:00
Stanislav Bas
e8a9567be3
Move DELE handling to CellRef record
2015-07-15 19:39:01 +03:00
Alexander "Ace" Olofsson
3655ef16af
Explicitly instantiate ESM::StatState
2015-07-07 19:19:37 +02:00
scrawl
19988d5e45
Remove RefData::getHandle
2015-05-12 04:04:54 +02:00
scrawl
e3f1cb8305
Remove "loading cell" message
...
This spams the log too much, in particular when loading a savegame.
2015-03-02 21:12:21 +01:00
scrawl
d13335ba40
Ensure the item can be equipped in the given slot when loading inventory
2015-01-23 15:32:34 +01:00
scrawl
c65f9cb3c0
Revert "Change save format to store relative equipment index"
...
This reverts commit 89d9649b50
.
2015-01-23 02:32:43 +01:00
scrawl
89d9649b50
Change save format to store relative equipment index
...
Store the index for the allowedSlots vector instead of the absolute slot index. This will more gracefully handle edge cases like the available slots for an item having changed when loading the game, or the "allows stacking" property having changed. However the main reason this was done is to ease work on the essimporter.
2015-01-20 23:55:26 +01:00
scrawl
9014dc48ee
Don't require the object type id for reading references from savegames
...
This is redundant, since we can look it up from the RefID.
2015-01-20 00:42:25 +01:00
scrawl
235683e449
Remove LightState from openmw save format to streamline inventory loading
2015-01-19 11:36:00 +01:00
dteviot
7aa0f887c0
Minor changes to ESM::RefNum
...
1. Changed mIndex to unsigned, to solve potential implementation defined behavior with right shift.
2. Refactoring to minimize use of magic number -1 to indicate "no Content File".
2015-01-11 12:20:22 +13:00
scrawl
0fe7500f74
Work around pathgrid record limitation ( Fixes #2195 )
2014-12-09 00:13:56 +01:00
scrawl
48d5789aeb
Use a separate flag for references deleted by a content file ( Fixes #2018 )
...
The flag must be separate so as to not contaminate the user's savegame.
Fixes the following use cases that were broken before:
- Content file edits a reference that was already deleted by a previously loaded content file -> reference must stay deleted
- Changed or new content file deletes a reference that is already present in the user's savegame -> reference must be deleted
- Said content file is disabled again - reference must be undeleted
2014-12-01 22:16:45 +01:00
scrawl
7afd2ca614
Consider moved references in CellStore::listRefs
2014-06-15 14:18:16 +02:00
scrawl
395f98e476
Fix triggering changed flag for all references when cell is visited
...
The InsertFunctor for cells was calling localRotateObject() for all references which set the mChanged flag in RefData to true.
Also clean up RefData interface slightly.
2014-06-15 14:18:16 +02:00
scrawl
039398c8ae
Basic RefData and CellRef change tracking
...
Wrapped item charge handling in getItemHealth function
2014-05-25 14:30:07 +02:00
Emanuel Guevel
1e4a854433
Remove static method MWWorld::Class::get(&Ptr)
...
It was just adding a level of indirection to Ptr.getClass().
All the call were replaced by that instead. The number of lines changed
is important, but the change itself is trivial, so everything should be
fine. :)
2014-05-22 20:50:00 +02:00
scrawl
ae66d28c87
Feature #32 : Implement respawn for containers, creatures and NPCs
2014-05-17 09:09:00 +02:00
scrawl
6de7e16550
Fix searchPtrViaActorId not skipping over deleted references
...
Fixes an issue when an actor has moved cell: searchPtrViaActorId would randomly return the deleted Ptr from the old cell.
2014-05-15 09:57:09 +02:00
scrawl
a76e391ad0
Savegame: store door movement state ( Closes #747 )
2014-05-15 09:54:10 +02:00
scrawl
471bbd0021
Savegame: store levelled creature state and move to actorIds
...
(Closes #1332 )
2014-05-15 09:54:04 +02:00
scrawl
3cdbcf3c28
Merge branch 'actorid' of https://github.com/OpenMW/openmw
...
Conflicts:
apps/openmw/mwmechanics/creaturestats.cpp
2014-05-14 02:35:05 +02:00
scrawl
a4a9794417
Savegame: store fog of war ( Closes #1177 )
2014-05-11 02:07:58 +02:00
scrawl
136813a882
Bug #1319 : Fix references not coming from a content file incorrectly overwriting each other
2014-05-10 00:01:30 +02:00
Marc Zinnschlag
f6a876bc3d
added actor ID
2014-04-29 15:27:49 +02:00
Thoronador
1b8c975d5b
minor performance improvements in apps/openmw
...
Checking for emptiness using size() might be inefficient, because
it can take linear time, while empty() is guaranteed to take only
constant time.
For non-primitive types, postfix ++ operators are inefficient
compared to prefix ++ operators, because post-increment usually
involves keeping a copy of the previous value around.
2014-04-27 19:10:23 +02:00
scrawl
cd1b4218e7
Fix dynamically placed objects being discarded when loading game
2014-04-26 05:01:26 +02:00
cc9cii
f59226265a
Remove redundant parameter from aStarSearch. Also update some comments.
2014-04-04 18:10:06 +11:00
cc9cii
040d4f8fc4
Move PathgridGraph into separate files.
2014-04-04 06:13:47 +11:00
cc9cii
98f77714ce
Per-cell pathgrid data and calculation moved off PathFinder. Now the edge cost calculations and strongly connected component searches are done only once per cell. Per-actor data and methods still remain with PathFinder.
...
This version still has debugging statements and needs cleaning up.
2014-04-03 21:43:44 +11:00
Marc Zinnschlag
9b18e01507
keep track of which cells have state that needs to be saved
2014-02-24 10:03:04 +01:00
Marc Zinnschlag
bfcd768078
various bits of cleanup
2014-02-23 21:39:18 +01:00
Marc Zinnschlag
83ded18af0
encapsulated reference collections
2014-02-23 21:21:27 +01:00
Marc Zinnschlag
f220867144
make Ptr a bit more pointer-like
2014-02-23 18:17:41 +01:00
Marc Zinnschlag
b72c1c2c58
encapsulated water level
2014-02-23 17:34:18 +01:00
Marc Zinnschlag
79e723ad06
encapsulated mIds
2014-02-23 16:46:07 +01:00
Marc Zinnschlag
8ea686c6c8
encapsulated mState
2014-02-23 14:26:36 +01:00