Commit Graph

275 Commits (42c7fc8e921272d18830054fd217e6188b81a110)

Author SHA1 Message Date
Kindi 58a16dacbe take2 resolve 1 year ago
Evil Eye b99f58613e Remove signed/unsigned conversions in pathgrid loading code and use meaningful member names 1 year ago
Evil Eye f9c5edf6b9 Replace more sized reads and unsized ints 1 year ago
Evil Eye b59739a529 Replace more sized reads 1 year ago
Andrei Kortunov 6ee86dea82 Implement Lua API for factions (feature 7468) 1 year ago
Petr Mikheev 32f3a16db3 Change FormId::toString to be consistent with RefId. Remove FormIdRefId. 1 year ago
Evil Eye 10f1e9a4e0 Load the lowest faction reaction for every faction 1 year ago
psi29a 5b3e2fbf1c Merge branch 'clickbait' into 'master'
Assign StringRefIds to attributes

See merge request OpenMW/openmw!3256
1 year ago
Evil Eye 62f47acf6b Replace more explicitly sized reads and variable width integers 1 year ago
Evil Eye e660a9ca16 Assign StringRefIds to attributes 1 year ago
elsid bda29819cf
Reduce include dependency for land records 1 year ago
elsid 955790dc31
Split ESM::Land::loadData 1 year ago
elsid bd426bac5c
Use static_cast 1 year ago
elsid 6f3b7072ac
Change mWnam type to std::array 1 year ago
elsid 0cb37742cb
Replace Land::swap by move assignment 1 year ago
elsid c88e9dee27
Use unique_ptr to store LandData in ESM::Land 1 year ago
elsid d0f8ab5767
Move getLandData definitions to class definition 1 year ago
elsid 07599d0bb0
Move condLoad to unnamed namespace 1 year ago
elsid dad0cb3349
Move transposeTextureData to unnamed namespace 1 year ago
elsid a2f2b1a3d1
Remove redundant ESM::Land and LandData default constructors 1 year ago
elsid 95a39b3281
Use sized types for land records members 1 year ago
elsid f15ccec0d9
Remove unused ESM::Land functions 1 year ago
psi29a 5389d32b5c Merge branch 'applycontentfile_coverity' into 'master'
Fix coverity warning in esm3/globalscript.cpp

See merge request OpenMW/openmw!3325
1 year ago
psi29a c9f03b4174 Merge branch 'sizeup' into 'master'
Replace more sized reads

See merge request OpenMW/openmw!3322
1 year ago
elsid 5abbc56bf2
Use proper cell size for ESM4 cells in CoordinateConverter 1 year ago
Petr Mikheev f5ddffa087 Fix coverity warning in esm3/globalscript.cpp 1 year ago
Evil Eye 9e376f3783 Replace explicitly sized reads in cellid, cellref 1 year ago
Evil Eye 48484c9416 Replace explicitly sized reads in aisequence 1 year ago
psi29a 7b4f7b7f07 Merge branch 'adjust_refnum' into 'master'
Adjust FormId in FormIdRefId and for items in containers when loading saves

See merge request OpenMW/openmw!3293
1 year ago
psi29a 5160fbc2a0 Merge branch 'fixedtimestamp' into 'master'
Move TimeStamp to ESM3 and remove sized reads

See merge request OpenMW/openmw!3295
1 year ago
psi29a c86eecb2ea Merge branch 'movable_objects' into 'master'
Move objects instead of copying where possible

See merge request OpenMW/openmw!3289
1 year ago
psi29a 23671ced33 Merge branch 'fix_use_after_move' into 'master'
Fix use after move in InfoOrder::insertInfo

See merge request OpenMW/openmw!3296
1 year ago
Andrei Kortunov d3d7a663c6 Move some objects instead of copying 1 year ago
elsid 66c5944ecf
Fix use after move in InfoOrder::insertInfo
When it->second.mPosition->mPrev != value.mPrev value is first moved into
*mPosition and then used to get mPrev. Since mPrev is RefId and it's copy-only
type there is no real problem but coverity complains about it.

