WIP: Add loom functionality (by @mirqf) #4028
No reviewers
Labels
No Label
#P1 CRITICAL
#P2: HIGH
#P3: elevated
#P4 priority: medium
#P6: low
#Review
annoying
API
bug
code quality
combat
commands
compatibility
configurability
contribution inside
controls
core feature
creative mode
delayed for engine release
documentation
duplicate
enhancement
environment
gameplay
graphics
ground content conflict
GUI/HUD
help wanted
incomplete feature
invalid / won't fix
items
looking for contributor
mapgen
meta
mineclone2+
Minecraft >= 1.13
Minecraft >= 1.17
missing feature
mobile
mobs
mod support
model needed
multiplayer
Needs adoption
needs discussion
needs engine change
needs more information
needs research
nodes
non-Minecraft feature
non-mob entities
performance
player
possible close
redstone
release notes
schematics
Skyblock
sounds
Testing / Retest
tools
translation
unconfirmed
mcl5
mcla
Media missing
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: VoxeLibre/VoxeLibre#4028
Loading…
Reference in New Issue
No description provided.
Delete Branch "AFCMS/MineClone2:loom_functionality"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Add loom functionality (by @mirqf, published in his name with permission).
Formspec have been done by myself (@AFCMS)
Preview
Testing
Try https://minecraft.fandom.com/wiki/Loom
Add loom functionalityto Add loom functionality (by @mirqf)Add loom functionality (by @mirqf)to WIP: Add loom functionality (by @mirqf)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.
@ -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.
@ -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?
@ -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..
@ -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?
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.
03df9eb835
to1c233305aa