Commit graph

477 commits

Author SHA1 Message Date
c465d6efb0
Commands that modify the terrain now ignore liquids 2022-06-11 21:56:26 +01:00
6e0779a4e5
//sculpt: Fix undefined default brush 2022-06-11 18:53:54 +01:00
fc4f64d25a
Merge branch 'main' of github.com:sbrl/Minetest-WorldEditAdditions into main 2022-06-05 17:13:49 +01:00
e294d96efe
//dome+: ensure domes include pos1 2022-06-05 17:10:41 +01:00
VorTechnix
dc73e0e1e9 sum param clarification 2022-05-30 08:38:33 -07:00
VorTechnix
53600789d8 added compass directions, fixed tmp.sign bug 2022-05-29 16:23:59 -07:00
VorTechnix
021fdac284 variable refactor 2022-05-23 18:49:24 -07:00
VorTechnix
6ed65074b8 unexposed number parser 2022-05-23 18:04:34 -07:00
VorTechnix
a8655373a2 fixed typo 2022-05-23 17:11:26 -07:00
VorTechnix
3196a590f5 changed: functions returned
(and unexposed key_instance class)
2022-05-23 17:08:42 -07:00
VorTechnix
1cef968731 Key Instance type checking 2022-05-23 17:06:23 -07:00
VorTechnix
e17b2cce4e small correction 2022-05-23 15:02:59 -07:00
VorTechnix
23140467d2 new parser connected 2022-05-23 14:58:45 -07:00
VorTechnix
2cddccdca4 working (tested) parser implementation 2022-05-23 14:58:27 -07:00
VorTechnix
8789b39d1d Merge branch 'main' into VorTechnix 2022-05-21 07:04:09 -07:00
VorTechnix
a0982c70f0 check_dir update (unification) 2022-05-20 19:29:01 -07:00
VorTechnix
a6b4d047b8 axes_parser implemented (not added to init) 2022-05-20 19:27:47 -07:00
b816133716
core: implement fetch_command_def
This rovides an abstraction to fetch a worldedit command's definition, 
regardless of where it was registered.

We would normally expect all commands to be registered in 
wea_c.registered_commands, but before we only do a one-off pass to 
import commands from worldedit should a new mod we aren't aware of 
register a command with worldedit and get loaded after us, we won't 
detect it - hencee  the need for this function.
2022-05-19 02:31:01 +01:00
98909f0fae
//metaball: bugfix
It works!
2022-05-16 20:14:31 +01:00
722e62bae0
Finish initial //metaballs command implementation, but it's untested 2022-05-16 01:21:09 +01:00
3311d80a2a
Rework metaballs backend
We need a way of defining metaballs per-player. Our solution to this is 
a custom in-memory per-player storage system. The reason for this is 
because just a position (e.g. that provided by pos1/pos2) is not enough 
- we need a radius as well.
2022-05-16 01:01:01 +01:00
f34617a3d3
Add backend functionality for metaballs
Implementing a frontend command sounds like a headache to me
2022-05-15 17:42:19 +01:00
03fb033b70
//dome+: add option to make the resulting dome hollow inside 2022-05-15 15:38:50 +01:00
04e971e12d
Add //dome+
Improvements oveer //dome:

 - Allow customising the direction it points in
 - Allow multiple pointing directions at once to give the effect of 
creating multiple domes on top of each other in a single command (it's 
actually implemented as an implicit union, and doesn't actually call 
wea.dome more than once).
2022-05-15 15:27:43 +01:00
a4237dcca5
depends.txt → mod.conf 2022-05-01 17:07:30 +01:00
c443459282
wireframe/corner_set: fix luacheck warnings 2022-01-03 13:30:22 +00:00
bc1ded787c
wea.sculpt.apply: Comment debug logging 2022-01-02 17:19:53 +00:00
80e230a9d7
saplingnames: update cool_trees bamboo 2022-01-02 17:16:38 +00:00
d9204e95b5
selection: Improve message shown to players 2022-01-02 13:19:31 +00:00
1da5599e80
remove debug logging 2021-12-31 14:46:23 +00:00
2d53869f11
//move+: fix leaving-source-behind problem 2021-12-31 13:38:13 +00:00
d6cd0cdb59
tokenize_commands: fix crash 2021-12-31 13:16:09 +00:00
d252ec4675
wea.move: add potential solution as a comment 2021-12-31 03:05:02 +00:00
934007c07b
//move+ add comment about bug 2021-12-31 03:01:51 +00:00
56a83572e7
fixup 2021-12-31 02:46:15 +00:00
1310dae884
Refactor: Split up terrain.lua, make subtable wea.terrain
This is just the start, if my plans work out.

