red_glazed_terracotta/mods/rgt_world/init.lua
2025-09-14 23:16:35 -04:00

159 lines
No EOL
4.4 KiB
Lua

local function rep(tx, size)
local out = "[combine:"..(size *16).."x"..(size *16)
for x = 0, size -1 do
for y = 0, size -1 do
out = out..":"..(x *16)..","..(y *16).."="..tx
end
end
return out
end
rgt.register_node("stone", {
tiles = {"rgt_stone.png"},
groups = {dig_immediate = 3}
})
rgt.register_node("cobble", {
tiles = {"rgt_cobble.png"},
groups = {dig_immediate = 3}
})
rgt.register_node("dirt", {
tiles = {"rgt_dirt.png"},
groups = {dig_immediate = 3}
})
rgt.register_node("dirt_grass", {
tiles = {"rgt_grass_top.png", "rgt_dirt.png", "rgt_dirt.png^rgt_grass_side.png"},
-- tiles = {"[fill:16x16:0,0:#3e7e7b^[fill:14x14:1,1:#326764"},
groups = {dig_immediate = 3}
})
rgt.register_node("path_grass", {
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
-0.5, -0.5, -0.5,
0.5, 7/16, 0.5
}
},
tiles = {"rgt_path_grass_top.png", "rgt_dirt.png", "rgt_dirt.png^rgt_path_grass_side.png"},
-- tiles = {"[fill:16x16:0,0:#3e7e7b^[fill:14x14:1,1:#326764"},
paramtype = "light",
sunlight_propagates = false,
groups = {dig_immediate = 3}
})
rgt.register_node("oak_planks", {
tiles = {"rgt_oak_planks.png"},
groups = {dig_immediate = 3}
})
rgt.register_node("dark_planks", {
tiles = {"rgt_dark_planks.png"},
groups = {dig_immediate = 3}
})
rgt.register_node("spruce_planks", {
tiles = {"rgt_spruce_planks.png"},
groups = {dig_immediate = 3}
})
rgt.register_node("acacia_planks", {
tiles = {"rgt_acacia_planks.png"},
groups = {dig_immediate = 3}
})
rgt.register_node("redwood_planks", {
tiles = {"rgt_redwood_planks.png"},
groups = {dig_immediate = 3}
})
rgt.register_node("birch_planks", {
tiles = {"rgt_birch_planks.png"},
groups = {dig_immediate = 3}
})
--minetest.register_decoration {
-- deco_type = "simple",
-- place_on = "dirt_grass",
-- fill_ratio = 0.5,
-- decoration = {"red_glazed_terracotta:oak_planks", "red_glazed_terracotta:spruce_planks", "red_glazed_terracotta:dark_planks", "red_glazed_terracotta:redwood_planks", "red_glazed_terracotta:acacia_planks", "red_glazed_terracotta:birch_planks"}
--}
rgt.register_node("water", {
tiles = {"[fill:16x16:0,0:#2d5a7c77^[fill:14x14:1,1:#2d5a7c33"},
groups = {dig_immediate = 3},
drawtype = "liquid",
use_texture_alpha = "blend",
paramtype = "light",
walkable = false,
climbable = true,
post_effect_color = "#2d5a7c55",
liquidtype = "source",
-- Minetest pro tip: Do not try to use aliases for these.
liquid_alternative_source = "red_glazed_terracotta:water",
liquid_alternative_flowing = "red_glazed_terracotta:water_flowing",
liquid_viscosity = 1,
liquid_range = 5,
})
rgt.register_node("water_flowing", {
tiles = {{name = "[fill:16x16:0,0:#2d5a7c77^[fill:14x14:1,1:#2d5a7c33", backface_culling = false}},
special_tiles = {{name = "[fill:16x16:0,0:#2d5a7c77^[fill:14x14:1,1:#2d5a7c33", backface_culling = false}, {name = "[fill:16x16:0,0:#2d5a7c77^[fill:14x14:1,1:#2d5a7c33", backface_culling = false}},
groups = {dig_immediate = 3},
drawtype = "flowingliquid",
use_texture_alpha = "blend",
paramtype = "light",
paramtype2 = "flowingliquid",
walkable = false,
climbable = true,
post_effect_color = "#2d5a7c55",
liquidtype = "flowing",
liquid_alternative_source = "red_glazed_terracotta:water",
liquid_alternative_flowing = "red_glazed_terracotta:water_flowing",
liquid_viscosity = 1,
liquid_range = 5,
})
minetest.register_alias("mapgen_stone", "red_glazed_terracotta:stone")
minetest.register_alias("mapgen_water_source", "red_glazed_terracotta:water")
-- Remove
minetest.register_alias("adrift:stone", "red_glazed_terracotta:stone")
minetest.register_alias("adrift:dirt", "red_glazed_terracotta:dirt")
minetest.register_alias("adrift:dirt_grass", "red_glazed_terracotta:dirt_grass")
minetest.register_alias("adrift:water", "red_glazed_terracotta:water")
minetest.register_biome{
name = "!",
node_top = "dirt_grass",
depth_top = 1,
node_filler = "dirt",
depth_filler = 5,
node_riverbed = "dirt",
depth_riverbed = 3,
node_dungeon = "cobble",
node_dungeon_alt = "stone",
y_max = alt_max,
y_min = sealevel,
vertical_blend = 2,
heat_point = 50,
humidity_point = 50,
}