1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-01-25 15:35:23 +00:00

45 Commits

Author SHA1 Message Date
Petr Mikheev
f1beaa7b8c Put ESMStore to Environment 2023-04-20 21:45:49 +02:00
Evil Eye
a08f37cfe8 Don't use a levelled creature's base pointer when spawning a new instance 2023-01-04 22:18:56 +01:00
fteppe
125b21de20 Initial commit: In ESM structures, replace the string members that are RefIds to other records, to a new strong type
The strong type is actually just a string underneath, but this will help in the future to have a distinction so it's easier to search and replace when we use an integer ID

Slowly going through all the changes to make, still hundreds of errors

a lot of functions/structures use std::string or stringview to designate an ID. So it takes time

Continues slowly replacing ids. There are technically more and more compilation errors

I have good hope that there is a point where the amount of errors will dramatically go down as all the main functions use the ESM::RefId type

Continue moving forward, changes to the stores

slowly moving along

Starting to see the fruit of those changes.

still many many error, but more and more Irun into a situation where a function is sandwiched between two functions that use the RefId type.

More replacements. Things are starting to get easier

I can see more and more often the issue is that the function is awaiting a RefId, but is given a string
there is less need to go down functions and to fix a long list of them.

Still moving forward, and for the first time error count is going down!

Good pace, not sure about topics though, mId and mName are actually the same thing and are used interchangeably

Cells are back to using string for the name, haven't fixed everything yet. Many other changes

Under the bar of 400 compilation errors.

more good progress <100 compile errors!

More progress

Game settings store can use string for find, it was a bit absurd how every use of it required to create refId from string

some more progress on other fronts

Mostly game settings clean

one error opened a lot of other errors. Down to 18, but more will prbably appear

only link errors left??

Fixed link errors

OpenMW compiles, and launches, with some issues, but still!
2022-12-27 19:15:54 +01:00
clang-format-bot
ddb0522bbf
Apply clang-format to code base 2022-09-22 21:35:26 +03:00
Evil Eye
0cded25033 Remove various string copies 2022-08-24 20:38:52 +02:00
Evil Eye
4ff12d8945 Make Class::getName return string_view 2022-08-16 21:15:03 +02:00
elsid
fdf6e58ea3
Split apps/openmw/mwmechanics/actorutil.hpp 2022-06-26 16:42:29 +02:00
elsid
dc20e799e1
Use static object to register classes 2022-04-06 16:49:25 +02:00
ζeh Matt
08fae7be6e
Pass the prng from world where appropriate 2022-03-21 17:49:42 +02:00
Bret Curtis
d1fb854521 move most of the files from esm to esm3, keep common code in esm; this is make space for a future with esm4
esm typo

esm typo
2022-01-23 17:04:48 +01:00
psi29a
c844e5d045 Merge branch 'racer_recursion_limited' into 'master'
Check if a leveled creature is in an unloaded cell before deciding it doesn't exist

Closes #4376

See merge request OpenMW/openmw!1420

(cherry picked from commit 782371cb2e7f6653d72305090033557b53bbcf3a)

6d945da7 Check if a leveled creature is in an unloaded cell before deciding it doesn't exist
2021-12-06 13:58:35 +00:00
Andrei Kortunov
362c124e8f Allow to place levelled creatures to the game world (bug 6347) 2021-10-17 17:58:54 +04:00
Bo Svensson
ef906cbfa8
improves MWClass mapping (#3166)
Currently, we use a peculiar mapping of ESM classes by their std::type_info::name. This mapping is an undefined behaviour because std::type_info::name is strictly implementation defined. It could return a non-unique value on some platforms. With this PR we use the unsigned int sRecordId of the ESM class as a more efficient lookup type that does not build on undefined behaviour. We can expect marginally faster save-game loading with these changes as well.
2021-10-11 13:46:21 +02:00
elsid
bd33fa76b6
Use CRTP to define CustomData clone function 2021-04-05 11:53:07 +02:00
elsid
045bb7cbd7
Store CustomData and ContainerStore as unique_ptr 2021-04-05 11:52:52 +02:00
Andrei Kortunov
8ca3c3b123 Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
Capostrophic
07779d7fcf Properly utilize creature levelled list's scale (bug #5369) 2020-04-12 13:21:13 +03:00
Andrei Kortunov
dea2018d9f Do not use dynamic casts when using ObjectState 2020-03-17 15:18:40 +04:00
Capostrophic
6b74630f6e Preparation work
Phase out canBeActivated() to unify activation checks
Use getName() for the name caption in tooltips
Always use tooltips for non-activator objects
Invert hasTooltip default value
2019-09-10 23:38:16 +03:00
Capostrophic
7ef6fa9f61 Remove deprecated GMST get* functions 2018-08-29 18:38:12 +03:00
Bret Curtis
d785344fad purge all instances of <boost/shared_ptr.hpp>, clean up unused headers 2017-06-09 19:08:53 +02:00
Ewan Higgs
38a2de3c51 convert std::autor_ptr to std::unique_ptr, originally by Ewan Higgs and updated by Bret Curtis 2017-06-09 16:49:25 +02:00
Allofich
125e94ef0e Fix shadowing warnings 2016-10-31 00:39:31 +09: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
c5d3e6c993 Disable preloading of levelled lists 2016-02-22 14:31:02 +01:00
scrawl
f6f9eff9a6 Preload levelled creatures 2016-02-09 03:06:00 +01:00
scrawl
0d4729dcd5 Use the const version of CustomData::as* 2015-12-19 16:19:52 +01:00
scrawl
04f7a8f8eb Remove redundant getId function 2015-12-18 16:58:38 +01:00
scrawl
d9bbd83b09 Accept a ConstPtr in getToolTipInfo
Accept a ConstPtr in functions used by getToolTipInfo
2015-12-18 15:47:16 +01:00
scrawl
ed3486e816 Improve const-correctness in writeAdditionalState 2015-12-18 00:19:06 +01:00
scrawl
eb51e2838f Utilize the mHasCustomData flag in writeAdditionalState 2015-12-18 00:07:40 +01:00
scrawl
cd4a1ffd16 Fast version of dynamic_cast for MWClass 2015-11-29 14:26:52 +01: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
scrawl
dfaab1188f Fix for broken levelled creature spawning (Fixes #2365) 2015-02-11 12:10:46 +01:00
scrawl
c05874e1ff Reset CreatureLevList spawning flag if levelled list returned no creature 2014-09-18 06:06:20 +02:00
Marc Zinnschlag
4fb897f2f8 added missing getId functions to classes derived from MWWorld::Class 2014-07-18 09:56:58 +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
scrawl
ae66d28c87 Feature #32: Implement respawn for containers, creatures and NPCs 2014-05-17 09:09:00 +02:00
scrawl
471bbd0021 Savegame: store levelled creature state and move to actorIds
(Closes #1332)
2014-05-15 09:54:04 +02:00
scrawl
c8c0e5de38 Fixed code issues found with unity build. Missing include guards, duplicated functions, ... 2014-03-16 23:49:06 +01:00
scrawl
12de0afb03 Feature #50: Spawn projectiles
Fix a bug in copyObjectToCell.
Make actor rotations more consistent.
2014-03-08 01:31:27 +01:00
scrawl
9653355cf1 Feature #701: Spawn levelled creatures in cells 2014-01-18 07:26:27 +01:00
Marc Zinnschlag
239498bcd4 added getName function 2010-08-03 17:11:41 +02:00
Marc Zinnschlag
f50ced4616 added missing record classes 2010-08-03 15:24:44 +02:00