Merge pull request #3 from VanessaE/master

Many changes, please see commit log :P
Этот коммит содержится в:
Jeremy Anderson 2017-03-27 14:12:51 -05:00 коммит произвёл GitHub
родитель b6daeecd13 2215a44037
Коммит af425a67ea
111 изменённых файлов: 156 добавлений и 78 удалений

16
geany_run_script.sh Обычный файл
Просмотреть файл

@ -0,0 +1,16 @@
#!/bin/sh
rm $0
lua "init.lua"
echo "
------------------
(program exited with code: $?)"
echo "Press return to continue"
#to be more compatible with shells like dash
dummy_var=""
read dummy_var

218
init.lua
Просмотреть файл

@ -25,78 +25,94 @@ changes, and to resurrect the craft recipes. Still GPL'd as far as I'm concerned
August 2013 -- rewritten a bit by VanessaEzekowitz to further condense the code.
==============================================================================
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
recipe for low-glow-stained-glass:
as above, but substitute 'glow glass' for super glow glass.
recipe for no-glow-stained-glass:
as regular stained glass, but substitute plain 'glass' for super glow glass
All recipes produce three stained glass blocks.
January 2017 -- rewritten a bit more by Vanessa E. to use engine param2 colorization
and place-then-paint creation of colors. To get the pastel colors,
place super glow glass, right-click with dye to color it, then right-
click with Moreblocks' "sweeper" to "brush off" some of the color. Do
it again to change pastel to faint. Right click a pastel or faint with
some dye to re-color it (you have to dig and re-place if you want to
darken it). Crafting is no longer used to create the colors.
==============================================================================
]]--
function makenode(arg)
stainedglass = {}
stainedglass.old_static_nodes = {}
local myglow = LIGHT_MAX-3
minetest.register_node("stained_glass:stained_glass", {
description = "Stained Glass",
drawtype = "glasslike",
tiles = { "stained_glass.png" },
paramtype = "light",
paramtype2 = "color",
palette = "unifieddyes_palette_extended.png",
place_param2 = 240,
sunlight_propagates = true,
use_texture_alpha = true,
light_source = myglow,
is_ground_content = true,
walkable = true,
groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, not_in_creative_inventory=1, ud_param2_colorable = 1},
sounds = default.node_sound_glass_defaults(),
drop = "moreblocks:super_glow_glass",
on_construct = unifieddyes.on_construct,
after_place_node = unifieddyes.recolor_on_place,
after_dig_node = unifieddyes.after_dig_node,
drop = "moreblocks:super_glow_glass"
})
minetest.override_item("moreblocks:super_glow_glass", {
palette = "unifieddyes_palette_extended.png",
groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3, ud_param2_colorable = 1},
ud_replacement_node = "stained_glass:stained_glass",
after_place_node = unifieddyes.recolor_on_place
})
-- trap glass
minetest.register_node("stained_glass:stained_trap_glass", {
description = "Stained Trap-glass",
drawtype = "glasslike",
tiles = { "stained_glass.png" },
paramtype = "light",
paramtype2 = "color",
palette = "unifieddyes_palette_extended.png",
place_param2 = 240,
sunlight_propagates = true,
use_texture_alpha = true,
light_source = myglow,
is_ground_content = true,
walkable = false,
groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, not_in_creative_inventory=1, ud_param2_colorable = 1},
sounds = default.node_sound_glass_defaults(),
drop = "moreblocks:trap_super_glow_glass",
on_construct = unifieddyes.on_construct,
after_place_node = unifieddyes.recolor_on_place,
after_dig_node = unifieddyes.after_dig_node,
drop = "moreblocks:trap_super_glow_glass"
})
minetest.override_item("moreblocks:trap_super_glow_glass", {
palette = "unifieddyes_palette_extended.png",
groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, ud_param2_colorable = 1},
ud_replacement_node = "stained_glass:stained_trap_glass",
after_place_node = unifieddyes.recolor_on_place
})
function stainedglass.makenode(arg)
local name=arg.blockname
local myglow=arg.glow
local myprefix=arg.prefix
local imagename=arg.imagename
local safe=arg.walkflag
local Description
local function tchelper(first, rest)
return first:upper()..rest:lower()
end -- from lua-users.org/wiki/StringRecipes
-- above function is used to turn red_violet_s50 to 'Red Violet S50'
local function tchelper(first, rest)
return first:upper()..rest:lower()
end -- from lua-users.org/wiki/StringRecipes
--register item attributes
Description=string.gsub("Stained Glass - " ..myprefix..name, "_", " ")
Description=Description:gsub("(%a)([%w_']*)", tchelper)
minetest.register_node("stained_glass:"..myprefix..name, {
description = Description,
drawtype = "glasslike",
tiles = {"stained_glass_" .. imagename .. ".png"},
paramtype = "light",
sunlight_propagates = true,
use_texture_alpha = true,
light_source = myglow,
is_ground_content = true,
walkable=safe, -- if not safe, this is trapglass
groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, not_in_creative_inventory=1},
sounds = default.node_sound_glass_defaults()
})
table.insert(stainedglass.old_static_nodes, "stained_glass:"..name)
end
-- maybe someday, I can cleanly combine these two functions.
@ -148,13 +164,7 @@ function stained_trapglass_define(arg)
myrecipe[6] = "dye:white"
end
minetest.register_craft({
type = "shapeless",
output = "stained_glass:"..myprefix..name.." 3",
recipe = myrecipe,
})
makenode{blockname=name, glow=myglow, prefix=myprefix, imagename=imagename, walkflag=false}
stainedglass.makenode{blockname=name, glow=myglow, prefix=myprefix, imagename=imagename, walkflag=false}
end
end
@ -204,13 +214,7 @@ function stained_glass_define(arg)
myrecipe[6] = "dye:white"
end
minetest.register_craft({
type = "shapeless",
output = "stained_glass:"..myprefix..name.." 3",
recipe = myrecipe,
})
makenode{blockname=name, glow=myglow, prefix=myprefix, imagename=name, walkflag=true}
stainedglass.makenode{blockname=name, glow=myglow, prefix=myprefix, imagename=name, walkflag=true}
if myprefix == "" then
local aliasname
@ -287,7 +291,6 @@ for i in ipairs(stained_glass_hues) do
recipevalue = "group:dye,unicolor_"..shadename..huename
if (shadename == "" and stained_glass_hues[i][2]) then
-- print(huename .. " is set to true -- substituting dye:huename ")
recipevalue = "dye:"..huename
elseif (shadename=="pastel_" or shadename=="faint_") then
-- force light_dye for pastel and faint colors
@ -351,6 +354,65 @@ for i in ipairs(stained_glass_hues) do
end
end
-- convert in-map static nodes to use param2 coloring
minetest.register_lbm({
name = "stained_glass:convert_glass",
label = "Convert static glass blocks to use param2 color",
run_at_every_load = false,
nodenames = stainedglass.old_static_nodes,
action = function(pos, node)
local name = node.name
name = string.gsub(name, "aqua", "spring")
name = string.gsub(name, "skyblue", "azure")
name = string.gsub(name, "redviolet", "rose")
local n = string.find(name, ":")
local color = string.sub(name, n + 1)
local h,s,v = unifieddyes.get_hsv(name)
if string.find(name, "trap") then
n = string.find(color, "_")
color = string.sub(color, n + 1)
local paletteidx = unifieddyes.getpaletteidx("unifieddyes:"..color, "extended")
minetest.set_node(pos, { name = "stained_glass:stained_trap_glass", param2 = paletteidx })
else
local paletteidx = unifieddyes.getpaletteidx("unifieddyes:"..color, "extended")
minetest.set_node(pos, { name = "stained_glass:stained_glass", param2 = paletteidx })
end
local meta = minetest.get_meta(pos)
meta:set_string("dye", "unifieddyes:"..v..h..s)
meta:set_string("palette", "ext")
end
})
minetest.register_lbm({
name = "stained_glass:recolor_glass",
label = "Convert glass to use UD extended palette",
run_at_every_load = false,
nodenames = {
"stained_glass:stained_glass",
"stained_glass:stained_trap_glass",
"stained_glass:faint_stained_glass",
"stained_glass:faint_stained_trap_glass",
"stained_glass:pastel_stained_glass",
"stained_glass:pastel_stained_trap_glass"
},
action = function(pos, node)
local meta = minetest.get_meta(pos)
if meta:get_string("palette") ~= "ext" then
local newcolor = unifieddyes.convert_classic_palette[node.param2]
if string.find(node.name, "faint") then
newcolor = newcolor - 4*24
elseif string.find(node.name, "pastel") then
newcolor = newcolor - 3*24
end
minetest.swap_node(pos, { name = "stained_glass:stained_glass", param2 = newcolor })
meta:set_string("palette", "ext")
end
end
})
print("[stained_glass] Loaded!")

