Commit graph

221 commits

Author SHA1 Message Date
VorTechnix
66dcd6bbd7
added suppression 2024-10-15 17:31:40 -07:00
fbb3d5096c
tokenise_commands: use @example 2024-10-16 01:00:01 +01:00
c84fa5f152
Notify, Notify.validate: correct docblock comments so they work with moondoc
moondoc is the system we use for auto-generating Lua API docs

Ref https://github.com/sbrl/moondoc
2024-10-15 22:36:47 +01:00
57d09a766b
Merge branch 'feature/pcall-protection' into dev 2024-10-15 20:15:17 +01:00
VorTechnix
e0f6d9d9ce
Update notify.lua 2024-10-14 19:13:47 -07:00
VorTechnix
a9307d3725
Update validate.lua 2024-10-14 19:13:20 -07:00
VorTechnix
a0f3fb5a3d
folderized notify 2024-10-14 15:41:43 -07:00
0ca3842b40
fix busted error 2024-10-14 20:59:42 +01:00
ea1c17a6e3
safe_function: only log error when there's actually an error 2024-10-14 20:48:55 +01:00
b6c41395f6
core: tidy up new safe_function implementation; bugfix 2024-10-14 20:46:26 +01:00
00b1aed1ff
abstract new xpcall wrapper into new API function safe_function 2024-10-14 19:25:53 +01:00
c01eb23488
newline 2024-10-14 18:53:32 +01:00
938a617dc3
run_command: add prototype wrapper around command parsing. 2024-10-14 18:51:33 +01:00
VorTechnix
5381c31abb
Update notify.lua 2024-10-13 21:18:57 -07:00
VorTechnix
ef1189e6db
Update notify.lua 2024-10-13 14:23:05 -07:00
VorTechnix
5e54d112ce
added wea_c.notify 2024-10-13 13:52:27 -07:00
cd22c710b2
start working on implementing some kind of system to catch error messages
....it works, but:
- We can't capture stack traces like this
- It's messy
- We need to implement an escape/encodeURIComponent function ourselves from scratch 'cause the one I ripped from Stack Overflow sucks
2024-10-12 01:04:27 +01:00
86fd6a560d
split_shell: document properly
it should appear in the Lua API docs now.

Cody AI was actually v helpful with this, and it helped that I already had tests for it o/
2024-10-11 03:19:31 +01:00
270cbd5aae
split_shell: remove unused argument 2024-10-11 03:12:14 +01:00
VorTechnix
269a73be48
Fixed CLRF Issues (I hope) 2024-10-07 16:11:35 -07:00
7b43e4b201
weac.parse.map: add nil check via assertion 2024-10-07 19:07:49 +01:00
717a651bd8
typos in comments 2024-10-02 01:20:08 +01:00
d74427e017
Fix some luacheck errors
the others are because rotate.lua isn't finished
Unfortunately I don't have the time to fix it now, because it will require a lot of time
2024-10-02 01:17:41 +01:00
f3f0e8966d
run_command: prepend the name of the command in case of error. 2024-10-01 21:27:30 +01:00
VorTechnix
b319baae16
Merge branch 'dev' into selection-tools-refactor 2024-10-01 11:44:01 -07:00
VorTechnix
a794429961
Show default values in param
Co-authored-by: Starbeamrainbowlabs <sbrl@starbeamrainbowlabs.com>
2024-10-01 06:50:48 -07:00
5fd0c3dad3
core/pos: implement set_multi as a convenient alternative to multiple set() calls
/cc @VorTechnix & https://github.com/sbrl/Minetest-WorldEditAdditions/pull/112/files?diff=unified&w=1
2024-09-30 22:01:22 +01:00
VorTechnix
61bfab240a
axes parser re-refactor tests passed 2024-09-18 21:25:42 -07:00
d29b037675
orientation: refactor a bit, docs 2024-09-17 23:23:09 +01:00
d49f6d2131
Lift orientation functions from screwdriver2 mod
Ref @12Me21 https://github.com/12Me21/screwdriver2/blob/master/init.lua#L75-L79
Ref @khonkhortisan https://forum.minetest.net/viewtopic.php?p=73195&sid=1d2d2e4e76ce2ef9c84646481a4b84bc#p73195

