1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-16 19:29:56 +00:00
Commit graph

3836 commits

Author SHA1 Message Date
Evil Eye
27fa411f4f Convert strings in nif files to utf8 2024-01-16 20:56:58 +01:00
elsid
a2147d70cc
Use forward declaration for some VFS types
This will allow to save on preprocessed code size in the future changes.
2024-01-16 01:32:11 +01:00
Andrei Kortunov
a91e557c68 Fix Touch command (bug 7765) 2024-01-14 22:10:18 +04:00
psi29a
2836ca2d91 Merge branch 'dynamic_casts' into 'master'
Check dynamic cast results

See merge request OpenMW/openmw!3761
2024-01-14 17:23:13 +00:00
Andrei Kortunov
f8c1d48c0b Get rid of redundant casts 2024-01-14 10:54:51 +04:00
Andrei Kortunov
074ab682ab Move local variables in the editor 2024-01-12 10:10:27 +04:00
Yury Stepovikov
52623ddd7d Set MacOS current_path before reading configuration files [#7706] 2024-01-11 00:59:27 +00:00
elsid
66f5d70550
Use settings values to declare shortcut settings 2024-01-08 21:09:12 +01:00
Evil Eye
64673ea21f Merge branch 'editor_colour_settings' into 'master'
Use settings values to declare colour settings (#6876)

See merge request OpenMW/openmw!3747
2024-01-08 16:48:18 +00:00
psi29a
1bccd8483f Merge branch 'cs-icon-fix' into 'master'
Add OpenMW-CS RC file to app rather than static lib

See merge request OpenMW/openmw!3740
2024-01-08 08:00:06 +00:00
elsid
cc0b00a0d2
Use settings values to declare colour settings 2024-01-07 17:32:50 +01:00
psi29a
eedb96863e Merge branch 'editor_enum_settings' into 'master'
Use settings values to declare enum settings (#6876)

See merge request OpenMW/openmw!3724
2024-01-07 10:14:07 +00:00
AnyOldName3
6d37618301 Add OpenMW-CS RC file to app rather than static lib
Static libraries on Windows can't have embedded resources, so this mean the icon for the CS wasn't used.
This could have also been resolved by explicitly requesting the library type as OBJECT rather than letting it default to STATIC (as object libraries aren't a thing on-disk and are just an abstraction in CMake so you can use the same object files in different targets), but this seemed less invasive.

I also made it Win32-only as a Windows .rc file is meaningless on Unix, but it shouldn't be MSVC-only as MinGW can consume them.
2024-01-06 16:56:52 +00:00
Dave Corley
c563219b61 Cleanup(CS): Pass const ref when applicable for selection groups 2024-01-05 19:39:53 -06:00
Dave Corley
3ff1bae372 Cleanup(CS): More consistent names for selection group configs 2024-01-05 19:39:53 -06:00
Dave Corley
c93b6dca0a Fix(CS): Add record type to selection groups to fix #7759 2024-01-05 19:39:53 -06:00
elsid
72fa4924dc
Use settings values to declare enum settings 2024-01-03 22:55:00 +01:00
jvoisin
29c20cdb41 Merge branch 'fix_universal_id' into 'master'
Add missing UniversalId::mClass initialization

See merge request OpenMW/openmw!3707
2024-01-01 23:05:57 +00:00
elsid
94409ce172
Add missing UniversalId::mClass initialization 2024-01-01 01:12:19 +01:00
Evil Eye
e63933efa6 Use NAM9 for stack count 2023-12-31 17:12:46 +00:00
Alexei Kotov
0f9eb3d85a Merge branch 'editor_double_settings' into 'master'
Use settings values to declare double settings (#6876)

See merge request OpenMW/openmw!3701
2023-12-30 15:20:25 +00:00
Alexei Kotov
8a91e7057f Merge branch 'ref_id_universal_id' into 'master'
Fix RefId based UniversalId (#7747)

Closes #7747

See merge request OpenMW/openmw!3702
2023-12-30 10:59:03 +00:00
psi29a
cb24475662 Merge branch 'what-a-selection-you-have' into 'master'
Feat(CS): Add More Selection Controls

See merge request OpenMW/openmw!3674
2023-12-30 09:40:29 +00:00
elsid
39dd73263d
Avoid converting UniversalId to a different type via string 2023-12-29 14:15:28 +01:00
elsid
7b5310b569
Write StringRefId as is when converting UniversalId to string
To avoid adding quotes which on conversion ESM::StringRefId -> UniversalId ->
std::string -> UniversalId changes the string value adding quotes.
2023-12-29 14:12:36 +01:00
elsid
0fc78aa173
Make ESM::StringRefId compatible with std::string UniversalId 2023-12-29 13:10:13 +01:00
elsid
088d4ee5ce
Use settings values to declare double settings 2023-12-28 22:08:04 +01:00
elsid
6a16686107
Use settings values to declare string settings 2023-12-27 00:33:45 +01:00
psi29a
a2c6009352 Merge branch 'editor_bool_settings' into 'master'
Use settings values to declare bool settings (#6876)

See merge request OpenMW/openmw!3679
2023-12-26 15:31:14 +00:00
jvoisin
f80ba4e28c Apply 1 suggestion(s) to 1 file(s) 2023-12-26 13:54:23 +00:00
psi29a
f80bbd4e39 Merge branch 'these-are-the-datas-youre-looking-for' into 'master'
Add game-independent VFS directory to CS' VFS

See merge request OpenMW/openmw!3683
2023-12-26 10:21:58 +00:00
AnyOldName3
01e2e56f97 Add game-independent VFS directory to CS' VFS
This should have been like this all along - all the other applications that use the game's VFS do this.
2023-12-24 17:55:49 +00:00
Andrei Kortunov
1ca2a0ef66 Store generated UI by pointer to avoid redundant processing 2023-12-24 20:35:19 +04:00
Alexei Kotov
51b05647e2 Merge branch 'move_files' into 'master'
Move *.ui files for different applications to different folders

See merge request OpenMW/openmw!3659
2023-12-24 09:58:24 +00:00
elsid
edaac852d1
Use settings values to declare bool settings 2023-12-24 00:25:18 +01:00
Dave Corley
25f3e09da9 Fix(CS): Correct build issues on some compilers 2023-12-23 15:05:13 -06:00
Dave Corley
33ce7782e9 Feat(worldspacewidget.cpp): Add shortcut to clear selection 2023-12-23 15:05:13 -06:00
Dave Corley
a7f8ee1106 Feat(instancemode.cpp): Implement save/load selection group functions 2023-12-23 15:05:13 -06:00
Dave Corley
23e75bed8f Feat(object.cpp): Make object outline an optional argument when selecting it 2023-12-23 15:05:13 -06:00
Dave Corley
f287914f1e Feat(cell.cpp): Add select/unhide functions in cell.cpp 2023-12-23 15:05:13 -06:00
Dave Corley
8edc148418 Feat(CS): Implement select/unhide functions into interior & exterior
worldspace widgets
2023-12-23 15:05:13 -06:00
Dave Corley
94eadd436d Feat(worldspacewidget.cpp): Implement shortcut for visibility switching
& unhiding all instances
2023-12-23 15:05:13 -06:00
Dave Corley
9d155afc15 Feat(worldspacewidget.hpp): Add virtual decs for selection functions 2023-12-23 15:05:13 -06:00
Dave Corley
cf098033b9 Feat(Mask.hpp): Add mask for hidden objects 2023-12-23 15:05:13 -06:00
Dave Corley
0ec6dcbf1f Feat(Settings): Implement shortcuts for hiding refs & selection groups 2023-12-23 15:05:13 -06:00
Dave Corley
24443e00bf Feat(CS): Implement selection groups into data model 2023-12-23 15:05:13 -06:00
Alexei Kotov
c6a1196ec7 Merge branch 'editor_int_settings' into 'master'
Use settings values to declare int settings (#6876)

See merge request OpenMW/openmw!3668
2023-12-23 15:48:43 +00:00
jvoisin
2873f971a6 Merge branch 'downsized' into 'master'
Remove explicitly sized reads

See merge request OpenMW/openmw!3663
2023-12-21 22:50:10 +00:00
elsid
66b1745520
Use settings values to declare int settings 2023-12-20 12:26:36 +01:00
Andrei Kortunov
e6690bbcc7 Use CMAKE_CURRENT_SOURCE_DIR instead of CMAKE_SOURCE_DIR 2023-12-19 19:58:52 +04:00
Evil Eye
36b61d7074 Merge branch 'copy-that' into 'master'
Feat(CS): Implement Instance Cloning

See merge request OpenMW/openmw!3654
2023-12-19 11:27:51 +00:00
Andrei Kortunov
2e041073fc Move *.ui files for different applications to different folders 2023-12-19 15:21:08 +04:00
Alexei Kotov
7922f0e7f8 Merge branch 'editor_modifier_settings' into 'master'
Use settings values to declare modifier settings (#6876)

See merge request OpenMW/openmw!3656
2023-12-18 00:37:55 +00:00
Evil Eye
37415b0382 Don't use getExact to read structs 2023-12-17 15:16:32 +01:00
Evil Eye
a9e6e63c4e Remove fixed size reads 2023-12-17 13:00:14 +01:00
elsid
a29ae07957
Fix CS Key Binding settings page
This got broken by e07d8f3066. Creating QGridLayout with parent and setting it
later has not the same effect.
2023-12-14 00:29:18 +01:00
elsid
11db9eec1d
Use settings values to declare modifier settings 2023-12-13 23:29:35 +01:00
Dave Corley
bc662aeb63 Fix(CS): Fix minor issue in deleteSelectedInstances impl which caused it
to run twice
2023-12-13 16:06:46 -06:00
Dave Corley
7069a970ae Feat(CS): Implement instance cloning 2023-12-13 16:06:46 -06:00
Dave Corley
2bb8ceef56 Fix(CS): Correct invalid refNum for cloned objects so they actually
appear ingame
2023-12-13 16:06:46 -06:00
Dave Corley
2a747529bb Feat(CS): Add new shortcut for duplicating instances 2023-12-13 16:06:46 -06:00
Evil Eye
78da1eb41f Merge branch 'settings_values_editor_2' into 'master'
Use settings values for editor (#6876)

See merge request OpenMW/openmw!3633
2023-12-12 17:00:43 +00:00
Andrei Kortunov
6f68df9ac2 Avoid redundant copies 2023-12-06 23:45:25 +04:00
elsid
e1a68d8cf5
Ignore absent default setting value 2023-12-03 17:18:26 +01:00
elsid
4c13ecea23
Use settings values for editor 2023-12-03 17:18:26 +01:00
elsid
88a6ecabae
Add lookup index to editor settings category
Prevent adding duplicate settings there.
2023-12-03 17:18:25 +01:00
Alexei Kotov
7c63522870 Merge branch 'settings_values_editor_1' into 'master'
Define editor settings as typed struct members (#6876)

See merge request OpenMW/openmw!3597
2023-12-02 13:51:00 +00:00
elsid
fb0b95a2dd
Define editor settings as typed struct members 2023-11-16 22:14:58 +01:00
elsid
755fef62f7
Mark State copy constructor and assignment operators as delete 2023-11-16 22:05:05 +01:00
elsid
e07d8f3066
Add separate setting type for subcategory 2023-11-16 22:05:05 +01:00
elsid
fb6e429dad
Remove "separators" from cs settings
Those are just empty widgets which do not make significant visible difference in
the UI.
2023-11-16 22:05:05 +01:00
elsid
335dbffe6e
Avoid std::string to QString conversion for label 2023-11-16 22:05:05 +01:00
Andrei Kortunov
ba71eefbae Fix GCC warnings 2023-11-16 18:53:46 +04:00
psi29a
9259f5c056 Merge branch 'merryweather' into 'master'
Replace more sized reads and change weather loading

See merge request OpenMW/openmw!3496
2023-10-16 20:06:59 +00:00
AnyOldName3
2ed584428c Add missing headers to components/CMakeLists.txt
Otherwise, they won't show up as part of the project in IDEs.
2023-10-15 15:44:24 +01:00
Evil Eye
fbafa13b3d Appease the compiler 2023-10-14 17:01:55 +02:00
Evil Eye
514723a4e6 Use fixed size ints for Region and use an array for weather odds 2023-10-14 16:36:45 +02:00
elsid
08902371b4
Use settings values for Shaders settings 2023-10-12 20:43:53 +02:00
Evil Eye
b99f58613e Remove signed/unsigned conversions in pathgrid loading code and use meaningful member names 2023-10-06 16:46:09 +02:00
elsid
1d94527a19
Avoid using settings in components to get actor model
Settings::Values are initialized only for engine. Accessing them from other
binaries leads to a crash.
2023-09-27 21:00:46 +02:00
Evil Eye
b59739a529 Replace more sized reads 2023-09-13 21:51:42 +02:00
elsid
053a3caf7b
Pass cache expiry delay to GenericResourceManager constructor 2023-09-09 19:35:20 +02:00
psi29a
5a0a04684a
Merge branch 'nocliffracerschooling' into 'master'
Editor: Remove Training service for creatures

See merge request OpenMW/openmw!3396
2023-09-06 08:14:00 +00:00
Alexei Kotov
16cc1ad59f Editor: Disable Training service for creatures 2023-09-02 17:52:15 +03:00
Petr Mikheev
d39552962f Validate version of resources 2023-08-31 20:56:02 +02:00
Petr Mikheev
f260fa006e Show OpenMW version and Lua API revision in documentation. 2023-08-31 20:56:02 +02:00
Petr Mikheev
32f3a16db3 Change FormId::toString to be consistent with RefId. Remove FormIdRefId. 2023-08-27 09:55:06 +02:00
elsid
28614730da
Pass land reference to LandObject constructor 2023-08-19 01:30:17 +02:00
elsid
2a49919b53
Move esm3terrain to esmterrain 2023-08-06 19:17:44 +02:00
psi29a
4aaffa72e5 Merge branch 'more_coverity_fixes' into 'master'
More coverity fixes

See merge request OpenMW/openmw!3304
2023-08-03 07:15:34 +00:00
Andrei Kortunov
0723b44a65 Do not copy QVectors twice 2023-08-01 15:45:18 +04:00
Andrei Kortunov
35561450f1 Do not copy osg::ref_ptr when possible 2023-07-31 20:43:46 +04:00
Andrei Kortunov
d3d7a663c6 Move some objects instead of copying 2023-07-31 20:43:46 +04:00
Andrei Kortunov
b1c8a968ae Do not use invalid iterators 2023-07-31 17:53:33 +04:00
Andrei Kortunov
d8ec78d732 Fix some Coverity warnings 2023-07-28 20:58:18 +04:00
psi29a
9410eed9e5 Merge branch 'bump-cmake-version' into 'master'
Bump required CMake version to 3.16

See merge request OpenMW/openmw!3242
2023-07-20 17:40:29 +00:00
AnyOldName3
34fcfb63cf Eliminate redundant version checks 2023-07-20 00:43:56 +01:00
Evil Eye
cd8f2355c0 Only allow StringRefId for Skill ids 2023-07-14 17:33:32 +02:00
Evil Eye
967b5d205b Use StringRefId for skills 2023-07-13 18:55:22 +02:00
Evil Eye
ac9378fa08 Replace Skill::mIndex with Skill::refIdToIndex 2023-07-13 18:55:21 +02:00
psi29a
6601b0cb15 Merge branch 'fastandloose' into 'master'
Drop support for --fs-strict

Closes #7394

See merge request OpenMW/openmw!3093
2023-07-02 19:24:14 +00:00
Evil Eye
73c2387708 Merge schools into skills 2023-06-26 20:42:52 +02:00
Evil Eye
bac6777fae Reduce the number of magic numbers 2023-06-18 16:21:06 +02:00
Matjaž Lamut
d12426f1b0 Add white space and larger default opening size of OpenMW-CS preferences window. Improves first-impression and overall readability. 2023-06-16 20:03:42 +00:00
Evil Eye
eeda48ec50 Drop support for --fs-strict 2023-06-08 21:10:09 +02:00
psi29a
25c1e6abee Merge branch 'clickbait' into 'master'
Use std::array in various ESM structs

See merge request OpenMW/openmw!3103
2023-06-05 07:19:38 +00:00
Evil Eye
6b7e7acd16 Replace a number of incorrect index types 2023-06-03 16:30:35 +02:00
Evil Eye
dd83da5eba Use std::array in FADTstruct 2023-06-03 13:11:49 +02:00
Evil Eye
7be005c9a5 Use std::array in CLDTstruct 2023-06-03 11:58:09 +02:00
Evil Eye
8a474b9807 Use std::array in RADTstruct 2023-06-03 10:45:32 +02:00
elsid
4a8471ce78
Use original RefId to remove info from InfoOrder 2023-06-03 01:12:21 +02:00
elsid
6a3b6c6e4f
Fix handling deleted DIAL records
* Use composite RefId to remove INFO record of deleted DIAL record. OrderedInfo
  stores original RefId while InfoCollection stores composite one.
* Do not erase deleted topic from InfoOrderByTopic map. To keep all deleted
  record ids for InfoCollection::sort call to make sure reorderRowsImp is called
  with correct number of indices.
2023-06-01 23:35:40 +02:00
psi29a
df57f8004b Merge branch 'default' into 'master'
Replace some empty constructors and destructors with default

See merge request OpenMW/openmw!3078
2023-05-29 13:06:19 +00:00
Evil Eye
9214ffb50b Replace some empty constructors and destructors with default 2023-05-29 13:37:19 +02:00
florent.teppe
ad8cfde4e0 ESM::LandData no longer a virtual interface
instead it is constructed from ESM::Land or ESM4::Land
2023-05-29 12:10:42 +02:00
fteppe
22dc383f63 fixes errors and warnings
Applies review comments

getWorldspaceTerrain => returns a reference because never null
crashfix in navigator
updateLandPositions fixes naming of it
const ESM4::Land* MWWorld::Store<ESM4::Land>::search(ESM::ExteriorCellLocation cellLocation) const removes useless else
ExteriorCellLocation uses default initializers
get terrain height returns -MAX_FLOAT when there is no esm4 terrain.

applied review comments

use default initlializer when possible
factorise code
uses pattern matching in for loop.
2023-05-29 12:10:42 +02:00
florent.teppe
e0fa15b727 Abstracted Land data that can be used by esm3 and esm4. 2023-05-29 11:31:37 +02:00
florent.teppe
1b718f09c5 adding worldspace info to terrain data structures
Rendering manager can have multiple terrain, one for each queried worldspace
Terrain::World has a worldspace member
storage functions require a worldspace parameter.
2023-05-29 11:31:37 +02:00
florent.teppe
93e7b0d946 Terrain has a mandatory worldspace in constructor
getTerrainHeightAt takes a worldspace.

Doesn't change anything for now => Therrain is created with the default ESM3 worldspace, and is never changed.
2023-05-29 11:31:36 +02:00
elsid
dc8dfe81ce
Add more details to exceptions 2023-05-25 20:56:07 +02:00
elsid
d852ac20f5
Log loading content file 2023-05-25 20:56:07 +02:00
psi29a
01705485b8 Merge branch 'grow_limit' into 'master'
[Needs testing] Migrate Grow Limit editor feature to a more modern code

See merge request OpenMW/openmw!2637
2023-05-23 08:39:38 +00:00
elsid
8f47da46ec
Show magic effect name instead of IndexRefId 2023-05-22 18:02:21 +02:00
elsid
63e01d86a3
Use string based UniversalId to check script for blacklist
Blacklist is a vector of strings and isBlacklisted internally calls getId which
throws exception for RefId based UniversalId.
2023-05-22 03:14:00 +02:00
elsid
0aa569d4fe
Add UniversalId argument type to exception message on invalid access 2023-05-22 03:14:00 +02:00
elsid
292983d57a
Show UniversalId value for all argument types in reports 2023-05-22 03:14:00 +02:00
elsid
7ba397da7d
Use std::span and std::string to define UniversalId related TypeData 2023-05-22 03:14:00 +02:00
elsid
ceab7557f3
Add rudimentary support for ESM::RefId in UniversalId
Ideally std::string support should be removed but this may affect too much code.
2023-05-22 03:12:16 +02:00
elsid
4cd5efc6ee
Implement UniversalId with std::variant 2023-05-22 03:03:05 +02:00
elsid
f2a3462e59
Fix UniversalId constructor from ESM::RefId 2023-05-22 02:47:06 +02:00
elsid
6541ac43f5
Add UniversalId unit tests 2023-05-22 02:47:04 +02:00
florent.teppe
56cb2a83ec removed sDefaultWorldspace, only sDefaultWorldspaceId now.
sDefaultWorldspaceId is a StringRefId to be able to getvalue easily.
2023-05-12 22:05:53 +02:00
psi29a
83203ae4d9 Merge branch 'minor_header_cleanup_clion' into 'master'
Minor header cleanup

See merge request OpenMW/openmw!2991
2023-05-01 10:46:55 +00:00
psi29a
67c0138aee Merge branch 'fix-7335-bis' into 'master'
OpenCS fixes the issues with the addon's saving

See merge request OpenMW/openmw!2952
2023-04-30 23:01:47 +00:00
jvoisin
c7a3f43915 Minor header cleanup
This has been done via CLion's "unused include directive",
set to "detect completely unused".
2023-04-30 16:26:03 +02:00
jvoisin
222365b5e3 Fix a qt deprecation warning in cmake 2023-04-25 22:00:20 +02:00
Bret Curtis
0db31207dc remove remaining boost::filesystem cruft 2023-04-25 16:15:04 +02:00
Bret Curtis
249986b6e0 pathToQString makes things shorter 2023-04-25 11:21:16 +02:00
Bret Curtis
afc4e064cb make use of pathToUnicodeString 2023-04-25 10:34:29 +02:00
Bret Curtis
3581f1b724 fix msvc build 2023-04-25 09:08:51 +02:00
psi29a
2e1820fefd make use of QLockFile 2023-04-24 13:34:06 +00:00
florent.teppe
b5f774ae64 fixes the issues with the addons
the OpenCS reference's cellId uses a string to be sure it is coherent with the cell's Id type in the editor.
2023-04-21 14:55:24 +02:00
florent.teppe
6b5d9f3344 fixes reference saving stage 2023-04-20 10:03:35 +02:00
florent.teppe
cb4a97e50b Displays references in exterior cells. A bit hackish. 2023-04-20 10:03:35 +02:00
florent.teppe
3bbf60373a Keep things coherent between references and and cell table 2023-04-20 10:03:34 +02:00
florent.teppe
69f2285a95 fix issue #7335 2023-04-20 09:55:17 +02:00
psi29a
4fd8ed8f13 Merge branch 'qt_scene' into 'master'
Migrate from GraphicsWindowQt to QOpenGLWidget

See merge request OpenMW/openmw!2895
2023-04-11 10:51:07 +00:00
Petr Mikheev
f09a689a4f Merge ESM::RefNum and ESM4::FormId 2023-04-09 00:23:32 +02:00
psi29a
ebb5820dd1 Merge branch 'pathgridgraph' into 'master'
Refactor pathgrid indices to use size_t instead of int

See merge request OpenMW/openmw!2900
2023-04-08 00:32:43 +00:00
Evil Eye
8d8207b734 Refactor pathgrid indices to use size_t instead of int 2023-04-08 00:32:43 +00:00