Двоичные данные
textures/stained_glass.png Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 291 B

Двоичные данные
textures/stained_glass_aqua.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 701 B

Двоичные данные
textures/stained_glass_aqua_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 685 B

Двоичные данные
textures/stained_glass_blue.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 701 B

Двоичные данные
textures/stained_glass_blue_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 680 B

Двоичные данные
textures/stained_glass_cyan.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 701 B

Двоичные данные
textures/stained_glass_cyan_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 701 B

Двоичные данные
textures/stained_glass_dark_aqua.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 585 B

Двоичные данные
textures/stained_glass_dark_aqua_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 558 B

Двоичные данные
textures/stained_glass_dark_blue.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 544 B

Двоичные данные
textures/stained_glass_dark_blue_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 515 B

Двоичные данные
textures/stained_glass_dark_cyan.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 552 B

Двоичные данные
textures/stained_glass_dark_cyan_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 515 B

Двоичные данные
textures/stained_glass_dark_green.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 544 B

Двоичные данные
textures/stained_glass_dark_green_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 515 B

Двоичные данные
textures/stained_glass_dark_lime.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 585 B

Двоичные данные
textures/stained_glass_dark_lime_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 558 B

Двоичные данные
textures/stained_glass_dark_magenta.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 552 B

Двоичные данные
textures/stained_glass_dark_magenta_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 515 B

