elsid
ce91784085
Move Ptr registry into a separate type
...
There is no dependency on the rest of the WorldModel state.
2023-05-28 13:04:17 +02:00
elsid
183202cd65
Remove WorldModel::getCellByPosition function
...
It's used in a single place. Move the code there.
2023-05-27 15:49:36 +02:00
glassmancody.info
06676fd623
lua - fix bounding box in active grid
2023-05-19 14:29:01 -07:00
psi29a
1ce35fa9e7
Merge branch 'lua-bounding-box' into 'master'
...
Expose game object's bounding box in lua api
See merge request OpenMW/openmw!3009
2023-05-19 09:33:44 +00:00
glassmancody.info
a7b7f99d72
Expose game object's bounding box in lua api
2023-05-18 11:10:10 -07:00
Petr Mikheev
7113638848
Fix animation of teleported non-teleporting doors.
2023-05-13 20:59:55 +02:00
Petr Mikheev
2725a9d7f4
Add option "onGround=true/false" in Lua teleporting
2023-05-13 20:59:55 +02:00
Petr Mikheev
e53f907a53
Set CharacterController::mSmoothedSpeed to zero after teleporting.
2023-05-13 15:26:39 +02:00
Petr Mikheev
86fce41a39
Keep refnum when moving objects to/from inventory ( #6148 )
2023-05-07 17:19:44 +02:00
Tobias Tribble
43544e7d30
Fixed teleport function to use rotation flags
2023-05-03 18:29:50 -05:00
psi29a
cdc753df70
Merge branch 'lua_refactoring' into 'master'
...
MWLua refactoring
See merge request OpenMW/openmw!2956
2023-05-02 19:48:21 +00:00
Zackhasacat
c4246159af
Fix gameObject.teleport function, previously would not work with items in inventories
2023-04-27 19:37:38 +00:00
psi29a
0cf9fe0e2e
Merge branch 'lua_casting_error' into 'master'
...
Fix crash on sol::object type mismatch in invalid Lua script
See merge request OpenMW/openmw!2975
2023-04-25 22:19:45 +00:00
Petr Mikheev
4562b8c06b
Add headers for all .cpp
files in mwlua; move packages initilaization from LuaManager to luabindings.cpp
2023-04-25 23:24:51 +02:00
Zackhasacat
f6fb05d1ca
Add functionality for lua to view and modify ownership data for GameObjects
2023-04-25 21:20:43 +00:00
Petr Mikheev
c362b2efa6
Use LuaUtil::cast for casting sol::object to prevent crashing on type mismatch in Lua scripts.
2023-04-25 22:11:04 +02:00
florent.teppe
53cc9f3614
functions return reference instead of ptr
...
because the function can never return an nullptr, we return a reference.
2023-04-20 15:55:40 +02:00
psi29a
2a6e301925
Merge branch 'activation' into 'master'
...
Allow Lua scripts to extend or override standard activation mechanics
See merge request OpenMW/openmw!2935
2023-04-20 11:29:21 +00:00
Petr Mikheev
0cebaec360
Fix bug: world.createObject(id):moveTo(inventory) produces disabled objects that are visible in inventory, but can not be droped to the ground.
2023-04-17 19:07:44 +02:00
Petr Mikheev
60a8d08e66
Refactor teleporting in Lua; fix a bug in worldmodel.cpp
2023-04-17 19:07:30 +02:00
Petr Mikheev
61d207bd78
Allow Lua scripts to extend or override standard activation mechanics
2023-04-16 23:50:27 +02:00
psi29a
76cba95a44
Merge branch 'lua' into 'master'
...
LuaManager refactoring
See merge request OpenMW/openmw!2852
2023-03-26 11:12:51 +00:00
Petr Mikheev
7ef759c78b
Refactor mwlua/eventqueue and extract some code out of LuaManager
2023-03-26 03:38:40 +02:00
elsid
b7fdca0fe6
Use serialized ESM::RefId for Lua records
2023-03-25 18:19:46 +01:00
elsid
069d4255b9
Make ESM::RefId to be fixed size cheap to copy
...
Use std::variant. Store refId strings in unordered_set and use pointer to an
item there. Inserts to unordered_set do not invalidate pointers to values so the
pointer is always valid. Elements are not removed. Assume there is finite number
of string refIds.
2023-03-19 17:20:43 +01:00
Petr Mikheev
0b385d5db9
Create MWWorld::SafePtr
2023-03-13 23:44:00 +01:00
Petr Mikheev
c294898246
Lua commands to create/move/remove objects; consistent handling of disabled objects ( #6726 , #6893 )
2023-01-22 00:08:21 +01:00
florent.teppe
3780033837
Reverts Cell name to a string
2023-01-21 18:39:42 +01:00
Petr Mikheev
4b8b3a9187
Raise an error if initData in obj:addScript has incorrect type.
2023-01-04 21:40:35 +01:00
Petr Mikheev
b248c3e173
Allow passing initData
to the :addSript call ( #7091 )
2022-12-31 22:08:17 +01:00
Petr Mikheev
310acaeee9
Don't pass MWLua::WorldView to MWLua::Action
2022-12-28 22:06:49 +01:00
Petr Mikheev
aef2e9d8de
Replace World::getExterior with WorldModel::getCell
2022-12-28 22:06:49 +01:00
Petr Mikheev
b8fb013edf
Merge MWLua::ObjectRegistry and MWWorld::WorldModel
2022-12-28 12:45:11 +01:00
florent.teppe
1ef1de974d
script blacklist => RefId
...
Applies changes from review
Fixed clang format
Clang format + review.
2022-12-27 19:16:21 +01:00
florent.teppe
2c30575b3b
CellName is now a RefId, makes more sense that way.
2022-12-27 19:16:21 +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
Petr Mikheev
55db95d4cf
Update Lua profiler; add ability to run OpenMW with old LuaJit that doesn't allow custom allocator (Lua profiler will be disabled in this case)
2022-12-03 16:58:03 +01:00
clang-format-bot
ddb0522bbf
Apply clang-format to code base
2022-09-22 21:35:26 +03:00
elsid
552301c8fb
Cleanup openmw lua includes
2022-08-17 23:47:30 +02:00
elsid
49f8445f87
Move AiSetting out of MWMechanics::CreatureStats
...
To replace creaturestats.hpp include in mwworld/class.hpp with forward
declaration reducing total size of preprocessed code.
2022-07-16 16:43:33 +02:00
elsid
20c15b30de
Move getLuaType out of MWWorld::PtrBase
...
This function is used only for Lua related code and don't need to be present
everywhere ptr.hpp is included.
2022-07-05 00:53:19 +02:00
Petr Mikheev
a70d5831c5
Lua scripts configuration in omwaddon
2022-06-05 01:36:39 +02:00
psi29a
71e4e5ceec
Merge branch 'lua_activate' into 'master'
...
[Lua] Fix the bug that object:activate() doesn't trigger mwscripts
See merge request OpenMW/openmw!1834
2022-05-08 08:30:50 +00:00
Petr Mikheev
2d1d7e644c
[Lua] Fix the bug the object:activate() doesn't trigger mwscripts
2022-05-06 23:46:36 +02:00
Petr Mikheev
70c7f1880d
[Lua] pairs and ipairs for ObjectList ( resolves #6732 )
2022-05-06 23:11:47 +02:00
Petr Mikheev
a65f8ebbc6
Reorganize delayed Lua actions
2022-04-11 22:19:51 +02:00
Petr Mikheev
fa115418eb
[Lua] Remove queries
2022-03-15 23:35:36 +01:00
Petr Mikheev
43bed7f0d2
[Lua] Split obj.inventory into Actor.inventory(obj) and Container.content(obj)
2022-03-15 23:35:36 +01:00
Petr Mikheev
d251c4e2a1
[Lua] Change behavior of obj.type
2022-03-15 23:35:36 +01:00
Petr Mikheev
af93ebf433
[Lua] Move class-specific functions to openmw.types
2022-03-15 19:23:26 +01:00