Minetest-WorldEditAdditions/worldeditadditions_core/utils
Starbeamrainbowlabs 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
..
format Update utils 2022-09-18 17:32:13 +01:00
io StagedVoxelRegion : ..... I really need to come back and comb through this 2023-11-28 00:40:11 +00:00
parse //rotate: fix some minor keyword issues, update reference & changelog 2023-12-16 01:11:25 +00:00
strings weac/polyfill: add @module so it appears in the Lua API 2024-05-25 14:06:57 +01:00
table initial wea.revolve() implementation 2023-01-21 03:24:44 +00:00
terrain comments: update 2023-08-03 14:16:14 +01:00
bit.lua comments: update 2023-08-03 14:16:14 +01:00
chaikin.lua comments: update 2023-08-03 14:16:14 +01:00
EventEmitter.lua EventEmitter: fix luacheck error 2023-11-28 00:33:27 +00:00
inspect.lua comments: update 2023-08-03 14:16:14 +01:00
lru.lua comments: update @class definitions 2023-07-02 19:03:46 +01:00
lru_benchmark.lua comments: update 2023-08-03 14:16:14 +01:00
mesh.lua comments: update @class definitions 2023-07-02 19:03:46 +01:00
node_identification.lua comments: update 2023-08-03 14:16:14 +01:00
NodeListMatcher.lua Add //ngroups, which lists the groups a given node is a member of 2023-11-27 23:44:06 +00:00
nodes.lua comments: update 2023-08-03 14:16:14 +01:00
numbers.lua comments: update 2023-08-03 14:16:14 +01:00
param2.lua core.param2: add todo reimplement notice 2024-06-05 00:14:17 +01:00
player.lua //speed: fix crash when pova isn't installed 2024-01-01 22:24:49 +00:00
queue.lua comments: update @class definitions 2023-07-02 19:03:46 +01:00
raycast_adv.lua comments: update 2023-08-03 14:16:14 +01:00
rotation.lua fix comments 2024-05-19 16:28:05 +01:00
set.lua comments: update 2023-08-03 14:16:14 +01:00
setting_handler.lua Merge branch 'main' of https://github.com/sbrl/Minetest-WorldEditAdditions 2023-07-04 14:50:17 -07:00
vector3.lua Initial //orient implementation 2024-06-04 22:49:41 +01:00