Compare commits

..

23 Commits

Author SHA1 Message Date
FossFanatic d83c6fe906 Merge pull request 'Dry Biome Rain Fixes' (#3472) from dry_biome_rain_fixes into master
Reviewed-on: MineClone2/MineClone2#3472
Reviewed-by: Nicu <kneekoo@noreply.git.minetest.land>
2023-02-25 08:27:38 +00:00
FossFanatic e7c6043f06 Merge pull request 'Mintest Fix' (#3477) from api_typo_fix into master
Reviewed-on: MineClone2/MineClone2#3477
Reviewed-by: Nicu <kneekoo@noreply.git.minetest.land>
2023-02-22 14:19:24 +00:00
FossFanatic 65b1fd163b Fix fatal typo
This typo caused the game to crash, instead of spitting out an error message as it was supposed to.
2023-02-22 13:05:18 +00:00
FossFanatic eff0a546e5 Merge pull request 'Add Biome Coloured Water' (#3461) from biome_colored_water into master
Reviewed-on: MineClone2/MineClone2#3461
Reviewed-by: Nicu <kneekoo@noreply.git.minetest.land>
2023-02-22 07:20:35 +00:00
FossFanatic 61ee14b1a6 Fix rain issues in dry biomes
This commit adds an extra check at the ABMs which prevent the rain from affecting dry biomes, even though there isn't supposed to any rain there.
2023-02-21 10:12:29 +00:00
FossFanatic 968f6ae963 Add the original palette back as an _alt version 2023-02-20 07:22:55 +00:00
FossFanatic 2e2bbf0b17 Make the water palette more diluted 2023-02-20 07:22:24 +00:00
FossFanatic 8060b02cbd Add extra check to guarantee no nil values 2023-02-19 07:49:09 +00:00
FossFanatic 693d40b6c4 Fix villages generating with incorrect water
This commit fixes an issue where villages would generate with water which wasn't of the correct biome.

The new function simply looks for water source nodes around the entire village and replaces any it finds with the same node, except with blank params so that the `on_construct` of the newly placed water source node gets called.
2023-02-18 13:51:31 +00:00
FossFanatic ecfbb1ae07 Fix waterlogged mangrove roots textures 2023-02-18 08:54:57 +00:00
FossFanatic 14e630a1e2 Fix cauldron water textures 2023-02-18 08:53:36 +00:00
FossFanatic 62afbb4509 Remove reference to removed texture 2023-02-18 08:42:21 +00:00
FossFanatic f02764bc08 Remove now unused river water source texture 2023-02-18 08:32:00 +00:00
FossFanatic aa1a928898 Remove now unused flowing river water texture 2023-02-18 08:31:36 +00:00
FossFanatic 45952a6fd6 Add greyscale water textures & water palette 2023-02-18 08:30:44 +00:00
FossFanatic 33bbeb1a4d Improve river water 2023-02-18 08:27:22 +00:00
FossFanatic d3253ecf4f Change small part of buckets code 2023-02-18 08:25:47 +00:00
FossFanatic 0abda8ff20 Add new function for water nodes 2023-02-18 08:25:08 +00:00
FossFanatic 9bb3d8311b Append stuff to the new function 2023-02-18 08:24:12 +00:00
FossFanatic 686bb38546 Add lbm and register_on_generated for water 2023-02-18 08:23:40 +00:00
FossFanatic c4f6944a03 Add water palette indexes and waterfog to the code 2023-02-18 08:22:56 +00:00
FossFanatic c1647a5cce Improve underwater sky colour code 2023-02-18 08:22:04 +00:00
FossFanatic 624c853cb3 Improve water 2023-02-18 08:21:24 +00:00
51 changed files with 849 additions and 101 deletions

View File

@ -1017,16 +1017,17 @@ function mcl_util.check_position_protection(position, player)
return false
end
local palette_indexes = {grass_palette_index = 0, foliage_palette_index = 0}
local palette_indexes = {grass_palette_index = 0, foliage_palette_index = 0, water_palette_index = 0}
function mcl_util.get_palette_indexes_from_pos(pos)
local biome_data = minetest.get_biome_data(pos)
local biome = biome_data.biome
local biome_name = minetest.get_biome_name(biome)
local reg_biome = minetest.registered_biomes[biome_name]
if reg_biome and reg_biome._mcl_grass_palette_index and reg_biome._mcl_foliage_palette_index then
if reg_biome and reg_biome._mcl_grass_palette_index and reg_biome._mcl_foliage_palette_index and reg_biome._mcl_water_palette_index then
local gpi = reg_biome._mcl_grass_palette_index
local fpi = reg_biome._mcl_foliage_palette_index
local palette_indexes = {grass_palette_index = gpi, foliage_palette_index = fpi}
local wpi = reg_biome._mcl_water_palette_index
local palette_indexes = {grass_palette_index = gpi, foliage_palette_index = fpi, water_palette_index = wpi}
return palette_indexes
else
return palette_indexes

View File

@ -226,7 +226,7 @@ if mcl_weather.allow_abm then
}
for a=1, #around do
local apos = vector.add(pos, around[a])
if mcl_weather.is_outdoor(apos) then
if mcl_weather.is_outdoor(apos) and mcl_weather.has_rain(apos) then
minetest.remove_node(pos)
minetest.sound_play("fire_extinguish_flame", {pos = pos, max_hear_distance = 8, gain = 0.1}, true)
return
@ -244,7 +244,7 @@ if mcl_weather.allow_abm then
chance = 1,
action = function(pos, node, active_object_count, active_object_count_wider)
-- Rain is equivalent to a water bottle
if mcl_weather.rain.raining and mcl_weather.is_outdoor(pos) then
if mcl_weather.rain.raining and mcl_weather.is_outdoor(pos) and mcl_weather.has_rain(pos) then
if node.name == "mcl_cauldrons:cauldron" then
minetest.set_node(pos, {name="mcl_cauldrons:cauldron_1"})
elseif node.name == "mcl_cauldrons:cauldron_1" then
@ -267,7 +267,7 @@ if mcl_weather.allow_abm then
interval = 22.0,
chance = 3,
action = function(pos, node, active_object_count, active_object_count_wider)
if mcl_weather.rain.raining and mcl_weather.is_outdoor(pos) then
if mcl_weather.rain.raining and mcl_weather.is_outdoor(pos) and mcl_weather.has_rain(pos) then
if node.name == "mcl_farming:soil" then
minetest.set_node(pos, {name="mcl_farming:soil_wet"})
end

View File

@ -1,7 +1,7 @@
local mods_loaded = false
local NIGHT_VISION_RATIO = 0.45
local water_color = "#0b4880"
local water_color = "#3F76E4"
local mg_name = minetest.get_mapgen_setting("mg_name")
@ -125,7 +125,14 @@ mcl_weather.skycolor = {
local pos = player:get_pos()
local dim = mcl_worlds.pos_to_dimension(pos)
local has_weather = (mcl_worlds.has_weather(pos) and (mcl_weather.state == "snow" or mcl_weather.state =="rain" or mcl_weather.state == "thunder") and mcl_weather.has_snow(pos)) or ((mcl_weather.state =="rain" or mcl_weather.state == "thunder") and mcl_weather.has_rain(pos))
if minetest.get_item_group(minetest.get_node(vector.new(pos.x,pos.y+1.5,pos.z)).name, "water") ~= 0 then
local checkname = minetest.get_node(vector.new(pos.x,pos.y+1.5,pos.z)).name
if minetest.get_item_group(checkname, "water") ~= 0 then
local biome_index = minetest.get_biome_data(player:get_pos()).biome
local biome_name = minetest.get_biome_name(biome_index)
local biome = minetest.registered_biomes[biome_name]
if biome then water_color = biome._mcl_waterfogcolor end
if not biome then water_color = "#3F76E4" end
if checkname == "mclx_core:river_water_source" or checkname == "mclx_core:river_water_flowing" then water_color = "#0084FF" end
player:set_sky({ type = "regular",
sky_color = {
day_sky = water_color,

View File

@ -192,7 +192,9 @@ if minetest.get_modpath("mcl_signs") then
mcl_bamboo.mcl_log("Signs Section Entrance. Modpath exists.")
if mcl_signs ~= nil then
-- Bamboo Signs...
mcl_signs.register_sign("mcl_bamboo", {"mcl_bamboo_bamboo_sign.png"}, "mcl_bamboo_bamboo_sign_inv.png", "_bamboo", "Bamboo Sign")
mcl_signs.register_sign_custom("mcl_bamboo", "_bamboo", "mcl_bamboo_bamboo_sign.png",
"#ffffff", "mcl_bamboo_bamboo_sign_wield.png", "mcl_bamboo_bamboo_sign_wield.png",
"Bamboo Sign")
mcl_signs.register_sign_craft("mcl_bamboo", BAMBOO_PLANK, "_bamboo")
minetest.register_alias("bamboo_sign", "mcl_signs:wall_sign_bamboo")
end

View File

@ -61,9 +61,8 @@ local function sound_take(itemname, pos)
end
local function place_liquid(pos, itemstring)
local fullness = registered_nodes[itemstring].liquid_range
sound_place(itemstring, pos)
add_node(pos, {name=itemstring, param2=fullness})
set_node(pos, {name=itemstring})
end
local function give_bucket(new_bucket, itemstack, user)

View File

@ -67,12 +67,12 @@ local function register_filled_cauldron(water_level, description, liquid)
local water_tex
if liquid == "river_water" then
id = id .. "r"
water_tex = "default_river_water_source_animated.png^[verticalframe:16:0"
water_tex = "default_water_source_animated.png^[verticalframe:16:0^[multiply:#0084FF"
elseif liquid == "lava" then
id = id .. "_lava"
water_tex = "default_lava_source_animated.png^[verticalframe:16:0"
else
water_tex = "default_water_source_animated.png^[verticalframe:16:0"
water_tex = "default_water_source_animated.png^[verticalframe:16:0^[multiply:#3F76E4"
end
minetest.register_node(id, {
description = description,

View File

@ -812,6 +812,11 @@ function mcl_core.get_foliage_block_type(pos)
return {name = minetest.get_node(pos).name, param2 = mcl_util.get_palette_indexes_from_pos(pos).foliage_palette_index}
end
-- Return appropriate water block node for pos
function mcl_core.get_water_block_type(pos)
return {name = minetest.get_node(pos).name, param2 = mcl_util.get_palette_indexes_from_pos(pos).water_palette_index}
end
------------------------------
-- Spread grass blocks and mycelium on neighbor dirt
------------------------------

View File

@ -25,14 +25,15 @@ minetest.register_node("mcl_core:water_flowing", {
{
image="default_water_flowing_animated.png",
backface_culling=false,
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=4.0}
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=1.5}
},
{
image="default_water_flowing_animated.png",
backface_culling=false,
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=4.0}
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=1.5}
},
},
color = "#3F76E4",
sounds = mcl_sounds.node_sound_water_defaults(),
is_ground_content = false,
use_texture_alpha = USE_TEXTURE_ALPHA,
@ -50,7 +51,7 @@ minetest.register_node("mcl_core:water_flowing", {
liquid_viscosity = WATER_VISC,
liquid_range = 7,
waving = 3,
post_effect_color = {a=60, r=0x03, g=0x3C, b=0x5C},
post_effect_color = {a=60, r=24.7, g=46.3, b=89.4},
groups = { water=3, liquid=3, puts_out_fire=1, not_in_creative_inventory=1, freezes=1, melt_around=1, dig_by_piston=1},
_mcl_blast_resistance = 100,
-- Hardness intentionally set to infinite instead of 100 (Minecraft value) to avoid problems in creative mode
@ -70,20 +71,23 @@ S("• When water is directly below lava, the water turns into stone."),
drawtype = "liquid",
waving = 3,
tiles = {
{name="default_water_source_animated.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=5.0}}
{name="default_water_source_animated.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.0}}
},
special_tiles = {
-- New-style water source material (mostly unused)
{
name="default_water_source_animated.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=5.0},
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.0},
backface_culling = false,
}
},
color = "#3F76E4",
sounds = mcl_sounds.node_sound_water_defaults(),
is_ground_content = false,
use_texture_alpha = USE_TEXTURE_ALPHA,
paramtype = "light",
paramtype2 = "color",
palette = "mcl_core_palette_water.png",
walkable = false,
pointable = false,
diggable = false,
@ -95,12 +99,21 @@ S("• When water is directly below lava, the water turns into stone."),
liquid_alternative_source = "mcl_core:water_source",
liquid_viscosity = WATER_VISC,
liquid_range = 7,
post_effect_color = {a=60, r=0x03, g=0x3C, b=0x5C},
post_effect_color = {a=60, r=24.7, g=46.3, b=89.4},
stack_max = 64,
groups = { water=3, liquid=3, puts_out_fire=1, freezes=1, not_in_creative_inventory=1, dig_by_piston=1},
groups = { water=3, liquid=3, puts_out_fire=1, freezes=1, not_in_creative_inventory=1, dig_by_piston=1, water_palette=1},
_mcl_blast_resistance = 100,
-- Hardness intentionally set to infinite instead of 100 (Minecraft value) to avoid problems in creative mode
_mcl_hardness = -1,
on_construct = function(pos)
local node = minetest.get_node(pos)
if node.param2 == 0 then
local new_node = mcl_core.get_water_block_type(pos)
if new_node.param2 ~= 0 then
minetest.swap_node(pos, new_node)
end
end
end,
})
minetest.register_node("mcl_core:lava_flowing", {
@ -245,3 +258,22 @@ if minetest.settings:get("mcl_node_particles") == "full" then
end,
})
end
minetest.register_on_liquid_transformed(function(pos_list, node_list)
for _, fwpos in pairs(pos_list) do
local fwnode = minetest.get_node(fwpos)
if minetest.get_item_group(fwnode, "palette_index") ~= 1 then
local pos1, pos2 = vector.offset(fwpos, -1, -1, -1), vector.offset(fwpos, 1, 1, 1)
local water = minetest.find_nodes_in_area(pos1, pos2, {"group:water_palette"})
for _, wpos in pairs(water) do
local wnode = minetest.get_node(wpos)
local water_palette_index = mcl_util.get_palette_indexes_from_pos(wpos).water_palette_index
if wnode.param2 ~= water_palette_index then
wnode.param2 = water_palette_index
minetest.set_node(wpos, wnode)
end
end
end
end
end
)

View File

@ -124,7 +124,7 @@ local function update_map_texture (self, staticdata)
self.object:set_properties({ textures = { texture } })
end)
if result ~= nil and result == false then
mintest.log("error", "[mcl_itemframes] Error setting up Map Item.")
minetest.log("error", "[mcl_itemframes] Error setting up Map Item.")
end
end

View File

@ -311,7 +311,7 @@ mcl_flowerpots.register_potted_flower("mcl_mangrove:propagule", {
image = "mcl_mangrove_propagule.png",
})
local water_tex = "default_water_source_animated.png^[verticalframe:16:0"
local water_tex = "default_water_source_animated.png^[verticalframe:16:0^[multiply:#3F76E4"
local wlroots = {
description = S("water logged mangrove roots"),
@ -363,7 +363,7 @@ local rwlroots = table.copy(wlroots)
-- FIXME luacheck complains that this is a repeated definition of water_tex.
-- Maybe the tiles definition below should be replaced with the animated tile
-- definition as per above?
water_tex = "default_river_water_source_animated.png^[verticalframe:16:0"
water_tex = "default_water_source_animated.png^[verticalframe:16:0^[multiply:#0084FF"
rwlroots.tiles = {
"("..water_tex..")^mcl_mangrove_roots_top.png",
"("..water_tex..")^mcl_mangrove_roots_side.png",

View File

@ -93,44 +93,57 @@ mcl_signs.build_signs_info()
-- ---------------------------- --
-- Standard (original) Sign
mcl_signs.register_sign("mcl_core", {"mcl_signs_oak_sign.png"}, "mcl_signs_oak_sign_inv.png", "_oak", "Oak Sign")
mcl_signs.register_sign("mcl_core", "#ffffff", "", "Sign")
mcl_signs.register_sign_craft("mcl_core", "mcl_core:wood", "")
-- Birch Sign
mcl_signs.register_sign("mcl_core", {"mcl_signs_birch_sign.png"}, "mcl_signs_birch_sign_inv.png", "_birch", "Birch Sign")
-- birchwood Sign "#d5cb8d" / "#ffdba7"
mcl_signs.register_sign_custom("mcl_core", "_birchwood",
"mcl_signs_sign_greyscale.png","#ffdba7", "mcl_signs_default_sign_greyscale.png",
"mcl_signs_default_sign_greyscale.png", "Birch Sign"
)
mcl_signs.register_sign_craft("mcl_core", "mcl_core:birchwood", "_birchwood")
-- Spruce Sign
mcl_signs.register_sign("mcl_core", {"mcl_signs_spruce_sign.png"}, "mcl_signs_spruce_sign_inv.png", "_spruce", "Spruce Sign")
-- sprucewood Sign
mcl_signs.register_sign_custom("mcl_core", "_sprucewood",
"mcl_signs_sign_dark.png","#ffffff", "mcl_signs_default_sign_dark.png",
"mcl_signs_default_sign_dark.png", "Spruce Sign"
)
mcl_signs.register_sign_craft("mcl_core", "mcl_core:sprucewood", "_sprucewood")
-- Dark Oak Sign
mcl_signs.register_sign("mcl_core", {"mcl_signs_dark_oak_sign.png"}, "mcl_signs_dark_oak_sign_inv.png", "_dark_oak", "Dark Oak Sign")
-- darkwood Sign "#291f1a" / "#856443"
mcl_signs.register_sign_custom("mcl_core", "_darkwood",
"mcl_signs_sign_greyscale.png","#856443", "mcl_signs_default_sign_greyscale.png",
"mcl_signs_default_sign_greyscale.png", "Dark Oak Sign"
)
mcl_signs.register_sign_craft("mcl_core", "mcl_core:darkwood", "_darkwood")
-- Jungle Sign
mcl_signs.register_sign("mcl_core", {"mcl_signs_jungle_sign.png"}, "mcl_signs_jungle_sign_inv.png", "_jungle", "Jungle Sign")
-- junglewood Sign
mcl_signs.register_sign("mcl_core", "#866249", "_junglewood", "Jungle Sign")
mcl_signs.register_sign_craft("mcl_core", "mcl_core:junglewood", "_junglewood")
-- Acacia Sign
mcl_signs.register_sign("mcl_core", {"mcl_signs_acacia_sign.png"}, "mcl_signs_acacia_sign_inv.png", "_acacia", "Acacia Sign")
-- acaciawood Sign "b8693d"
mcl_signs.register_sign("mcl_core", "#ea7479", "_acaciawood", "Acacia Sign")
mcl_signs.register_sign_craft("mcl_core", "mcl_core:acaciawood", "_acaciawood")
if minetest.get_modpath("mcl_mangrove") then
-- Mangrove Sign
mcl_signs.register_sign("mcl_mangrove", {"mcl_mangrove_mangrove_sign.png"}, "mcl_mangrove_mangrove_sign_inv.png", "_mangrove", "Mangrove Sign")
-- mangrove_wood Sign "#c7545c"
mcl_signs.register_sign("mcl_mangrove", "#b8693d", "_mangrove_wood", "Mangrove Sign")
mcl_signs.register_sign_craft("mcl_mangrove", "mcl_mangrove:mangrove_wood", "_mangrove_wood")
end
-- Nether Wood Signs
-- add in the nether wood signs
if minetest.get_modpath("mcl_crimson") then
-- Warped Sign
mcl_signs.register_sign("mcl_crimson", {"mcl_crimson_warped_sign.png"}, "mcl_crimson_warped_sign_inv.png", "_warped", "Warped Sign")
-- warped_hyphae_wood Sign
mcl_signs.register_sign_custom("mcl_crimson","_warped_hyphae_wood", "mcl_signs_sign_greyscale.png",
"#9f7dcf", "mcl_signs_default_sign_greyscale.png", "mcl_signs_default_sign_greyscale.png",
"Warped Hyphae Sign")
mcl_signs.register_sign_craft("mcl_crimson", "mcl_crimson:warped_hyphae_wood", "_warped_hyphae_wood")
-- Crimson Sign
mcl_signs.register_sign("mcl_crimson", {"mcl_crimson_crimson_sign.png"}, "mcl_crimson_crimson_sign_inv.png", "_crimson", "Crimson Sign")
-- crimson_hyphae_wood Sign
mcl_signs.register_sign_custom("mcl_crimson", "_crimson_hyphae_wood","mcl_signs_sign_greyscale.png",
"#c35f51","mcl_signs_default_sign_greyscale.png", "mcl_signs_default_sign_greyscale.png",
"Crimson Hyphae Sign")
mcl_signs.register_sign_craft("mcl_crimson", "mcl_crimson:crimson_hyphae_wood", "_crimson_hyphae_wood")
end

View File

@ -147,10 +147,10 @@ mcl_signs.wall_standard = {
_tt_help = S("Can be written"),
_doc_items_longdesc = S("Signs can be written and come in two variants: Wall sign and sign on a sign post. Signs can be placed on the top and the sides of other blocks, but not below them."),
_doc_items_usagehelp = S("After placing the sign, you can write something on it. You have 4 lines of text with up to 15 characters for each line; anything beyond these limits is lost. Not all characters are supported. The text can not be changed once it has been written; you have to break and place the sign again. Can be colored and made to glow."),
inventory_image = "mcl_signs_oak_sign_inv.png",
inventory_image = "mcl_signs_default_sign.png",
walkable = false,
is_ground_content = false,
wield_image = "mcl_signs_oak_sign_inv.png",
wield_image = "mcl_signs_default_sign.png",
node_placement_prediction = "",
paramtype = "light",
sunlight_propagates = true,
@ -158,7 +158,7 @@ mcl_signs.wall_standard = {
drawtype = "mesh",
mesh = "mcl_signs_signonwallmount.obj",
selection_box = { type = "wallmounted", wall_side = { -0.5, -7 / 28, -0.5, -23 / 56, 7 / 28, 0.5 } },
tiles = { "mcl_signs_oak_sign.png" },
tiles = { "mcl_signs_sign.png" },
use_texture_alpha = minetest.features.use_texture_alpha_string_modes and "opaque" or false,
groups = mcl_signs.sign_groups,
stack_max = 16,
@ -369,7 +369,7 @@ mcl_signs.standing_standard = {
drawtype = "mesh",
mesh = "mcl_signs_sign.obj",
selection_box = { type = "fixed", fixed = { -0.2, -0.5, -0.2, 0.2, 0.5, 0.2 } },
tiles = { "mcl_signs_oak_sign.png" },
tiles = { "mcl_signs_sign.png" },
groups = mcl_signs.sign_groups,
drop = "mcl_signs:wall_sign",
stack_max = 16,
@ -527,11 +527,13 @@ end
--- modname: optional (pass "" or "false" to ignore), for use with other mods to
--- allow the creation of a sign from the mod's wood (if installed).
---
--- color: the color code to color the base sign textures. must be a valid html color code.
---
--- _name: the sign's name suffix, such as "_dark" or "_red", etc., appended to "wall_sign" or "standing_sign"
---
--- ttsign: the tool tip of the sign that gets translated. Shown when the mouse hovers the inventory sign.
--- For example: the basic, default oak (wood) sign is just "Sign"; and a spruce sign would be "Spruce Sign"
function mcl_signs.register_sign (modname, node_texture, item_texture, _name, ttsign)
function mcl_signs.register_sign (modname, color, _name, ttsign)
local mod_name_pass = false
if modname ~= "" and modname ~= "false" then
if minetest.get_modpath(modname) then
@ -543,12 +545,16 @@ function mcl_signs.register_sign (modname, node_texture, item_texture, _name, tt
end
local new_sign = {}
if color == nil or color == "" then
color = "#FFFFFF"
end
new_sign = table.copy(mcl_signs.wall_standard)
new_sign.description = S(ttsign)
new_sign.wield_image = item_texture
new_sign.tiles = node_texture
new_sign.inventory_image = item_texture
new_sign.wield_image = "(mcl_signs_default_sign.png^[multiply:" .. color .. ")"
new_sign.tiles = { "(mcl_signs_sign.png^[multiply:" .. color .. ")" }
new_sign.inventory_image = "(mcl_signs_default_sign.png^[multiply:" .. color .. ")"
-- currently have to do this, because of how the base node placement works.
new_sign.on_place = function(itemstack, placer, pointed_thing)
@ -670,9 +676,9 @@ function mcl_signs.register_sign (modname, node_texture, item_texture, _name, tt
local new_sign_standing = {}
new_sign_standing = table.copy(mcl_signs.standing_standard)
new_sign_standing.drop = "mcl_signs:wall_sign" .. _name
new_sign_standing.wield_image = item_texture
new_sign_standing.tiles = node_texture
new_sign_standing.inventory_image = item_texture
new_sign_standing.wield_image = "(mcl_signs_default_sign.png^[multiply:" .. color .. ")"
new_sign_standing.tiles = { "(mcl_signs_sign.png^[multiply:" .. color .. ")" }
new_sign_standing.inventory_image = "(mcl_signs_default_sign.png^[multiply:" .. color .. ")"
new_sign_standing.on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_FACE then
@ -756,15 +762,28 @@ function mcl_signs.register_sign (modname, node_texture, item_texture, _name, tt
table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign67_5" .. _name, 3 })
end
--- Override an existing sign, and give it an unique node name. Creates both wall and standing signs.
--- The same as register_sign, except caller defines the textures. Note, there is a greyscale version of the sign,
--- called "mcl_signs_default_sign_greyscale.png" and "mcl_signs_sign_greyscale.png" for optional use in the textures directory.
---
--- modname: optional (pass "" or "false" to ignore), for use with other mods to
--- allow the creation of a sign from the mod's wood (if installed).
---
--- _name: the sign's name suffix, such as "_dark" or "_red", etc., appended to "wall_sign" or "standing_sign"
---
--- tiles: the texture file to use for the sign.
---
--- color: color the texture file to use with this color. Use white (#FFFFFF) to negate the color,
--- and just use the texture as is
---
--- inventory_image: the texture file to use for the sign's display in inventory.
---
--- wield_image: the texture file to use for the sign's weilded (in hand) object.
---
--- inventory_image: the image used for in-inventory and in hand.
---
--- ttsign: the tool tip of the sign that gets translated. Shown when the mouse hovers the inventory sign.
--- For example: the basic, default oak (wood) sign is just "Sign"; and a spruce sign would be "Spruce Sign"
function mcl_signs.reregister_sign (modname, node_texture, item_texture, _name, ttsign)
function mcl_signs.register_sign_custom (modname, _name, tiles, color, inventory_image, wield_image, ttsign)
local mod_name_pass = false
if modname ~= "" and modname ~= "false" then
if minetest.get_modpath(modname) then
@ -776,12 +795,229 @@ function mcl_signs.reregister_sign (modname, node_texture, item_texture, _name,
end
local new_sign = {}
new_sign = table.copy(mcl_signs.wall_standard)
new_sign.wield_image = "(" .. wield_image .. "^[multiply:" .. color .. ")"
new_sign.tiles = { "(" .. tiles .. "^[multiply:" .. color .. ")" }
new_sign.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")"
new_sign.description = S(ttsign)
-- currently have to do this, because of how the base node placement works.
new_sign.on_place = function(itemstack, placer, pointed_thing)
local above = pointed_thing.above
local under = pointed_thing.under
-- Use pointed node's on_rightclick function first, if present
local node_under = minetest.get_node(under)
if placer and not placer:get_player_control().sneak then
if minetest.registered_nodes[node_under.name] and minetest.registered_nodes[node_under.name].on_rightclick then
return minetest.registered_nodes[node_under.name].on_rightclick(under, node_under, placer, itemstack) or itemstack
end
end
local dir = vector.subtract(under, above)
-- Only build when it's legal
local abovenodedef = minetest.registered_nodes[minetest.get_node(above).name]
if not abovenodedef or abovenodedef.buildable_to == false then
return itemstack
end
local wdir = minetest.dir_to_wallmounted(dir)
local fdir = minetest.dir_to_facedir(dir)
local sign_info
local nodeitem = ItemStack(itemstack)
-- Ceiling
if wdir == 0 then
--how would you add sign to ceiling?
return itemstack
-- Floor
elseif wdir == 1 then
-- Standing sign
-- Determine the sign rotation based on player's yaw
local yaw = pi * 2 - placer:get_look_horizontal()
-- Select one of 16 possible rotations (0-15)
local rotation_level = mcl_signs:round((yaw / (pi * 2)) * 16)
if rotation_level > 15 then
rotation_level = 0
elseif rotation_level < 0 then
rotation_level = 15
end
-- The actual rotation is a combination of predefined mesh and facedir (see node definition)
if rotation_level % 4 == 0 then
nodeitem:set_name("mcl_signs:standing_sign" .. _name)
elseif rotation_level % 4 == 1 then
nodeitem:set_name("mcl_signs:standing_sign22_5" .. _name)
elseif rotation_level % 4 == 2 then
nodeitem:set_name("mcl_signs:standing_sign45" .. _name)
elseif rotation_level % 4 == 3 then
nodeitem:set_name("mcl_signs:standing_sign67_5" .. _name)
end
fdir = math.floor(rotation_level / 4)
-- Place the node!
local _, success = minetest.item_place_node(nodeitem, placer, pointed_thing, fdir)
if not success then
return itemstack
end
if not minetest.is_creative_enabled(placer:get_player_name()) then
itemstack:take_item()
end
sign_info = mcl_signs.signtext_info_standing[rotation_level + 1]
-- Side
else
-- Wall sign
local _, success = minetest.item_place_node(itemstack, placer, pointed_thing, wdir)
if not success then
return itemstack
end
sign_info = mcl_signs.signtext_info_wall[fdir + 1]
end
-- Determine spawn position of entity
local place_pos
if minetest.registered_nodes[node_under.name].buildable_to then
place_pos = under
else
place_pos = above
end
local text_entity = minetest.add_entity({
x = place_pos.x + sign_info.delta.x,
y = place_pos.y + sign_info.delta.y,
z = place_pos.z + sign_info.delta.z }, "mcl_signs:text")
text_entity:set_yaw(sign_info.yaw)
text_entity:get_luaentity()._signnodename = nodeitem:get_name()
minetest.sound_play({ name = "default_place_node_hard", gain = 1.0 }, { pos = place_pos }, true)
mcl_signs:show_formspec(placer, place_pos)
return itemstack
end
minetest.register_node(":mcl_signs:wall_sign" .. _name, new_sign)
update_sign_registry("wall", "mcl_signs:wall_sign" .. _name)
-- standing sign base.
local new_sign_standing = {}
new_sign_standing = table.copy(mcl_signs.standing_standard)
new_sign_standing.drop = "mcl_signs:wall_sign" .. _name
new_sign_standing.wield_image = "(" .. wield_image .. "^[multiply:" .. color .. ")"
new_sign_standing.tiles = { "(" .. tiles .. "^[multiply:" .. color .. ")" }
new_sign_standing.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")"
new_sign_standing.on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_FACE then
node.name = "mcl_signs:standing_sign22_5" .. _name
minetest.swap_node(pos, node)
elseif mode == screwdriver.ROTATE_AXIS then
return false
end
mcl_signs:update_sign(pos, nil, nil, true)
return true
end,
minetest.register_node(":mcl_signs:standing_sign" .. _name, new_sign_standing)
update_sign_registry("standing", "mcl_signs:standing_sign" .. _name)
-- 22.5°
local ssign22_5d = table.copy(new_sign_standing)
ssign22_5d.mesh = "mcl_signs_sign22.5.obj"
ssign22_5d.on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_FACE then
node.name = "mcl_signs:standing_sign45" .. _name
minetest.swap_node(pos, node)
elseif mode == screwdriver.ROTATE_AXIS then
return false
end
mcl_signs:update_sign(pos, nil, nil, true)
return true
end
minetest.register_node(":mcl_signs:standing_sign22_5" .. _name, ssign22_5d)
update_sign_registry("standing", "mcl_signs:standing_sign22_5" .. _name)
-- 45°
local ssign45d = table.copy(new_sign_standing)
ssign45d.mesh = "mcl_signs_sign45.obj"
ssign45d.on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_FACE then
node.name = "mcl_signs:standing_sign67_5" .. _name
minetest.swap_node(pos, node)
elseif mode == screwdriver.ROTATE_AXIS then
return false
end
mcl_signs:update_sign(pos, nil, nil, true)
return true
end
minetest.register_node(":mcl_signs:standing_sign45" .. _name, ssign45d)
update_sign_registry("standing", "mcl_signs:standing_sign45" .. _name)
-- 67.5°
local ssign67_5d = table.copy(new_sign_standing)
ssign67_5d.mesh = "mcl_signs_sign67.5.obj"
ssign67_5d.on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_FACE then
node.name = "mcl_signs:standing_sign" .. _name
node.param2 = (node.param2 + 1) % 4
minetest.swap_node(pos, node)
elseif mode == screwdriver.ROTATE_AXIS then
return false
end
mcl_signs:update_sign(pos, nil, nil, true)
return true
end
minetest.register_node(":mcl_signs:standing_sign67_5" .. _name, ssign67_5d)
update_sign_registry("standing", "mcl_signs:standing_sign67_5" .. _name)
-- register Doc entry
if minetest.get_modpath("doc") then
doc.add_entry_alias("nodes", "mcl_signs:wall_sign", "nodes", "mcl_signs:wall_sign" .. _name)
doc.add_entry_alias("nodes", "mcl_signs:wall_sign", "nodes", "mcl_signs:standing_sign" .. _name)
doc.add_entry_alias("nodes", "mcl_signs:wall_sign", "nodes", "mcl_signs:standing_sign22_5" .. _name)
doc.add_entry_alias("nodes", "mcl_signs:wall_sign", "nodes", "mcl_signs:standing_sign45" .. _name)
doc.add_entry_alias("nodes", "mcl_signs:wall_sign", "nodes", "mcl_signs:standing_sign67_5" .. _name)
end
--register standing sign's rotation_levels
table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign22_5" .. _name, 1 })
table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign45" .. _name, 2 })
table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign67_5" .. _name, 3 })
end
--- Override an existing sign, tint the textures, and gives it an unique node name. Creates both wall and standing signs.
--- modname: optional (pass "" or "false" to ignore), for use with other mods to
--- allow the creation of a sign from the mod's wood (if installed).
---
--- color: the color code to color the base sign textures. must be a valid html color code.
---
--- _name: the sign's name suffix, such as "_dark" or "_red", etc., appended to "wall_sign" or "standing_sign"
---
--- ttsign: the tool tip of the sign that gets translated. Shown when the mouse hovers the inventory sign.
--- For example: the basic, default oak (wood) sign is just "Sign"; and a spruce sign would be "Spruce Sign"
function mcl_signs.reregister_sign (modname, color, _name, ttsign)
local mod_name_pass = false
if modname ~= "" and modname ~= "false" then
if minetest.get_modpath(modname) then
mod_name_pass = true
end
if mod_name_pass == false then
return
end
end
local new_sign = {}
if color == nil or color == "" then
color = "#FFFFFF"
end
new_sign = table.copy(mcl_signs.wall_standard)
new_sign.description = S(ttsign)
new_sign.wield_image = item_texture
new_sign.tiles = node_texture
new_sign.inventory_image = item_texture
new_sign.wield_image = "(mcl_signs_default_sign.png^[multiply:" .. color .. ")"
new_sign.tiles = { "(mcl_signs_sign.png^[multiply:" .. color .. ")" }
new_sign.inventory_image = "(mcl_signs_default_sign.png^[multiply:" .. color .. ")"
-- currently have to do this, because of how the base node placement works.
new_sign.on_place = function(itemstack, placer, pointed_thing)
@ -809,21 +1045,16 @@ function mcl_signs.reregister_sign (modname, node_texture, item_texture, _name,
local sign_info
local nodeitem = ItemStack(itemstack)
local yaw = 0
-- Ceiling
if wdir == 0 then
--how would you add sign to ceiling? simple - hanging sign.
-- add code for placement underneath a node.
--how would you add sign to ceiling?
return itemstack
-- Floor
elseif wdir == 1 then
-- Standing sign
-- Determine the sign rotation based on player's yaw
yaw = pi * 2 - placer:get_look_horizontal()
local yaw = pi * 2 - placer:get_look_horizontal()
-- Select one of 16 possible rotations (0-15)
local rotation_level = mcl_signs:round((yaw / (pi * 2)) * 16)
@ -890,7 +1121,7 @@ function mcl_signs.reregister_sign (modname, node_texture, item_texture, _name,
return itemstack
end
minetest.register_node(":mcl_signs:wall_sign" .. _name, new_sign)
minetest.override_item("mcl_signs:wall_sign" .. _name, new_sign)
update_sign_registry("wall", "mcl_signs:wall_sign" .. _name)
-- debug step
@ -903,10 +1134,9 @@ function mcl_signs.reregister_sign (modname, node_texture, item_texture, _name,
local new_sign_standing = {}
new_sign_standing = table.copy(mcl_signs.standing_standard)
new_sign_standing.drop = "mcl_signs:wall_sign" .. _name
new_sign_standing.wield_image = item_texture
new_sign_standing.tiles = node_texture
new_sign_standing.inventory_image = item_texture
new_sign_standing.wield_image = "(mcl_signs_default_sign.png^[multiply:" .. color .. ")"
new_sign_standing.tiles = { "(mcl_signs_sign.png^[multiply:" .. color .. ")" }
new_sign_standing.inventory_image = "(mcl_signs_default_sign.png^[multiply:" .. color .. ")"
new_sign_standing.on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_FACE then
node.name = "mcl_signs:standing_sign22_5" .. _name
@ -917,8 +1147,7 @@ function mcl_signs.reregister_sign (modname, node_texture, item_texture, _name,
mcl_signs:update_sign(pos, nil, nil, true)
return true
end,
minetest.register_node(":mcl_signs:standing_sign" .. _name, new_sign_standing)
minetest.override_item("mcl_signs:standing_sign" .. _name, new_sign_standing)
update_sign_registry("standing", "mcl_signs:standing_sign" .. _name)
-- debug step
if DEBUG then
@ -938,7 +1167,7 @@ function mcl_signs.reregister_sign (modname, node_texture, item_texture, _name,
mcl_signs:update_sign(pos, nil, nil, true)
return true
end
minetest.register_node(":mcl_signs:standing_sign22_5" .. _name, ssign22_5d)
minetest.override_item("mcl_signs:standing_sign22_5" .. _name, ssign22_5d)
update_sign_registry("standing", "mcl_signs:standing_sign22_5" .. _name)
-- 45°
@ -954,7 +1183,7 @@ function mcl_signs.reregister_sign (modname, node_texture, item_texture, _name,
mcl_signs:update_sign(pos, nil, nil, true)
return true
end
minetest.register_node(":mcl_signs:standing_sign45" .. _name, ssign45d)
minetest.override_item("mcl_signs:standing_sign45" .. _name, ssign45d)
update_sign_registry("standing", "mcl_signs:standing_sign45" .. _name)
-- 67.5°
@ -971,7 +1200,7 @@ function mcl_signs.reregister_sign (modname, node_texture, item_texture, _name,
mcl_signs:update_sign(pos, nil, nil, true)
return true
end
minetest.register_node(":mcl_signs:standing_sign67_5" .. _name, ssign67_5d)
minetest.override_item("mcl_signs:standing_sign67_5" .. _name, ssign67_5d)
update_sign_registry("standing", "mcl_signs:standing_sign67_5" .. _name)
-- register Doc entry
@ -989,6 +1218,230 @@ function mcl_signs.reregister_sign (modname, node_texture, item_texture, _name,
table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign67_5" .. _name, 3 })
end
--- The same as reregister_sign, except caller defines the textures. Note, there is a greyscale version of the sign,
--- called "mcl_signs_default_sign_greyscale.png" and "mcl_signs_sign_greyscale.png" for optional use in the textures directory.
---
--- modname: optional (pass "" or "false" to ignore), for use with other mods to
--- allow the creation of a sign from the mod's wood (if installed).
---
--- _name: the sign's name suffix, such as "_dark" or "_red", etc., appended to "wall_sign" or "standing_sign"
---
--- tiles: the texture file to use for the sign.
---
--- color: color the texture file to use with this color. Use white (#FFFFFF) to negate the color,
--- and just use the texture as is
---
--- inventory_image: the texture file to use for the sign's display in inventory.
---
--- wield_image: the texture file to use for the sign's weilded (in hand) object.
---
--- inventory_image: the image used for in-inventory and in hand.
---
--- ttsign: the tool tip of the sign that gets translated. Shown when the mouse hovers the inventory sign.
--- For example: the basic, default oak (wood) sign is just "Sign"; and a spruce sign would be "Spruce Sign"
function mcl_signs.reregister_sign_custom (modname, _name, tiles, color, inventory_image, wield_image, ttsign)
local mod_name_pass = false
if modname ~= "" and modname ~= "false" then
if minetest.get_modpath(modname) then
mod_name_pass = true
end
if mod_name_pass == false then
return
end
end
local new_sign = {}
new_sign = table.copy(mcl_signs.wall_standard)
new_sign.wield_image = "(" .. wield_image .. "^[multiply:" .. color .. ")"
new_sign.tiles = { "(" .. tiles .. "^[multiply:" .. color .. ")" }
new_sign.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")"
new_sign.description = S(ttsign)
-- currently have to do this, because of how the base node placement works.
new_sign.on_place = function(itemstack, placer, pointed_thing)
local above = pointed_thing.above
local under = pointed_thing.under
-- Use pointed node's on_rightclick function first, if present
local node_under = minetest.get_node(under)
if placer and not placer:get_player_control().sneak then
if minetest.registered_nodes[node_under.name] and minetest.registered_nodes[node_under.name].on_rightclick then
return minetest.registered_nodes[node_under.name].on_rightclick(under, node_under, placer, itemstack) or itemstack
end
end
local dir = vector.subtract(under, above)
-- Only build when it's legal
local abovenodedef = minetest.registered_nodes[minetest.get_node(above).name]
if not abovenodedef or abovenodedef.buildable_to == false then
return itemstack
end
local wdir = minetest.dir_to_wallmounted(dir)
local fdir = minetest.dir_to_facedir(dir)
local sign_info
local nodeitem = ItemStack(itemstack)
-- Ceiling
if wdir == 0 then
--how would you add sign to ceiling?
return itemstack
-- Floor
elseif wdir == 1 then
-- Standing sign
-- Determine the sign rotation based on player's yaw
local yaw = pi * 2 - placer:get_look_horizontal()
-- Select one of 16 possible rotations (0-15)
local rotation_level = mcl_signs:round((yaw / (pi * 2)) * 16)
if rotation_level > 15 then
rotation_level = 0
elseif rotation_level < 0 then
rotation_level = 15
end
-- The actual rotation is a combination of predefined mesh and facedir (see node definition)
if rotation_level % 4 == 0 then
nodeitem:set_name("mcl_signs:standing_sign" .. _name)
elseif rotation_level % 4 == 1 then
nodeitem:set_name("mcl_signs:standing_sign22_5" .. _name)
elseif rotation_level % 4 == 2 then
nodeitem:set_name("mcl_signs:standing_sign45" .. _name)
elseif rotation_level % 4 == 3 then
nodeitem:set_name("mcl_signs:standing_sign67_5" .. _name)
end
fdir = math.floor(rotation_level / 4)
-- Place the node!
local _, success = minetest.item_place_node(nodeitem, placer, pointed_thing, fdir)
if not success then
return itemstack
end
if not minetest.is_creative_enabled(placer:get_player_name()) then
itemstack:take_item()
end
sign_info = mcl_signs.signtext_info_standing[rotation_level + 1]
-- Side
else
-- Wall sign
local _, success = minetest.item_place_node(itemstack, placer, pointed_thing, wdir)
if not success then
return itemstack
end
sign_info = mcl_signs.signtext_info_wall[fdir + 1]
end
-- Determine spawn position of entity
local place_pos
if minetest.registered_nodes[node_under.name].buildable_to then
place_pos = under
else
place_pos = above
end
local text_entity = minetest.add_entity({
x = place_pos.x + sign_info.delta.x,
y = place_pos.y + sign_info.delta.y,
z = place_pos.z + sign_info.delta.z }, "mcl_signs:text")
text_entity:set_yaw(sign_info.yaw)
text_entity:get_luaentity()._signnodename = nodeitem:get_name()
minetest.sound_play({ name = "default_place_node_hard", gain = 1.0 }, { pos = place_pos }, true)
mcl_signs:show_formspec(placer, place_pos)
return itemstack
end
minetest.override_item("mcl_signs:wall_sign" .. _name, new_sign)
update_sign_registry("wall", "mcl_signs:wall_sign" .. _name)
-- standing sign base.
local new_sign_standing = {}
new_sign_standing = table.copy(mcl_signs.standing_standard)
new_sign_standing.drop = "mcl_signs:wall_sign" .. _name
new_sign_standing.wield_image = "(" .. wield_image .. "^[multiply:" .. color .. ")"
new_sign_standing.tiles = { "(" .. tiles .. "^[multiply:" .. color .. ")" }
new_sign_standing.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")"
new_sign_standing.on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_FACE then
node.name = "mcl_signs:standing_sign22_5" .. _name
minetest.swap_node(pos, node)
elseif mode == screwdriver.ROTATE_AXIS then
return false
end
mcl_signs:update_sign(pos, nil, nil, true)
return true
end,
minetest.override_item("mcl_signs:standing_sign" .. _name, new_sign_standing)
update_sign_registry("standing", "mcl_signs:standing_sign" .. _name)
-- 22.5°
local ssign22_5d = table.copy(new_sign_standing)
ssign22_5d.mesh = "mcl_signs_sign22.5.obj"
ssign22_5d.on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_FACE then
node.name = "mcl_signs:standing_sign45" .. _name
minetest.swap_node(pos, node)
elseif mode == screwdriver.ROTATE_AXIS then
return false
end
mcl_signs:update_sign(pos, nil, nil, true)
return true
end
minetest.override_item("mcl_signs:standing_sign22_5" .. _name, ssign22_5d)
update_sign_registry("standing", "mcl_signs:standing_sign22_5" .. _name)
-- 45°
local ssign45d = table.copy(new_sign_standing)
ssign45d.mesh = "mcl_signs_sign45.obj"
ssign45d.on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_FACE then
node.name = "mcl_signs:standing_sign67_5" .. _name
minetest.swap_node(pos, node)
elseif mode == screwdriver.ROTATE_AXIS then
return false
end
mcl_signs:update_sign(pos, nil, nil, true)
return true
end
minetest.override_item("mcl_signs:standing_sign45" .. _name, ssign45d)
update_sign_registry("standing", "mcl_signs:standing_sign45" .. _name)
-- 67.5°
local ssign67_5d = table.copy(new_sign_standing)
ssign67_5d.mesh = "mcl_signs_sign67.5.obj"
ssign67_5d.on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_FACE then
node.name = "mcl_signs:standing_sign" .. _name
node.param2 = (node.param2 + 1) % 4
minetest.swap_node(pos, node)
elseif mode == screwdriver.ROTATE_AXIS then
return false
end
mcl_signs:update_sign(pos, nil, nil, true)
return true
end
minetest.override_item("mcl_signs:standing_sign67_5" .. _name, ssign67_5d)
update_sign_registry("standing", "mcl_signs:standing_sign67_5" .. _name)
-- register Doc entry
if minetest.get_modpath("doc") then
doc.add_entry_alias("nodes", "mcl_signs:wall_sign", "nodes", "mcl_signs:wall_sign" .. _name)
doc.add_entry_alias("nodes", "mcl_signs:wall_sign", "nodes", "mcl_signs:standing_sign" .. _name)
doc.add_entry_alias("nodes", "mcl_signs:wall_sign", "nodes", "mcl_signs:standing_sign22_5" .. _name)
doc.add_entry_alias("nodes", "mcl_signs:wall_sign", "nodes", "mcl_signs:standing_sign45" .. _name)
doc.add_entry_alias("nodes", "mcl_signs:wall_sign", "nodes", "mcl_signs:standing_sign67_5" .. _name)
end
--register standing sign's rotation_levels
table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign22_5" .. _name, 1 })
table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign45" .. _name, 2 })
table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign67_5" .. _name, 3 })
end
--- Usage: Call this with the mod's name, the wood's item string (for the planks), and with the sign's suffix.
--- Registers the crafting recipe for that sign. for every registered sign, call this function to register the
--- standard recipe for the sign. Otherwise, you have to do your own register craft call.

View File

@ -6,6 +6,9 @@ local source = table.copy(minetest.registered_nodes["mcl_core:water_source"])
source.description = S("River Water Source")
source.liquid_range = 2
source.waving = 3
source.color = "#0084FF"
source.paramtype2 = nil
source.palette = nil
source.liquid_alternative_flowing = "mclx_core:river_water_flowing"
source.liquid_alternative_source = "mclx_core:river_water_source"
source.liquid_renewable = false
@ -13,40 +16,17 @@ source._doc_items_longdesc = S("River water has the same properties as water, bu
source._doc_items_entry_name = S("River Water")
-- Auto-expose entry only in valleys mapgen
source._doc_items_hidden = minetest.get_mapgen_setting("mg_name") ~= "valleys"
source.post_effect_color = {a=192, r=0x2c, g=0x88, b=0x8c}
source.tiles = {
{name="default_river_water_source_animated.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=5.0}}
}
source.special_tiles = {
-- New-style water source material (mostly unused)
{
name="default_river_water_source_animated.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=5.0},
backface_culling = false,
}
}
source.post_effect_color = {a=60, r=0, g=132, b=255}
local flowing = table.copy(minetest.registered_nodes["mcl_core:water_flowing"])
flowing.description = S("Flowing River Water")
flowing.liquid_range = 2
flowing.waving = 3
flowing.color = "#0084FF"
flowing.liquid_alternative_flowing = "mclx_core:river_water_flowing"
flowing.liquid_alternative_source = "mclx_core:river_water_source"
flowing.liquid_renewable = false
flowing.tiles = {"default_river_water_flowing_animated.png^[verticalframe:64:0"}
flowing.post_effect_color = {a=192, r=0x2c, g=0x88, b=0x8c}
flowing.special_tiles = {
{
image="default_river_water_flowing_animated.png",
backface_culling=false,
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=4.0}
},
{
image="default_river_water_flowing_animated.png",
backface_culling=false,
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=4.0}
},
}
flowing.post_effect_color = {a=60, r=0, g=132, b=255}
minetest.register_node("mclx_core:river_water_source", source)
minetest.register_node("mclx_core:river_water_flowing", flowing)

View File

@ -7,6 +7,12 @@ local nether_skycolor = "#6EB1FF" -- The Nether biomes seemingly don't use the s
local end_skycolor = "#000000"
local end_fogcolor = "#A080A0" -- The End biomes seemingly don't use the fog colour, despite having this value according to the wiki. The sky colour is used for both sky and fog.
local default_waterfogcolor = "#3F76E4"
local lukewarm_waterfogcolor = "#45ADF2"
local warm_waterfogcolor = "#43D5EE"
local cold_waterfogcolor = "#3D57D6"
local frozen_waterfogcolor = "#3938C9"
local mg_name = minetest.get_mapgen_setting("mg_name")
local mg_seed = minetest.get_mapgen_setting("seed")
@ -52,6 +58,8 @@ local function register_classic_superflat_biome()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 0,
_mcl_foliage_palette_index = 1,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = "#78A7FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -163,6 +171,8 @@ local function register_biomes()
_mcl_biome_type = "snowy",
_mcl_grass_palette_index = 2,
_mcl_foliage_palette_index = 2,
_mcl_water_palette_index = 5,
_mcl_waterfogcolor = frozen_waterfogcolor,
_mcl_skycolor = "#7FA1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -182,6 +192,8 @@ local function register_biomes()
_mcl_biome_type = "snowy",
_mcl_grass_palette_index = 2,
_mcl_foliage_palette_index = 2,
_mcl_water_palette_index = 5,
_mcl_waterfogcolor = frozen_waterfogcolor,
_mcl_skycolor = "#7FA1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -203,6 +215,8 @@ local function register_biomes()
_mcl_biome_type = "snowy",
_mcl_grass_palette_index = 3,
_mcl_foliage_palette_index = 2,
_mcl_water_palette_index = 5,
_mcl_waterfogcolor = frozen_waterfogcolor,
_mcl_skycolor = "#839EFF",
_mcl_fogcolor = overworld_fogcolor
})
@ -226,6 +240,8 @@ local function register_biomes()
_mcl_biome_type = "snowy",
_mcl_grass_palette_index = 3,
_mcl_foliage_palette_index = 16,
_mcl_water_palette_index = 5,
_mcl_waterfogcolor = frozen_waterfogcolor,
_mcl_skycolor = "#7FA1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -247,6 +263,8 @@ local function register_biomes()
_mcl_biome_type = "snowy",
_mcl_grass_palette_index = 3,
_mcl_foliage_palette_index = 16,
_mcl_water_palette_index = 5,
_mcl_waterfogcolor = frozen_waterfogcolor,
_mcl_skycolor = "#7FA1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -266,6 +284,8 @@ local function register_biomes()
_mcl_biome_type = "snowy",
_mcl_grass_palette_index = 3,
_mcl_foliage_palette_index = 2,
_mcl_water_palette_index = 5,
_mcl_waterfogcolor = frozen_waterfogcolor,
_mcl_skycolor = "#7FA1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -286,6 +306,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 4,
_mcl_foliage_palette_index = 9,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = "#7CA3FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -304,6 +326,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 4,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -324,6 +348,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 5,
_mcl_foliage_palette_index = 10,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = "#7DA3FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -342,6 +368,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 5,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -363,6 +391,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 6,
_mcl_foliage_palette_index = 11,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = "#7DA2FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -382,6 +412,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 6,
_mcl_foliage_palette_index = 1,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = beach_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -401,6 +433,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 6,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -422,6 +456,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 7,
_mcl_foliage_palette_index = 11,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = "#7DA2FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -440,6 +476,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 7,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -463,6 +501,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 8,
_mcl_foliage_palette_index = 11,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = "#7DA2FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -484,6 +524,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 8,
_mcl_foliage_palette_index = 11,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = "#7DA2FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -502,6 +544,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 8,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -520,6 +564,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 9,
_mcl_foliage_palette_index = 11,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = "#7DA2FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -538,6 +584,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 9,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -562,6 +610,8 @@ local function register_biomes()
_mcl_biome_type = "snowy",
_mcl_grass_palette_index = 10,
_mcl_foliage_palette_index = 2,
_mcl_water_palette_index = 5,
_mcl_waterfogcolor = frozen_waterfogcolor,
_mcl_skycolor = "#7FA1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -580,6 +630,8 @@ local function register_biomes()
_mcl_biome_type = "snowy",
_mcl_grass_palette_index = 10,
_mcl_foliage_palette_index = 2,
_mcl_water_palette_index = 5,
_mcl_waterfogcolor = frozen_waterfogcolor,
_mcl_skycolor = "#7FA1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -600,6 +652,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 0,
_mcl_foliage_palette_index = 1,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = "#78A7FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -618,6 +672,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 0,
_mcl_foliage_palette_index = 1,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = beach_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -636,6 +692,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 0,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -656,6 +714,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 11,
_mcl_foliage_palette_index = 1,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = "#78A7FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -674,6 +734,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 11,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -694,6 +756,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 12,
_mcl_foliage_palette_index = 10,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = "#7DA3FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -712,6 +776,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 12,
_mcl_foliage_palette_index = 1,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = beach_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -730,6 +796,8 @@ local function register_biomes()
_mcl_biome_type = "cold",
_mcl_grass_palette_index = 12,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 4,
_mcl_waterfogcolor = cold_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -750,6 +818,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 13,
_mcl_foliage_palette_index = 7,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = "#79A6FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -768,6 +838,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 13,
_mcl_foliage_palette_index = 1,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = beach_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -786,6 +858,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 13,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -806,6 +880,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 14,
_mcl_foliage_palette_index = 7,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = "#79A6FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -824,6 +900,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 14,
_mcl_foliage_palette_index = 1,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = beach_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -842,6 +920,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 14,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -862,6 +942,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 15,
_mcl_foliage_palette_index = 8,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = "#7AA5FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -880,6 +962,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 15,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -900,6 +984,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 16,
_mcl_foliage_palette_index = 8,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = "#7AA5FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -918,6 +1004,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 16,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -939,6 +1027,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 17,
_mcl_foliage_palette_index = 3,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = "#6EB1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -957,6 +1047,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 17,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -977,6 +1069,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 18,
_mcl_foliage_palette_index = 7,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = "#79A6FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -995,6 +1089,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 18,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1016,6 +1112,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 19,
_mcl_foliage_palette_index = 4,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = "#6EB1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1036,6 +1134,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 19,
_mcl_foliage_palette_index = 4,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = "#6EB1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1055,6 +1155,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 19,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1075,6 +1177,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 20,
_mcl_foliage_palette_index = 4,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = "#6EB1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1094,6 +1198,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 20,
_mcl_foliage_palette_index = 4,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = "#6EB1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1113,6 +1219,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 20,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1135,6 +1243,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 21,
_mcl_foliage_palette_index = 4,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = "#6EB1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1157,6 +1267,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 21,
_mcl_foliage_palette_index = 4,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = "#6EB1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1176,6 +1288,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 21,
_mcl_foliage_palette_index = 4,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = "#6EB1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1195,6 +1309,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 21,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1219,6 +1335,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 22,
_mcl_foliage_palette_index = 4,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = "#6EB1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1239,6 +1357,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 22,
_mcl_foliage_palette_index = 4,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = "#6EB1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1260,6 +1380,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 22,
_mcl_foliage_palette_index = 4,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = "#6EB1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1279,6 +1401,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 22,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 3,
_mcl_waterfogcolor = warm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1300,6 +1424,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 1,
_mcl_foliage_palette_index = 3,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#6EB1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1318,6 +1444,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 1,
_mcl_foliage_palette_index = 1,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = beach_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1336,6 +1464,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 1,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1358,6 +1488,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 23,
_mcl_foliage_palette_index = 3,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#6EB1FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1376,6 +1508,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 23,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1396,6 +1530,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 24,
_mcl_foliage_palette_index = 12,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1414,6 +1550,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 24,
_mcl_foliage_palette_index = 12,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1433,6 +1571,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 24,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1454,6 +1594,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 25,
_mcl_foliage_palette_index = 12,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1472,6 +1614,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 25,
_mcl_foliage_palette_index = 12,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1491,6 +1635,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 25,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1511,6 +1657,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 26,
_mcl_foliage_palette_index = 13,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1529,6 +1677,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 26,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1552,6 +1702,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 27,
_mcl_foliage_palette_index = 13,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1570,6 +1722,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 27,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1591,6 +1745,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 27,
_mcl_foliage_palette_index = 6,
_mcl_water_palette_index = 7,
_mcl_waterfogcolor = "#3A7A6A",
_mcl_skycolor = "#78A7FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1609,6 +1765,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 27,
_mcl_foliage_palette_index = 6,
_mcl_water_palette_index = 7,
_mcl_waterfogcolor = "#3A7A6A",
_mcl_skycolor = "#78A7FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1628,6 +1786,8 @@ local function register_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 27,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 7,
_mcl_waterfogcolor = "#3A7A6A",
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1648,6 +1808,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 28,
_mcl_foliage_palette_index = 5,
_mcl_water_palette_index = 1,
_mcl_waterfogcolor = "#617B64",
_mcl_skycolor = "#78A7FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1666,6 +1828,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 28,
_mcl_foliage_palette_index = 5,
_mcl_water_palette_index = 1,
_mcl_waterfogcolor = "#617B64",
_mcl_skycolor = "#78A7FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1685,6 +1849,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 28,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 1,
_mcl_waterfogcolor = "#617B64",
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1708,6 +1874,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 29,
_mcl_foliage_palette_index = 17,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1727,6 +1895,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 29,
_mcl_foliage_palette_index = 17,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1745,6 +1915,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 29,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1766,6 +1938,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 24,
_mcl_foliage_palette_index = 12,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1784,6 +1958,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 24,
_mcl_foliage_palette_index = 12,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1803,6 +1979,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 24,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1824,6 +2002,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 25,
_mcl_foliage_palette_index = 12,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1842,6 +2022,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 25,
_mcl_foliage_palette_index = 12,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1861,6 +2043,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 25,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1881,6 +2065,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 26,
_mcl_foliage_palette_index = 13,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1899,6 +2085,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 26,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1922,6 +2110,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 27,
_mcl_foliage_palette_index = 13,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = "#77A8FF",
_mcl_fogcolor = overworld_fogcolor
})
@ -1940,6 +2130,8 @@ local function register_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 27,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 2,
_mcl_waterfogcolor = lukewarm_waterfogcolor,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1965,6 +2157,7 @@ local function register_biomes()
_mcl_biome_type = minetest.registered_biomes[biome]._mcl_biome_type,
_mcl_grass_palette_index = minetest.registered_biomes[biome]._mcl_grass_palette_index,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = minetest.registered_biomes[biome]._mcl_water_palette_index,
_mcl_skycolor = ocean_skycolor,
_mcl_fogcolor = overworld_fogcolor
})
@ -1980,6 +2173,7 @@ local function register_biomes()
_mcl_biome_type = minetest.registered_biomes[biome]._mcl_biome_type,
_mcl_grass_palette_index = minetest.registered_biomes[biome]._mcl_grass_palette_index,
_mcl_foliage_palette_index = minetest.registered_biomes[biome]._mcl_foliage_palette_index,
_mcl_water_palette_index = minetest.registered_biomes[biome]._mcl_water_palette_index,
_mcl_skycolor = minetest.registered_biomes[biome]._mcl_skycolor,
_mcl_fogcolor = minetest.registered_biomes[biome]._mcl_fogcolor,
})
@ -2036,6 +2230,8 @@ local function register_dimension_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 17,
_mcl_foliage_palette_index = 3,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = nether_skycolor,
_mcl_fogcolor = "#330808"
})
@ -2068,6 +2264,8 @@ local function register_dimension_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 17,
_mcl_foliage_palette_index = 3,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = nether_skycolor,
_mcl_fogcolor = "#1B4745"
})
@ -2120,6 +2318,8 @@ local function register_dimension_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 17,
_mcl_foliage_palette_index = 3,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = nether_skycolor,
_mcl_fogcolor = "#330303"
})
@ -2150,6 +2350,8 @@ local function register_dimension_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 17,
_mcl_foliage_palette_index = 3,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = nether_skycolor,
_mcl_fogcolor = "#1A051A"
})
@ -2180,6 +2382,8 @@ local function register_dimension_biomes()
_mcl_biome_type = "hot",
_mcl_grass_palette_index = 17,
_mcl_foliage_palette_index = 3,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = nether_skycolor,
_mcl_fogcolor = "#685F70"
})
@ -2235,6 +2439,8 @@ local function register_dimension_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 0,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = end_skycolor,
_mcl_fogcolor = end_fogcolor
})
@ -2253,6 +2459,8 @@ local function register_dimension_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 0,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = end_skycolor,
_mcl_fogcolor = end_fogcolor
})
@ -2271,6 +2479,8 @@ local function register_dimension_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 0,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = end_skycolor,
_mcl_fogcolor = end_fogcolor
})
@ -2289,6 +2499,8 @@ local function register_dimension_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 0,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = end_skycolor,
_mcl_fogcolor = end_fogcolor
})
@ -2307,6 +2519,8 @@ local function register_dimension_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 0,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = end_skycolor,
_mcl_fogcolor = end_fogcolor
})
@ -2328,6 +2542,8 @@ local function register_dimension_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 0,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = end_skycolor,
_mcl_fogcolor = end_fogcolor
})
@ -2347,6 +2563,8 @@ local function register_dimension_biomes()
_mcl_biome_type = "medium",
_mcl_grass_palette_index = 0,
_mcl_foliage_palette_index = 0,
_mcl_water_palette_index = 0,
_mcl_waterfogcolor = default_waterfogcolor,
_mcl_skycolor = end_skycolor,
_mcl_fogcolor = end_fogcolor
})

