WIP: Add loom functionality (by @mirqf) #4028

Draft
AFCMS wants to merge 1 commits from AFCMS/MineClone2:loom_functionality into master
Member

Add loom functionality (by @mirqf, published in his name with permission).

Formspec have been done by myself (@AFCMS)

Preview

image

Testing

Try https://minecraft.fandom.com/wiki/Loom

Add loom functionality (by @mirqf, published in his name with permission). Formspec have been done by myself (@AFCMS) ### Preview ![image](/attachments/6200e8b5-0d99-45b0-97f4-250c98401f6a) ### Testing Try https://minecraft.fandom.com/wiki/Loom
AFCMS added the
nodes
label 2023-11-24 12:09:12 +01:00
AFCMS changed title from Add loom functionality to Add loom functionality (by @mirqf) 2023-11-24 12:09:28 +01:00
the-real-herowl changed title from Add loom functionality (by @mirqf) to WIP: Add loom functionality (by @mirqf) 2023-11-25 01:38:19 +01:00
the-real-herowl added the
gameplay
#P4 priority: medium
labels 2023-11-25 01:39:00 +01:00
the-real-herowl added this to the 2 - Next milestone 2023-11-25 01:41:05 +01:00
the-real-herowl requested changes 2023-11-25 01:56:07 +01:00
the-real-herowl left a comment
Owner

I'm leaving this for future reference. Whoever will be finishing this up (may be me) will surely find this useful.

I'm leaving this for future reference. Whoever will be finishing this up (may be me) will surely find this useful.
@ -3,0 +39,4 @@
"triangles_bottom",
"triangles_top",
}

May want to have a pattern registration function.

May want to have a pattern registration function.
@ -3,0 +63,4 @@
local layers = minetest.deserialize(banner:get_meta():get_string("layers")) or {}
table.insert(layers, { pattern = pattern, color = dye_to_colorid_mapping[color:get_name()] })
banner:get_meta():set_string("layers", minetest.serialize(layers))
return banner

This doesn't impact description. Probably use a tt snippet to implement proper dynamic descriptions.

This doesn't impact description. Probably use a tt snippet to implement proper dynamic descriptions.
@ -3,0 +67,4 @@
end
local function show_loom_formspec(pos, player)
local inv = minetest.get_meta(pos):get_inventory()

Utilize player instead of node inventory?

Utilize player instead of node inventory?
@ -18,0 +177,4 @@
inv:set_size("input", 3)
inv:set_size("output", 1)
end,
allow_metadata_inventory_put = function(pos, listname, index, stack, player)

Probably something similar to stonecutter should be desirable, without node inventories and node callbacks..

Probably something similar to stonecutter should be desirable, without node inventories and node callbacks..
@ -18,0 +182,4 @@
return 0
else
local name = stack:get_name()
if (index == 1 and not name:find("banner_item")) or (index == 2 and not name:find("mcl_dye")) or (index == 3 and not name:find("pattern")) then return 0 end

Do we have any of those "patterns" as items?

Do we have any of those "patterns" as items?
Member

In my opinion, this should be done with itemgroups

In my opinion, this should be done with itemgroups
@ -20,3 +229,2 @@
minetest.register_craft({
output = "mcl_loom:loom",
output = "mcl_functional:loom",

We don't have a "mcl_functional" mod/namespace. The old version of this line is correct.

We don't have a "mcl_functional" mod/namespace. The old version of this line is correct.
the-real-herowl added the
GUI/HUD
label 2023-11-25 02:03:37 +01:00
the-real-herowl force-pushed loom_functionality from 03df9eb835 to 1c233305aa 2023-12-11 01:39:56 +01:00 Compare
the-real-herowl modified the milestone from 2 - Next to 0.87.0 - Prismatic 2023-12-24 18:57:03 +01:00
the-real-herowl modified the milestone from 0.87.0 - Prismatic to 0.88.0 2024-03-27 00:56:33 +01:00
This pull request is marked as a work in progress.
This branch is out-of-date with the base branch
Sign in to join this conversation.
No reviewers
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: VoxeLibre/VoxeLibre#4028
No description provided.