Also enforce contract of insertInfo to support move-only types by adding a test
for a value type with deleted copy constructors.
1 year ago
Evil Eye 79b3855c5b Move TimeStamp to ESM3 and remove sized reads 1 year ago
Petr Mikheev 9a9f9d7081 Adjust FormId in FormIdRefId and for items in containers when loading saves 1 year ago
elsid dd54857610
Add missing array include 1 year ago
psi29a a6d6e16d48 Merge branch 'readsize' into 'master'
Disallow implicitly sized reads of ESM structs

See merge request OpenMW/openmw!3100
1 year ago
Mads Buvik Sandvei 364f2a98e9 Use refnum instead of slot for items during spellcast 1 year ago
Evil Eye 6e5d84ce37 inline 1 year ago
Evil Eye 9d4877d432 Treat std::array like regular arrays 1 year ago
Evil Eye 45ba05c0ed Disallow implicitly sized reads of ESM structs 1 year ago
psi29a ec9b4c4563 Merge branch 'caius4friends' into 'master'
Fix dialogue insertion again

See merge request OpenMW/openmw!3212
1 year ago
psi29a 03dbe1c9f3 Merge branch 'stringrefidskills' into 'master'
Assign StringRefIds to skills

See merge request OpenMW/openmw!3146
1 year ago
Evil Eye 2a1d520c9e Address feedback 1 year ago
Evil Eye 7573004efc Implement the NegativeLight flag 1 year ago
Evil Eye cd8f2355c0 Only allow StringRefId for Skill ids 1 year ago
Evil Eye 967b5d205b Use StringRefId for skills 2 years ago
Evil Eye ac9378fa08 Replace Skill::mIndex with Skill::refIdToIndex 2 years ago
Evil Eye 4eac137109 Change control flow to be easier to understand 2 years ago
Alexei Dobrohotov 66fd1f8862 Allow subrecords to overlap the following record (bug #6025) 2 years ago
Evil Eye d3c1928f01 Fix dialogue insertion again 2 years ago
elsid f6fce5ee15
Cleanup includes 2 years ago
elsid a6dbd819a1
Fix writing IndexRefId to ESM3
Use correct enum value.
2 years ago
Evil Eye 73c2387708 Merge schools into skills 2 years ago
psi29a dd0d66513d Merge branch 'clickbait' into 'master'
Mostly dehardcode attributes

See merge request OpenMW/openmw!3164
2 years ago
Zackhasacat 611a6429a9 Lua: Add effects to potionRecord, ingredientRecord 2 years ago
Evil Eye bac6777fae Reduce the number of magic numbers 2 years ago
psi29a 807893eb45 Merge branch 'clickbait' into 'master'
Mostly dehardcode skills

See merge request OpenMW/openmw!3112
2 years ago
Evil Eye 3c588900dd Apply elsid's suggestion and revert 3a888ef543 2 years ago
Evil Eye da4e04522b More closely replicate Morrowind.exe's locks 2 years ago
Evil Eye 65b22975c9 Remove SkillEnum 2 years ago
Evil Eye 16c0f0d5cc Use a regular TypedDynamicStore for ESM:Skill 2 years ago
Evil Eye e01a3076dd Use std::array in NpcStats 2 years ago
Evil Eye a5bb6c7d8d Use std::array in NPDTstruct52 2 years ago
Evil Eye dd83da5eba Use std::array in FADTstruct 2 years ago
Evil Eye 7be005c9a5 Use std::array in CLDTstruct 2 years ago
Evil Eye 8a474b9807 Use std::array in RADTstruct 2 years ago
Evil Eye 08f35fe839 Add ESM::Skill::mWerewolfValue 2 years ago
Evil Eye eea730768b Replace sIconNames with ESM::Skill::mIcon 2 years ago
Evil Eye 9c60a6fa4d Replace sSkillNameIds with ESM::Skill::mName 2 years ago
florent.teppe ad8cfde4e0 ESM::LandData no longer a virtual interface
instead it is constructed from ESM::Land or ESM4::Land
2 years ago
florent.teppe f600730459 fixes functions that were virtual but not tagged as override. 2 years ago
florent.teppe e0fa15b727 Abstracted Land data that can be used by esm3 and esm4. 2 years ago
psi29a 16a580eb21 Merge branch 'clickbait' into 'master'
Remove sAttributeIds and sSkillIds

See merge request OpenMW/openmw!3071
2 years ago
unknown 14600de185 Remove sAttributeIds and sSkillIds 2 years ago
jvoisin c98c532213 Replace all asserts in components/esm[34] with throw 2 years ago
Evil Eye 877f6747be Deduplicate specialization code 2 years ago
elsid dc8dfe81ce
Add more details to exceptions 2 years ago
Mads Buvik Sandvei 410e8b100a Elsid comments 2 years ago
Mads Buvik Sandvei 5a8c6df633 clang'd 2 years ago
Mads Buvik Sandvei 4bf23f152b Revert use of string_view to std::string for effectIdTo* methods. 2 years ago
Mads Buvik Sandvei 6cfc06d7d8 There is no typo 2 years ago
Mads Buvik Sandvei 9a59330561 refactor effect names in loadmgef. Added a map from effect index to non-gmst effect name for use in lua scripts. 2 years ago
Mads Buvik Sandvei b791ce9132 Remove redundant qualifiers 2 years ago
Mads Buvik Sandvei 7ba43c9426 actor.ActiveEffects and actor.ActiveSpells 2 years ago
elsid 8f47da46ec
Show magic effect name instead of IndexRefId 2 years ago
florent.teppe 56cb2a83ec removed sDefaultWorldspace, only sDefaultWorldspaceId now.
sDefaultWorldspaceId is a StringRefId to be able to getvalue easily.
2 years ago
florent.teppe a62e75fd19 Initial attempt at loading esm4 exteriors 2 years ago
elsid 0601d7213e
Remove ESM::RefId::sEmpty
This variable is only required to return empty RefId as const reference. There
is no point in doing so for a type cheap to copy.
2 years ago
elsid b33d12b8e1
Add missing and remove redundant includes 2 years ago
Petr Mikheev f09a689a4f Merge ESM::RefNum and ESM4::FormId 2 years ago
Evil Eye 8d8207b734 Refactor pathgrid indices to use size_t instead of int 2 years ago
florent.teppe 21bd28542a Applies review advice
2d coord hash moved to hash.hpp file
format version adds suffix to be more coherent
don't use ESM::RefId::sEmpty
RefId equality with string_view, conversion to refId unecessary
action teleport remove test that mCellId is empty
removes some const references, when copy is enough
invalid refid => empty refid
removes useless change
2 years ago
florent.teppe d782d37ee2 Make sure Vec2iRefId is trivially copyable on GCC 11.3
std::pair<int, int> isn't trivially copyable on some compilers
so a specific struct is defined, it's an int pair, but it should be recognised by GCC 11.3 as trivially copyable

Vec2iRefId => ESM3ExteriorCellRefId

more explcit name and use mX,mY instead of pair
renamed files and enum
2 years ago
florent.teppe 53b14c8b42 fix tests
hopefully also fixes clang tidy
2 years ago
florent.teppe 4c15064a83 Create new Vec2i RefId for ESM3 exterior cells.
Applies the necessary changes to use !2708 for the new Id type
2 years ago
florent.teppe 1e0c3bfdec fixes integration tests
we still want to be able to write using old formats
2 years ago
florent.teppe f99e65843a Removes most cellId.hpp include, simplifies id generation for cells. 2 years ago
florent.teppe c2182c2fcc Get Rid of ESM::CellId almost everywhere
it was a competing concept from using RefIds for cell.
There is almost no point to it now, except to load older data.
2 years ago