View File

@ -57,6 +57,7 @@ dofile(modpath.."/api.lua")
dofile(modpath.."/ores.lua")
local mg_name = minetest.get_mapgen_setting("mg_name")
local sea_level = tonumber(minetest.get_mapgen_setting("water_level"))
local superflat = mg_name == "flat" and minetest.get_mapgen_setting("mcl_superflat_classic") == "true"
-- Content IDs
@ -482,3 +483,31 @@ minetest.register_on_generated(function(minp, maxp, blockseed) -- Set correct pa
end
end
)
minetest.register_lbm({
label = "Fix water palette indexes", -- Set correct palette indexes of water in old mapblocks.
name = "mcl_mapgen_core:fix_water_palette_indexes",
nodenames = {"group:water_palette"},
run_at_every_load = false,
action = function(pos, node)
local water_palette_index = mcl_util.get_palette_indexes_from_pos(pos).water_palette_index
if node.param2 ~= water_palette_index then
node.param2 = water_palette_index
minetest.set_node(pos, node)
end
end
})
minetest.register_on_generated(function(minp, maxp, blockseed) -- Set correct palette indexes of water in new mapblocks.
local pos1, pos2 = vector.offset(minp, -16, -16, -16), vector.offset(maxp, 16, 16, 16)
local water = minetest.find_nodes_in_area(pos1, pos2, {"group:water_palette"})
for _, wpos in pairs(water) do
local wnode = minetest.get_node(wpos)
local water_palette_index = mcl_util.get_palette_indexes_from_pos(wpos).water_palette_index
if wnode.param2 ~= water_palette_index then
wnode.param2 = water_palette_index
minetest.set_node(wpos, wnode)
end
end
end
)