The eventual aim here is to implement a generic Heightmap2D class, just 
like Vector3.

This will make interacting with heightmaps much easier.
2021-12-31 02:42:32 +00:00
9df5ba6fe5
//sculpt, //sculptlist: fix naming of static brushes; prettify output 2021-12-31 01:43:53 +00:00
227265db72
//sculpt: fix importing static brushes 2021-12-31 01:39:04 +00:00
dd8cd78d6b
wea.inspect: pull metatable names from item.__name
this is completely arbitrary, but will assist in discovering types of 
tables etc.
2021-12-31 01:38:24 +00:00
4597edcf1e
str_ends: write tests 2021-12-31 01:33:44 +00:00
08cff1c967
strings/polyfill/str_ends: actually export it correctly 2021-12-31 01:14:08 +00:00
f19b22e906
//sculpt: add simple test ellipse static brush 2021-12-31 01:04:27 +00:00
ec04cc58be
Add support for autoloading static brushes on server start 2021-12-31 01:03:56 +00:00
f259f85771
Add io compatibility layer
....I can't believe that Lua doesn't have an inbuilt scandir 
equivalent?!
2021-12-31 00:57:17 +00:00
1e9a651537
stings/polyfill: add str_ends
....because seriously, Lua *really* should have this.
2021-12-31 00:55:46 +00:00
ef2dbc1806
Reorder brushes
circle_soft1 is now the default brush, as it's awesome
2021-12-28 19:07:02 +00:00
b0e0b83c0d
//sculpt: Add buffer to catch height variations in terrain 2021-12-28 19:04:13 +00:00
ca6f1e7cea
//sculpt: sort pos{1,2}_compute 2021-12-28 18:38:10 +00:00
1de037c341
//sculpt brushes: __smooth → __gaussian 2021-12-28 18:35:16 +00:00
3e2687f82d
Add soft circle brush 2021-12-28 18:32:40 +00:00
1cad9f4064
Minor layout tweaks 2021-12-28 18:32:10 +00:00
db5d25d1de
//convolve: update matrix & kernel to use Vector3
A lot of the maths remains in the old style, but at least it doesn't 
take a zero-indexed table
2021-12-28 18:31:46 +00:00
17cc91ba1c
//sculpt: implement circle brush 2021-12-28 17:45:20 +00:00
2da0f2dcc2
Add circle brush, but it isn't working right just yet. 2021-12-28 17:22:18 +00:00
a2a9108d36
//sculpt: fix a bunch of bugs
including, but certainly not limited to, wea.make_heightmap now returns 
a Vector3 instance for heightmap_size
2021-12-28 15:22:51 +00:00
bbafca2020
apply: use wea.sculpt.apply_heightmap() 2021-12-28 02:20:47 +00:00
b0c3d34dd0
Implement apply function for VoxelManipulators 2021-12-28 02:17:26 +00:00
f1a433b5e3
split_shell: automatically trim whitespace; ignore args that consist solely of whitespace
Hence "//bonemeal       1     4     " now functions correctly
2021-12-28 01:27:39 +00:00
58d3c1e43b
Add optional frame to brush previews
This way, it's easiere to see where the edges are of the preview
2021-12-27 19:45:13 +00:00
d657ce1abe
//sculptlist: fix bugs. It works! 2021-12-27 19:36:57 +00:00
10c9d6f886
Start implementing a //sculpt command, but it's not finished or tested yet.
First up: test that our initial basic dynamic brushes work as intended 
with the //sculptlist [preview] command.

