diff --git a/README.md b/README.md index 251207e..778a1ba 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,17 @@ Doyousketch2's Stained Glass mod -ver 1.3 + ver 1.4 Image: http://oi47.tinypic.com/hst6s3.jpg With alpha enabled: http://oi44.tinypic.com/5vraxf.jpg +============================================================================== +Originally developed by Eli Innes/Doyousketch2, and distributed +under GPL v2. Further changes by VanessaE (removing from creative inventory) +and Jeremy Anderson (fixing craft recipes, renaming blocks) + ============================================================================== Dependencies: VanessaE's Unified Dyes, Calinou's More Blocks @@ -24,6 +29,14 @@ to simply read "stained_glass" then move it into your Minetest mods folder. +Even better, get stained_glass from one of the github pages: +https://github.com/doyousketch2/stained_glass +https://github.com/VanessaE/stained_glass +https://github.com/andersje/stained_glass + +-- this will get you the latest version of the code, and you +can update at any time by doing a git pull + ============================================================================== @@ -61,8 +74,6 @@ image: http://oi45.tinypic.com/2wbvkti.jpg All recipes produce three glowing stained glass blocks. -Pastel blocks give back an empty bucket. -Faint blocks give back two empty buckets. ============================================================================== @@ -83,6 +94,19 @@ as well as light, pastel, and faint tints. Misc. Notes ----------- +Blocks are now available by name: +e.g. /giveme stained_glass:orange 3 # get 3 orange sg blocks +or /giveme stained_glass:light_yellow +or /giveme stained_glass:pastel_yellow +or /giveme stained_glass:faint_yellow +or /giveme stained_glass:yellow + +You get the idea. + + +NUMERIC CODES FOR BLOCKS (this is the old way of coding these blocks +developed by Doyousketch2) + Please don't try to use /give commands, the items are now in numerical format, and it would be tough to try to explain it. diff --git a/changelog.txt b/changelog.txt index eacf5d9..da498ee 100644 --- a/changelog.txt +++ b/changelog.txt @@ -3,6 +3,17 @@ Changelog --------- +ver 1.4 + +Thu 22 Aug 2013 +*phew* made aliases for all numeric block names to map to new color-name based scheme +updated craft recipes to work with new dyes format +rejiggered whole system of block and craft registration +set to have all blocks at LIGHT_MAX -- since they were manually specifying '14' as a light level before (which is current max) +nothing returns buckets anymore, because you don't need buckets to make the dyes to make the blocks. + +--------- + ver 1.1 Sun 24 Feb 2013 05:26:29 AM EST diff --git a/init.lua b/init.lua index 40102a9..839d594 100644 --- a/init.lua +++ b/init.lua @@ -1,6 +1,6 @@ --[[ -Stained Glass 1.3 +Stained Glass 1.4 This mod provides luminescent stained glass blocks for Minetest 0.4.x. @@ -20,6 +20,9 @@ More Blocks was released under zlib/libpng for code and CC BY-SA 3.0 Unported fo Additional changes by VanessaEzekowitz in July 2013 to take all items out of creative inventory. +August 2013 -- Jeremy Anderson tries to get this working after the new color +changes, and to resurrect the craft recipes. Still GPL'd as far as I'm concerned. + ============================================================================== @@ -51,248 +54,225 @@ super glow glass All recipes produce three glowing stained glass blocks. -Pastel blocks give back an empty bucket. -Faint blocks give back two empty buckets. ============================================================================== ]]-- +function makenode(arg) + name=arg.blockname + --register item attributes --- HUES includes all colors for the various shades --- I'm trying to get it to sort by color in the game, tho it sorts alpha-numerically... --- so with 12 colors, it's sorting 10, 11, 12, 1, 2, 3, 4... + minetest.register_node("stained_glass:" .. name, { + description = "Stained Glass - " .. name, + drawtype = "glasslike", + tiles = {"stained_glass_" .. name .. ".png"}, + paramtype = "light", + sunlight_propagates = true, + use_texture_alpha = true, + light_source = LIGHT_MAX, + -- now using light_max, so we're always as bright as possible. + -- future possibility is to allow gentle glow bricks. + is_ground_content = true, + groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, not_in_creative_inventory=1}, + sounds = default.node_sound_glass_defaults() + }) -HUES = { - "yellow", - "lime", - "green", - "aqua", - "cyan", - "skyblue", - "blue", - "violet", - "magenta", - "redviolet", - "red", - "orange" -} +end +function defineregular (arg) + code=arg.colorcode + name=arg.colorname + mydye=arg.recipe --- Brightness levels in the textures are 33% ("dark"), 66% ("medium"), --- 100% ("full"), 150% ("light"), 200% ("pastel"). --- 1x and 2x are simply placeholders to fill in so numbers start at 3. + -- the purpose of this is to abstract out all the registration + -- stuff - duplicated code is bad mmmmmkay? At least where one can avoid it -BRIGHT = { - "1x", - "2x", - "dark_", - "medium_", - "", --(full) -} + -- so, instead of 4 loops that each have craft registrations, + -- we'll have one block that does registrations, and just call + -- the procedure repeatedly + -- + minetest.register_craft({ + type = "shapeless", + output = "stained_glass:" .. name .." 3", + recipe = { + mydye, + "moreblocks:super_glow_glass", + "moreblocks:super_glow_glass", + "moreblocks:super_glow_glass", + }, + }) + makenode{blockname=name} --- Saturation - "s50" in a file/item name means "saturation: 50%". --- 1x - 5x are simply placeholders so numbers start at 6. + minetest.register_alias( "stained_glass:" .. code, "stained_glass:" .. name) + -- and an alias from the numeric to the named block + -- we need to keep the numeric block for all the people that used + -- pre-v1.4 blocks in their worlds. +end -SAT = { - "1x", - "2x", - "3x", - "4x", - "5x", - "_s50", - "" --(full) -} +function definelight(arg) + code=arg.colorcode + name=arg.colorname + mydye=arg.recipe + makenode{blockname=name} ---main loop for all 12 hues + minetest.register_craft({ + type = "shapeless", + output = "stained_glass:" .. name .." 3", + recipe = { + mydye, + "dye:white", + "moreblocks:super_glow_glass", + "moreblocks:super_glow_glass", + "moreblocks:super_glow_glass", + }, + }) + minetest.register_alias( "stained_glass:" .. code, "stained_glass:" .. name) +end -for h = 1, 12 do +function definepastel (arg) + code=arg.colorcode + name=arg.colorname + mydye=arg.recipe - hues = HUES[h] + minetest.register_craft({ + type = "shapeless", + output = "stained_glass:" .. name .." 3", + recipe = { + mydye, + "dye:white", + "dye:white", + "moreblocks:super_glow_glass", + "moreblocks:super_glow_glass", + "moreblocks:super_glow_glass", + }, + }) + --register item attributes + -- + makenode{blockname=name} + minetest.register_alias( "stained_glass:" .. code, "stained_glass:" .. name) - --nested loop for brightness - --starts at 3 to hopefully keep colors in order +end - for b = 3, 5 do +defineregular{colorcode="1_3_6", colorname="dark_yellow_s50", recipe="group:dye,unicolor_dark_yellow_s50"} -- works +defineregular{colorcode="1_3_7", colorname="dark_yellow", recipe="group:dye,unicolor_dark_yellow"} -- works +defineregular{colorcode="1_4_6", colorname="medium_yellow_s50", recipe="group:dye,unicolor_medium_yellow_s50"} -- works +defineregular{colorcode="1_4_7", colorname="medium_yellow", recipe="group:dye,unicolor_medium_yellow"} -- works +defineregular{colorcode="1_5_6", colorname="yellow_s50", recipe="group:dye,unicolor_yellow_s50"} -- works +defineregular{colorcode="1_5_7", colorname="yellow", recipe="dye:yellow"} -- works +defineregular{colorcode="2_3_6", colorname="dark_lime_s50", recipe="group:dye,unicolor_dark_lime_s50"} -- works +defineregular{colorcode="2_3_7", colorname="dark_lime", recipe="group:dye,unicolor_dark_lime"} -- works +defineregular{colorcode="2_4_6", colorname="medium_lime_s50", recipe="group:dye,unicolor_medium_lime_s50"} -- works +defineregular{colorcode="2_4_7", colorname="medium_lime", recipe="group:dye,unicolor_medium_lime"} -- works +defineregular{colorcode="2_5_6", colorname="lime_s50", recipe="group:dye,unicolor_lime_s50"} -- works +defineregular{colorcode="2_5_7", colorname="lime", recipe="group:dye,excolor_lime"} -- works +defineregular{colorcode="3_3_6", colorname="dark_green_s50", recipe="group:dye,unicolor_dark_green_s50"} -- works +defineregular{colorcode="3_3_7", colorname="dark_green", recipe="dye:dark_green"} -- seems to be the same as regular green; PROBLEM +defineregular{colorcode="3_4_6", colorname="medium_green_s50", recipe="group:dye,unicolor_medium_green_s50"} -- works +defineregular{colorcode="3_4_7", colorname="medium_green", recipe="group:dye,unicolor_medium_green"} -- works +defineregular{colorcode="3_5_6", colorname="green_s50", recipe="group:dye,unicolor_green_s50"} -- works +defineregular{colorcode="3_5_7", colorname="green", recipe="dye:green"} --works -- do not change to group, or you'll break the darkgreen blocks +defineregular{colorcode="4_3_6", colorname="dark_aqua_s50", recipe="group:dye,unicolor_dark_aqua_s50"} -- works +defineregular{colorcode="4_3_7", colorname="dark_aqua", recipe="group:dye,unicolor_dark_aqua"} -- works +defineregular{colorcode="4_4_6", colorname="medium_aqua_s50", recipe="group:dye,unicolor_medium_aqua_s50"} -- works +defineregular{colorcode="4_4_7", colorname="medium_aqua", recipe="group:dye,unicolor_medium_aqua"} -- works +defineregular{colorcode="4_5_6", colorname="aqua_s50", recipe="group:dye,unicolor_aqua_s50"} -- works +defineregular{colorcode="4_5_7", colorname="aqua", recipe="group:dye,unicolor_aqua"} -- works +defineregular{colorcode="5_3_6", colorname="dark_cyan_s50", recipe="group:dye,unicolor_dark_cyan_s50"} -- works +defineregular{colorcode="5_3_7", colorname="dark_cyan", recipe="group:dye,unicolor_dark_cyan"} -- works +defineregular{colorcode="5_4_6", colorname="medium_cyan_s50", recipe="group:dye,unicolor_medium_cyan_s50"} -- works +defineregular{colorcode="5_4_7", colorname="medium_cyan", recipe="group:dye,unicolor_medium_cyan"} -- works +defineregular{colorcode="5_5_6", colorname="cyan_s50", recipe="group:dye,unicolor_cyan_s50"} -- works +defineregular{colorcode="5_5_7", colorname="cyan", recipe="group:dye,basecolor_cyan"} -- works +defineregular{colorcode="6_3_6", colorname="dark_skyblue_s50", recipe="group:dye,unicolor_dark_skyblue_s50"} -- works +defineregular{colorcode="6_3_7", colorname="dark_skyblue", recipe="group:dye,unicolor_dark_skyblue"} -- works +defineregular{colorcode="6_4_6", colorname="medium_skyblue_s50", recipe="group:dye,unicolor_medium_skyblue_s50"} -- works +defineregular{colorcode="6_4_7", colorname="medium_skyblue", recipe="group:dye,unicolor_medium_skyblue"} -- works +defineregular{colorcode="6_5_6", colorname="skyblue_s50", recipe="group:dye,unicolor_skyblue_s50"} -- works +defineregular{colorcode="6_5_7", colorname="skyblue", recipe="group:dye,excolor_sky_blue"} -- works +defineregular{colorcode="7_3_6", colorname="dark_blue_s50", recipe="group:dye,unicolor_dark_blue_s50"} -- works +defineregular{colorcode="7_3_7", colorname="dark_blue", recipe="group:dye,unicolor_dark_blue"} -- works +defineregular{colorcode="7_4_6", colorname="medium_blue_s50", recipe="group:dye,unicolor_medium_blue_s50"} -- works +defineregular{colorcode="7_4_7", colorname="medium_blue", recipe="group:dye,unicolor_medium_blue"} -- works +defineregular{colorcode="7_5_6", colorname="blue_s50", recipe="group:dye,unicolor_blue_s50"} -- works +defineregular{colorcode="7_5_7", colorname="blue", recipe="group:dye,basecolor_blue"} -- works +defineregular{colorcode="8_3_6", colorname="dark_violet_s50", recipe="group:dye,unicolor_dark_violet_s50"} -- works +defineregular{colorcode="8_3_7", colorname="dark_violet", recipe="group:dye,unicolor_dark_violet"} -- works +defineregular{colorcode="8_4_6", colorname="medium_violet_s50", recipe="group:dye,unicolor_medium_violet_s50"} -- works +defineregular{colorcode="8_4_7", colorname="medium_violet", recipe="group:dye,unicolor_medium_violet"} -- works +defineregular{colorcode="8_5_6", colorname="violet_s50", recipe="group:dye,unicolor_violet_s50"} -- works +defineregular{colorcode="8_5_7", colorname="violet", recipe="group:dye,excolor_violet"} -- works +defineregular{colorcode="9_3_6", colorname="dark_magenta_s50", recipe="group:dye,unicolor_dark_magenta_s50"} -- works +defineregular{colorcode="9_3_7", colorname="dark_magenta", recipe="group:dye,unicolor_dark_magenta"} -- works +defineregular{colorcode="9_4_6", colorname="medium_magenta_s50", recipe="group:dye,unicolor_medium_magenta_s50"} -- works +defineregular{colorcode="9_4_7", colorname="medium_magenta", recipe="group:dye,unicolor_medium_magenta"} -- works +defineregular{colorcode="9_5_6", colorname="magenta_s50", recipe="group:dye,unicolor_magenta_s50"} -- works +defineregular{colorcode="9_5_7", colorname="magenta", recipe="dye:magenta"} -- have to use exact dye name to get right color +defineregular{colorcode="10_3_6", colorname="dark_redviolet_s50", recipe="group:dye,unicolor_dark_redviolet_s50"} -- works +defineregular{colorcode="10_3_7", colorname="dark_redviolet", recipe="group:dye,unicolor_dark_redviolet"} -- works +defineregular{colorcode="10_4_6", colorname="medium_redviolet_s50", recipe="group:dye,unicolor_medium_redviolet_s50"} -- works +defineregular{colorcode="10_4_7", colorname="medium_redviolet", recipe="group:dye,unicolor_medium_redviolet"} -- works +defineregular{colorcode="10_5_6", colorname="redviolet_s50", recipe="group:dye,unicolor_redviolet_s50"} -- works +defineregular{colorcode="10_5_7", colorname="redviolet", recipe="dye:redviolet"} -- works now -- have to use exact dye name on this oone. -- looks broken again +defineregular{colorcode="11_3_6", colorname="dark_red_s50", recipe="group:dye,unicolor_dark_red_s50"} -- works +defineregular{colorcode="11_3_7", colorname="dark_red", recipe="group:dye,unicolor_dark_red"} -- works +defineregular{colorcode="11_4_6", colorname="medium_red_s50", recipe="group:dye,unicolor_medium_red_s50"} -- works +defineregular{colorcode="11_4_7", colorname="medium_red", recipe="group:dye,unicolor_medium_red"} -- works +defineregular{colorcode="11_5_6", colorname="red_s50", recipe="group:dye,unicolor_red_s50"} -- works +defineregular{colorcode="11_5_7", colorname="red", recipe="group:dye,basecolor_red"} -- works +defineregular{colorcode="12_3_6", colorname="dark_orange_s50", recipe="group:dye,unicolor_dark_orange_s50"} --works +defineregular{colorcode="12_3_7", colorname="dark_orange", recipe="group:dye,unicolor_dark_orange"} -- works +defineregular{colorcode="12_4_6", colorname="medium_orange_s50", recipe="group:dye,unicolor_medium_orange_s50"} -- works +defineregular{colorcode="12_4_7", colorname="medium_orange", recipe="group:dye,unicolor_medium_orange"} -- works +defineregular{colorcode="12_5_6", colorname="orange_s50", recipe="group:dye,unicolor_orange_s50"} -- works +defineregular{colorcode="12_5_7", colorname="orange", recipe="group:dye,basecolor_orange"} -- works - bright = BRIGHT[b] +--if i could've figured out a way to pass multiple items in on recipe, I wouldn't have had to make +-- definelight or definepastel +definelight{colorcode="1_8", colorname="light_yellow", recipe="group:dye,unicolor_light_yellow"} -- works +definelight{colorcode="2_8", colorname="light_lime", recipe="group:dye,unicolor_light_lime"} -- works +definelight{colorcode="3_8", colorname="light_green", recipe="group:dye,unicolor_light_green"} -- works +definelight{colorcode="4_8", colorname="light_aqua", recipe="group:dye,unicolor_light_aqua"} -- works +definelight{colorcode="5_8", colorname="light_cyan", recipe="group:dye,unicolor_light_cyan"} -- works +definelight{colorcode="6_8", colorname="light_skyblue", recipe="group:dye,unicolor_light_skyblue"} -- works +definelight{colorcode="7_8", colorname="light_blue", recipe="group:dye,unicolor_light_blue"} -- works +definelight{colorcode="8_8", colorname="light_violet", recipe="group:dye,unicolor_light_violet"} -- works +definelight{colorcode="9_8", colorname="light_magenta", recipe="group:dye,unicolor_light_magenta"} --works +definelight{colorcode="10_8", colorname="light_redviolet", recipe="group:dye,unicolor_light_redviolet"} -- works +definelight{colorcode="11_8", colorname="light_red", recipe="group:dye,unicolor_light_red"} -- works (with pink, too!) +definelight{colorcode="12_8", colorname="light_orange", recipe="group:dye,unicolor_light_orange"} --works - --sub loop for saturation - --starts at 6 to keep colors in order - for s = 6, 7 do - - sat = SAT[s] - - - --register recipes - - minetest.register_craft({ - type = "shapeless", - output = "stained_glass:" .. (h) .. "_" .. (b) .. "_" .. (s) .." 3", - recipe = { - "unifieddyes:" .. bright .. hues .. sat, - "moreblocks:superglowglass", - "moreblocks:superglowglass", - "moreblocks:superglowglass", - }, - }) - - --register item attributes - - minetest.register_node("stained_glass:" .. (h) .. "_" .. (b) .. "_" .. (s), { - description = "Stained Glass - " .. bright .. hues .. sat, - drawtype = "glasslike", - tiles = {"stained_glass_" .. bright .. hues .. sat .. ".png"}, - paramtype = "light", - sunlight_propagates = true, - use_texture_alpha = true, - light_source = 14, - is_ground_content = true, - groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, not_in_creative_inventory=1}, - sounds = default.node_sound_glass_defaults() - }) - end --sat - - end --bright - -end --hues - - ---secondary loop for light blocks ---(as they don't have 50% saturation blocks to go along with 'em) - - -for h = 1, 12 do - - - hues = HUES[h] - - --register recipes (set at 8 to keep colors in order) - - minetest.register_craft({ - type = "shapeless", - output = "stained_glass:" .. (h) .. "_8 3", - recipe = { - "unifieddyes:light_" .. hues, - "moreblocks:superglowglass", - "moreblocks:superglowglass", - "moreblocks:superglowglass", - }, - }) - - --register item attributes - - minetest.register_node("stained_glass:" .. (h) .. "_8_", { - description = "Stained Glass - light_" .. hues, - drawtype = "glasslike", - tiles = {"stained_glass_light_" .. hues .. ".png"}, - paramtype = "light", - sunlight_propagates = true, - use_texture_alpha = true, - light_source = 14, - is_ground_content = true, - groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, not_in_creative_inventory=1}, - sounds = default.node_sound_glass_defaults() - }) - - -end --hues - - ---third loop for pastel blocks ---(as they don't have 50% saturation blocks to go along with 'em) ---(plus they have a diff recipe to create.) - - -for h = 1, 12 do - - - hues = HUES[h] - - --register recipes (set at 9 to keep colors in order) - - minetest.register_craft({ - type = "shapeless", - output = "stained_glass:" .. (h) .. "_9 3", - recipe = { - "unifieddyes:white_paint", - "unifieddyes:light_" .. hues, - "moreblocks:superglowglass", - "moreblocks:superglowglass", - "moreblocks:superglowglass", - }, - replacements = { {'unifieddyes:white_paint', 'bucket:bucket_empty'}, }, - }) - - --register item attributes - - minetest.register_node("stained_glass:" .. (h) .. "_9", { - description = "Stained Glass - pastel_" .. hues, - drawtype = "glasslike", - tiles = {"stained_glass_pastel_" .. hues .. ".png"}, - paramtype = "light", - sunlight_propagates = true, - use_texture_alpha = true, - light_source = 14, - is_ground_content = true, - groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, not_in_creative_inventory=1}, - sounds = default.node_sound_glass_defaults() - }) - - -end --hues - - ---last loop for faint blocks ---(as they don't have 50% saturation blocks to go along with 'em) ---(plus they have a diff recipe to create.) - - -for h = 1, 12 do - - - hues = HUES[h] - - --register recipes (set at 91 to keep colors in order) - - minetest.register_craft({ - type = "shapeless", - output = "stained_glass:" .. (h) .. "_91 3", - recipe = { - "unifieddyes:white_paint", - "unifieddyes:white_paint", - "unifieddyes:light_" .. hues, - "moreblocks:superglowglass", - "moreblocks:superglowglass", - "moreblocks:superglowglass", - }, - replacements = { {'unifieddyes:white_paint', 'bucket:bucket_empty 2'}, }, - }) - - --register item attributes - - minetest.register_node("stained_glass:" .. (h) .. "_91", { - description = "Stained Glass - faint_" .. hues, - drawtype = "glasslike", - tiles = {"stained_glass_faint_" .. hues .. ".png"}, - paramtype = "light", - sunlight_propagates = true, - use_texture_alpha = true, - light_source = 14, - is_ground_content = true, - groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, not_in_creative_inventory=1}, - sounds = default.node_sound_glass_defaults() - }) - - -end --hues +definepastel{colorcode="1_9", colorname="pastel_yellow", recipe="group:dye,unicolor_light_yellow"} +defineregular{colorcode="2_9", colorname="pastel_lime", recipe="group:dye,unicolor_light_lime"} +defineregular{colorcode="3_9", colorname="pastel_green", recipe="group:dye,unicolor_light_green"} +defineregular{colorcode="4_9", colorname="pastel_aqua", recipe="group:dye,excolor_light_aqua"} +defineregular{colorcode="5_9", colorname="pastel_cyan", recipe="group:dye,unicolor_light_cyan"} +defineregular{colorcode="6_9", colorname="pastel_skyblue", recipe="group:dye,unicolor_light_skyblue"} +defineregular{colorcode="7_9", colorname="pastel_blue", recipe="group:dye,unicolor_light_blue"} +defineregular{colorcode="8_9", colorname="pastel_violet", recipe="group:dye,unicolor_light_violet"} +defineregular{colorcode="9_9", colorname="pastel_magenta", recipe="\"group:dye,unicolor_light_magenta"} +defineregular{colorcode="10_9", colorname="pastel_redviolet", recipe="group:dye,unicolor_light_redviolet"} +defineregular{colorcode="11_9", colorname="pastel_red", recipe="group:dye,unicolor_light_red"} +defineregular{colorcode="12_9", colorname="pastel_orange", recipe="group:dye,unicolor_light_orange"} +defineregular{colorcode="1_91", colorname="faint_yellow", recipe="group:dye,unicolor_light_yellow"} +defineregular{colorcode="2_91", colorname="faint_lime", recipe="group:dye,unicolor_light_lime"} +defineregular{colorcode="3_91", colorname="faint_green", recipe="group:dye,unicolor_light_green"} +defineregular{colorcode="4_91", colorname="faint_aqua", recipe="group:dye,unicolor_light_aqua"} +defineregular{colorcode="5_91", colorname="faint_cyan", recipe="group:dye,unicolor_light_cyan"} +defineregular{colorcode="6_91", colorname="faint_skyblue", recipe="group:dye,unicolor_light_skyblue"} +defineregular{colorcode="7_91", colorname="faint_blue", recipe="group:dye,unicolor_light_blue"} +defineregular{colorcode="8_91", colorname="faint_violet", recipe="group:dye,unicolor_light_violet"} +defineregular{colorcode="9_91", colorname="faint_magenta", recipe="group:dye,unicolor_light_magenta"} +defineregular{colorcode="10_91", colorname="faint_redviolet", recipe="group:dye,unicolor_light_redviolet"} +defineregular{colorcode="11_91", colorname="faint_red", recipe="group:dye,unicolor_light_red"} +defineregular{colorcode="12_91", colorname="faint_orange", recipe="group:dye,unicolor_light_orange"} +-- END JDA print("[stained_glass] Loaded!") - diff --git a/init.lua~ b/init.lua~ deleted file mode 100644 index b998448..0000000 --- a/init.lua~ +++ /dev/null @@ -1,299 +0,0 @@ ---[[ - -Stained Glass 1.1 - -This mod provides luminescent stained glass blocks for Minetest 0.4.x. - -Depends: -[moreblocks] by Calinou -[unifieddyes] by VanessaE - -============================================================================== -Sun 24 Feb 2013 11:52:27 AM EST - -Copyright (C) 2013, Eli Innis -Email: doyousketch2 @ yahoo.com - -Unified Dyes was released under GNU-GPL 2.0, see LICENSE for info. -More Blocks was released under zlib/libpng for code and CC BY-SA 3.0 Unported for textures, see LICENSE.txt for info. - -============================================================================== - - -Recipe for standard colors: - -dye -super glow glass -super glow glass -super glow glass - - -Recipe for pastel colors: - -light dye -white paint -super glow glass -super glow glass -super glow glass - - -Recipe for faint colors: - -light dye -white paint -white paint -super glow glass -super glow glass -super glow glass - - -All recipes produce three glowing stained glass blocks. -Pastel blocks give back an empty bucket. -Faint blocks give back two empty buckets. - -============================================================================== -]]-- - - --- HUES includes all colors for the various shades --- I'm trying to get it to sort by color in the game, tho it sorts alpha-numerically... --- so with 12 colors, it's sorting 10, 11, 12, 1, 2, 3, 4... - -HUES = { - "yellow", - "lime", - "green", - "aqua", - "cyan", - "skyblue", - "blue", - "violet", - "magenta", - "redviolet", - "red", - "orange" -} - - --- Brightness levels in the textures are 33% ("dark"), 66% ("medium"), --- 100% ("full"), 150% ("light"), 200% ("pastel"). --- 1x and 2x are simply placeholders to fill in so numbers start at 3. - -BRIGHT = { - "1x", - "2x", - "dark_", - "medium_", - "", --(full) -} - - --- Saturation - "s50" in a file/item name means "saturation: 50%". --- 1x - 5x are simply placeholders so numbers start at 6. - - -SAT = { - "1x", - "2x", - "3x", - "4x", - "5x", - "_s50", - "" --(full) -} - - ---main loop for all 12 hues - -for h = 1, 12 do - - hues = HUES[h] - - - --nested loop for brightness - --starts at 3 to hopefully keep colors in order - - for b = 3, 5 do - - bright = BRIGHT[b] - - - --sub loop for saturation - --starts at 6 to keep colors in order - for s = 6, 7 do - - sat = SAT[s] - - - --register recipes - - minetest.register_craft({ - type = "shapeless", - output = "stained_glass:" .. (h) .. "_" .. (b) .. "_" .. (s) .." 3", - recipe = { - "unifieddyes:" .. bright .. hues .. sat, - "moreblocks:superglowglass", - "moreblocks:superglowglass", - "moreblocks:superglowglass", - }, - }) - - --register item attributes - - minetest.register_node("stained_glass:" .. (h) .. "_" .. (b) .. "_" .. (s), { - description = "Stained Glass - " .. bright .. hues .. sat, - drawtype = "glasslike", - tiles = {"stained_glass_" .. bright .. hues .. sat .. ".png"}, - inventory_image = minetest.inventorycube("stained_glass_" .. bright .. hues .. sat .. ".png"), - paramtype = "light", - sunlight_propagates = true, - use_texture_alpha = true, - light_source = 14, - is_ground_content = true, - groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3}, - sounds = default.node_sound_glass_defaults() - }) - end --sat - - end --bright - -end --hues - - ---secondary loop for light blocks ---(as they don't have 50% saturation blocks to go along with 'em) - - -for h = 1, 12 do - - - hues = HUES[h] - - --register recipes (set at 8 to keep colors in order) - - minetest.register_craft({ - type = "shapeless", - output = "stained_glass:" .. (h) .. "_8 3", - recipe = { - "unifieddyes:light_" .. hues, - "moreblocks:superglowglass", - "moreblocks:superglowglass", - "moreblocks:superglowglass", - }, - }) - - --register item attributes - - minetest.register_node("stained_glass:" .. (h) .. "_8_", { - description = "Stained Glass - light_" .. hues, - drawtype = "glasslike", - tiles = {"stained_glass_light_" .. hues .. ".png"}, - inventory_image = minetest.inventorycube("stained_glass_light_" .. hues .. ".png"), - paramtype = "light", - sunlight_propagates = true, - use_texture_alpha = true, - light_source = 14, - is_ground_content = true, - groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3}, - sounds = default.node_sound_glass_defaults() - }) - - -end --hues - - ---third loop for pastel blocks ---(as they don't have 50% saturation blocks to go along with 'em) ---(plus they have a diff recipe to create.) - - -for h = 1, 12 do - - - hues = HUES[h] - - --register recipes (set at 9 to keep colors in order) - - minetest.register_craft({ - type = "shapeless", - output = "stained_glass:" .. (h) .. "_9 3", - recipe = { - "unifieddyes:white_paint", - "unifieddyes:light_" .. hues, - "moreblocks:superglowglass", - "moreblocks:superglowglass", - "moreblocks:superglowglass", - }, - replacements = { {'unifieddyes:white_paint', 'bucket:bucket_empty'}, }, - }) - - --register item attributes - - minetest.register_node("stained_glass:" .. (h) .. "_9", { - description = "Stained Glass - pastel_" .. hues, - drawtype = "glasslike", - tiles = {"stained_glass_pastel_" .. hues .. ".png"}, - inventory_image = minetest.inventorycube("stained_glass_pastel_" .. hues .. ".png"), - paramtype = "light", - sunlight_propagates = true, - use_texture_alpha = true, - light_source = 14, - is_ground_content = true, - groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3}, - sounds = default.node_sound_glass_defaults() - }) - - -end --hues - - ---last loop for faint blocks ---(as they don't have 50% saturation blocks to go along with 'em) ---(plus they have a diff recipe to create.) - - -for h = 1, 12 do - - - hues = HUES[h] - - --register recipes (set at 91 to keep colors in order) - - minetest.register_craft({ - type = "shapeless", - output = "stained_glass:" .. (h) .. "_91 3", - recipe = { - "unifieddyes:white_paint", - "unifieddyes:white_paint", - "unifieddyes:light_" .. hues, - "moreblocks:superglowglass", - "moreblocks:superglowglass", - "moreblocks:superglowglass", - }, - replacements = { {'unifieddyes:white_paint', 'bucket:bucket_empty 2'}, }, - }) - - --register item attributes - - minetest.register_node("stained_glass:" .. (h) .. "_91", { - description = "Stained Glass - faint_" .. hues, - drawtype = "glasslike", - tiles = {"stained_glass_faint_" .. hues .. ".png"}, - inventory_image = minetest.inventorycube("stained_glass_faint_" .. hues .. ".png"), - paramtype = "light", - sunlight_propagates = true, - use_texture_alpha = true, - light_source = 14, - is_ground_content = true, - groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3}, - sounds = default.node_sound_glass_defaults() - }) - - -end --hues - - -print("[stained_glass] Loaded!") - - -