Petr Mikheev
4fd07cb58d
Implement MWWorld::Class::isItem(ptr) and remove a hacky MWLua::WorldView::isItem.
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
ca9c55ac26
Use common function to add record binding
2023-03-25 15:05:58 +01:00
elsid
33a59a9342
Use ESM::RefId::toDebugString to convert record to string in Lua
2023-03-25 15:05:55 +01:00
elsid
017f3d5484
Interpret ESM::Light::mSound as identifier not a path
2023-03-24 15:42:26 +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
2bfffb3063
Move std::variant<SelfObject*, LObject, GObject>
from mwlua/stats.cpp to mwlua/objectvariant.hpp
2023-03-13 23:44:00 +01:00
Petr Mikheev
0b385d5db9
Create MWWorld::SafePtr
2023-03-13 23:44:00 +01:00
Mitten Orvan
4e6d48d246
Add a bit of high-level developer documentation about the Lua system
2023-03-13 22:41:28 +00:00
Petr Mikheev
65885d994f
Don't expose LuaUtil::Callback to lua
2023-02-14 21:08:19 +01:00
Petr Mikheev
71ba7b88e2
Move asyncpackage from apps/openmw/mwlua to components/lua
2023-02-14 20:03:32 +01:00
Kindi
4734504e2c
Lua binding for Clothing
2023-02-12 00:19:08 +08:00
Alexei Kotov
5340c2c816
Fix Lua ingredient bindings
2023-02-10 02:50:13 +03:00
elsid
f09789002a
Define hardcoded global variable names as constants
2023-02-07 00:47:34 +01:00
psi29a
4032c447e9
Merge branch 'load-ESM4-Cell' into 'master'
...
Can load and coc into an interrior oblivion cell
See merge request OpenMW/openmw!2647
2023-02-06 08:56:23 +00:00
psi29a
68b3b90255
Merge branch 'ui_content_leak' into 'master'
...
Move implementation of UI Content to Lua (#7155 )
See merge request OpenMW/openmw!2661
2023-02-01 22:51:47 +00:00
uramer
e96681151c
Get rid of the LuaUI::Content namespace
2023-02-01 17:18:50 +01:00
uramer
fb0646dda1
Remove Ui Content counter in Lua profiler
2023-01-31 19:52:28 +01:00
uramer
bbbef96087
Switch to loadInternalLib
2023-01-31 19:50:33 +01:00
Petr Mikheev
c4e8d38e30
Do several passes of garbage collecting in LuaManager::clear()
2023-01-31 11:08:01 +00:00
uramer
fc1430af95
Move implementation of UI Content to Lua
2023-01-29 17:07:38 +01:00
florent.teppe
216ca71149
Applied review comments
...
getEditorName => getNameId
restored cosntructor in CoordinateConverter
2023-01-28 12:14:00 +01:00
florent.teppe
23614ae2ae
Renamed esm3esm4bridge => esmbridge
2023-01-27 18:40:15 +01:00
florent.teppe
531e55e04c
Better handling of the esm3 vs esm4 cell problem
...
Common attribute are in one structure that has two constructors, one for ESM3 vs ESM4 Cell
Mood part of MWWorld::Cell
2023-01-27 13:39:39 +01:00
florent.teppe
c896a2ca48
Crashfix on launch
2023-01-26 22:37:32 +01:00
florent.teppe
562e129bd0
encapsulations of esm3 cell and esm4 cells.
2023-01-26 22:37:31 +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
Petr Mikheev
5983f22290
Remember actor in the actor's InventoryStore instead passing the actor in every call
2023-01-21 23:43:00 +01:00
florent.teppe
3780033837
Reverts Cell name to a string
2023-01-21 18:39:42 +01:00
Petr Mikheev
d9e9db0983
Additional information in Lua profiler
2023-01-13 21:14:23 +01:00
psi29a
7c078883d5
Merge branch 'default_ref_num' into 'master'
...
Use default initializers for ESM::RefNum members
See merge request OpenMW/openmw!2598
2023-01-10 09:12:37 +00:00
psi29a
0028127b42
Merge branch 'lua_mwscript' into 'master'
...
Access local mwscript variables in Lua scripts
See merge request OpenMW/openmw!2589
2023-01-10 08:47:12 +00:00
elsid
c173348cbe
Use default initializers for ESM::RefNum members
...
Instead of unset function that is removed now and assignments all over the code.
2023-01-10 00:44:51 +01:00
psi29a
2754d63e45
Merge branch 'cleanup_actions' into 'master'
...
Cleanup unused actions
See merge request OpenMW/openmw!2591
2023-01-08 20:14:35 +00:00
Petr Mikheev
7a0b998d4f
Cleanup unused actions
2023-01-07 23:42:53 +01:00
psi29a
b6d0d09c5a
Merge branch 'cell_hastag' into 'master'
...
[Lua] New function `cell.hasTag`
See merge request OpenMW/openmw!2567
2023-01-07 22:22:31 +00:00
Petr Mikheev
8c7cad024b
Access local mwscript variables in Lua scripts
2023-01-07 22:10:10 +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
f0a06258fb
[Lua] New function cell:hasTag
2023-01-02 18:24:37 +01:00
Petr Mikheev
b248c3e173
Allow passing initData
to the :addSript call ( #7091 )
2022-12-31 22:08:17 +01:00
Petr Mikheev
aabd5a98c7
Fix 'toggle spell' control (was broken by !2541 )
2022-12-31 13:12:12 +01:00
psi29a
d5f5e53714
Merge branch 'playercontrols' into 'master'
...
Move some of player controls logic from C++ to Lua
See merge request OpenMW/openmw!2541
2022-12-30 16:57:40 +00: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
1869aeae5c
Move some of player controls logic from C++ to Lua
2022-12-28 22:04:19 +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
florent.teppe
65cdd489fb
create a specific esm reader function for RefID to avoid allocation for string and then again for RefId
...
Fixed some types
removed useless header
applied clang format
fixed compile tests
fixed clang tidy, and closer to logic before this MR
Removed hardcoded refids
unless there is a returned value we don't use static RefIds
can use == between RefId and hardcoded string
Fix clang format
Fixed a few instances where std::string was used, when only const std::string& was needed
removed unused variable
2022-12-27 19:15:57 +01:00
fteppe
62d8fe3fc2
changed a few hardcoded refIds used in mutliple places to be defined only once in a variable
2022-12-27 19:15:55 +01:00