diff --git a/init.lua b/init.lua index c520d19..c4d1f3f 100644 --- a/init.lua +++ b/init.lua @@ -18,12 +18,14 @@ SETTING_allow_default_coloring = 1 --red, orange, yellow, lime, green, aqua, cyan, skyblue, blue, violet, magenta, --redviolet, black, darkgrey, mediumgrey, lightgrey, white, respectively (by default) SETTING_allow_hues = {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1} ---clayblock, clay, brick, brickblock, respectively (by default) -SETTING_allow_types = {1,1,1,1} +--clayblock, clay, brick, singlecolor brickblock, multicolor brickblock, respectively (by default) +SETTING_allow_types = {1,1,1,1,1} --half saturation, full saturation, respectively (by default) SETTING_allow_saturation = {1,1} --dark, medium, bright, light, respectively (by default) SETTING_allow_darkness = {1,1,1,1} +--dark, medium, bright, respectively (by default) +SETTING_allow_multicolor = {1,1,1} HUES = { "red", @@ -48,7 +50,8 @@ TYPES = { "clayblock_", "clay_", "brick_", - "brickblock_" + "brickblock_", + "multicolor_" } SATURATION = { "_s50", @@ -84,7 +87,8 @@ FORMALTYPES = { " clay", " clay lump", " brick", - " bricks" + " bricks", + " multicolor bricks" } FORMALSATURATION = { " (low saturation)", @@ -131,6 +135,21 @@ register_brick_block = function(name,formalname) sounds = default.node_sound_stone_defaults(), }) end +register_multicolor = function(name,formalname,drop_one,drop_two,drop_three) + minetest.register_node("unifiedbricks:" .. TYPES[5] .. name, { + description = formalname .. FORMALTYPES[5], + tile_images = {"unifiedbricks_" .. TYPES[5] .. name .. ".png"}, + is_ground_content = true, + groups = {cracky=3}, + drop = {max_items = 4, + items={ + {items={"unifiedbricks:" .. TYPES[3] .. drop_one .." 2"}}, + {items={"unifiedbricks:" .. TYPES[3] .. drop_two}}, + {items={"unifiedbricks:" .. TYPES[3] .. drop_three}} + }}, + sounds = default.node_sound_stone_defaults(), + }) +end register_clay_craft_default = function(color) minetest.register_craft( { @@ -643,8 +662,20 @@ register_brick_block_craft = function(color) } }) end +register_multicolor_craft = function(name,drop_one,drop_two,drop_three) + minetest.register_craft( { + type = "shapeless", + output = "unifiedbricks:multicolor_" .. name, + recipe = { + "unifiedbricks:".. TYPES[3] .. drop_one, + "unifiedbricks:".. TYPES[3] .. drop_one, + "unifiedbricks:".. TYPES[3] .. drop_two, + "unifiedbricks:".. TYPES[3] .. drop_three, + }, + }) +end ---REGISTERS ALL NODES AND CRAFTITEMS +--REGISTERS ALL NODES AND CRAFTITEMS EXCEPT MULTICOLOR BRICK BLOCKS for i = 1,17 do if SETTING_allow_hues[i] == 1 then for j = 1,4 do @@ -814,4 +845,69 @@ if SETTING_allow_types[3] + SETTING_allow_types[4] == 2 then end end +--REGISTERS ALL MULTICOLOR EVERYTHING +if SETTING_allow_types[5] == 1 then + for i = 1,13 do + if SETTING_allow_hues[i] == 1 then + if i == 13 then + if SETTING_allow_multicolor[1] == 1 then + name = HUES[14] + formalname = FORMALHUES[14] + brick_one = HUES[14] + brick_two = HUES[15] + brick_three = HUES[16] + register_multicolor(name,formalname,brick_one,brick_two,brick_three) + register_multicolor_craft(name,brick_one,brick_two,brick_three) + end + if SETTING_allow_multicolor[2] == 1 then + name = HUES[15] + formalname = FORMALHUES[15] + brick_one = HUES[15] + brick_two = HUES[14] + brick_three = HUES[16] + register_multicolor(name,formalname,brick_one,brick_two,brick_three) + register_multicolor_craft(name,brick_one,brick_two,brick_three) + end + if SETTING_allow_multicolor[3] == 1 then + name = HUES[16] + formalname = FORMALHUES[16] + brick_one = HUES[16] + brick_two = HUES[14] + brick_three = HUES[15] + register_multicolor(name,formalname,brick_one,brick_two,brick_three) + register_multicolor_craft(name,brick_one,brick_two,brick_three) + end + else + if SETTING_allow_multicolor[1] == 1 then + name = DARKNESS[1] .. HUES[i] + formalname = FORMALDARKNESS[1] .. FORMALHUES[i] + brick_one = DARKNESS[1] .. HUES[i] + brick_two = DARKNESS[2] .. HUES[i] + brick_three = DARKNESS[2] .. HUES[i] .. SATURATION[1] + register_multicolor(name,formalname,brick_one,brick_two,brick_three) + register_multicolor_craft(name,brick_one,brick_two,brick_three) + end + if SETTING_allow_multicolor[2] == 1 then + name = DARKNESS[2] .. HUES[i] + formalname = FORMALDARKNESS[2] .. FORMALHUES[i] + brick_one = DARKNESS[2] .. HUES[i] + brick_two = DARKNESS[1] .. HUES[i] + brick_three = DARKNESS[3] .. HUES[i] .. SATURATION[1] + register_multicolor(name,formalname,brick_one,brick_two,brick_three) + register_multicolor_craft(name,brick_one,brick_two,brick_three) + end + if SETTING_allow_multicolor[3] == 1 then + name = DARKNESS[4] .. HUES[i] + formalname = FORMALDARKNESS[4] .. FORMALHUES[i] + brick_one = DARKNESS[3] .. HUES[i] + brick_two = DARKNESS[4] .. HUES[i] + brick_three = DARKNESS[2] .. HUES[i] .. SATURATION[1] + register_multicolor(name,formalname,brick_one,brick_two,brick_three) + register_multicolor_craft(name,brick_one,brick_two,brick_three) + end + end + end + end +end + print("[UnifiedBricks] Loaded!") diff --git a/textures/unifiedbricks_multicolor_dark_aqua.png b/textures/unifiedbricks_multicolor_dark_aqua.png new file mode 100644 index 0000000..320e697 Binary files /dev/null and b/textures/unifiedbricks_multicolor_dark_aqua.png differ diff --git a/textures/unifiedbricks_multicolor_dark_blue.png b/textures/unifiedbricks_multicolor_dark_blue.png new file mode 100644 index 0000000..800d842 Binary files /dev/null and b/textures/unifiedbricks_multicolor_dark_blue.png differ diff --git a/textures/unifiedbricks_multicolor_dark_cyan.png b/textures/unifiedbricks_multicolor_dark_cyan.png new file mode 100644 index 0000000..16cfe5e Binary files /dev/null and b/textures/unifiedbricks_multicolor_dark_cyan.png differ diff --git a/textures/unifiedbricks_multicolor_dark_green.png b/textures/unifiedbricks_multicolor_dark_green.png new file mode 100644 index 0000000..575b1e0 Binary files /dev/null and b/textures/unifiedbricks_multicolor_dark_green.png differ diff --git a/textures/unifiedbricks_multicolor_dark_lime.png b/textures/unifiedbricks_multicolor_dark_lime.png new file mode 100644 index 0000000..0445888 Binary files /dev/null and b/textures/unifiedbricks_multicolor_dark_lime.png differ diff --git a/textures/unifiedbricks_multicolor_dark_magenta.png b/textures/unifiedbricks_multicolor_dark_magenta.png new file mode 100644 index 0000000..b52776b Binary files /dev/null and b/textures/unifiedbricks_multicolor_dark_magenta.png differ diff --git a/textures/unifiedbricks_multicolor_dark_orange.png b/textures/unifiedbricks_multicolor_dark_orange.png new file mode 100644 index 0000000..960d825 Binary files /dev/null and b/textures/unifiedbricks_multicolor_dark_orange.png differ diff --git a/textures/unifiedbricks_multicolor_dark_red.png b/textures/unifiedbricks_multicolor_dark_red.png new file mode 100644 index 0000000..b9840d6 Binary files /dev/null and b/textures/unifiedbricks_multicolor_dark_red.png differ diff --git a/textures/unifiedbricks_multicolor_dark_redviolet.png b/textures/unifiedbricks_multicolor_dark_redviolet.png new file mode 100644 index 0000000..da707a1 Binary files /dev/null and b/textures/unifiedbricks_multicolor_dark_redviolet.png differ diff --git a/textures/unifiedbricks_multicolor_dark_skyblue.png b/textures/unifiedbricks_multicolor_dark_skyblue.png new file mode 100644 index 0000000..e1da776 Binary files /dev/null and b/textures/unifiedbricks_multicolor_dark_skyblue.png differ diff --git a/textures/unifiedbricks_multicolor_dark_violet.png b/textures/unifiedbricks_multicolor_dark_violet.png new file mode 100644 index 0000000..ee6da6b Binary files /dev/null and b/textures/unifiedbricks_multicolor_dark_violet.png differ diff --git a/textures/unifiedbricks_multicolor_dark_yellow.png b/textures/unifiedbricks_multicolor_dark_yellow.png new file mode 100644 index 0000000..b9fa505 Binary files /dev/null and b/textures/unifiedbricks_multicolor_dark_yellow.png differ diff --git a/textures/unifiedbricks_multicolor_darkgrey.png b/textures/unifiedbricks_multicolor_darkgrey.png new file mode 100644 index 0000000..1062e7d Binary files /dev/null and b/textures/unifiedbricks_multicolor_darkgrey.png differ diff --git a/textures/unifiedbricks_multicolor_grey.png b/textures/unifiedbricks_multicolor_grey.png new file mode 100644 index 0000000..86eb1a0 Binary files /dev/null and b/textures/unifiedbricks_multicolor_grey.png differ diff --git a/textures/unifiedbricks_multicolor_light_aqua.png b/textures/unifiedbricks_multicolor_light_aqua.png new file mode 100644 index 0000000..e6d8a90 Binary files /dev/null and b/textures/unifiedbricks_multicolor_light_aqua.png differ diff --git a/textures/unifiedbricks_multicolor_light_blue.png b/textures/unifiedbricks_multicolor_light_blue.png new file mode 100644 index 0000000..856df52 Binary files /dev/null and b/textures/unifiedbricks_multicolor_light_blue.png differ diff --git a/textures/unifiedbricks_multicolor_light_cyan.png b/textures/unifiedbricks_multicolor_light_cyan.png new file mode 100644 index 0000000..1ea1fc6 Binary files /dev/null and b/textures/unifiedbricks_multicolor_light_cyan.png differ diff --git a/textures/unifiedbricks_multicolor_light_green.png b/textures/unifiedbricks_multicolor_light_green.png new file mode 100644 index 0000000..7409f90 Binary files /dev/null and b/textures/unifiedbricks_multicolor_light_green.png differ diff --git a/textures/unifiedbricks_multicolor_light_lime.png b/textures/unifiedbricks_multicolor_light_lime.png new file mode 100644 index 0000000..a535787 Binary files /dev/null and b/textures/unifiedbricks_multicolor_light_lime.png differ diff --git a/textures/unifiedbricks_multicolor_light_magenta.png b/textures/unifiedbricks_multicolor_light_magenta.png new file mode 100644 index 0000000..a1fca27 Binary files /dev/null and b/textures/unifiedbricks_multicolor_light_magenta.png differ diff --git a/textures/unifiedbricks_multicolor_light_orange.png b/textures/unifiedbricks_multicolor_light_orange.png new file mode 100644 index 0000000..29c5742 Binary files /dev/null and b/textures/unifiedbricks_multicolor_light_orange.png differ diff --git a/textures/unifiedbricks_multicolor_light_red.png b/textures/unifiedbricks_multicolor_light_red.png new file mode 100644 index 0000000..c0af221 Binary files /dev/null and b/textures/unifiedbricks_multicolor_light_red.png differ diff --git a/textures/unifiedbricks_multicolor_light_redviolet.png b/textures/unifiedbricks_multicolor_light_redviolet.png new file mode 100644 index 0000000..6f25f67 Binary files /dev/null and b/textures/unifiedbricks_multicolor_light_redviolet.png differ diff --git a/textures/unifiedbricks_multicolor_light_skyblue.png b/textures/unifiedbricks_multicolor_light_skyblue.png new file mode 100644 index 0000000..c233f74 Binary files /dev/null and b/textures/unifiedbricks_multicolor_light_skyblue.png differ diff --git a/textures/unifiedbricks_multicolor_light_violet.png b/textures/unifiedbricks_multicolor_light_violet.png new file mode 100644 index 0000000..daf3320 Binary files /dev/null and b/textures/unifiedbricks_multicolor_light_violet.png differ diff --git a/textures/unifiedbricks_multicolor_light_yellow.png b/textures/unifiedbricks_multicolor_light_yellow.png new file mode 100644 index 0000000..8b4e5f7 Binary files /dev/null and b/textures/unifiedbricks_multicolor_light_yellow.png differ diff --git a/textures/unifiedbricks_multicolor_lightgrey.png b/textures/unifiedbricks_multicolor_lightgrey.png new file mode 100644 index 0000000..fa42be9 Binary files /dev/null and b/textures/unifiedbricks_multicolor_lightgrey.png differ diff --git a/textures/unifiedbricks_multicolor_medium_aqua.png b/textures/unifiedbricks_multicolor_medium_aqua.png new file mode 100644 index 0000000..d00695b Binary files /dev/null and b/textures/unifiedbricks_multicolor_medium_aqua.png differ diff --git a/textures/unifiedbricks_multicolor_medium_blue.png b/textures/unifiedbricks_multicolor_medium_blue.png new file mode 100644 index 0000000..c5b9a37 Binary files /dev/null and b/textures/unifiedbricks_multicolor_medium_blue.png differ diff --git a/textures/unifiedbricks_multicolor_medium_cyan.png b/textures/unifiedbricks_multicolor_medium_cyan.png new file mode 100644 index 0000000..e42fc97 Binary files /dev/null and b/textures/unifiedbricks_multicolor_medium_cyan.png differ diff --git a/textures/unifiedbricks_multicolor_medium_green.png b/textures/unifiedbricks_multicolor_medium_green.png new file mode 100644 index 0000000..cf3fb53 Binary files /dev/null and b/textures/unifiedbricks_multicolor_medium_green.png differ diff --git a/textures/unifiedbricks_multicolor_medium_lime.png b/textures/unifiedbricks_multicolor_medium_lime.png new file mode 100644 index 0000000..cbfdeeb Binary files /dev/null and b/textures/unifiedbricks_multicolor_medium_lime.png differ diff --git a/textures/unifiedbricks_multicolor_medium_magenta.png b/textures/unifiedbricks_multicolor_medium_magenta.png new file mode 100644 index 0000000..6a57512 Binary files /dev/null and b/textures/unifiedbricks_multicolor_medium_magenta.png differ diff --git a/textures/unifiedbricks_multicolor_medium_orange.png b/textures/unifiedbricks_multicolor_medium_orange.png new file mode 100644 index 0000000..39a3f93 Binary files /dev/null and b/textures/unifiedbricks_multicolor_medium_orange.png differ diff --git a/textures/unifiedbricks_multicolor_medium_red.png b/textures/unifiedbricks_multicolor_medium_red.png new file mode 100644 index 0000000..0954675 Binary files /dev/null and b/textures/unifiedbricks_multicolor_medium_red.png differ diff --git a/textures/unifiedbricks_multicolor_medium_redviolet.png b/textures/unifiedbricks_multicolor_medium_redviolet.png new file mode 100644 index 0000000..23736be Binary files /dev/null and b/textures/unifiedbricks_multicolor_medium_redviolet.png differ diff --git a/textures/unifiedbricks_multicolor_medium_skyblue.png b/textures/unifiedbricks_multicolor_medium_skyblue.png new file mode 100644 index 0000000..8f93bb3 Binary files /dev/null and b/textures/unifiedbricks_multicolor_medium_skyblue.png differ diff --git a/textures/unifiedbricks_multicolor_medium_violet.png b/textures/unifiedbricks_multicolor_medium_violet.png new file mode 100644 index 0000000..1f1512d Binary files /dev/null and b/textures/unifiedbricks_multicolor_medium_violet.png differ diff --git a/textures/unifiedbricks_multicolor_medium_yellow.png b/textures/unifiedbricks_multicolor_medium_yellow.png new file mode 100644 index 0000000..62731ab Binary files /dev/null and b/textures/unifiedbricks_multicolor_medium_yellow.png differ