681 Commits
Author SHA1 Message Date
nox7 39c7def396 Document that ui.getElements now returns elements in rendered order when on an overlapping MyGUI layer 2026-10-05 10:14:03 -05:00
Alexei Kotov baba267c20 Merge branch 'cursor-rotation' into 'master'
Missing Lua cursor feature - rotation

See merge request OpenMW/openmw!5651
2026-10-03 22:48:07 +03:00
nox7 1719cf6e75 Document clockwise movement. Use radians instead of degrees. Swap float usage to double 2026-10-02 06:56:44 -05:00
nox7 d3df056187 Docs 2026-10-02 06:33:53 -05:00
nox7 998f7ecc80 Add missing cursor prop to widgets. Fix ui cursor docs and broken mlink 2026-10-01 15:53:03 -05:00
nox7 b6fe8e755c Dupe calling clarification 2026-09-21 19:05:37 -05:00
nox7 2d7abc8ca7 Update docs with new cursor size max and info on dupe calling 2026-09-21 19:05:37 -05:00
nox7 5ac61e001b Add getCursor(), but also properly revert back to the original engine cursor if the Lua cursor is set to nil 2026-09-21 19:03:59 -05:00
nox7 b3a0227e44 Add Lua custom cursor registration 2026-09-21 19:03:58 -05:00
nox7 78ef775562 Add setCursorPosition and getCursorPosition 2026-09-21 19:03:58 -05:00
nox7 31909fbde2 Disable player controls when the Lua API requests mouse release 2026-09-21 19:03:58 -05:00
nox7 75a7c2c10a Change names of cursor visibility methods 2026-09-21 19:03:58 -05:00
nox7 ce0b469e6a Update docs 2026-09-21 19:03:58 -05:00
nox7 9e7a55e196 First pass with basic Lua bindings for controlling cursor mode and visibility 2026-09-21 19:03:58 -05:00
nox7 f64ceb52ad Document new async methods for timers 2026-09-18 13:54:43 -05:00
Dave Corley abf127af53 CLEANUP: Rename to hasBeenLoaded and clarify documentation 2026-09-15 21:23:49 -05:00
Dave Corley 85723fb731 FEAT: Add bind to check if a cell has been loaded already
CLEANUP: Improve isLoaded docstring
2026-09-15 21:23:49 -05:00
Bret Curtis fb8f8b8c2c Add openmw.debug.takeScreenshot() and configurable test resolution
Lua had no way to fire a screenshot. Also stops integration_tests.py merging a
caller's --config settings.cfg into the generated one, which made a same-layer
duplicate that openmw rejects, and unhardcodes the 640x480 test window.
2026-09-12 18:20:20 +02:00
Alexei Kotov a9d999e422 Merge branch 'doc/addGlow' into 'master'
DOC: addGlow was missing

See merge request OpenMW/openmw!5577
2026-09-08 12:45:49 +03:00
Dave Corley dae4a3977d DOC: addGlow was missing 2026-09-04 12:16:21 -05:00
Dave Corley 0a520521cd CLEANUP: Save state mutation should be gated behind a function and not contextually mutable 2026-09-04 11:19:32 -05:00
Evil Eye 63ca6d9834 Add skills to openmw.content 2026-09-03 17:35:59 +02:00
Evil Eye 69d2a9d5a9 Add attributes to openmw.content 2026-09-03 17:35:57 +02:00
Evil Eye 6aaeb27367 Remove types.Book.SKILL enum 2026-09-03 17:34:17 +02:00
nox7 97f3f11d9c Remove word 'normalized' 2026-09-03 17:26:54 +02:00
nox7 81f90ec660 Use preciseX and preciseY from SDL to account for fractional scrolling on high-precision devices 2026-09-03 17:26:54 +02:00
nox7 1ccc932e18 Switch to using SDL wheel event instead of MyGui 2026-09-03 17:26:53 +02:00
nox7 557480e651 Document mouse wheel event on widget 2026-09-03 17:26:53 +02:00
Thomas f2e262264a Expose the focus ray to Lua 2026-09-03 17:16:15 +02:00
Evil Eye 656cc2a5b4 Document sys::default being a thing 2026-08-26 23:09:03 +03:00
Evil Eye 6486e56c70 Address feedback 2026-08-26 23:09:03 +03:00
Evil Eye c1bc5a3d16 Add world space filter 2026-08-26 23:09:03 +03:00
Evil Eye 48ac39fdfd Add world.getObjectsByRecordId 2026-08-26 23:09:03 +03:00
Andrzej Głuszak 06102ac6c1 Add apparatus to openmw.content 2026-08-26 17:29:27 +03:00
Mads Buvik Sandvei 07f06eecb5 Review comments 2026-08-24 19:13:16 +02:00
Mads Buvik Sandvei e2b73d51f1 Merge branch 'master' into projectile-onhit-handlers 2026-08-23 23:49:56 +02:00
Alexei Kotov e318e7ac36 Merge branch 'lua_tests_discovery' into 'master'
Automatically discover Lua tests