View File

@ -224,6 +224,14 @@ local function spawn_villagers(minp,maxp)
end
end
local function fix_village_water(minp,maxp)
local palettenodes = minetest.find_nodes_in_area(vector.offset(minp,-20,-20,-20),vector.offset(maxp,20,20,20), "group:water_palette")
for _, palettenodepos in pairs(palettenodes) do
local palettenode = minetest.get_node(palettenodepos)
minetest.set_node(palettenodepos, {name = palettenode.name})
end
end
local function init_nodes(p1, p2, size, rotation, pr)
construct_node(p1, p2, "mcl_itemframes:item_frame")
construct_node(p1, p2, "mcl_furnaces:furnace")
@ -309,7 +317,7 @@ function settlements.place_schematics(settlement_info, pr)
-- format schematic string
local schematic = loadstring(schem_lua)()
local is_belltower = building_all_info["name"] == "belltower"
-- build foundation for the building an make room above
@ -327,6 +335,7 @@ function settlements.place_schematics(settlement_info, pr)
else
init_nodes(p1, p2, size, rotation, pr)
spawn_villagers(p1,p2)
fix_village_water(p1,p2)
end
end,
pr

Binary file not shown.

Before

Width:  |  Height:  |  Size: 647 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 455 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 840 B

After

Width:  |  Height:  |  Size: 854 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 438 B

After

Width:  |  Height:  |  Size: 551 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 319 B

After

Width:  |  Height:  |  Size: 818 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 200 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 350 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 206 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 206 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 206 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 336 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 200 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 206 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 351 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 211 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 363 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 201 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 345 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 206 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 221 B

BIN
textures/mcl_signs_sign.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 571 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 950 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 950 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 350 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 211 B