Commit Graph

477 Commits

Author SHA1 Message Date
Starbeamrainbowlabs 1cad9f4064
Minor layout tweaks 2021-12-28 18:32:10 +00:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 17cc91ba1c
//sculpt: implement circle brush 2021-12-28 17:45:20 +00:00
Starbeamrainbowlabs 2da0f2dcc2
Add circle brush, but it isn't working right just yet. 2021-12-28 17:22:18 +00:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs bbafca2020
apply: use wea.sculpt.apply_heightmap() 2021-12-28 02:20:47 +00:00
Starbeamrainbowlabs b0c3d34dd0
Implement apply function for VoxelManipulators 2021-12-28 02:17:26 +00:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 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
Starbeamrainbowlabs d657ce1abe
//sculptlist: fix bugs. It works! 2021-12-27 19:36:57 +00:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs c030acfd7e
Vector3: add new .clamp() function 2021-12-27 02:18:56 +00:00
Starbeamrainbowlabs eab498aac2
comment debug logging 2021-12-27 01:58:01 +00:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs f7a5e223d4
really fix #72 2021-12-26 22:40:00 +00:00
Starbeamrainbowlabs 502595579e
Try fixing #72 2021-12-26 22:36:24 +00:00
Starbeamrainbowlabs 607f2bfdea
//move+: bugfix 2021-11-13 12:41:00 +00:00
Starbeamrainbowlabs 8ec89c3e67
Implement //move+, but it isn't working right just yet. 2021-11-13 12:36:10 +00:00
Starbeamrainbowlabs d560583121
Make //copy+ a thing using the new wea.parse.axes 2021-11-11 02:20:37 +00:00
Starbeamrainbowlabs 9729e82e35
parse_axes: support "true" as alias to activate mirrorring submode 2021-11-11 01:50:12 +00:00
Starbeamrainbowlabs 94f675ddce
parse_axes: add mirroring function 2021-11-11 01:47:22 +00:00
Starbeamrainbowlabs 41604d19ac
player.lua: tidy up comments 2021-11-11 01:33:08 +00:00
Starbeamrainbowlabs 43ea6e34c1
fixup 2021-11-10 02:07:34 +00:00
Starbeamrainbowlabs e82440a096
Add deep copy table function 2021-11-10 02:07:13 +00:00
Starbeamrainbowlabs 35970b31b3
Implement tests for parse_axes 2021-11-08 00:47:35 +00:00
Starbeamrainbowlabs 4fb59a160f
parse_relative_axis_name: write tests 2021-11-08 00:16:51 +00:00
Starbeamrainbowlabs 96c3ede365
parse_axes: bugfix, start writing tests 2021-11-07 18:04:18 +00:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 3f48832fff
Merge branch 'main' into VorTechnix 2021-11-07 14:31:01 +00:00
Starbeamrainbowlabs 33a2ff1ed4
//spiral2 circle: round down 2021-10-31 19:48:40 +00:00
Starbeamrainbowlabs 9d7000baed
Add circular spirals :D 2021-10-31 16:59:52 +00:00
Starbeamrainbowlabs d3a8efb9b8
Add //spiral2, write glue for square spirals
Next up: circular spirals!
2021-10-31 15:11:01 +00:00
Starbeamrainbowlabs a3f26200a0
init: call spiral_square 2021-10-30 02:47:19 +01:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 84741f5cb9
ellipsoid2: remove todo 2021-10-23 14:32:44 +01:00
Starbeamrainbowlabs 2ae241aee5
Add //ellipsoid2 2021-10-14 01:50:27 +01:00
Starbeamrainbowlabs 91d5b9abc2
ellipsoid: add comment 2021-10-13 22:50:37 +01:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 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
Starbeamrainbowlabs 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
Starbeamrainbowlabs 62582b6abb
Update sapling alias compatibility 2021-08-12 01:09:24 +01:00
Starbeamrainbowlabs 2920f7081d
Add `//noiseapply` 2021-08-07 23:01:15 +01:00
Starbeamrainbowlabs b131970f16
fixup 2021-08-07 22:30:38 +01:00
Starbeamrainbowlabs 6f00394d3d
Noise: add perlinmt algorithm & set as default 2021-08-07 22:30:10 +01:00
Starbeamrainbowlabs fc2444c5cd
//floodfill: remove debug 2021-08-07 02:31:21 +01:00
Starbeamrainbowlabs d1b0866af2
//floodfill: fix crash 2021-08-07 02:30:38 +01:00
VorTechnix 551f0c7e16 player_dir debugged (hopefully) 2021-08-05 20:38:59 -07:00
VorTechnix cff58792bf Merge branch 'main' into VorTechnix 2021-08-05 10:43:00 -07:00
VorTechnix 4cf30a0e74 updated @return on sort 2021-08-05 10:41:35 -07:00
VorTechnix 533519d318 streamlined getsign 2021-08-05 10:40:36 -07:00
Starbeamrainbowlabs e9398862b9
wea.inspect: comment out debug 2021-08-05 15:58:14 +01:00
Starbeamrainbowlabs 9bcf242443
Add worldeditadditions.inspect function 2021-08-05 15:55:30 +01:00
Starbeamrainbowlabs 35777b7ae5
//layers: comment debug 2021-08-05 02:38:57 +01:00
Starbeamrainbowlabs f30ddbae3b
//walls: add optional thickness argument 2021-08-05 02:00:38 +01:00
Starbeamrainbowlabs 87f84e2482
//bonmeal: add optional node list constraint 2021-08-05 01:17:43 +01:00
Starbeamrainbowlabs c48e9f2ab8
Vector3.min, Vector3.max: allow arguments to be numbers 2021-08-04 21:23:01 +01:00
Starbeamrainbowlabs 7c7abf4509
Queue: document with comments 2021-08-04 21:11:47 +01:00
Starbeamrainbowlabs ef678e6a05
//layers: fix 2021-08-04 12:17:39 +01:00
Starbeamrainbowlabs db830c6633
Implement slope constraint for //layers, but it isn't tested yet 2021-08-04 01:41:51 +01:00
Starbeamrainbowlabs 902d5ddc8b
wea.calculate_normals: update comment 2021-08-04 00:53:47 +01:00
Starbeamrainbowlabs 1833e68ec5
terrain.lua: add wea.calculate_slope() 2021-08-04 00:51:16 +01:00
VorTechnix 77ffda46f7 added axis and dir checks 2021-08-02 18:16:50 -07:00
VorTechnix 74ba9cc36f more lib/selector refactoring 2021-08-02 16:01:02 -07:00
VorTechnix 325f1cc11e added init for lib/selectors 2021-08-02 13:29:55 -07:00
VorTechnix b20c8f9af1 Merge branch 'main' into VorTechnix 2021-08-01 07:03:31 -07:00
Starbeamrainbowlabs a9b746986a
fixup 2021-07-31 16:08:01 +01:00
Starbeamrainbowlabs 07c55dc740
split_shell: comment debug
also, in 45def53 we fixed a bug with quotes being left behind at the and 
of a string
2021-07-31 16:07:48 +01:00
Starbeamrainbowlabs 45def53294
various commands: Upgrade to use wea.split_shell 2021-07-31 16:03:04 +01:00
Starbeamrainbowlabs 8c76b3b760
Queue: fix accessing undefined variable result 2021-07-30 19:57:16 +01:00
Starbeamrainbowlabs f0e1111b7c
tokenise_commands: fix luacheck issue 2021-07-30 19:56:44 +01:00
Starbeamrainbowlabs 0164a9b9eb
wea.parse.map: fix autoconverting to number / bool 2021-07-30 19:56:01 +01:00
Starbeamrainbowlabs 05eaf01912
nodes.lua: fix shadowing definition of loop variable i on line 22 2021-07-30 19:54:57 +01:00
Starbeamrainbowlabs 3ac0fa14f9
is_airlike: Fix accessing undefined global variable 2021-07-30 19:54:13 +01:00
Starbeamrainbowlabs a8e0a3088b
lru_benchmark: fix luacheck errors 2021-07-30 19:53:29 +01:00
Starbeamrainbowlabs 3c414f2dbd
Fix more issues discovered by luacheck 2021-07-30 19:52:36 +01:00
Starbeamrainbowlabs 64ed01132e
scale_down: fix redefining posi_copy 2021-07-30 19:49:11 +01:00
Starbeamrainbowlabs 54d0f5a3a3
run2d: Fix accidental redefining global variable 2021-07-30 19:48:10 +01:00
Starbeamrainbowlabs 51e1e7dcbd
noise.params_apply_default: Fix shadowing variable 2021-07-30 19:47:21 +01:00
Starbeamrainbowlabs 1f4a115063
//maze3d: Fix accidental global variable definition 2021-07-30 19:46:33 +01:00
Starbeamrainbowlabs f37a2aabcf
//forest: Fix redefining variable i in loop 2021-07-30 19:45:09 +01:00
Starbeamrainbowlabs c6bae3b7e0
//erode river: fix redefining i in nested loop 2021-07-30 19:44:02 +01:00
Starbeamrainbowlabs 910d4b036f
maze2d: squash another undefined variable 2021-07-30 19:03:54 +01:00
Starbeamrainbowlabs ecb846fcfe
//erode river: fix undefined global variable 2021-07-30 18:03:39 +01:00
VorTechnix 8225199520 renamed axes.lua to player.lua 2021-07-28 18:06:10 -07:00
Starbeamrainbowlabs bd1da727a4
Integrate split_shell into worldeditadditions
...it's not used anywhere yet though
2021-07-28 18:32:41 +01:00
Starbeamrainbowlabs b708fec2db
fixup 2021-07-28 18:07:21 +01:00
Starbeamrainbowlabs 6a77b3cd21
split_shell: fix escape handling by unwinding escaping by 1 level 2021-07-28 17:54:44 +01:00
Starbeamrainbowlabs c282e286bb
split_shell: correctly handle escaping edge cases 2021-07-28 17:49:18 +01:00
Starbeamrainbowlabs 31a4d89a49
TEST: implement split_shell 2021-07-28 17:39:09 +01:00
VorTechnix 415f36013f comment tweak 2021-07-27 19:56:29 -07:00
VorTechnix af07a158a8 shaved some milliseconds off split 2021-07-23 18:05:54 -07:00
VorTechnix 6e3b9d99e9 removed tests 2021-07-23 16:21:58 -07:00
VorTechnix 8718e59206 added wcompass 2021-07-23 12:11:08 -07:00
VorTechnix 72513b350a revert to fsplit 2021-07-23 10:46:23 -07:00
VorTechnix ce1ba27728 new split function 2021-07-22 13:29:41 -07:00
VorTechnix 40f0e437fb Merge branch 'main' into VorTechnix 2021-07-21 12:38:18 -07:00
VorTechnix d7d96ae263 //wbox added 2021-07-20 12:52:19 -07:00
VorTechnix 7b17c3675a Update corner_set.lua 2021-07-19 09:50:10 -07:00
VorTechnix 0c9987c745 corner set working 2021-07-19 08:55:39 -07:00
VorTechnix 1e7ab670f7 fix typo 2021-07-19 07:47:22 -07:00
VorTechnix 2c42e0495c cornerset broken 2021-07-19 07:42:47 -07:00
VorTechnix dbab2e4a0d added wireframe stuff 2021-07-18 19:29:17 -07:00
VorTechnix 9420be3896 untangle init.lua 2021-07-18 19:24:57 -07:00
VorTechnix f7323afe10 wireframe corner 2021-07-18 17:27:37 -07:00
Starbeamrainbowlabs 73e07eb013
bit polyfill: tiny tweak 2021-07-19 00:26:52 +01:00
Starbeamrainbowlabs 9020948dc5
bit polyfill: fix undeclared global accessed warning 2021-07-19 00:26:19 +01:00
VorTechnix 0b01520118 sets (not working) 2021-07-18 12:39:48 -07:00
Starbeamrainbowlabs fa2c0642c1
Fix typo in comment 2021-07-18 20:11:10 +01:00
Starbeamrainbowlabs e4d3f26692
perlin: use wea.bit.band 2021-07-17 21:34:50 +01:00
Starbeamrainbowlabs 5c7b5432d9
Add bit polyfill from https://github.com/Rabios/polyfill.lua 2021-07-17 21:31:31 +01:00
VorTechnix c57e8e6558 Merge branch 'main' into VorTechnix 2021-07-15 13:27:30 -07:00
Starbeamrainbowlabs 0fef39d707
Vector3: Implement __concat operator overloading
Now you can do this:

local v = wea.Vector3.new(3, 4, 5)
print(v.."yay")
2021-07-15 02:18:21 +01:00
Starbeamrainbowlabs 0b379c48cb
Implement //airapply
For #56, but the docs aren't written yet so we'll wait on closing it 
until I've written them.
2021-07-15 02:17:14 +01:00
Starbeamrainbowlabs 0d1900d37c
Add airlike backend command, but it's nto tested or hooked up yet 2021-07-13 23:49:21 +01:00
Starbeamrainbowlabs aeea17524d
benchmark the new LRU cache implementation 2021-07-13 23:42:19 +01:00
Starbeamrainbowlabs 81957070f9
Implement an LRU cache 2021-07-13 23:42:08 +01:00
Starbeamrainbowlabs e799a2ea61
Refactor Queue implementation into separate file 2021-07-13 22:02:34 +01:00
Starbeamrainbowlabs e85b91d074
//noise2d infrared: remove debug print 2021-07-13 00:56:26 +01:00
Starbeamrainbowlabs 03038689e2
Add infrared noise 2021-07-13 00:54:52 +01:00
Starbeamrainbowlabs 8891c47e98
wea.parse.map: fix crash if keywords isn't specified 2021-07-13 00:22:35 +01:00
Starbeamrainbowlabs 0dee65ca1d
//noise2d: add red noise 2021-07-13 00:15:23 +01:00
Starbeamrainbowlabs 7db2207aea
noise2d/make_2d: add todo 2021-07-12 02:46:47 +01:00
Starbeamrainbowlabs 46c2a02ade
//noise2d: add white algorithm; fix nasty bug in apply_2d 2021-07-12 02:45:32 +01:00
Starbeamrainbowlabs a42e296f4e
Reference: Document //noise2d 2021-07-06 01:08:36 +01:00
Starbeamrainbowlabs 40173b2647
Vector3: default to 0 for unspecified args 2021-07-04 23:30:29 +01:00
Starbeamrainbowlabs 8a14d35c04
noise2d: add comment 2021-07-04 16:14:48 +01:00
Starbeamrainbowlabs 30f7927af4
Delete failed test :-( :-( :-( :-( :-( :-( :-( :-( :-( :-( :-( 2021-07-04 16:13:55 +01:00
Starbeamrainbowlabs 457f436a09
Failed implementation of xoshiro256++ becaause Lua doesn't have an integer type :-( :-( :-( :-( :-( :-( :-( 2021-07-04 16:13:32 +01:00
Starbeamrainbowlabs 0b0595a1d3
Remove a whole bunch of stray debug print statements 2021-07-04 14:35:02 +01:00
Starbeamrainbowlabs 0212950d87
wea.apply_heightmap_changes: fix loop 2021-07-04 14:30:22 +01:00
Starbeamrainbowlabs 1d82013d86
//noise2d: add sin; sort out apply_mode as number 2021-07-04 13:21:13 +01:00
Starbeamrainbowlabs 49bf0f19bc
Perlin: remove debug functions 2021-07-04 12:03:29 +01:00
Starbeamrainbowlabs b2eb76d280
//noise2d works!
...just.

Next up more engines and documentation
2021-07-03 22:53:16 +01:00
Starbeamrainbowlabs ad8d8eab6b
wea.format.map: use tostring on values to avoid crashes 2021-07-03 14:44:59 +01:00
Starbeamrainbowlabs ee2e5716eb
Implement more of the noise command backend
It's still not hooked up yet though, and there's no command parsing 
logic either
2021-07-03 01:44:36 +01:00
Starbeamrainbowlabs cae75ec5a2
Add moar comments 2021-07-03 00:42:19 +01:00
VorTechnix f709d12b75 Update table_tostring.lua 2021-06-30 22:11:34 -07:00
VorTechnix 484b7532eb fixed table.tostring 2021-06-30 11:59:19 -07:00
Starbeamrainbowlabs 1984c67295
Vector3, Face, Mesh: unconditionally return class 2021-06-28 01:00:38 +01:00
Starbeamrainbowlabs db7b20d485
Refactor table functions into subtable of wea
Also, you can return a value from dofile()!!!!

This changes everything.
2021-06-28 00:56:29 +01:00
Starbeamrainbowlabs 624abc899b
node_distribution: add missing \n 2021-06-27 23:52:16 +01:00
Starbeamrainbowlabs 810d3049ee
format.make_ascii_table: make filename match function name 2021-06-27 23:52:05 +01:00
VorTechnix 3467f9c5b6
fixed min and max 2021-06-26 21:39:16 -07:00
Starbeamrainbowlabs f32d8588e0
Add Mesh & Face classes for #59
Together, these classes provide a way to represent a mesh of faces
generated from the Minetest world. This way, the generation of a mesh
can be abstracted away from any potential output file writers, thereby
allowing for multiple different output file formats to be supported.
2021-06-26 22:03:55 +01:00