Commit graph

444 commits

Author SHA1 Message Date
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
fc2444c5cd
//floodfill: remove debug 2021-08-07 02:31:21 +01:00
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
e9398862b9
wea.inspect: comment out debug 2021-08-05 15:58:14 +01:00
9bcf242443
Add worldeditadditions.inspect function 2021-08-05 15:55:30 +01:00
35777b7ae5
//layers: comment debug 2021-08-05 02:38:57 +01:00
f30ddbae3b
//walls: add optional thickness argument 2021-08-05 02:00:38 +01:00
87f84e2482
//bonmeal: add optional node list constraint 2021-08-05 01:17:43 +01:00
c48e9f2ab8
Vector3.min, Vector3.max: allow arguments to be numbers 2021-08-04 21:23:01 +01:00
7c7abf4509
Queue: document with comments 2021-08-04 21:11:47 +01:00
ef678e6a05
//layers: fix 2021-08-04 12:17:39 +01:00
db830c6633
Implement slope constraint for //layers, but it isn't tested yet 2021-08-04 01:41:51 +01:00
902d5ddc8b
wea.calculate_normals: update comment 2021-08-04 00:53:47 +01:00
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
a9b746986a
fixup 2021-07-31 16:08:01 +01:00
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
45def53294
various commands: Upgrade to use wea.split_shell 2021-07-31 16:03:04 +01:00
8c76b3b760
Queue: fix accessing undefined variable result 2021-07-30 19:57:16 +01:00
f0e1111b7c
tokenise_commands: fix luacheck issue 2021-07-30 19:56:44 +01:00
0164a9b9eb
wea.parse.map: fix autoconverting to number / bool 2021-07-30 19:56:01 +01:00
05eaf01912
nodes.lua: fix shadowing definition of loop variable i on line 22 2021-07-30 19:54:57 +01:00
3ac0fa14f9
is_airlike: Fix accessing undefined global variable 2021-07-30 19:54:13 +01:00
a8e0a3088b
lru_benchmark: fix luacheck errors 2021-07-30 19:53:29 +01:00
3c414f2dbd
Fix more issues discovered by luacheck 2021-07-30 19:52:36 +01:00
64ed01132e
scale_down: fix redefining posi_copy 2021-07-30 19:49:11 +01:00
54d0f5a3a3
run2d: Fix accidental redefining global variable 2021-07-30 19:48:10 +01:00
51e1e7dcbd
noise.params_apply_default: Fix shadowing variable 2021-07-30 19:47:21 +01:00
1f4a115063
//maze3d: Fix accidental global variable definition 2021-07-30 19:46:33 +01:00
f37a2aabcf
//forest: Fix redefining variable i in loop 2021-07-30 19:45:09 +01:00
c6bae3b7e0
//erode river: fix redefining i in nested loop 2021-07-30 19:44:02 +01:00
910d4b036f
maze2d: squash another undefined variable 2021-07-30 19:03:54 +01:00
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
bd1da727a4
Integrate split_shell into worldeditadditions
...it's not used anywhere yet though
2021-07-28 18:32:41 +01:00
b708fec2db
fixup 2021-07-28 18:07:21 +01:00
6a77b3cd21
split_shell: fix escape handling by unwinding escaping by 1 level 2021-07-28 17:54:44 +01:00
c282e286bb
split_shell: correctly handle escaping edge cases 2021-07-28 17:49:18 +01:00
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
73e07eb013
bit polyfill: tiny tweak 2021-07-19 00:26:52 +01:00
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
fa2c0642c1
Fix typo in comment 2021-07-18 20:11:10 +01:00
e4d3f26692
perlin: use wea.bit.band 2021-07-17 21:34:50 +01:00
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
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
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
0d1900d37c
Add airlike backend command, but it's nto tested or hooked up yet 2021-07-13 23:49:21 +01:00
aeea17524d
benchmark the new LRU cache implementation 2021-07-13 23:42:19 +01:00
81957070f9
Implement an LRU cache 2021-07-13 23:42:08 +01:00
e799a2ea61
Refactor Queue implementation into separate file 2021-07-13 22:02:34 +01:00
e85b91d074
//noise2d infrared: remove debug print 2021-07-13 00:56:26 +01:00
03038689e2
Add infrared noise 2021-07-13 00:54:52 +01:00
8891c47e98
wea.parse.map: fix crash if keywords isn't specified 2021-07-13 00:22:35 +01:00
0dee65ca1d
//noise2d: add red noise 2021-07-13 00:15:23 +01:00
7db2207aea
noise2d/make_2d: add todo 2021-07-12 02:46:47 +01:00
46c2a02ade
//noise2d: add white algorithm; fix nasty bug in apply_2d 2021-07-12 02:45:32 +01:00
a42e296f4e
Reference: Document //noise2d 2021-07-06 01:08:36 +01:00
40173b2647
Vector3: default to 0 for unspecified args 2021-07-04 23:30:29 +01:00
8a14d35c04
noise2d: add comment 2021-07-04 16:14:48 +01:00
30f7927af4
Delete failed test :-( :-( :-( :-( :-( :-( :-( :-( :-( :-( :-( 2021-07-04 16:13:55 +01:00
457f436a09
Failed implementation of xoshiro256++ becaause Lua doesn't have an integer type :-( :-( :-( :-( :-( :-( :-( 2021-07-04 16:13:32 +01:00
0b0595a1d3
Remove a whole bunch of stray debug print statements 2021-07-04 14:35:02 +01:00
0212950d87
wea.apply_heightmap_changes: fix loop 2021-07-04 14:30:22 +01:00
1d82013d86
//noise2d: add sin; sort out apply_mode as number 2021-07-04 13:21:13 +01:00
49bf0f19bc
Perlin: remove debug functions 2021-07-04 12:03:29 +01:00
b2eb76d280
//noise2d works!
...just.

Next up more engines and documentation
2021-07-03 22:53:16 +01:00
ad8d8eab6b
wea.format.map: use tostring on values to avoid crashes 2021-07-03 14:44:59 +01:00
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
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
1984c67295
Vector3, Face, Mesh: unconditionally return class 2021-06-28 01:00:38 +01:00
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
624abc899b
node_distribution: add missing \n 2021-06-27 23:52:16 +01:00
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
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
dbdf509d79
Add dofile for vector3 2021-06-26 19:48:32 +01:00
65c07d59ea
Vector3: add sort, is_contained, expand_region, mean, min, and max 2021-06-26 17:48:39 +01:00
91b77c981b
Vector3: add abs 2021-06-26 17:06:53 +01:00
88214aef57
Vector3: add min_component, max_component 2021-06-26 17:02:35 +01:00
0a3680aa7d
Vector3: add unit / normalise 2021-06-26 16:56:26 +01:00
c76a049286
Vector3: tweak 2021-06-26 16:47:22 +01:00
112bb96e99
Vector3: add equals, equality operator 2021-06-26 16:28:39 +01:00
cfa086ce46
Vector3: add dot product 2021-06-26 15:47:53 +01:00
dc5645cfeb
Vector3: add set_to 2021-06-26 15:43:42 +01:00
133cae587c
Vector3: add move_towards 2021-06-26 15:39:47 +01:00
773e6354ad
Vector3: add limit_to 2021-06-26 15:32:47 +01:00
6d0447a02f
Vector3: add clone 2021-06-26 15:23:16 +01:00
7549b0eaea
Vector3: add length, length_squared, sqrt 2021-06-26 15:15:32 +01:00
cde3c3360c
Vector3: add snap_to 2021-06-26 14:44:40 +01:00
8ae0d92e3d
Vector3/tests: flip assert orderings 2021-06-26 14:40:14 +01:00
57df2d045f
Vector3: add area 2021-06-26 14:26:40 +01:00
1e1112c34a
Vector3: Add round 2021-06-26 14:22:26 +01:00
06e19248c7
Vector3: add floor/ceil 2021-06-26 14:19:18 +01:00
9d197aefd2
Start implementing vector3.
Currently we have the 4 basic operations down, plus tostring.
2021-06-26 14:10:28 +01:00
90b456a687
Merge branch 'main' into vortechnix 2021-06-26 02:18:48 +01:00
afce954306
Test the rest of the sring polyfills 2021-06-26 02:17:49 +01:00
6a42aa6838
Set out the basics of automated tests for str_padend 2021-06-26 02:05:01 +01:00
VorTechnix
2d6bd676d6
Update --remove tocharset testing tags
Co-authored-by: Starbeamrainbowlabs <sbrl@starbeamrainbowlabs.com>
2021-06-25 17:25:09 -07:00
VorTechnix
a6a858046f
Update tochars.lua grammar
Co-authored-by: Starbeamrainbowlabs <sbrl@starbeamrainbowlabs.com>
2021-06-25 16:30:38 -07:00
VorTechnix
a40b65af3e
Update --remove old tochars syntax
Co-authored-by: Starbeamrainbowlabs <sbrl@starbeamrainbowlabs.com>
2021-06-25 16:29:47 -07:00
VorTechnix
92c7d0447a
Fixed indentation in torus 2021-06-25 11:53:23 -07:00
VorTechnix
efef201fde //smake added 2021-06-22 09:33:49 -07:00
VorTechnix
7553163e11 split tochars to separate file 2021-06-03 10:02:17 -07:00
VorTechnix
622ea7a683 added worldeditadditions.tochars 2021-06-02 21:29:36 -07:00
VorTechnix
3c7cd38459 initialized worldeditadditions.tables 2021-06-02 19:27:23 -07:00
VorTechnix
3dff6fe66c added PARSE header 2021-06-02 19:27:04 -07:00
VorTechnix
0026bcdab7 added sets.lua, reordered dofiles in /tables/init.luas 2021-06-02 19:18:49 -07:00
VorTechnix
38335e291f Merge branch 'main' into vortechnix 2021-06-02 18:03:16 -07:00