See merge request OpenMW/openmw!5514
2026-08-21 04:34:40 +03:00
Mads Buvik Sandvei b75c2eada6 Combat global 2026-08-20 15:38:37 +00:00
elsid e2acaa9e71 Automatically discover Lua tests
To avoid duplicated tests registration.

Start discovery by sending an event. First for global tests and the for
local inside global event handler with timeout. Check for duplicates.

Check coroutine status after the end of a test to catch failures not
caused by asserts.

Support bypass in the menu.newGame to start morrowind tests from a menu
script skipping intro video.

Add --list_tests flag to print all found tests.
2026-08-19 23:26:45 +02:00
Mads Buvik Sandvei 866303e0e1 Merge branch 'master' into projectile-onhit-handlers 2026-08-19 19:41:56 +02:00
Alexei Kotov c80a09d900 Merge branch 'loadrace' into 'master'
Add races to openmw.content

See merge request OpenMW/openmw!5482
2026-08-16 22:12:29 +03:00
jvoisin f0c2823667 Merge branch 'loadclass' into 'master'
Add classes to openmw.content

See merge request OpenMW/openmw!5454
2026-08-14 15:24:55 +00:00
Mads Buvik Sandvei 6644b6de1d Review comments 2026-08-13 21:50:30 +02:00
S3kshun8 Games f296414dd7 DOC: Correct swizzle typo on vec3 2026-08-10 20:08:03 +00:00
Mads Buvik Sandvei 88f11c5130 Magic Projectile on hit handler 2026-08-06 21:48:31 +02:00
Evil Eye 50d0f35599 Add races to openmw.content 2026-08-05 21:13:40 +02:00
Alistair Roche 5b4f0a7a33 Guard levelled creature spawns against nil
getRandomId returns an ESM::RefId, and sol_lua_push converts an empty RefId
to nil rather than to an empty string. spawnFish guarded with `id ~= ''`,
which nil passes, so nil reached world.createObject and raised a Lua error
on entering an affected exterior cell.

An empty result is normal rather than exceptional here: getLevelledItem
returns an empty RefId when the chanceNone roll succeeds and when no entry
is at or below the player's level.

Also documents the nil on both getRandomId variants. The return was
documented as #string with no caveat, which is what the guard was written
against; every other nillable id in the Lua API already says "(can be nil)".
2026-08-03 16:04:27 -07:00
Dave Corley e579737503 CLEANUP: Don't reference DontSaveObject in saveState docs and make phrasing less technical 2026-08-03 16:51:12 +02:00
Dave Corley 31cd519bdf CLEANUP: Use the existing mChanged instead of mNoSave 2026-08-03 16:51:11 +02:00
Dave Corley d0fd20ff86 FEAT: Implement DontSaveObject with Lua bindings 2026-08-03 16:51:11 +02:00