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
00478c2ea8
weac/polyfill: add @module so it appears in the Lua API
2024-05-25 14:06:57 +01:00
66c939c917
fix comments
2024-05-19 16:28:05 +01:00
abe66cf1c5
//speed: fix crash when pova isn't installed
...
stupid bug in weac.{player_get_physics_override,player_set_physics_override}, as you might have suspected
2024-01-01 22:24:49 +00:00
c1fce81bc3
post_marker_wall: @module → @namespace
2023-12-31 17:08:36 +00:00
2f98b86c5f
movetool, //speed: add optdepend on pova
...
pova is a physics_override manager mod, so it's important we have support for it to ensure we play nice with other mods
Ref https://content.minetest.net/packages/TenPlus1/pova/
2023-12-30 13:12:10 +00:00
b56bd0d84b
//rotate: fix some minor keyword issues, update reference & changelog
...
At some point we need to move the parser to allow for a `player` reference for relative keywords.... or else pass them through somehow
2023-12-16 01:11:25 +00:00
dc39dbff08
Bugfix: don't +/1 (1, 1, 1) twice in //rotate
2023-12-16 00:37:27 +00:00
54c66e0dc9
//rotate: fix bug in which regions are accidentally cut off
2023-12-16 00:35:52 +00:00
7d29453699
plug in new //rotate+ logic
...
...but it doesn't work yet
currently it crashes with a variety of interesting and colourful error messages
working on debugging it now, but it's gonna take a moment
2023-12-13 23:05:00 +00:00
b92cc434db
core/run_command: be more robust in case of programming errors
2023-12-13 23:04:09 +00:00
873ff4bef8
Bugfix: don't error out on //flora → //bonemeal alias if bonemeal mod isn't installed
...
Also add worldeditadditions_core.command_exists to check both WEA and WEW for whether a command exists or not
2023-12-13 22:15:27 +00:00
74a8996afc
//rotate: start implementing a frontend
...
This is more complicated than I expected.
We've got a new parser and a state machine for the args, but we now need to put these values to use and pass them to worldeditadditions.rotate().
NOTE TO SELF: BE REAL CAREFUL WITH ORIGIN HANDLING.
We MUST NOT pull from sorted pos1/2 by accident! Though I doubt this would be an issue since weac.pos.get(player_name, i) is a thing
2023-12-10 03:16:28 +00:00
45f69eb8f9
Vector3.rotate3d: clarity in comment
2023-11-29 00:36:50 +00:00
e28c428ef7
vector3: doc comment layout
2023-11-28 22:38:26 +00:00
e3962bc8d7
StagedVoxelRegion : ..... I really need to come back and comb through this
2023-11-28 00:40:11 +00:00
6d03a5ca2c
EventEmitter: fix luacheck error
2023-11-28 00:33:27 +00:00
78844484f8
Add //ngroups, which lists the groups a given node is a member of
2023-11-27 23:44:06 +00:00
ef86a0658a
NodeListMatcher: I think groups need to be prefixed with group: when calling minetest.get_item_group
...
....but we'll find out in testing!
2023-11-27 23:19:34 +00:00
050bd80cf3
//nodeapply: Generalise matching engine into NodeListMatcher
...
Also add support for @groups, i.e. @crumbly matches nodes that are a member of the "crumbly" group
This groups feature is untested atm as I need to implement //ninfo....
2023-11-27 22:27:20 +00:00
9dd92dbe70
StagedVoxelRegion: initial save() implementation.
...
....but it's untested, as usual.
2023-09-24 02:07:08 +01:00
f02b1d0b33
fix syntax errors
2023-09-23 21:56:56 +01:00
621ca53d28
Merge branch 'dev' of github.com:sbrl/Minetest-WorldEditAdditions into dev
2023-09-23 21:54:03 +01:00
985901de94
noodle around with StagedVoxelRegion
2023-09-23 21:53:47 +01:00
546de3d6ca
Implement StagedVOxelRegion.NewFromRaw
2023-09-19 18:08:37 +01:00
f2c3ca124c
weaschem: properly document with comments
2023-08-21 22:17:36 +01:00
b42c8f2641
Bugfix: fix crash in pos_marker_wall/delete
2023-08-20 16:46:30 +01:00
f590304995
post_marker: comment debug logging
2023-08-19 13:49:13 +01:00
f4471dfa8e
Does this finally fix the zombie marker wall bug?
...
only time will tell.
2023-08-19 00:58:58 +01:00
e5493dfb11
tests/weaschem: write tests for parse, except delta_which functionality
2023-08-18 21:17:17 +01:00
78ec40b6be
weaschem: finish write tests for parse_data_table
...
glad I did, 'cause I found a bunch of subtle bugs
2023-08-18 20:27:00 +01:00
bd012813b3
weaschem: validate node ids in parse_data_table
2023-08-18 15:21:02 +01:00
3b7e91b3b7
weaschem: adjust call to make testable
...
really annoying how the test environment & MT have different import schemes.....
2023-08-18 15:02:26 +01:00
8048310419
tests/weaschem: write tests for parse_id_map
2023-08-16 02:02:10 +01:00
2dc1755b5c
tests/weaschem: Finish initial tests for parse_header
2023-08-15 19:25:13 +01:00
270ec92fee
start with tests for the header parser, but they aren't finished yet
2023-08-15 03:07:30 +01:00
7e6e61a00b
start basic tests for headers.
...
We might want to consider a separate distribution that omits all the test files......
2023-08-15 02:59:19 +01:00
3faaaa5283
weaschem: make basically testable
2023-08-15 00:19:54 +01:00
1abab143e7
.weaschem: initial, UNTESTED, parsing implementation
...
....it's not hooked up at all yet.
WEA will not even load the file yet, and we don't have tests either
....tests might be a bit of a problem given we use minetest.parse_json directly.
2023-08-12 03:05:10 +01:00
e4539edb4b
rough sketch of the outline of StagedVoxelRegion.
...
This doesn't include the deltas feature yet
2023-08-09 03:33:56 +01:00
3c7e1ef545
Create proper io namespace directory
2023-08-08 18:46:41 +01:00
76c02cd42f
update more comments
2023-08-03 14:37:05 +01:00
9d47dcbcf3
comments: update
2023-08-03 14:16:14 +01:00
fadf4ed06c
Merge branch 'fix-markerdupes' into dev
2023-08-01 00:35:44 +01:00
dd6e34bde1
Update changelog, prepare for (another) release
2023-08-01 00:34:35 +01:00
125638a079
pos_marker, pos_marker_wall: default to 1 hp
2023-08-01 00:27:07 +01:00
7be2fb125e
add more debug logging
2023-08-01 00:16:36 +01:00
6231132055
pos_marker: debug logging; set health = 0
2023-08-01 00:14:43 +01:00
daae15eb57
EventEmitter: improve debug logging
2023-07-31 22:06:44 +01:00
6fabc89e72
Merge branch 'fix-marker-wall' into dev
2023-07-31 18:25:49 +01:00
2840ba4dea
bump version, prepare for release
2023-07-31 18:24:32 +01:00
564785ddf6
When any segment of the marker wall is punched, unmark the entire wall
...
Fixes #102
2023-07-31 18:22:00 +01:00
1c90e03d3e
When any segment of the marker wall is punched, unmark the entire wall
...
Fixes #102
2023-07-31 18:20:06 +01:00
dacbeaf81d
comment debug logging
2023-07-18 00:42:42 +01:00
a465a50244
Bump version to 1.14.3
2023-07-18 00:35:19 +01:00
5505575cf9
Fix regions not remembering their state and being unresettable
...
This fix means that wwe require minetest 5.2 as a minimum rather than 5.1
ref https://rubenwardy.com/minetest_modding_book/en/quality/common_mistakes.html#be-careful-when-storing-objectrefs-ie-players-or-entities
2023-07-18 00:35:07 +01:00
ee4b3e09bb
Bump version
2023-07-12 20:30:13 +01:00
5baa72cf6f
core/run_command: guard against invalid potential_changes
2023-07-11 19:12:04 +01:00
7f4798432e
Bump version!
2023-07-11 18:16:02 +01:00
5c632df658
Override basic selection commands
...
//mark
//unmark
//pos1 //1
//pos2 //2
//reset
Also add //pos <index>
2023-07-10 20:17:28 +01:00
693fc145d5
pos: avoid calling worldedit.marker_update unless necessary
2023-07-10 19:25:48 +01:00
f2214150f2
Update minetest.chatcommands → minetest.registered_chatcommands
2023-07-09 19:49:38 +01:00
3bfc62be24
Make //unmark WEA-aware
...
Backwards compatibility with WE is maintained.
2023-07-09 19:44:31 +01:00
e916057133
safe_region: update comment
...
We need @value
2023-07-07 01:31:06 +01:00
VorTechnix
5cf155772d
Merge branch 'main' of https://github.com/sbrl/Minetest-WorldEditAdditions
2023-07-04 14:50:17 -07:00
VorTechnix
55ddc16b2e
small fix to file:read error
2023-07-04 14:50:14 -07:00
6bc1987916
Update and correct a bunch of comments
...
note that @module is outdated and should not be used
2023-07-04 22:45:02 +01:00
5d18f6d0db
comment debug
2023-07-04 22:00:28 +01:00
7bdefc8d42
split_shell: comment out debug
2023-07-04 19:10:05 +01:00
02ad40eaae
split_shell: add automated tests, and fix an obscure bug
2023-07-04 19:04:11 +01:00
047033a6ef
comments: update @class definitions
2023-07-02 19:03:46 +01:00