....if either of you have an issue with this, please get in touch! The licence seems to allow this lifting and relicencing like this (given it's WTFPL as of the time of typing), but correct me if I'm wrong.

For reference, WorldEditAdditions is currently licenced under the Mozilla Public License Version 2.0.
2024-09-17 23:18:37 +01:00
0915a137f8
weac.table: dofile() table_find 2024-09-17 23:13:00 +01:00
6290c61e2f
typo 2024-09-17 22:56:02 +01:00
163f4fc0fd
weac.table*: fix documentation, table.find 2024-09-17 22:51:04 +01:00
da97890e0c
Make weac.table* appear in API docs 2024-09-17 22:13:01 +01:00
12747f6524
pos_marker_manage: fix crash 2024-09-12 19:00:29 -07:00
48af3e3127
run_command: fix crashes
...oops, should have tested that last commit
2024-09-13 02:58:24 +01:00
0561e02845
pos_marker_manage: fix crash 2024-09-13 02:54:38 +01:00
8c4d503f1f
turn wea_core into an EventEmitter; emit command execution pipeline events
These are subject to feedback and change - please let me know if they are named sensibly or not!
2024-09-13 02:52:35 +01:00
f09e10ae49
document register_command 2024-09-13 02:51:36 +01:00
VorTechnix
78c418cb24
pos_marker quick patch 2024-09-12 09:55:02 -07:00
VorTechnix
e24997dd80
Update split.lua 2024-09-12 09:54:40 -07:00
VorTechnix
a772f7ed55
Merge pull request #111 from sbrl/axis-parser-hv-rework
Axis parser hv rework
2024-09-12 06:32:53 -07:00
VorTechnix
738940a431
stable at last 2024-09-11 19:41:57 -07:00
VorTechnix
bcaceac28b
parseNumber unstable (0 bug) 2024-09-11 18:04:25 -07:00
VorTechnix
7e9e0f6a48
Finally committing this 2024-09-09 12:19:54 -07:00
977dcc6a93
pos_marker_manage: add some checks to update_entity event listener
For #105 because I can't reproduce the issue.
2024-08-18 20:33:57 +01:00
e2167c4ba3
core.param2: add todo reimplement notice
Ref https://discord.com/channels/1135598362821935254/1247681375935533119

---------------------------------------

Hi, a wild //orient+ appeared! While it (probably) doesn't crash, it also unfortunately doesn't work yet.

This is because facedir e.g. points towards the direction the node is pointing, and minetest.facedir_to_dir doesn't capture all the nuance of how the node is pointing, and e.g. if a node is pointing +y and you want to rotate by (0, 90, 0) [degrees], then the current implementation won't do anything.

Then I decided that this is silly and there has to be a solution. After all, screwdriver2 has a great implementation! https://content.minetest.net/packages/12Me21/screwdriver2/

....then I found this lookup table in their codebase: https://github.com/12Me21/screwdriver2/blob/master/init.lua#L75-L79

....aaaaarrrggggghhhhh //orient+ is such a pain to implement!

and my existing implementation is so neat 😢 1dd073f14b/worldeditadditions_core/utils/param2.lua

so, in other words, although I've implemented //orient+ I'm going to have to reimplement the nuts-and-bolts function that does the rotation, which may make it slightly more complicated and annoying to implement support for nodes with param2 types other than facedir.

/rant about Minetest's param2 value and rotations 😛
2024-06-05 00:14:17 +01:00
1dd073f14b
//orient: it works without crashing.... but very strangely.. 2024-06-04 23:07:05 +01:00
02d95cec46
Initial //orient implementation
....unfortunately, it doesn't work yet.
Next up is a frankly ridiculous number of print()s to figure out what's going on here
2024-06-04 22:49:41 +01:00
ffdd1b65b3
Implement //set+
This is on the road to //orient and later stair/etc support in //rotate :D
2024-05-25 14:45:56 +01:00