jvoisin
54adb9cbed
Fix an off-by-one in loadscpt
2021-04-12 12:03:20 +02:00
psi29a
301411c5c5
Merge branch 'esm_variant' into 'master'
...
Use std::variant for ESM::Variant implementation
See merge request OpenMW/openmw!719
2021-04-10 12:53:11 +00:00
Andrei Kortunov
124a33d8a3
Fix uninitialized variables
2021-04-10 10:58:00 +04:00
elsid
8e1c92d9af
Use std::variant for ESM::Variant implementation
2021-04-08 19:39:31 +02:00
elsid
03fc3ec803
Do not allow write variant of string as local variable
...
To be consitent with read where it's not allowed.
2021-04-04 23:09:27 +02:00
Gleb Mazovetskiy
b9c2f6ea1a
Minor cleanup: Remove using namespace std
...
I came across these while trying to figure why MSVC build triggers
https://developercommunity.visualstudio.com/t/error-c2872-byte-ambiguous-symbol/93889
In the end, the issue was not in openmw but in OSG, but it's good to
clean up here anyway.
2021-03-16 19:58:02 +00:00
Andrei Kortunov
4d48c81998
Add move assignment operator and move constructor for the ESM::Variant
2021-03-13 22:28:13 +04:00
Andrei Kortunov
f40e227686
Remove redundant formatting changes
2021-01-26 22:29:41 +04:00
Andrei Kortunov
d12a0fdcb3
Mark only instances from groundcover files as groundcover objects
2021-01-26 22:29:41 +04:00
Andrei Kortunov
14cf0ce1dc
Implement instanced groundcover
2021-01-26 22:29:41 +04:00
Andrei Kortunov
89f3f860ed
Allow to get a rotation vector from ESM::Position
2021-01-13 14:25:25 +04:00
elsid
7b54415c40
Fix reference binding to null
...
/usr/include/c++/10.2.0/bits/stl_vector.h:1046:34: runtime error: reference binding to null pointer of type 'value_type'
#0 0x55e37f50008a in std::vector<char, std::allocator<char> >::operator[](unsigned long) /usr/include/c++/10.2.0/bits/stl_vector.h:1046
#1 0x55e37f50008a in ESM::SavedGame::load(ESM::ESMReader&) /home/elsid/dev/openmw/components/esm/savedgame.cpp:28
#2 0x55e37e726139 in MWState::Character::addSlot(boost::filesystem::path const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/character.cpp:31
#3 0x55e37e742b39 in MWState::Character::Character(boost::filesystem::path const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/character.cpp:88
#4 0x55e37e7006e1 in MWState::CharacterManager::CharacterManager(boost::filesystem::path const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/charactermanager.cpp:25
#5 0x55e37e6d4140 in MWState::StateManager::StateManager(boost::filesystem::path const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/statemanagerimp.cpp:90
#6 0x55e37e82595a in OMW::Engine::prepareEngine(Settings::Manager&) /home/elsid/dev/openmw/apps/openmw/engine.cpp:641
#7 0x55e37e8439fd in OMW::Engine::go() /home/elsid/dev/openmw/apps/openmw/engine.cpp:867
#8 0x55e37e782760 in runApplication(int, char**) /home/elsid/dev/openmw/apps/openmw/main.cpp:289
#9 0x55e37f6483c3 in wrapApplication(int (*)(int, char**), int, char**, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/elsid/dev/openmw/components/debug/debugging.cpp:200
#10 0x55e37ba8e3fe in main /home/elsid/dev/openmw/apps/openmw/main.cpp:301
#11 0x7f013e845151 in __libc_start_main (/usr/lib/libc.so.6+0x28151)
#12 0x55e37baa0e3d in _start (/home/elsid/dev/openmw/build/gcc/ubsan/openmw+0x6c11e3d)
2021-01-09 22:59:24 +01:00
Andrei Kortunov
8084a336b5
Replace zeroes and nulls by nullptrs
2020-11-29 11:14:07 +04:00
Alexei Dobrohotov
53f91a3aa5
Merge pull request #3018 from akortunov/emplace
...
Use emplace_back instead of push_back
2020-11-01 01:58:56 +03:00
Andrei Kortunov
64ba81ecf2
Fix some issues, found by CoverityScan
2020-10-28 18:02:31 +04:00
Bret Curtis
5a824d0333
components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues
2020-10-22 23:57:53 +02:00
Andrei Kortunov
065ed5138e
Use emplace_back instead of push_back
2020-10-18 10:27:35 +04:00
Andrei Kortunov
8ca3c3b123
Mark overrided methods by override keyword
2020-10-16 22:18:54 +04:00
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
2020-10-13 17:46:32 +02:00
Andrei Kortunov
822764d0fa
Rework fixed strings handling
2020-10-05 21:52:22 +04:00
Andrei Kortunov
9f1fbd56a3
Fix SummonKey comparison function
2020-09-04 13:45:38 +04:00
Andrei Kortunov
67eace1028
Use struct instead of tuple
2020-08-29 11:24:08 +04:00
Andrei Kortunov
924f634bda
Support for multiple summons with same ID in the single spell
2020-08-28 21:14:54 +04:00
Evil Eye
6ad20ec9c7
Mutate base records when adding/removing spells
2020-07-28 08:33:28 +02:00
Andrei Kortunov
d0fe15b095
Use meaningful names instead of mSkill1 and mSkill2
2020-06-26 11:47:59 +04:00
bzzt lost a hitlab login
26ab176389
profiling
...
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:28 +02:00
Andrei Kortunov
d997842f8d
Use FourCC to declare all ESM record names
2020-06-09 10:07:37 +04:00
Bret Curtis
cd97d0c61c
Merge branch 'master' into automove
2020-06-08 11:42:05 +02:00
Roman Siromakha
27a113167c
Merge pull request #2890 from akortunov/position
...
Do not store object position, if it is the same as in CellRef
2020-06-08 01:12:47 +02:00
Andrei Kortunov
75e7a3e8b1
Do not store object position, if it is the same as in CellRef
2020-06-07 09:25:46 +04:00
elsid
5209f5ff6d
Mark all derived classes from ESM::ObjectsState and overriden functions as final
2020-06-06 23:00:53 +02:00
Capostrophic
1873da4c91
Don't save to or read automove state from saved games ( #5452 )
2020-06-06 15:58:21 +03:00
Bret Curtis
204d2acf25
Merge pull request #2092 from akortunov/float_stats
...
Store attributes and skills values as floats
2020-06-05 22:38:12 +02:00
Andrei Kortunov
81805b7263
Introduce a separate class to control world date and time
2020-06-05 12:07:32 +04:00
Andrei Kortunov
5468fcb29f
Store attributes and skills values as floats (bug #4021 )
2020-06-03 17:34:15 +04:00
Andrei Kortunov
3dce225f28
Implement vanilla-style corprus handling (bug #3714 , bug #4623 )
2020-06-03 12:58:17 +04:00
Andrei Kortunov
b5833f3c59
Use real time to update spell effects instead of game timestamps (bug #5165 )
2020-05-16 11:00:28 +04:00
Andrei Kortunov
e6ca95174a
Optimize characters data in savegame
2020-05-14 21:07:31 +04:00
Andrei Kortunov
d5806fd0ed
Fix merge conflicts
2020-05-12 14:33:00 +04:00
Bret Curtis
42cba092b7
Merge pull request #2716 from akortunov/png
...
Store fog of war as a PNG image instead of TGA
2020-05-12 11:52:23 +02:00
Bret Curtis
4b30bf5699
Merge pull request #2829 from Capostrophic/logging
...
Log some more things
2020-05-12 11:44:05 +02:00
unknown
3b4782959e
Allow targeting non-unique actors with StartScript (bug #2311 )
2020-05-10 14:57:06 +02:00
Capostrophic
aa5161f99e
Log some more things
2020-05-09 20:27:12 +03:00
Bret Curtis
e7795f2bf7
Merge pull request #2775 from Capostrophic/dooractivation
...
Only disarm traps with keys when the door/container is locked (bug #5370 )
2020-04-24 08:46:24 +02:00
Bret Curtis
8c2f3ff007
clean up code; purge const_cast
2020-04-19 16:31:54 +02:00
Capostrophic
bbed9a70c5
Ignore traps of initially unlocked refs with assigned keys
2020-04-14 17:49:03 +03:00
Capostrophic
ad333e88fe
Handle enchantment autocalc flag as a flag (bug #5363 )
2020-04-11 00:03:14 +03:00
Andrei Kortunov
028760e108
Merge pull request #2758 from akortunov/warnfix
...
Fix some issues, found by CoverityScan
2020-04-04 21:34:26 +04:00
Capostrophic
5732b8e026
Use std::fill instead of loops to reset some arrays to defaults
2020-04-04 17:53:36 +03:00
Capostrophic
27d4fe9ee1
Fix ESM::Land oversights
2020-04-04 16:48:38 +03:00
Andrei Kortunov
a68d9aed4c
Fix issues, found by CoverityScan
2020-04-04 17:45:26 +04:00
elsid
ef4a7089e4
Use template specialization for writeHNT to write raw arrays
...
To avoid passing explicit size argument where it's possible.
2020-04-04 01:12:49 +02:00
Andrei Kortunov
e20d156904
Do not write empty trade time
2020-03-18 13:31:26 +04:00
Bret Curtis
79517f3f42
Merge pull request #2724 from akortunov/factions
...
Cleanup ownership for items in containers
2020-03-18 10:00:36 +01:00
Andrei Kortunov
ea30e27370
Cleanup ownership for items in containers
2020-03-17 17:22:39 +04:00
Andrei Kortunov
dea2018d9f
Do not use dynamic casts when using ObjectState
2020-03-17 15:18:40 +04:00
Andrei Kortunov
94df2114c1
Store fog of war as a PNG image instead of TGA (bug #5108 )
2020-03-07 11:05:32 +04:00
Capostrophic
216a5d27c6
Avoid working with AMBI subrecord in tools unnecessarily (bug #5269 )
2020-02-04 20:57:04 +03:00
capostrophic
89055f1c6c
Generate WNAM upon saving terrain
2020-01-11 02:42:04 +03:00
capostrophic
0467e8ee15
Avoid heap corruption while reading SCVR (bug #4680 )
2020-01-04 01:34:41 +03:00
Alexei Dobrohotov
2693598d82
Merge pull request #2642 from akortunov/warnfix2
...
Add safety checks for door state
2019-12-23 21:22:56 +03:00
Andrei Kortunov
24044b08e0
Do not store gold-specific value for everything
2019-12-23 19:34:57 +04:00
Andrei Kortunov
88a695f251
Add safety checks for door state
2019-12-23 19:29:12 +04:00
Assumeru
737aa1e4e8
Remove FactionID editing from OpenCS ( #2636 )
...
* Remove FactionID editing
* remove useless comments
* rename FactionID to Unknown
2019-12-18 20:42:54 +03:00
Assumeru
dfbe0021a5
Change rescaling to be more inline with vanilla ( fixes #5214 ) ( #2635 )
...
* move rescaling to loadData
* clamp on save
2019-12-18 19:37:45 +03:00
Capostrophic
4b38bab0d9
Make sure empty cell name subrecords are saved (bug #5222 )
2019-12-03 18:47:02 +03:00
Andrei Kortunov
6eb8e0cf4d
Display magic effects according to research page
2019-11-07 11:05:18 +04:00
Bret Curtis
0ec4e51922
Revert "Store raw data about fog of war instead of RGBA images"
2019-10-30 14:48:44 +01:00
Bret Curtis
36614dba2a
Merge pull request #2453 from akortunov/fog_compression
...
Store raw data about fog of war instead of RGBA images
2019-10-30 13:45:55 +01:00
Andrei Kortunov
b2e12f0a73
Attempt to fix a regression - crash on ARM
2019-10-28 18:58:16 +04:00
Andrei Kortunov
2fc819cdae
Encode ID's in all places to UTF-8 (bug #3977 )
2019-10-10 20:52:32 +04:00
Nelsson Huotari
2fdaacf23c
remove for array, just std::swap
2019-10-06 23:50:16 +03:00
Nelsson Huotari
e35ed960ee
for -> std::copy
2019-10-06 21:57:10 +03:00
Nelsson Huotari
7f030fc3ee
copy mWnam record in copy constructor and custom assignment operator
2019-10-06 21:50:40 +03:00
Andrei Kortunov
b360deaec3
Store raw data about fog of war instead of RGBA images (bug #5108 )
2019-09-22 19:59:12 +04:00
Andrei Kortunov
f0cef772fa
Refactor weapon types behaviour
...
1. Move weapon types behaviour from switches to the table (should allow
us to de-hardcode weapon types later)
2. Gereralize bones injection to actors skeletons (instead of using the
hardcoded xbase_anim_sh.nif)
2019-08-09 19:40:27 +04:00
Andrei Kortunov
b9a1e4d796
Merge pull request #2425 from Capostrophic/esm
...
Signedness fixes
2019-06-21 10:01:10 +04:00
Capostrophic
3aa65273c5
Signedness fixes
2019-06-18 14:47:10 +03:00
Evil Eye
698c90b3ee
fix builds against MyGUI master
2019-06-16 14:41:34 +02:00
Alexei Dobrohotov
2c956398c1
Actually fix bug 4938
2019-05-15 21:41:49 +03:00
Capostrophic
7814bd1b76
Support eight possible blood types (feature #4958 )
2019-04-14 18:48:31 +03:00
Capostrophic
4b6fc5f720
Make sure the record hasn't ended in getHString hack (bug #4938 )
2019-03-30 20:11:22 +03:00
elsid
c91deaf7af
Use std::vector::data method to avoid reference binding to null pointer
2019-03-16 00:46:00 +03:00
Andrei Kortunov
943279abbb
Consider land texture with given ID and index as override for base texture with the same ID and index (bug #4736 )
2019-03-11 20:19:19 +04:00
Bret Curtis
56d5fc788c
Merge pull request #2163 from Capostrophic/hello
...
AI data handling minor revisions
2019-02-24 20:14:08 +01:00
Bret Curtis
d4564a9be7
Merge pull request #2180 from akortunov/includes
...
Remove redundant includes
2019-02-24 01:14:16 +01:00
Bret Curtis
44920352ce
Merge pull request #2181 from Capostrophic/boost
...
Get rid of Boost.Array
2019-02-23 23:54:30 +01:00
Capostrophic
594ea39f5d
Revise AI data handling
...
Make Hello 16-bit unsigned as it's intended to be
Get rid of redundant mHasAI boolean
Always save AI data subrecord
Adjust creature and NPC default rating values to Morrowind defaults
2019-02-23 21:00:47 +03:00
Bret Curtis
4a69d96483
Merge branch 'esm_name_template_fix' into 'master'
...
Make sure that proper operator function of ESM:FIXED_STRING is used for char[N] argument
See merge request OpenMW/openmw!63
2019-02-23 13:39:15 +00:00
Adam Fandrejewski
75c204cdd8
Fix #4835 - undefined behavior - uninitialized mCtx
2019-02-23 13:35:25 +00:00
Andrei Kortunov
3032b177a1
Remove redundant includes
2019-02-23 08:02:12 +04:00
Capostrophic
58788de7c4
Get rid of Boost.Array
2019-02-22 23:16:34 +03:00
Andrei Kortunov
573b3f4f1d
Init target for AI packages from old saves
2019-02-05 08:03:31 +04:00
Azdul
7940317e42
Make sure that proper operator function is used for char[N] argument
2019-02-03 09:32:32 +01:00
Bret Curtis
8834ee95be
Merge pull request #2120 from Capostrophic/macros
...
Get rid of some remaining instances of C numeric limits
2019-01-10 18:59:34 +01:00
Capostrophic
a71cfca580
Get rid of some remaining instances of C limit macros
2019-01-09 16:06:18 +03:00
Andrei Kortunov
0937f02598
Get rid of unnecessary string streams
2019-01-07 21:08:16 +04:00
Capostrophic
d1e0a10136
Make sure AI data is initialized when loading actor records
2019-01-06 21:03:19 +03:00
Capostrophic
7155e787b4
Clean up fallback record creation
2018-12-28 01:22:24 +03:00
Capostrophic
4efe1bc892
Add prison marker record fallback definition (bug #4701 )
2018-11-05 19:37:46 +03:00