Also on the todo list: document it in the chat command reference!
2021-12-27 03:11:52 +00:00
c030acfd7e
Vector3: add new .clamp() function 2021-12-27 02:18:56 +00:00
eab498aac2
comment debug logging 2021-12-27 01:58:01 +00:00
6e89fc868f
//maze: fix generated maze not reaching to the very edge of the defined region
Fixes #60.
2021-12-26 22:57:47 +00:00
f7a5e223d4
really fix #72 2021-12-26 22:40:00 +00:00
502595579e
Try fixing #72 2021-12-26 22:36:24 +00:00
607f2bfdea
//move+: bugfix 2021-11-13 12:41:00 +00:00
8ec89c3e67
Implement //move+, but it isn't working right just yet. 2021-11-13 12:36:10 +00:00
d560583121
Make //copy+ a thing using the new wea.parse.axes 2021-11-11 02:20:37 +00:00
9729e82e35
parse_axes: support "true" as alias to activate mirrorring submode 2021-11-11 01:50:12 +00:00
94f675ddce
parse_axes: add mirroring function 2021-11-11 01:47:22 +00:00
41604d19ac
player.lua: tidy up comments 2021-11-11 01:33:08 +00:00
43ea6e34c1
fixup 2021-11-10 02:07:34 +00:00
e82440a096
Add deep copy table function 2021-11-10 02:07:13 +00:00
35970b31b3
Implement tests for parse_axes 2021-11-08 00:47:35 +00:00
4fb59a160f
parse_relative_axis_name: write tests 2021-11-08 00:16:51 +00:00
96c3ede365
parse_axes: bugfix, start writing tests 2021-11-07 18:04:18 +00:00
2babba9c55
first pass on writing an advanced axes parser, but it's untested 2021-11-07 17:14:11 +00:00
VorTechnix
46bd5d4fce Merge branch 'VorTechnix' of https://github.com/sbrl/Minetest-WorldEditAdditions into VorTechnix 2021-11-07 07:36:45 -08:00
VorTechnix
54268431b5 added missing quotation marks 2021-11-07 07:36:43 -08:00
VorTechnix
f7d4c5c6ac
Fix shadowing error 2021-11-07 07:04:07 -08:00
3f48832fff
Merge branch 'main' into VorTechnix 2021-11-07 14:31:01 +00:00
33a2ff1ed4
//spiral2 circle: round down 2021-10-31 19:48:40 +00:00
9d7000baed
Add circular spirals :D 2021-10-31 16:59:52 +00:00
d3a8efb9b8
Add //spiral2, write glue for square spirals
Next up: circular spirals!
2021-10-31 15:11:01 +00:00
a3f26200a0
init: call spiral_square 2021-10-30 02:47:19 +01:00
ad789d500a
Implement spiral square, but it's untested.
It would also be awesome to customise the directional plane upon which 
the spiral is generated. It might actually be possible without melting 
my brain I think....


Looking at http://www.mathematische-basteleien.de/spiral.htm it should 
be possible to go this for circles too. But there's 1 particular 
function in Vector2.js that we need to port to Vector3.lua that we 
haven't yet which we'd need for that.....
2021-10-30 02:46:25 +01:00
84741f5cb9
ellipsoid2: remove todo 2021-10-23 14:32:44 +01:00
2ae241aee5
Add //ellipsoid2 2021-10-14 01:50:27 +01:00
91d5b9abc2
ellipsoid: add comment 2021-10-13 22:50:37 +01:00
5bdd8ddb5e
ellipsoid: remove redundant minetest.get_content_id("air") call
wea.is_airlike() is the new function that should be used instead,  but 
in this case the call wasn't even necessary
2021-10-13 22:46:14 +01:00
653864be99
Start working on //copy, but it's not finished yet.
We need to merge @VorTechnix's branch in first to gain access to 
advanced axis parsing functions before we can complete it.

For this reason, the command registration for //copy is currently 
commented out.
2021-10-11 02:41:45 +01:00
VorTechnix
191e99f0b5 refactored table_tosting 2021-10-10 14:39:50 -07:00
VorTechnix
b72d36816e added to_boolean 2021-10-10 14:39:30 -07:00
55982b2eab
cloud wand: Improve chat message text 2021-10-03 15:31:27 +01:00
VorTechnix
a5960983e7 Merge branch 'main' into VorTechnix 2021-09-05 09:34:54 -07:00
62582b6abb
Update sapling alias compatibility 2021-08-12 01:09:24 +01:00
2920f7081d
Add //noiseapply 2021-08-07 23:01:15 +01:00
b131970f16
fixup 2021-08-07 22:30:38 +01:00
6f00394d3d
Noise: add perlinmt algorithm & set as default 2021-08-07 22:30:10 +01:00