Двоичные данные
textures/stained_glass_dark_orange.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 585 B

Двоичные данные
textures/stained_glass_dark_orange_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 558 B

Двоичные данные
textures/stained_glass_dark_red.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 544 B

Двоичные данные
textures/stained_glass_dark_red_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 515 B

Двоичные данные
textures/stained_glass_dark_redviolet.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 585 B

Двоичные данные
textures/stained_glass_dark_redviolet_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 558 B

Двоичные данные
textures/stained_glass_dark_skyblue.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 585 B

Двоичные данные
textures/stained_glass_dark_skyblue_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 558 B

Двоичные данные
textures/stained_glass_dark_violet.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 585 B

Двоичные данные
textures/stained_glass_dark_violet_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 558 B

Двоичные данные
textures/stained_glass_dark_yellow.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 552 B

Двоичные данные
textures/stained_glass_dark_yellow_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 515 B

Двоичные данные
textures/stained_glass_faint_aqua.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_faint_blue.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_faint_cyan.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_faint_green.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_faint_lime.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_faint_magenta.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_faint_orange.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_faint_red.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_faint_redviolet.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_faint_skyblue.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_faint_violet.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_faint_yellow.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_green.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 701 B

Двоичные данные
textures/stained_glass_green_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 680 B

Двоичные данные
textures/stained_glass_light_aqua.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_light_blue.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_light_cyan.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_light_green.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_light_lime.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_light_magenta.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_light_orange.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_light_red.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_light_redviolet.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_light_skyblue.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_light_violet.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_light_yellow.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_lime.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 492 B

Двоичные данные
textures/stained_glass_lime_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_magenta.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 485 B

Двоичные данные
textures/stained_glass_magenta_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 705 B

Двоичные данные
textures/stained_glass_medium_aqua.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 656 B

Двоичные данные
textures/stained_glass_medium_aqua_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 638 B

Двоичные данные
textures/stained_glass_medium_blue.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 636 B

Двоичные данные
textures/stained_glass_medium_blue_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 593 B

Двоичные данные
textures/stained_glass_medium_cyan.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 642 B

Двоичные данные
textures/stained_glass_medium_cyan_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 593 B

Двоичные данные
textures/stained_glass_medium_green.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 636 B

Двоичные данные
textures/stained_glass_medium_green_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 593 B

Двоичные данные
textures/stained_glass_medium_lime.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 656 B

Двоичные данные
textures/stained_glass_medium_lime_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 631 B

Двоичные данные
textures/stained_glass_medium_magenta.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 642 B

Двоичные данные
textures/stained_glass_medium_magenta_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 593 B

Двоичные данные
textures/stained_glass_medium_orange.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 656 B

Двоичные данные
textures/stained_glass_medium_orange_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 638 B

Двоичные данные
textures/stained_glass_medium_red.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 636 B

Двоичные данные
textures/stained_glass_medium_red_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 593 B

Двоичные данные
textures/stained_glass_medium_redviolet.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 656 B

Двоичные данные
textures/stained_glass_medium_redviolet_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 631 B

Двоичные данные
textures/stained_glass_medium_skyblue.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 656 B

Двоичные данные
textures/stained_glass_medium_skyblue_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 631 B

Двоичные данные
textures/stained_glass_medium_violet.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 656 B

Двоичные данные
textures/stained_glass_medium_violet_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 638 B

Двоичные данные
textures/stained_glass_medium_yellow.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 642 B

Двоичные данные
textures/stained_glass_medium_yellow_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 593 B

Двоичные данные
textures/stained_glass_orange.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 701 B

Двоичные данные
textures/stained_glass_orange_s50.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 685 B

Двоичные данные
textures/stained_glass_pastel_aqua.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_pastel_blue.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_pastel_cyan.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_pastel_green.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_pastel_lime.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_pastel_magenta.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_pastel_orange.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_pastel_red.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_pastel_redviolet.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_pastel_skyblue.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Двоичные данные
textures/stained_glass_pastel_violet.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 710 B

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше