Compare commits
104 Commits
Pre-Alpha_
...
master
Author | SHA1 | Date |
---|---|---|
TheOnlyJoeEnderman | 5879e3b0fb | |
TheOnlyJoeEnderman | 0d1cd8d748 | |
TheOnlyJoeEnderman | 8f563c8dfb | |
TheOnlyJoeEnderman | 2bc80c9e49 | |
TheOnlyJoeEnderman | 6f5eba27ad | |
TheOnlyJoeEnderman | f0cf412403 | |
TheOnlyJoeEnderman | 09bd129bd5 | |
TheOnlyJoeEnderman | 669032f92a | |
TheOnlyJoeEnderman | 6c30bff098 | |
TheOnlyJoeEnderman | 9eb01e7585 | |
TheOnlyJoeEnderman | 028cdba154 | |
TheOnlyJoeEnderman | 88445afd87 | |
TheOnlyJoeEnderman | 8bbaaa1fda | |
TheOnlyJoeEnderman | fe9ea1683b | |
TheOnlyJoeEnderman | 713f42b19d | |
TheOnlyJoeEnderman | 54e6810691 | |
TheOnlyJoeEnderman | fed2333cfc | |
TheOnlyJoeEnderman | df1a987122 | |
TheOnlyJoeEnderman | daed88c9a4 | |
TheOnlyJoeEnderman | 3d18377be4 | |
TheOnlyJoeEnderman | de187d3f39 | |
TheOnlyJoeEnderman | c1d827c69d | |
TheOnlyJoeEnderman | 058aee2d05 | |
TheOnlyJoeEnderman | 28d0a66834 | |
TheOnlyJoeEnderman | be9952b812 | |
TheOnlyJoeEnderman | 6d41e134f3 | |
TheOnlyJoeEnderman | 30e4a466c4 | |
TheOnlyJoeEnderman | 34df1b1572 | |
TheOnlyJoeEnderman | f9b3653064 | |
TheOnlyJoeEnderman | 00cb9d8860 | |
TheOnlyJoeEnderman | 75269403b8 | |
TheOnlyJoeEnderman | eccd694ccb | |
TheOnlyJoeEnderman | fcd8964a2c | |
TheOnlyJoeEnderman | 90018b21ad | |
TheOnlyJoeEnderman | ae5c999f22 | |
TheOnlyJoeEnderman | 405b20bfd9 | |
TheOnlyJoeEnderman | 3322b8b3cb | |
TheOnlyJoeEnderman | 6d99f08a77 | |
TheOnlyJoeEnderman | 1b3d732bb6 | |
TheOnlyJoeEnderman | 1720da6853 | |
TheOnlyJoeEnderman | 20be5c5b7e | |
TheOnlyJoeEnderman | 485830c40d | |
TheOnlyJoeEnderman | 7607eee421 | |
TheOnlyJoeEnderman | 7e38409579 | |
TheOnlyJoeEnderman | 8a605bd2ac | |
TheOnlyJoeEnderman | aaac2b3037 | |
TheOnlyJoeEnderman | 209dc1754e | |
TheOnlyJoeEnderman | a72fb63d70 | |
TheOnlyJoeEnderman | 3a60b1d832 | |
TheOnlyJoeEnderman | 41cf4fad8e | |
TheOnlyJoeEnderman | 224968a545 | |
TheOnlyJoeEnderman | 700617cafe | |
TheOnlyJoeEnderman | b7c3bb7c9f | |
TheOnlyJoeEnderman | a47d682d2e | |
TheOnlyJoeEnderman | b83aece7c8 | |
TheOnlyJoeEnderman | f566ba089e | |
TheOnlyJoeEnderman | 81f4aae363 | |
TheOnlyJoeEnderman | 97b52e7eb8 | |
TheOnlyJoeEnderman | 395787ac30 | |
TheOnlyJoeEnderman | 23d77b23eb | |
TheOnlyJoeEnderman | 81b69dde9d | |
TheOnlyJoeEnderman | 0028937e86 | |
TheOnlyJoeEnderman | d45aec7a5d | |
TheOnlyJoeEnderman | e5330e6565 | |
TheOnlyJoeEnderman | 4fea7e0781 | |
TheOnlyJoeEnderman | f46ad83526 | |
TheOnlyJoeEnderman | 3b2fc6df39 | |
TheOnlyJoeEnderman | 80ce7f278e | |
TheOnlyJoeEnderman | 7be73045c9 | |
TheOnlyJoeEnderman | 0fe00c3d82 | |
TheOnlyJoeEnderman | 2c2b4f9999 | |
TheOnlyJoeEnderman | aa6fa5faa0 | |
TheOnlyJoeEnderman | 6234f5f63a | |
TheOnlyJoeEnderman | 8d56d5d3c3 | |
TheOnlyJoeEnderman | da0f4bf653 | |
TheOnlyJoeEnderman | 49cce41061 | |
TheOnlyJoeEnderman | f250727ca7 | |
TheOnlyJoeEnderman | 11aefba552 | |
TheOnlyJoeEnderman | e85d1732c8 | |
TheOnlyJoeEnderman | 580ad8a82c | |
TheOnlyJoeEnderman | a39b9e9da8 | |
TheOnlyJoeEnderman | 99b8327811 | |
TheOnlyJoeEnderman | a9deabe467 | |
TheOnlyJoeEnderman | 85a3121fc6 | |
TheOnlyJoeEnderman | 38cdc9206e | |
TheOnlyJoeEnderman | 55c692ab64 | |
TheOnlyJoeEnderman | af4fee558c | |
TheOnlyJoeEnderman | 16f7b1d4a4 | |
TheOnlyJoeEnderman | c565cc7b43 | |
TheOnlyJoeEnderman | 425db55c43 | |
TheOnlyJoeEnderman | 4edcc61eb3 | |
TheOnlyJoeEnderman | df19e5535f | |
TheOnlyJoeEnderman | 1ce4e691cc | |
TheOnlyJoeEnderman | 218acd52bf | |
TheOnlyJoeEnderman | 4f9530ff18 | |
TheOnlyJoeEnderman | e2b17fa069 | |
TheOnlyJoeEnderman | 271e6e8ecc | |
TheOnlyJoeEnderman | 5f353e2fe0 | |
TheOnlyJoeEnderman | f8e9116e8e | |
TheOnlyJoeEnderman | ac55ca4605 | |
TheOnlyJoeEnderman | 1aadb40113 | |
TheOnlyJoeEnderman | 74bc70c716 | |
TheOnlyJoeEnderman | c851d4fbe3 | |
TheOnlyJoeEnderman | 4051e08c1b |
|
@ -1,4 +1,4 @@
|
||||||
# Paintings Library
|
# Paintings Library
|
||||||
|
|
||||||
####
|
####
|
||||||
Attempts to make it easy to add many paintings of various sizes whilst adding several example paintings.
|
Attempts to make it easy to add many paintings of various sizes. Now a paintbrush is included to cycle all paintings at random. You do not have to make your own painting recipes anymore if you do not want to.
|
||||||
|
|
91
init.lua
|
@ -6,3 +6,94 @@ local default_path = minetest.get_modpath("paintings_lib")
|
||||||
|
|
||||||
dofile(minetest.get_modpath("paintings_lib") .. "/register.lua")
|
dofile(minetest.get_modpath("paintings_lib") .. "/register.lua")
|
||||||
dofile(minetest.get_modpath("paintings_lib") .. "/paintings.lua")
|
dofile(minetest.get_modpath("paintings_lib") .. "/paintings.lua")
|
||||||
|
|
||||||
|
-- Global variable to hold the list of painting nodes
|
||||||
|
local painting_nodes = {}
|
||||||
|
|
||||||
|
-- Function to populate the painting nodes list
|
||||||
|
local function populate_painting_nodes()
|
||||||
|
for name, def in pairs(minetest.registered_nodes) do
|
||||||
|
if def.groups.painting then
|
||||||
|
table.insert(painting_nodes, name)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Register the function to be called after all mods have loaded
|
||||||
|
minetest.register_on_mods_loaded(populate_painting_nodes)
|
||||||
|
|
||||||
|
-- Call the function to populate the list at server start
|
||||||
|
populate_painting_nodes()
|
||||||
|
|
||||||
|
-- Retrieve the number of uses from settings
|
||||||
|
local paintbrush_uses = tonumber(minetest.settings:get("paintings_lib_paintbrush_uses")) or 32
|
||||||
|
|
||||||
|
-- Register the paintbrush tool
|
||||||
|
minetest.register_tool("paintings_lib:paintbrush", {
|
||||||
|
description = "Paintbrush",
|
||||||
|
inventory_image = "paintings_lib_paintbrush.png",
|
||||||
|
wield_image = "paintings_lib_paintbrush.png^[transformFX"
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Function to swap the node and wear out the paintbrush
|
||||||
|
local function swap_node(pos, node, clicker)
|
||||||
|
local wielded_item = clicker:get_wielded_item()
|
||||||
|
if wielded_item:get_name() ~= "paintings_lib:paintbrush" then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
if #painting_nodes > 0 then
|
||||||
|
local new_node_name = node.name
|
||||||
|
local attempts = 0
|
||||||
|
-- Loop until a different painting is found or after 10 attempts
|
||||||
|
while new_node_name == node.name and attempts < 10 do
|
||||||
|
new_node_name = painting_nodes[math.random(#painting_nodes)]
|
||||||
|
attempts = attempts + 1
|
||||||
|
end
|
||||||
|
|
||||||
|
if new_node_name ~= node.name then
|
||||||
|
minetest.swap_node(pos, {name = new_node_name})
|
||||||
|
-- Adding wear to the paintbrush
|
||||||
|
wielded_item:add_wear(65535 / paintbrush_uses)
|
||||||
|
clicker:set_wielded_item(wielded_item)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Override the on_rightclick for nodes in the "painting" group
|
||||||
|
minetest.register_on_punchnode(function(pos, node, clicker, pointed_thing)
|
||||||
|
if minetest.get_item_group(node.name, "painting") > 0 then
|
||||||
|
swap_node(pos, node, clicker)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
|
|
||||||
|
-- Crafting recipe to 'refill' the paintbrush
|
||||||
|
minetest.register_on_craft(function(itemstack, player, old_craft_grid, craft_inv)
|
||||||
|
local paintbrush_found, dye_found = false, false
|
||||||
|
|
||||||
|
for _, item in ipairs(old_craft_grid) do
|
||||||
|
if item:get_name() == "paintings_lib:paintbrush" then
|
||||||
|
paintbrush_found = true
|
||||||
|
-- Fully repair the paintbrush
|
||||||
|
itemstack:add_wear(-65535)
|
||||||
|
end
|
||||||
|
if minetest.get_item_group(item:get_name(), "dye") > 0 then
|
||||||
|
dye_found = true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if paintbrush_found and dye_found then
|
||||||
|
return itemstack
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
type = "shapeless",
|
||||||
|
output = "paintings_lib:paintbrush",
|
||||||
|
recipe = {
|
||||||
|
"paintings_lib:paintbrush",
|
||||||
|
"group:dye", "group:dye", "group:dye", "group:dye",
|
||||||
|
"group:dye", "group:dye", "group:dye", "group:dye"
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
1
mod.conf
|
@ -3,3 +3,4 @@ title = Paintings Library
|
||||||
description = A fast, sleek, modern painting API for Minetest Game, but optional support for other games.
|
description = A fast, sleek, modern painting API for Minetest Game, but optional support for other games.
|
||||||
depends = default
|
depends = default
|
||||||
min_minetest_version = 5.3
|
min_minetest_version = 5.3
|
||||||
|
author = JoeEnderman
|
||||||
|
|
|
@ -0,0 +1,197 @@
|
||||||
|
# Made in Blockbench 4.6.5
|
||||||
|
mtllib paintings_lib_4x2.mtl
|
||||||
|
|
||||||
|
o plane
|
||||||
|
v -2.5 -1.4999999999999984 0.4843750000000029
|
||||||
|
v -2.5 0.5000000000000016 0.4843749999999962
|
||||||
|
v 1.5 -1.4999999999999982 0.48437500000000333
|
||||||
|
v 1.5 0.5000000000000018 0.48437499999999667
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 1 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0
|
||||||
|
vn 1.2246467991473532e-16 -3.3306690738754696e-15 -1
|
||||||
|
usemtl m_1301f86f-a555-6fc1-cf6a-0628584373f3
|
||||||
|
f 1/1/1 2/2/1 4/3/1 3/4/1
|
||||||
|
o cube
|
||||||
|
v -2.4375 0.5 0.5
|
||||||
|
v -2.4375 0.5 0.4375
|
||||||
|
v -2.4375 -1.5 0.5
|
||||||
|
v -2.4375 -1.5 0.4375
|
||||||
|
v -2.5 0.5 0.5
|
||||||
|
v -2.5 0.5 0.4375
|
||||||
|
v -2.5 -1.5 0.5
|
||||||
|
v -2.5 -1.5 0.4375
|
||||||
|
v 1.4375 -1.4375 0.5
|
||||||
|
v 1.4375 -1.4375 0.4375
|
||||||
|
v 1.4375 -1.5 0.5
|
||||||
|
v 1.4375 -1.5 0.4375
|
||||||
|
v -2.4375 -1.4375 0.5
|
||||||
|
v -2.4375 -1.4375 0.4375
|
||||||
|
v -2.4375 -1.5 0.5
|
||||||
|
v -2.4375 -1.5 0.4375
|
||||||
|
v 1.4375 0.5 0.5
|
||||||
|
v 1.4375 0.5 0.4375
|
||||||
|
v 1.4375 0.4375 0.5
|
||||||
|
v 1.4375 0.4375 0.4375
|
||||||
|
v -2.4375 0.5 0.5
|
||||||
|
v -2.4375 0.5 0.4375
|
||||||
|
v -2.4375 0.4375 0.5
|
||||||
|
v -2.4375 0.4375 0.4375
|
||||||
|
v 1.5 0.5 0.5
|
||||||
|
v 1.5 0.5 0.4375
|
||||||
|
v 1.5 -1.5 0.5
|
||||||
|
v 1.5 -1.5 0.4375
|
||||||
|
v 1.4375 0.5 0.5
|
||||||
|
v 1.4375 0.5 0.4375
|
||||||
|
v 1.4375 -1.5 0.5
|
||||||
|
v 1.4375 -1.5 0.4375
|
||||||
|
vt 1 0
|
||||||
|
vt 1 1
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 1 0
|
||||||
|
vt 1 1
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 0.015625 0.96875
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.96875
|
||||||
|
vt 0.015625 0.96875
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.96875
|
||||||
|
vt 1 0
|
||||||
|
vt 1 1
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 1 0
|
||||||
|
vt 1 1
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 0.015625 0.96875
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.96875
|
||||||
|
vt 0.015625 0.96875
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.96875
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 0.984375 0.03125
|
||||||
|
vt 0.015625 0.03125
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 0.984375 0.03125
|
||||||
|
vt 0.015625 0.03125
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 0.984375 0.03125
|
||||||
|
vt 0.015625 0.03125
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 0.984375 0.03125
|
||||||
|
vt 0.015625 0.03125
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.015625 0.96875
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.96875
|
||||||
|
vt 0.015625 0.96875
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.96875
|
||||||
|
vt 0.984375 0.96875
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0.015625 0.96875
|
||||||
|
vt 0.984375 0.96875
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0.015625 0.96875
|
||||||
|
vt 0.984375 0.96875
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0.015625 0.96875
|
||||||
|
vt 0.984375 0.96875
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0.015625 0.96875
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0
|
||||||
|
vt 0.015625 0.96875
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.96875
|
||||||
|
vt 0.015625 0.96875
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.96875
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0
|
||||||
|
vn 1 0 0
|
||||||
|
vn -1 0 0
|
||||||
|
vn 0 1 0
|
||||||
|
vn 0 -1 0
|
||||||
|
vn 0 0 1
|
||||||
|
vn 0 0 -1
|
||||||
|
vn 1 0 0
|
||||||
|
vn -1 0 0
|
||||||
|
vn 0 1 0
|
||||||
|
vn 0 -1 0
|
||||||
|
vn 0 0 1
|
||||||
|
vn 0 0 -1
|
||||||
|
vn 1 0 0
|
||||||
|
vn -1 0 0
|
||||||
|
vn 0 1 0
|
||||||
|
vn 0 -1 0
|
||||||
|
vn 0 0 1
|
||||||
|
vn 0 0 -1
|
||||||
|
vn 1 0 0
|
||||||
|
vn -1 0 0
|
||||||
|
vn 0 1 0
|
||||||
|
vn 0 -1 0
|
||||||
|
vn 0 0 1
|
||||||
|
vn 0 0 -1
|
||||||
|
usemtl m_190a9590-f98a-f621-d3b2-5a8eb48cedc5
|
||||||
|
f 8/5/2 6/6/2 5/7/2 7/8/2
|
||||||
|
f 11/9/3 9/10/3 10/11/3 12/12/3
|
||||||
|
f 5/13/4 6/14/4 10/15/4 9/16/4
|
||||||
|
f 8/17/5 7/18/5 11/19/5 12/20/5
|
||||||
|
f 7/21/6 5/22/6 9/23/6 11/24/6
|
||||||
|
f 12/25/7 10/26/7 6/27/7 8/28/7
|
||||||
|
usemtl none
|
||||||
|
f 16/29/8 14/30/8 13/31/8 15/32/8
|
||||||
|
f 19/33/9 17/34/9 18/35/9 20/36/9
|
||||||
|
usemtl m_190a9590-f98a-f621-d3b2-5a8eb48cedc5
|
||||||
|
f 13/37/10 14/38/10 18/39/10 17/40/10
|
||||||
|
f 16/41/11 15/42/11 19/43/11 20/44/11
|
||||||
|
f 15/45/12 13/46/12 17/47/12 19/48/12
|
||||||
|
f 20/49/13 18/50/13 14/51/13 16/52/13
|
||||||
|
usemtl none
|
||||||
|
f 24/53/14 22/54/14 21/55/14 23/56/14
|
||||||
|
f 27/57/15 25/58/15 26/59/15 28/60/15
|
||||||
|
usemtl m_190a9590-f98a-f621-d3b2-5a8eb48cedc5
|
||||||
|
f 21/61/16 22/62/16 26/63/16 25/64/16
|
||||||
|
f 24/65/17 23/66/17 27/67/17 28/68/17
|
||||||
|
f 23/69/18 21/70/18 25/71/18 27/72/18
|
||||||
|
f 28/73/19 26/74/19 22/75/19 24/76/19
|
||||||
|
f 32/77/20 30/78/20 29/79/20 31/80/20
|
||||||
|
f 35/81/21 33/82/21 34/83/21 36/84/21
|
||||||
|
f 29/85/22 30/86/22 34/87/22 33/88/22
|
||||||
|
f 32/89/23 31/90/23 35/91/23 36/92/23
|
||||||
|
f 31/93/24 29/94/24 33/95/24 35/96/24
|
||||||
|
f 36/97/25 34/98/25 30/99/25 32/100/25
|
|
@ -0,0 +1,197 @@
|
||||||
|
# Made in Blockbench 4.6.5
|
||||||
|
mtllib paintings_lib_4x3.mtl
|
||||||
|
|
||||||
|
o plane
|
||||||
|
v -2.5 -1.4999999999999973 0.48437500000001055
|
||||||
|
v -2.5 1.5000000000000027 0.4843749999999939
|
||||||
|
v 1.5 -1.4999999999999973 0.484375000000011
|
||||||
|
v 1.5 1.5000000000000027 0.48437499999999434
|
||||||
|
vt 1 0
|
||||||
|
vt 1 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0
|
||||||
|
vn 1.224646799147353e-16 -5.551115123125783e-15 -1
|
||||||
|
usemtl m_7731411c-b95b-ef82-bd57-fc430f3f360f
|
||||||
|
f 1/1/1 2/2/1 4/3/1 3/4/1
|
||||||
|
o cube
|
||||||
|
v -2.5 -1.5 0.5
|
||||||
|
v -2.4375 1.5 0.5
|
||||||
|
v -2.4375 1.5 0.4375
|
||||||
|
v -2.4375 -1.5 0.5
|
||||||
|
v -2.4375 -1.5 0.4375
|
||||||
|
v -2.5 1.5 0.5
|
||||||
|
v -2.5 1.5 0.4375
|
||||||
|
v -2.5 -1.5 0.4375
|
||||||
|
v 1.4375 -1.4375 0.5
|
||||||
|
v 1.4375 -1.4375 0.4375
|
||||||
|
v 1.4375 -1.5 0.5
|
||||||
|
v 1.4375 -1.5 0.4375
|
||||||
|
v -2.4375 -1.4375 0.5
|
||||||
|
v -2.4375 -1.4375 0.4375
|
||||||
|
v -2.4375 -1.5 0.5
|
||||||
|
v -2.4375 -1.5 0.4375
|
||||||
|
v 1.4375 1.5 0.5
|
||||||
|
v 1.4375 1.5 0.4375
|
||||||
|
v 1.4375 1.4375 0.5
|
||||||
|
v 1.4375 1.4375 0.4375
|
||||||
|
v -2.4375 1.5 0.5
|
||||||
|
v -2.4375 1.5 0.4375
|
||||||
|
v -2.4375 1.4375 0.5
|
||||||
|
v -2.4375 1.4375 0.4375
|
||||||
|
v 1.5 1.5 0.5
|
||||||
|
v 1.5 1.5 0.4375
|
||||||
|
v 1.5 -1.5 0.5
|
||||||
|
v 1.5 -1.5 0.4375
|
||||||
|
v 1.4375 1.5 0.5
|
||||||
|
v 1.4375 1.5 0.4375
|
||||||
|
v 1.4375 -1.5 0.5
|
||||||
|
v 1.4375 -1.5 0.4375
|
||||||
|
vt 1 0
|
||||||
|
vt 1 1
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 1 0
|
||||||
|
vt 1 1
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 0.015625 0.9791666666666666
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.9791666666666666
|
||||||
|
vt 0.015625 0.9791666666666666
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.9791666666666666
|
||||||
|
vt 1 0
|
||||||
|
vt 1 1
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 1 0
|
||||||
|
vt 1 1
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 0.015625 0.9791666666666666
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.9791666666666666
|
||||||
|
vt 0.015625 0.9791666666666666
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.9791666666666666
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 0.984375 0.02083333333333337
|
||||||
|
vt 0.015625 0.02083333333333337
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 0.984375 0.02083333333333337
|
||||||
|
vt 0.015625 0.02083333333333337
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 0.984375 0.02083333333333337
|
||||||
|
vt 0.015625 0.02083333333333337
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.984375 0
|
||||||
|
vt 0.984375 0.02083333333333337
|
||||||
|
vt 0.015625 0.02083333333333337
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.015625 0.9791666666666666
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.9791666666666666
|
||||||
|
vt 0.015625 0.9791666666666666
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.9791666666666666
|
||||||
|
vt 0.984375 0.9791666666666666
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0.015625 0.9791666666666666
|
||||||
|
vt 0.984375 0.9791666666666666
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0.015625 0.9791666666666666
|
||||||
|
vt 0.984375 0.9791666666666666
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0.015625 0.9791666666666666
|
||||||
|
vt 0.984375 0.9791666666666666
|
||||||
|
vt 0.984375 1
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0.015625 0.9791666666666666
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0
|
||||||
|
vt 0.015625 0.9791666666666666
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.9791666666666666
|
||||||
|
vt 0.015625 0.9791666666666666
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.9791666666666666
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0
|
||||||
|
vn 1 0 0
|
||||||
|
vn -1 0 0
|
||||||
|
vn 0 1 0
|
||||||
|
vn 0 -1 0
|
||||||
|
vn 0 0 1
|
||||||
|
vn 0 0 -1
|
||||||
|
vn 1 0 0
|
||||||
|
vn -1 0 0
|
||||||
|
vn 0 1 0
|
||||||
|
vn 0 -1 0
|
||||||
|
vn 0 0 1
|
||||||
|
vn 0 0 -1
|
||||||
|
vn 1 0 0
|
||||||
|
vn -1 0 0
|
||||||
|
vn 0 1 0
|
||||||
|
vn 0 -1 0
|
||||||
|
vn 0 0 1
|
||||||
|
vn 0 0 -1
|
||||||
|
vn 1 0 0
|
||||||
|
vn -1 0 0
|
||||||
|
vn 0 1 0
|
||||||
|
vn 0 -1 0
|
||||||
|
vn 0 0 1
|
||||||
|
vn 0 0 -1
|
||||||
|
usemtl m_ec2c7198-dc86-c17f-923d-2128ca144c10
|
||||||
|
f 9/5/2 7/6/2 6/7/2 8/8/2
|
||||||
|
f 5/9/3 10/10/3 11/11/3 12/12/3
|
||||||
|
f 6/13/4 7/14/4 11/15/4 10/16/4
|
||||||
|
f 9/17/5 8/18/5 5/19/5 12/20/5
|
||||||
|
f 8/21/6 6/22/6 10/23/6 5/24/6
|
||||||
|
f 12/25/7 11/26/7 7/27/7 9/28/7
|
||||||
|
usemtl none
|
||||||
|
f 16/29/8 14/30/8 13/31/8 15/32/8
|
||||||
|
f 19/33/9 17/34/9 18/35/9 20/36/9
|
||||||
|
usemtl m_ec2c7198-dc86-c17f-923d-2128ca144c10
|
||||||
|
f 13/37/10 14/38/10 18/39/10 17/40/10
|
||||||
|
f 16/41/11 15/42/11 19/43/11 20/44/11
|
||||||
|
f 15/45/12 13/46/12 17/47/12 19/48/12
|
||||||
|
f 20/49/13 18/50/13 14/51/13 16/52/13
|
||||||
|
usemtl none
|
||||||
|
f 24/53/14 22/54/14 21/55/14 23/56/14
|
||||||
|
f 27/57/15 25/58/15 26/59/15 28/60/15
|
||||||
|
usemtl m_ec2c7198-dc86-c17f-923d-2128ca144c10
|
||||||
|
f 21/61/16 22/62/16 26/63/16 25/64/16
|
||||||
|
f 24/65/17 23/66/17 27/67/17 28/68/17
|
||||||
|
f 23/69/18 21/70/18 25/71/18 27/72/18
|
||||||
|
f 28/73/19 26/74/19 22/75/19 24/76/19
|
||||||
|
f 32/77/20 30/78/20 29/79/20 31/80/20
|
||||||
|
f 35/81/21 33/82/21 34/83/21 36/84/21
|
||||||
|
f 29/85/22 30/86/22 34/87/22 33/88/22
|
||||||
|
f 32/89/23 31/90/23 35/91/23 36/92/23
|
||||||
|
f 31/93/24 29/94/24 33/95/24 35/96/24
|
||||||
|
f 36/97/25 34/98/25 30/99/25 32/100/25
|
|
@ -0,0 +1,199 @@
|
||||||
|
# Made in Blockbench 4.6.5
|
||||||
|
mtllib paintings_lib_4x4.mtl
|
||||||
|
|
||||||
|
o plane
|
||||||
|
v -2.5 -2.4999999999999973 0.4843750000000109
|
||||||
|
v -2.5 1.5000000000000027 0.4843749999999887
|
||||||
|
v 1.5 -2.4999999999999973 0.4843750000000113
|
||||||
|
v 1.5 1.5000000000000027 0.4843749999999891
|
||||||
|
vt 1 0
|
||||||
|
vt 1 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0
|
||||||
|
vn 1.2246467991473535e-16 -5.551115123125783e-15 -1
|
||||||
|
usemtl m_7754df98-0254-cac9-2828-f0abaaf4f8e6
|
||||||
|
f 1/1/1 2/2/1 4/3/1 3/4/1
|
||||||
|
o cube
|
||||||
|
v 1.5 1.4375 0.5
|
||||||
|
v 1.5 1.4375 0.4375
|
||||||
|
v 1.5 -2.4375 0.5
|
||||||
|
v 1.5 -2.4375 0.4375
|
||||||
|
v 1.4375 1.4375 0.5
|
||||||
|
v 1.4375 1.4375 0.4375
|
||||||
|
v 1.4375 -2.4375 0.5
|
||||||
|
v 1.4375 -2.4375 0.4375
|
||||||
|
v 1.5 -2.4375 0.5
|
||||||
|
v 1.5 -2.4375 0.4375
|
||||||
|
v 1.5 -2.5 0.5
|
||||||
|
v 1.5 -2.5 0.4375
|
||||||
|
v -2.5 -2.4375 0.5
|
||||||
|
v -2.5 -2.4375 0.4375
|
||||||
|
v -2.5 -2.5 0.5
|
||||||
|
v -2.5 -2.5 0.4375
|
||||||
|
v 1.5 1.5 0.5
|
||||||
|
v 1.5 1.5 0.4375
|
||||||
|
v 1.5 1.4375 0.5
|
||||||
|
v 1.5 1.4375 0.4375
|
||||||
|
v -2.5 1.5 0.5
|
||||||
|
v -2.5 1.5 0.4375
|
||||||
|
v -2.5 1.4375 0.5
|
||||||
|
v -2.5 1.4375 0.4375
|
||||||
|
v -2.4375 1.4375 0.5
|
||||||
|
v -2.4375 1.4375 0.4375
|
||||||
|
v -2.4375 -2.4375 0.5
|
||||||
|
v -2.4375 -2.4375 0.4375
|
||||||
|
v -2.5 1.4375 0.5
|
||||||
|
v -2.5 1.4375 0.4375
|
||||||
|
v -2.5 -2.4375 0.5
|
||||||
|
v -2.5 -2.4375 0.4375
|
||||||
|
vt 0.015625 0
|
||||||
|
vt 0.015625 0.96875
|
||||||
|
vt 0 0.96875
|
||||||
|
vt 0 0
|
||||||
|
vt 0.015625 0.015625
|
||||||
|
vt 0.015625 0.984375
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 0 0.015625
|
||||||
|
vt 0.015625 0.984375
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 0.015625 0.984375
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 0.015625 0.015625
|
||||||
|
vt 0.015625 0.984375
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 0 0.015625
|
||||||
|
vt 0.015625 0.015625
|
||||||
|
vt 0.015625 0.984375
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 0 0.015625
|
||||||
|
vt 0.015625 0.984375
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 0.015625 0.984375
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 1 0
|
||||||
|
vt 1 0.015625
|
||||||
|
vt 0 0.015625
|
||||||
|
vt 0 0
|
||||||
|
vt 1 0
|
||||||
|
vt 1 0.015625
|
||||||
|
vt 0 0.015625
|
||||||
|
vt 0 0
|
||||||
|
vt 1 0
|
||||||
|
vt 1 0.015625
|
||||||
|
vt 0 0.015625
|
||||||
|
vt 0 0
|
||||||
|
vt 1 0
|
||||||
|
vt 1 0.015625
|
||||||
|
vt 0 0.015625
|
||||||
|
vt 0 0
|
||||||
|
vt 0.015625 0.984375
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 0.015625 0.984375
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 1 0.984375
|
||||||
|
vt 1 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 1 0.984375
|
||||||
|
vt 1 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 1 0.984375
|
||||||
|
vt 1 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 1 0.984375
|
||||||
|
vt 1 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 1 0.015625
|
||||||
|
vt 1 0.984375
|
||||||
|
vt 0.984375 0.984375
|
||||||
|
vt 0.984375 0.015625
|
||||||
|
vt 1 0.015625
|
||||||
|
vt 1 0.984375
|
||||||
|
vt 0.984375 0.984375
|
||||||
|
vt 0.984375 0.015625
|
||||||
|
vt 0.015625 0.984375
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 0.015625 0.984375
|
||||||
|
vt 0.015625 1
|
||||||
|
vt 0 1
|
||||||
|
vt 0 0.984375
|
||||||
|
vt 1 0.015625
|
||||||
|
vt 1 0.984375
|
||||||
|
vt 0.984375 0.984375
|
||||||
|
vt 0.984375 0.015625
|
||||||
|
vt 1 0.015625
|
||||||
|
vt 1 0.984375
|
||||||
|
vt 0.984375 0.984375
|
||||||
|
vt 0.984375 0.015625
|
||||||
|
vn 1 0 0
|
||||||
|
vn -1 0 0
|
||||||
|
vn 0 1 0
|
||||||
|
vn 0 -1 0
|
||||||
|
vn 0 0 1
|
||||||
|
vn 0 0 -1
|
||||||
|
vn 1 0 0
|
||||||
|
vn -1 0 0
|
||||||
|
vn 0 1 0
|
||||||
|
vn 0 -1 0
|
||||||
|
vn 0 0 1
|
||||||
|
vn 0 0 -1
|
||||||
|
vn 1 0 0
|
||||||
|
vn -1 0 0
|
||||||
|
vn 0 1 0
|
||||||
|
vn 0 -1 0
|
||||||
|
vn 0 0 1
|
||||||
|
vn 0 0 -1
|
||||||
|
vn 1 0 0
|
||||||
|
vn -1 0 0
|
||||||
|
vn 0 1 0
|
||||||
|
vn 0 -1 0
|
||||||
|
vn 0 0 1
|
||||||
|
vn 0 0 -1
|
||||||
|
usemtl m_a19191c5-dea6-c4da-33e1-a02fb515da85
|
||||||
|
f 8/5/2 6/6/2 5/7/2 7/8/2
|
||||||
|
f 11/9/3 9/10/3 10/11/3 12/12/3
|
||||||
|
usemtl none
|
||||||
|
f 5/13/4 6/14/4 10/15/4 9/16/4
|
||||||
|
f 8/17/5 7/18/5 11/19/5 12/20/5
|
||||||
|
usemtl m_a19191c5-dea6-c4da-33e1-a02fb515da85
|
||||||
|
f 7/21/6 5/22/6 9/23/6 11/24/6
|
||||||
|
f 12/25/7 10/26/7 6/27/7 8/28/7
|
||||||
|
f 16/29/8 14/30/8 13/31/8 15/32/8
|
||||||
|
f 19/33/9 17/34/9 18/35/9 20/36/9
|
||||||
|
f 13/37/10 14/38/10 18/39/10 17/40/10
|
||||||
|
f 16/41/11 15/42/11 19/43/11 20/44/11
|
||||||
|
f 15/45/12 13/46/12 17/47/12 19/48/12
|
||||||
|
f 20/49/13 18/50/13 14/51/13 16/52/13
|
||||||
|
f 24/53/14 22/54/14 21/55/14 23/56/14
|
||||||
|
f 27/57/15 25/58/15 26/59/15 28/60/15
|
||||||
|
f 21/61/16 22/62/16 26/63/16 25/64/16
|
||||||
|
f 24/65/17 23/66/17 27/67/17 28/68/17
|
||||||
|
f 23/69/18 21/70/18 25/71/18 27/72/18
|
||||||
|
f 28/73/19 26/74/19 22/75/19 24/76/19
|
||||||
|
usemtl none
|
||||||
|
f 32/77/20 30/78/20 29/79/20 31/80/20
|
||||||
|
usemtl m_a19191c5-dea6-c4da-33e1-a02fb515da85
|
||||||
|
f 35/81/21 33/82/21 34/83/21 36/84/21
|
||||||
|
usemtl none
|
||||||
|
f 29/85/22 30/86/22 34/87/22 33/88/22
|
||||||
|
f 32/89/23 31/90/23 35/91/23 36/92/23
|
||||||
|
usemtl m_a19191c5-dea6-c4da-33e1-a02fb515da85
|
||||||
|
f 31/93/24 29/94/24 33/95/24 35/96/24
|
||||||
|
f 36/97/25 34/98/25 30/99/25 32/100/25
|
|
@ -1,45 +1,36 @@
|
||||||
paintings_lib.register_painting1x1("seaside_paradise", "paintings_lib_seaside_paradise.png^paintings_lib_frame1x1.png")
|
|
||||||
|
|
||||||
paintings_lib.register_painting1x1("roses", "paintings_lib_roses.png^paintings_lib_frame1x1.png")
|
-- 1x1
|
||||||
|
|
||||||
paintings_lib.register_painting1x1("blue_vase", "paintings_lib_blue_vase.png^paintings_lib_frame1x1.png")
|
paintings_lib.register1x1("blank1x1", "Blank 1x1", "paintings_lib_blank_1x1.png^paintings_lib_frame1x1.png")
|
||||||
|
|
||||||
paintings_lib.register_painting1x1("lit_vase", "paintings_lib_lit_vase.png^paintings_lib_frame1x1.png")
|
-- 1x2
|
||||||
|
|
||||||
paintings_lib.register_painting1x1("highway", "paintings_lib_highway.png^paintings_lib_frame1x1.png")
|
paintings_lib.register1x2("blank1x2", "Blank 1x2", "paintings_lib_blank_1x2.png^paintings_lib_frame1x2.png")
|
||||||
|
|
||||||
paintings_lib.register_painting1x1("ocean_rock", "paintings_lib_ocean_rock.png^paintings_lib_frame1x1.png")
|
-- 2x1
|
||||||
|
|
||||||
paintings_lib.register_painting1x1("valley", "paintings_lib_valley.png^paintings_lib_frame1x1.png")
|
paintings_lib.register2x1("blank2x1", "Blank 2x1", "paintings_lib_blank_2x1.png^paintings_lib_frame2x1.png")
|
||||||
|
|
||||||
paintings_lib.register_painting1x2("abstract_expression", "paintings_lib_abstract_expression.png^paintings_lib_frame1x2.png")
|
-- 2x2
|
||||||
|
|
||||||
paintings_lib.register_painting1x2("hungry", "paintings_lib_hungry.png^paintings_lib_frame1x2.png")
|
paintings_lib.register2x2("blank2x2", "Blank 2x2", "paintings_lib_blank_2x2.png^paintings_lib_frame2x2.png")
|
||||||
|
|
||||||
paintings_lib.register_painting2x1("mountain_landscape", "paintings_lib_mountain_landscape.png^paintings_lib_frame2x1.png")
|
-- 3x2
|
||||||
|
|
||||||
paintings_lib.register_painting2x1("seafloor", "paintings_lib_seafloor.png^paintings_lib_frame2x1.png")
|
paintings_lib.register3x2("blank3x2", "Blank 3x2", "paintings_lib_blank_3x2.png^paintings_lib_frame3x2.png")
|
||||||
|
|
||||||
paintings_lib.register_painting2x2("fishbowl", "paintings_lib_fishbowl.png^paintings_lib_frame2x2.png")
|
--3x3
|
||||||
|
|
||||||
paintings_lib.register_painting2x2("fishbowl_2", "paintings_lib_fishbowl_2.png^paintings_lib_frame2x2.png")
|
paintings_lib.register3x3("blank3x3", "Blank 3x3", "paintings_lib_blank_3x3.png^paintings_lib_frame3x3.png")
|
||||||
|
|
||||||
paintings_lib.register_painting2x2("the_walk", "paintings_lib_the_walk.png^paintings_lib_frame2x2.png")
|
-- 4x2
|
||||||
|
|
||||||
paintings_lib.register_painting2x2("skull_cuttingboard", "paintings_lib_skull_cuttingboard.png^paintings_lib_frame2x2.png")
|
paintings_lib.register4x2("blank4x2", "Blank 4x2", "paintings_lib_blank_4x2.png^paintings_lib_frame4x2.png")
|
||||||
|
|
||||||
paintings_lib.register_painting2x2("utah", "paintings_lib_utah.png^paintings_lib_frame2x2.png")
|
-- 4x3
|
||||||
|
|
||||||
paintings_lib.register_painting3x2("billboard", "paintings_lib_billboard.png^paintings_lib_frame3x2.png")
|
paintings_lib.register4x3("blank4x3", "Blank 4x3", "paintings_lib_blank_4x3.png^paintings_lib_frame4x3.png")
|
||||||
|
|
||||||
paintings_lib.register_painting3x2("future_ruins", "paintings_lib_future_ruins.png^paintings_lib_frame3x2.png")
|
-- 4x4
|
||||||
|
|
||||||
paintings_lib.register_painting3x2("solar_flare", "paintings_lib_solar_flare.png^paintings_lib_frame3x2.png")
|
paintings_lib.register4x4("blank4x4", "Blank 4x4", "paintings_lib_blank_4x4.png^paintings_lib_frame4x4.png")
|
||||||
|
|
||||||
paintings_lib.register_painting3x3("fantasy_forest", "paintings_lib_fantasy_forest.png^paintings_lib_frame3x3.png")
|
|
||||||
|
|
||||||
paintings_lib.register_painting3x3("gooseberry", "paintings_lib_gooseberry.png^paintings_lib_frame3x3.png")
|
|
||||||
|
|
||||||
paintings_lib.register_painting3x3("seafloor_2", "paintings_lib_seafloor_2.png^paintings_lib_frame3x3.png")
|
|
||||||
|
|
||||||
paintings_lib.register_painting3x3("sunrise", "paintings_lib_sunrise.png^paintings_lib_frame3x3.png")
|
|
||||||
|
|
186
register.lua
|
@ -3,139 +3,217 @@ paintings_name = {}
|
||||||
paintings_texture = {}
|
paintings_texture = {}
|
||||||
|
|
||||||
-- define the node registration function
|
-- define the node registration function
|
||||||
function paintings_lib.register_painting1x1(name, texture)
|
function paintings_lib.register1x1(identifier, display_name, texture)
|
||||||
local node_name = "paintings_lib:1x1_"..name
|
local node_name = ":paintings_lib:1x1_"..identifier:gsub("%s+", "_")
|
||||||
paintings_name["1x1"] = paintings_name["1x1"] or {}
|
paintings_name[identifier] = paintings_name[identifier] or {}
|
||||||
paintings_name["1x1"][name] = node_name
|
paintings_name[identifier]["1x1"] = node_name
|
||||||
paintings_texture[node_name] = texture
|
paintings_texture[node_name] = texture
|
||||||
|
|
||||||
-- register the node
|
-- register the node
|
||||||
minetest.register_node(node_name, {
|
minetest.register_node(node_name, {
|
||||||
description = name.." Painting",
|
description = display_name.." Painting",
|
||||||
drawtype = "mesh",
|
drawtype = "mesh",
|
||||||
mesh = "paintings_lib_1x1"..".obj",
|
mesh = "paintings_lib_1x1"..".obj",
|
||||||
selection_box = {type = "fixed", fixed = {-0.5, -0.5, 0.4375, 0.5, 0.5, 0.5}},
|
selection_box = {type = "fixed", fixed = {-0.5, -0.5, 0.4375, 0.5, 0.5, 0.5}},
|
||||||
collision_box = {type = "fixed", fixed = {-0.5, -0.5, 0.4375, 0.5, 0.5, 0.5}},
|
collision_box = {type = "fixed", fixed = {-0.5, -0.5, 0.4375, 0.5, 0.5, 0.5}},
|
||||||
tiles = {texture},
|
tiles = {texture},
|
||||||
paramtype2 = "facedir",
|
paramtype = "light",
|
||||||
walkable = false,
|
paramtype2 = "facedir",
|
||||||
sunlight_propagates = true,
|
walkable = false,
|
||||||
groups = {choppy = 3, oddly_breakable_by_hand = 3},
|
sunlight_propagates = true,
|
||||||
|
groups = {painting = 1, choppy = 3, oddly_breakable_by_hand = 3},
|
||||||
sounds = default.node_sound_wood_defaults(),
|
sounds = default.node_sound_wood_defaults(),
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
-- define the node registration function
|
-- define the node registration function
|
||||||
function paintings_lib.register_painting1x2(name, texture)
|
function paintings_lib.register1x2(identifier, display_name, texture)
|
||||||
local node_name = "paintings_lib:1x2_"..name
|
local node_name = ":paintings_lib:1x2_"..identifier:gsub("%s+", "_")
|
||||||
paintings_name["1x2"] = paintings_name["1x2"] or {}
|
paintings_name[identifier] = paintings_name[identifier] or {}
|
||||||
paintings_name["1x2"][name] = node_name
|
paintings_name[identifier]["1x2"] = node_name
|
||||||
paintings_texture[node_name] = texture
|
paintings_texture[node_name] = texture
|
||||||
|
|
||||||
-- register the node
|
-- register the node
|
||||||
minetest.register_node(node_name, {
|
minetest.register_node(node_name, {
|
||||||
description = name.." Painting",
|
description = display_name.." Painting",
|
||||||
drawtype = "mesh",
|
drawtype = "mesh",
|
||||||
mesh = "paintings_lib_1x2"..".obj",
|
mesh = "paintings_lib_1x2"..".obj",
|
||||||
selection_box = {type = "fixed", fixed = {-0.5, -1.5, 0.4375, 0.5, 0.5, 0.5}},
|
selection_box = {type = "fixed", fixed = {-0.5, -1.5, 0.4375, 0.5, 0.5, 0.5}},
|
||||||
collision_box = {type = "fixed", fixed = {-0.5, -1.5, 0.4375, 0.5, 0.5, 0.5}},
|
collision_box = {type = "fixed", fixed = {-0.5, -1.5, 0.4375, 0.5, 0.5, 0.5}},
|
||||||
tiles = {texture},
|
tiles = {texture},
|
||||||
paramtype2 = "facedir",
|
paramtype = "light",
|
||||||
walkable = false,
|
paramtype2 = "facedir",
|
||||||
sunlight_propagates = true,
|
walkable = false,
|
||||||
groups = {choppy = 3, oddly_breakable_by_hand = 3},
|
sunlight_propagates = true,
|
||||||
|
groups = {painting = 1, choppy = 3, oddly_breakable_by_hand = 3},
|
||||||
sounds = default.node_sound_wood_defaults(),
|
sounds = default.node_sound_wood_defaults(),
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
-- define the node registration function
|
-- define the node registration function
|
||||||
function paintings_lib.register_painting2x1(name, texture)
|
function paintings_lib.register2x1(identifier, display_name, texture)
|
||||||
local node_name = "paintings_lib:2x1_"..name
|
local node_name = ":paintings_lib:2x1_"..identifier:gsub("%s+", "_")
|
||||||
paintings_name["2x1"] = paintings_name["2x1"] or {}
|
paintings_name[identifier] = paintings_name[identifier] or {}
|
||||||
paintings_name["2x1"][name] = node_name
|
paintings_name[identifier]["2x1"] = node_name
|
||||||
paintings_texture[node_name] = texture
|
paintings_texture[node_name] = texture
|
||||||
|
|
||||||
-- register the node
|
-- register the node
|
||||||
minetest.register_node(node_name, {
|
minetest.register_node(node_name, {
|
||||||
description = name.." Painting",
|
description = display_name.." Painting",
|
||||||
drawtype = "mesh",
|
drawtype = "mesh",
|
||||||
mesh = "paintings_lib_2x1"..".obj",
|
mesh = "paintings_lib_2x1"..".obj",
|
||||||
selection_box = {type = "fixed", fixed = {-0.5, -0.5, 0.4375, 1.5, 0.5, 0.5}},
|
selection_box = {type = "fixed", fixed = {-0.5, -0.5, 0.4375, 1.5, 0.5, 0.5}},
|
||||||
collision_box = {type = "fixed", fixed = {-0.5, -0.5, 0.4375, 1.5, 0.5, 0.5}},
|
collision_box = {type = "fixed", fixed = {-0.5, -0.5, 0.4375, 1.5, 0.5, 0.5}},
|
||||||
tiles = {texture},
|
tiles = {texture},
|
||||||
paramtype2 = "facedir",
|
paramtype = "light",
|
||||||
walkable = false,
|
paramtype2 = "facedir",
|
||||||
sunlight_propagates = true,
|
walkable = false,
|
||||||
groups = {choppy = 3, oddly_breakable_by_hand = 3},
|
sunlight_propagates = true,
|
||||||
|
groups = {painting = 1, choppy = 3, oddly_breakable_by_hand = 3},
|
||||||
sounds = default.node_sound_wood_defaults(),
|
sounds = default.node_sound_wood_defaults(),
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
-- define the node registration function
|
-- define the node registration function
|
||||||
function paintings_lib.register_painting2x2(name, texture)
|
function paintings_lib.register2x2(identifier, display_name, texture)
|
||||||
local node_name = "paintings_lib:2x2_"..name
|
local node_name = ":paintings_lib:2x2_"..identifier:gsub("%s+", "_")
|
||||||
paintings_name["2x2"] = paintings_name["2x2"] or {}
|
paintings_name[identifier] = paintings_name[identifier] or {}
|
||||||
paintings_name["2x2"][name] = node_name
|
paintings_name[identifier]["2x2"] = node_name
|
||||||
paintings_texture[node_name] = texture
|
paintings_texture[node_name] = texture
|
||||||
|
|
||||||
-- register the node
|
-- register the node
|
||||||
minetest.register_node(node_name, {
|
minetest.register_node(node_name, {
|
||||||
description = name.." Painting",
|
description = display_name.." Painting",
|
||||||
drawtype = "mesh",
|
drawtype = "mesh",
|
||||||
mesh = "paintings_lib_2x2"..".obj",
|
mesh = "paintings_lib_2x2"..".obj",
|
||||||
selection_box = {type = "fixed", fixed = {-0.5, -1.5, 0.4375, 1.5, 0.5, 0.5}},
|
selection_box = {type = "fixed", fixed = {-0.5, -1.5, 0.4375, 1.5, 0.5, 0.5}},
|
||||||
collision_box = {type = "fixed", fixed = {-0.5, -1.5, 0.4375, 1.5, 0.5, 0.5}},
|
collision_box = {type = "fixed", fixed = {-0.5, -1.5, 0.4375, 1.5, 0.5, 0.5}},
|
||||||
tiles = {texture},
|
tiles = {texture},
|
||||||
paramtype2 = "facedir",
|
paramtype = "light",
|
||||||
walkable = false,
|
paramtype2 = "facedir",
|
||||||
sunlight_propagates = true,
|
walkable = false,
|
||||||
groups = {choppy = 3, oddly_breakable_by_hand = 3},
|
sunlight_propagates = true,
|
||||||
|
groups = {painting = 1, choppy = 3, oddly_breakable_by_hand = 3},
|
||||||
sounds = default.node_sound_wood_defaults(),
|
sounds = default.node_sound_wood_defaults(),
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
-- define the node registration function
|
-- define the node registration function
|
||||||
function paintings_lib.register_painting3x2(name, texture)
|
function paintings_lib.register3x2(identifier, display_name, texture)
|
||||||
local node_name = "paintings_lib:3x2_"..name
|
local node_name = ":paintings_lib:3x2_"..identifier:gsub("%s+", "_")
|
||||||
paintings_name["3x2"] = paintings_name["3x2"] or {}
|
paintings_name[identifier] = paintings_name[identifier] or {}
|
||||||
paintings_name["3x2"][name] = node_name
|
paintings_name[identifier]["3x2"] = node_name
|
||||||
paintings_texture[node_name] = texture
|
paintings_texture[node_name] = texture
|
||||||
|
|
||||||
-- register the node
|
-- register the node
|
||||||
minetest.register_node(node_name, {
|
minetest.register_node(node_name, {
|
||||||
description = name.." Painting",
|
description = display_name.." Painting",
|
||||||
drawtype = "mesh",
|
drawtype = "mesh",
|
||||||
mesh = "paintings_lib_3x2"..".obj",
|
mesh = "paintings_lib_3x2"..".obj",
|
||||||
selection_box = {type = "fixed", fixed = {-1.5, -1.5, 0.4375, 1.5, 0.5, 0.5}},
|
selection_box = {type = "fixed", fixed = {-1.5, -1.5, 0.4375, 1.5, 0.5, 0.5}},
|
||||||
collision_box = {type = "fixed", fixed = {-1.5, -1.5, 0.4375, 1.5, 0.5, 0.5}},
|
collision_box = {type = "fixed", fixed = {-1.5, -1.5, 0.4375, 1.5, 0.5, 0.5}},
|
||||||
tiles = {texture},
|
tiles = {texture},
|
||||||
paramtype2 = "facedir",
|
paramtype = "light",
|
||||||
walkable = false,
|
paramtype2 = "facedir",
|
||||||
sunlight_propagates = true,
|
walkable = false,
|
||||||
groups = {choppy = 3, oddly_breakable_by_hand = 3},
|
sunlight_propagates = true,
|
||||||
|
groups = {painting = 1, choppy = 3, oddly_breakable_by_hand = 3},
|
||||||
sounds = default.node_sound_wood_defaults(),
|
sounds = default.node_sound_wood_defaults(),
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
-- define the node registration function
|
-- define the node registration function
|
||||||
function paintings_lib.register_painting3x3(name, texture)
|
function paintings_lib.register3x3(identifier, display_name, texture)
|
||||||
local node_name = "paintings_lib:3x3_"..name
|
local node_name = ":paintings_lib:3x3_"..identifier:gsub("%s+", "_")
|
||||||
paintings_name["3x3"] = paintings_name["3x3"] or {}
|
paintings_name[identifier] = paintings_name[identifier] or {}
|
||||||
paintings_name["3x3"][name] = node_name
|
paintings_name[identifier]["3x3"] = node_name
|
||||||
paintings_texture[node_name] = texture
|
paintings_texture[node_name] = texture
|
||||||
|
|
||||||
-- register the node
|
-- register the node
|
||||||
minetest.register_node(node_name, {
|
minetest.register_node(node_name, {
|
||||||
description = name.." Painting",
|
description = display_name.." Painting",
|
||||||
drawtype = "mesh",
|
drawtype = "mesh",
|
||||||
mesh = "paintings_lib_3x3"..".obj",
|
mesh = "paintings_lib_3x3"..".obj",
|
||||||
selection_box = {type = "fixed", fixed = {-1.5, -1.5, 0.4375, 1.5, 1.5, 0.5}},
|
selection_box = {type = "fixed", fixed = {-1.5, -1.5, 0.4375, 1.5, 1.5, 0.5}},
|
||||||
collision_box = {type = "fixed", fixed = {-1.5, -1.5, 0.4375, 1.5, 1.5, 0.5}},
|
collision_box = {type = "fixed", fixed = {-1.5, -1.5, 0.4375, 1.5, 1.5, 0.5}},
|
||||||
tiles = {texture},
|
tiles = {texture},
|
||||||
paramtype2 = "facedir",
|
paramtype = "light",
|
||||||
walkable = false,
|
paramtype2 = "facedir",
|
||||||
sunlight_propagates = true,
|
walkable = false,
|
||||||
groups = {choppy = 3, oddly_breakable_by_hand = 3},
|
sunlight_propagates = true,
|
||||||
|
groups = {painting = 1, choppy = 3, oddly_breakable_by_hand = 3},
|
||||||
|
sounds = default.node_sound_wood_defaults(),
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
-- define the node registration function
|
||||||
|
function paintings_lib.register4x2(identifier, display_name, texture)
|
||||||
|
local node_name = ":paintings_lib:4x2_"..identifier:gsub("%s+", "_")
|
||||||
|
paintings_name[identifier] = paintings_name[identifier] or {}
|
||||||
|
paintings_name[identifier]["4x2"] = node_name
|
||||||
|
paintings_texture[node_name] = texture
|
||||||
|
|
||||||
|
-- register the node
|
||||||
|
minetest.register_node(node_name, {
|
||||||
|
description = display_name.." Painting",
|
||||||
|
drawtype = "mesh",
|
||||||
|
mesh = "paintings_lib_4x2"..".obj",
|
||||||
|
selection_box = {type = "fixed", fixed = {-1.5, -1.5, 0.4375, 2.5, 0.5, 0.5}},
|
||||||
|
collision_box = {type = "fixed", fixed = {-1.5, -1.5, 0.4375, 2.5, 0.5, 0.5}},
|
||||||
|
tiles = {texture},
|
||||||
|
paramtype = "light",
|
||||||
|
paramtype2 = "facedir",
|
||||||
|
walkable = false,
|
||||||
|
sunlight_propagates = true,
|
||||||
|
groups = {painting = 1, choppy = 3, oddly_breakable_by_hand = 3},
|
||||||
|
sounds = default.node_sound_wood_defaults(),
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
-- define the node registration function
|
||||||
|
function paintings_lib.register4x3(identifier, display_name, texture)
|
||||||
|
local node_name = ":paintings_lib:4x3_"..identifier:gsub("%s+", "_")
|
||||||
|
paintings_name[identifier] = paintings_name[identifier] or {}
|
||||||
|
paintings_name[identifier]["4x3"] = node_name
|
||||||
|
paintings_texture[node_name] = texture
|
||||||
|
|
||||||
|
-- register the node
|
||||||
|
minetest.register_node(node_name, {
|
||||||
|
description = display_name.." Painting",
|
||||||
|
drawtype = "mesh",
|
||||||
|
mesh = "paintings_lib_4x3"..".obj",
|
||||||
|
selection_box = {type = "fixed", fixed = {-1.5, -1.5, 0.4375, 2.5, 1.5, 0.5}},
|
||||||
|
collision_box = {type = "fixed", fixed = {-1.5, -1.5, 0.4375, 2.5, 1.5, 0.5}},
|
||||||
|
tiles = {texture},
|
||||||
|
paramtype = "light",
|
||||||
|
paramtype2 = "facedir",
|
||||||
|
walkable = false,
|
||||||
|
sunlight_propagates = true,
|
||||||
|
groups = {painting = 1, choppy = 3, oddly_breakable_by_hand = 3},
|
||||||
|
sounds = default.node_sound_wood_defaults(),
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
-- define the node registration function
|
||||||
|
function paintings_lib.register4x4(identifier, display_name, texture)
|
||||||
|
local node_name = ":paintings_lib:4x4_"..identifier:gsub("%s+", "_")
|
||||||
|
paintings_name[identifier] = paintings_name[identifier] or {}
|
||||||
|
paintings_name[identifier]["4x4"] = node_name
|
||||||
|
paintings_texture[node_name] = texture
|
||||||
|
|
||||||
|
-- register the node
|
||||||
|
minetest.register_node(node_name, {
|
||||||
|
description = display_name.." Painting",
|
||||||
|
drawtype = "mesh",
|
||||||
|
mesh = "paintings_lib_4x4"..".obj",
|
||||||
|
selection_box = {type = "fixed", fixed = {-1.5, -2.5, 0.4375, 2.5, 1.5, 0.5}},
|
||||||
|
collision_box = {type = "fixed", fixed = {-1.5, -2.5, 0.4375, 2.5, 1.5, 0.5}},
|
||||||
|
tiles = {texture},
|
||||||
|
paramtype = "light",
|
||||||
|
paramtype2 = "facedir",
|
||||||
|
walkable = false,
|
||||||
|
sunlight_propagates = true,
|
||||||
|
groups = {painting = 1, choppy = 3, oddly_breakable_by_hand = 3},
|
||||||
sounds = default.node_sound_wood_defaults(),
|
sounds = default.node_sound_wood_defaults(),
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
# Number of uses for the paintbrush
|
||||||
|
paintings_lib_paintbrush_uses (Paintbrush uses) int 32 1 1000
|
After Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 8.9 KiB |
Before Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 6.0 KiB |
Before Width: | Height: | Size: 6.8 KiB After Width: | Height: | Size: 6.1 KiB |
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 6.1 KiB |
After Width: | Height: | Size: 7.4 KiB |
After Width: | Height: | Size: 8.7 KiB |
After Width: | Height: | Size: 9.4 KiB |
After Width: | Height: | Size: 7.9 KiB |
After Width: | Height: | Size: 9.2 KiB |
After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 6.8 KiB |
After Width: | Height: | Size: 7.1 KiB |
After Width: | Height: | Size: 402 B |
Before Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 6.9 KiB |
Before Width: | Height: | Size: 8.1 KiB |
Before Width: | Height: | Size: 8.0 KiB |
Before Width: | Height: | Size: 6.9 KiB |
After Width: | Height: | Size: 302 B |
Before Width: | Height: | Size: 8.2 KiB |
Before Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 8.7 KiB |
Before Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 23 KiB |
Before Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 7.0 KiB |