Compare commits
2 commits
Author | SHA1 | Date | |
---|---|---|---|
|
1028332cf5 | ||
|
b6bc6d29aa |
|
@ -1,95 +1,12 @@
|
||||||
-- -- Minetest Game mod: default
|
---------------------------------------------------------------------------
|
||||||
-- -- See README.txt for licensing and other information.
|
-- Voxelis - Voxel survival sandbox for Luanti
|
||||||
|
-- Copyright (C) 2024 Mad Star Studio LLC
|
||||||
-- -- The API documentation in here was moved into game_api.txt
|
--
|
||||||
|
-- This program is free software; you can redistribute it and/or modify
|
||||||
-- -- Load support for MT game translation.
|
-- it under the terms of the GNU General Public License as published by
|
||||||
-- local S = minetest.get_translator("default")
|
-- the Free Software Foundation; either version 3 of the License, or
|
||||||
|
-- (at your option) any later version.
|
||||||
-- -- Definitions made by this mod that other mods can use too
|
--
|
||||||
--default = {}
|
-- You should have received a copy of the GNU General Public License along
|
||||||
|
-- with this program; if not, see <http://www.gnu.org/licenses/>.
|
||||||
-- default.LIGHT_MAX = 14
|
---------------------------------------------------------------------------
|
||||||
-- default.get_translator = S
|
|
||||||
|
|
||||||
-- -- Check for engine features required by MTG
|
|
||||||
-- -- This provides clear error behaviour when MTG is newer than the installed engine
|
|
||||||
-- -- and avoids obscure, hard to debug runtime errors.
|
|
||||||
-- -- This section should be updated before release and older checks can be dropped
|
|
||||||
-- -- when newer ones are introduced.
|
|
||||||
-- if ItemStack("").add_wear_by_uses == nil then
|
|
||||||
-- error("\nThis version of Minetest Game is incompatible with your engine version "..
|
|
||||||
-- "(which is too old). You should download a version of Minetest Game that "..
|
|
||||||
-- "matches the installed engine version.\n")
|
|
||||||
-- end
|
|
||||||
|
|
||||||
-- -- GUI related stuff
|
|
||||||
-- minetest.register_on_joinplayer(function(player)
|
|
||||||
-- -- Set formspec prepend
|
|
||||||
-- local formspec = [[
|
|
||||||
-- bgcolor[#080808BB;true]
|
|
||||||
-- listcolors[#00000069;#5A5A5A;#141318;#30434C;#FFF] ]]
|
|
||||||
-- local name = player:get_player_name()
|
|
||||||
-- local info = minetest.get_player_information(name)
|
|
||||||
-- if info.formspec_version > 1 then
|
|
||||||
-- formspec = formspec .. "background9[5,5;1,1;gui_formbg.png;true;10]"
|
|
||||||
-- else
|
|
||||||
-- formspec = formspec .. "background[5,5;1,1;gui_formbg.png;true]"
|
|
||||||
-- end
|
|
||||||
-- player:set_formspec_prepend(formspec)
|
|
||||||
|
|
||||||
-- -- Set hotbar textures
|
|
||||||
-- player:hud_set_hotbar_image("gui_hotbar.png")
|
|
||||||
-- player:hud_set_hotbar_selected_image("gui_hotbar_selected.png")
|
|
||||||
-- end)
|
|
||||||
|
|
||||||
-- function default.get_hotbar_bg(x,y)
|
|
||||||
-- local out = ""
|
|
||||||
-- for i=0,7,1 do
|
|
||||||
-- out = out .."image["..x+i..","..y..";1,1;gui_hb_bg.png]"
|
|
||||||
-- end
|
|
||||||
-- return out
|
|
||||||
-- end
|
|
||||||
|
|
||||||
-- default.gui_survival_form = "size[8,8.5]"..
|
|
||||||
-- "list[current_player;main;0,4.25;8,1;]"..
|
|
||||||
-- "list[current_player;main;0,5.5;8,3;8]"..
|
|
||||||
-- "list[current_player;craft;1.75,0.5;3,3;]"..
|
|
||||||
-- "list[current_player;craftpreview;5.75,1.5;1,1;]"..
|
|
||||||
-- "image[4.75,1.5;1,1;gui_furnace_arrow_bg.png^[transformR270]"..
|
|
||||||
-- "listring[current_player;main]"..
|
|
||||||
-- "listring[current_player;craft]"..
|
|
||||||
-- default.get_hotbar_bg(0,4.25)
|
|
||||||
|
|
||||||
-- -- Load files
|
|
||||||
-- local default_path = minetest.get_modpath("default")
|
|
||||||
|
|
||||||
--dofile(default_path.."/functions.lua")
|
|
||||||
-- dofile(default_path.."/trees.lua")
|
|
||||||
-- dofile(default_path.."/nodes.lua")
|
|
||||||
-- dofile(default_path.."/chests.lua")
|
|
||||||
-- dofile(default_path.."/furnace.lua")
|
|
||||||
-- dofile(default_path.."/torch.lua")
|
|
||||||
-- dofile(default_path.."/tools.lua")
|
|
||||||
-- dofile(default_path.."/item_entity.lua")
|
|
||||||
-- dofile(default_path.."/craftitems.lua")
|
|
||||||
-- dofile(default_path.."/crafting.lua")
|
|
||||||
-- dofile(default_path.."/mapgen.lua")
|
|
||||||
-- dofile(default_path.."/aliases.lua")
|
|
||||||
-- dofile(default_path.."/legacy.lua")
|
|
||||||
|
|
||||||
-- -- Smoke test that is run via ./util/test/run.sh
|
|
||||||
-- if minetest.settings:get_bool("minetest_game_smoke_test") then
|
|
||||||
-- minetest.after(0, function()
|
|
||||||
-- minetest.emerge_area(vector.new(0, 0, 0), vector.new(32, 32, 32))
|
|
||||||
-- local pos = vector.new(9, 9, 9)
|
|
||||||
-- local function check()
|
|
||||||
-- if minetest.get_node(pos).name ~= "ignore" then
|
|
||||||
-- minetest.request_shutdown()
|
|
||||||
-- return
|
|
||||||
-- end
|
|
||||||
-- minetest.after(0, check)
|
|
||||||
-- end
|
|
||||||
-- check()
|
|
||||||
-- end)
|
|
||||||
-- end
|
|
|
@ -12,56 +12,36 @@
|
||||||
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
||||||
|
|
||||||
vox_colors = {
|
vox_colors = {
|
||||||
-- Whites and Grays
|
|
||||||
WHITE = "#FFFFFF",
|
WHITE = "#FFFFFF",
|
||||||
CREAM = "#FFFDD0",
|
|
||||||
LIGHTGREY = "#D3D3D3",
|
LIGHTGREY = "#D3D3D3",
|
||||||
SILVER = "#C0C0C0",
|
SILVER = "#C0C0C0",
|
||||||
GREY = "#808080",
|
GREY = "#808080",
|
||||||
DARK_GRAY = "#A9A9A9",
|
|
||||||
BLACK = "#000000",
|
BLACK = "#000000",
|
||||||
|
|
||||||
-- Reds
|
|
||||||
PINK = "#FF69B4",
|
|
||||||
FLAMINGO = "#FC8EAC",
|
|
||||||
RED = "#FF0000",
|
RED = "#FF0000",
|
||||||
CRIMSON = "#DC143C",
|
|
||||||
DARK_RED = "#8B0000",
|
DARK_RED = "#8B0000",
|
||||||
MAROON = "#800000",
|
|
||||||
|
|
||||||
-- Oranges and Yellows
|
|
||||||
PEACH = "#FFDAB9",
|
|
||||||
GOLD = "#FFD700",
|
|
||||||
YELLOW = "#FFFF00",
|
YELLOW = "#FFFF00",
|
||||||
|
GOLD = "#FFD700",
|
||||||
ORANGE = "#FFA500",
|
ORANGE = "#FFA500",
|
||||||
PUMPKIN = "#FF7518",
|
PUMPKIN = "#FF7518",
|
||||||
|
CREAM = "#FFFDD0",
|
||||||
TAN = "#D2B48C",
|
TAN = "#D2B48C",
|
||||||
BROWN = "#A52A2A",
|
BROWN = "#A52A2A",
|
||||||
DARK_BROWN = "#8B4513",
|
DARK_BROWN = "#8B4513",
|
||||||
|
|
||||||
-- Greens
|
|
||||||
LIGHT_GREEN = "#90EE90",
|
|
||||||
MINT = "#98FF98",
|
|
||||||
LIME = "#00FF00",
|
LIME = "#00FF00",
|
||||||
GREEN = "#008000",
|
MINT = "#98FF98",
|
||||||
EMERALD = "#50C878",
|
EMERALD = "#50C878",
|
||||||
OLIVE = "#808000",
|
|
||||||
DARK_GREEN = "#006400",
|
DARK_GREEN = "#006400",
|
||||||
|
|
||||||
-- Blues
|
|
||||||
LIGHT_BLUE = "#ADD8E6",
|
|
||||||
CYAN = "#00FFFF",
|
|
||||||
TURQUOISE = "#40E0D0",
|
TURQUOISE = "#40E0D0",
|
||||||
TEAL = "#008080",
|
TEAL = "#008080",
|
||||||
|
CYAN = "#00FFFF",
|
||||||
BLUE = "#0000FF",
|
BLUE = "#0000FF",
|
||||||
NAVY = "#000080",
|
NAVY = "#000080",
|
||||||
INDIGO = "#4B0082",
|
|
||||||
|
|
||||||
-- Purples
|
|
||||||
LAVENDER = "#E6E6FA",
|
|
||||||
VIOLET = "#EE82EE",
|
|
||||||
MAGENTA = "#FF00FF",
|
MAGENTA = "#FF00FF",
|
||||||
|
VIOLET = "#EE82EE",
|
||||||
PURPLE = "#800080",
|
PURPLE = "#800080",
|
||||||
|
INDIGO = "#4B0082",
|
||||||
|
PINK = "#FF69B4",
|
||||||
|
FLAMINGO = "#FC8EAC",
|
||||||
}
|
}
|
||||||
|
|
||||||
vox_colors.bg_brightness = 0.8;
|
vox_colors.bg_brightness = 0.8;
|
||||||
|
|
|
@ -178,8 +178,8 @@ minetest.register_craftitem("vox_coloring:cleaning_solvent", {
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
output = "vox_coloring:cleaning_solvent",
|
output = "vox_coloring:cleaning_solvent",
|
||||||
recipe = {
|
recipe = {
|
||||||
{"vox_core:soap", "bucket:water_bucket", "vox_core:salt"},
|
{"vox_main:soap", "bucket:water_bucket", "vox_main:salt"},
|
||||||
{"vox_core:ash", "", ""},
|
{"vox_main:ash", "", ""},
|
||||||
},
|
},
|
||||||
replacements = {{"bucket:water_bucket", "bucket:bucket"}},
|
replacements = {{"bucket:water_bucket", "bucket:bucket"}},
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,836 +0,0 @@
|
||||||
--
|
|
||||||
-- Sounds
|
|
||||||
--
|
|
||||||
|
|
||||||
function vox_core.node_sound_defaults(tbl)
|
|
||||||
tbl = tbl or {}
|
|
||||||
tbl.footstep = tbl.footstep or
|
|
||||||
{name = "", gain = 1.0}
|
|
||||||
tbl.dug = tbl.dug or
|
|
||||||
{name = "default_dug_node", gain = 0.25}
|
|
||||||
tbl.place = tbl.place or
|
|
||||||
{name = "default_place_node_hard", gain = 1.0}
|
|
||||||
return tbl
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.node_sound_stone_defaults(tbl)
|
|
||||||
tbl = tbl or {}
|
|
||||||
tbl.footstep = tbl.footstep or
|
|
||||||
{name = "default_hard_footstep", gain = 0.2}
|
|
||||||
tbl.dug = tbl.dug or
|
|
||||||
{name = "default_hard_footstep", gain = 1.0}
|
|
||||||
vox_core.node_sound_defaults(tbl)
|
|
||||||
return tbl
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.node_sound_dirt_defaults(tbl)
|
|
||||||
tbl = tbl or {}
|
|
||||||
tbl.footstep = tbl.footstep or
|
|
||||||
{name = "default_dirt_footstep", gain = 0.25}
|
|
||||||
tbl.dig = tbl.dig or
|
|
||||||
{name = "default_dig_crumbly", gain = 0.4}
|
|
||||||
tbl.dug = tbl.dug or
|
|
||||||
{name = "default_dirt_footstep", gain = 1.0}
|
|
||||||
tbl.place = tbl.place or
|
|
||||||
{name = "default_place_node", gain = 1.0}
|
|
||||||
vox_core.node_sound_defaults(tbl)
|
|
||||||
return tbl
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.node_sound_sand_defaults(tbl)
|
|
||||||
tbl = tbl or {}
|
|
||||||
tbl.footstep = tbl.footstep or
|
|
||||||
{name = "default_sand_footstep", gain = 0.05}
|
|
||||||
tbl.dug = tbl.dug or
|
|
||||||
{name = "default_sand_footstep", gain = 0.15}
|
|
||||||
tbl.place = tbl.place or
|
|
||||||
{name = "default_place_node", gain = 1.0}
|
|
||||||
vox_core.node_sound_defaults(tbl)
|
|
||||||
return tbl
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.node_sound_gravel_defaults(tbl)
|
|
||||||
tbl = tbl or {}
|
|
||||||
tbl.footstep = tbl.footstep or
|
|
||||||
{name = "default_gravel_footstep", gain = 0.25}
|
|
||||||
tbl.dig = tbl.dig or
|
|
||||||
{name = "default_gravel_dig", gain = 0.35}
|
|
||||||
tbl.dug = tbl.dug or
|
|
||||||
{name = "default_gravel_dug", gain = 1.0}
|
|
||||||
tbl.place = tbl.place or
|
|
||||||
{name = "default_place_node", gain = 1.0}
|
|
||||||
vox_core.node_sound_defaults(tbl)
|
|
||||||
return tbl
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.node_sound_wood_defaults(tbl)
|
|
||||||
tbl = tbl or {}
|
|
||||||
tbl.footstep = tbl.footstep or
|
|
||||||
{name = "default_wood_footstep", gain = 0.15}
|
|
||||||
tbl.dig = tbl.dig or
|
|
||||||
{name = "default_dig_choppy", gain = 0.4}
|
|
||||||
tbl.dug = tbl.dug or
|
|
||||||
{name = "default_wood_footstep", gain = 1.0}
|
|
||||||
vox_core.node_sound_defaults(tbl)
|
|
||||||
return tbl
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.node_sound_leaves_defaults(tbl)
|
|
||||||
tbl = tbl or {}
|
|
||||||
tbl.footstep = tbl.footstep or
|
|
||||||
{name = "default_grass_footstep", gain = 0.45}
|
|
||||||
tbl.dug = tbl.dug or
|
|
||||||
{name = "default_grass_footstep", gain = 0.7}
|
|
||||||
tbl.place = tbl.place or
|
|
||||||
{name = "default_place_node", gain = 1.0}
|
|
||||||
vox_core.node_sound_defaults(tbl)
|
|
||||||
return tbl
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.node_sound_glass_defaults(tbl)
|
|
||||||
tbl = tbl or {}
|
|
||||||
tbl.footstep = tbl.footstep or
|
|
||||||
{name = "default_glass_footstep", gain = 0.3}
|
|
||||||
tbl.dig = tbl.dig or
|
|
||||||
{name = "default_glass_footstep", gain = 0.5}
|
|
||||||
tbl.dug = tbl.dug or
|
|
||||||
{name = "default_break_glass", gain = 1.0}
|
|
||||||
vox_core.node_sound_defaults(tbl)
|
|
||||||
return tbl
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.node_sound_ice_defaults(tbl)
|
|
||||||
tbl = tbl or {}
|
|
||||||
tbl.footstep = tbl.footstep or
|
|
||||||
{name = "default_ice_footstep", gain = 0.15}
|
|
||||||
tbl.dig = tbl.dig or
|
|
||||||
{name = "default_ice_dig", gain = 0.5}
|
|
||||||
tbl.dug = tbl.dug or
|
|
||||||
{name = "default_ice_dug", gain = 0.5}
|
|
||||||
vox_core.node_sound_defaults(tbl)
|
|
||||||
return tbl
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.node_sound_metal_defaults(tbl)
|
|
||||||
tbl = tbl or {}
|
|
||||||
tbl.footstep = tbl.footstep or
|
|
||||||
{name = "default_metal_footstep", gain = 0.2}
|
|
||||||
tbl.dig = tbl.dig or
|
|
||||||
{name = "default_dig_metal", gain = 0.5}
|
|
||||||
tbl.dug = tbl.dug or
|
|
||||||
{name = "default_dug_metal", gain = 0.5}
|
|
||||||
tbl.place = tbl.place or
|
|
||||||
{name = "default_place_node_metal", gain = 0.5}
|
|
||||||
vox_core.node_sound_defaults(tbl)
|
|
||||||
return tbl
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.node_sound_water_defaults(tbl)
|
|
||||||
tbl = tbl or {}
|
|
||||||
tbl.footstep = tbl.footstep or
|
|
||||||
{name = "default_water_footstep", gain = 0.2}
|
|
||||||
vox_core.node_sound_defaults(tbl)
|
|
||||||
return tbl
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.node_sound_snow_defaults(tbl)
|
|
||||||
tbl = tbl or {}
|
|
||||||
tbl.footstep = tbl.footstep or
|
|
||||||
{name = "default_snow_footstep", gain = 0.2}
|
|
||||||
tbl.dig = tbl.dig or
|
|
||||||
{name = "default_snow_footstep", gain = 0.3}
|
|
||||||
tbl.dug = tbl.dug or
|
|
||||||
{name = "default_snow_footstep", gain = 0.3}
|
|
||||||
tbl.place = tbl.place or
|
|
||||||
{name = "default_place_node", gain = 1.0}
|
|
||||||
vox_core.node_sound_defaults(tbl)
|
|
||||||
return tbl
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Lavacooling
|
|
||||||
--
|
|
||||||
|
|
||||||
vox_core.cool_lava = function(pos, node)
|
|
||||||
if node.name == "vox_core:lava_source" then
|
|
||||||
minetest.set_node(pos, {name = "vox_core:obsidian"})
|
|
||||||
else -- Lava flowing
|
|
||||||
minetest.set_node(pos, {name = "vox_core:stone"})
|
|
||||||
end
|
|
||||||
minetest.sound_play("default_cool_lava",
|
|
||||||
{pos = pos, max_hear_distance = 16, gain = 0.2}, true)
|
|
||||||
end
|
|
||||||
|
|
||||||
if minetest.settings:get_bool("enable_lavacooling") ~= false then
|
|
||||||
minetest.register_abm({
|
|
||||||
label = "Lava cooling",
|
|
||||||
nodenames = {"vox_core:lava_source", "vox_core:lava_flowing"},
|
|
||||||
neighbors = {"group:cools_lava", "group:water"},
|
|
||||||
interval = 2,
|
|
||||||
chance = 2,
|
|
||||||
catch_up = false,
|
|
||||||
action = function(...)
|
|
||||||
vox_core.cool_lava(...)
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Optimized helper to put all items in an inventory into a drops list
|
|
||||||
--
|
|
||||||
|
|
||||||
function vox_core.get_inventory_drops(pos, inventory, drops)
|
|
||||||
local inv = minetest.get_meta(pos):get_inventory()
|
|
||||||
local n = #drops
|
|
||||||
for i = 1, inv:get_size(inventory) do
|
|
||||||
local stack = inv:get_stack(inventory, i)
|
|
||||||
if stack:get_count() > 0 then
|
|
||||||
drops[n+1] = stack:to_table()
|
|
||||||
n = n + 1
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Papyrus and cactus growing
|
|
||||||
--
|
|
||||||
|
|
||||||
-- Wrapping the functions in ABM action is necessary to make overriding them possible
|
|
||||||
|
|
||||||
function vox_core.grow_cactus(pos, node)
|
|
||||||
if node.param2 >= 4 then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
pos.y = pos.y - 1
|
|
||||||
if minetest.get_item_group(minetest.get_node(pos).name, "sand") == 0 then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
pos.y = pos.y + 1
|
|
||||||
local height = 0
|
|
||||||
while node.name == "vox_core:cactus" and height < 4 do
|
|
||||||
height = height + 1
|
|
||||||
pos.y = pos.y + 1
|
|
||||||
node = minetest.get_node(pos)
|
|
||||||
end
|
|
||||||
if height == 4 or node.name ~= "air" then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
if minetest.get_node_light(pos) < 13 then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
minetest.set_node(pos, {name = "vox_core:cactus"})
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.grow_papyrus(pos, node)
|
|
||||||
pos.y = pos.y - 1
|
|
||||||
local name = minetest.get_node(pos).name
|
|
||||||
if name ~= "vox_core:dirt" and
|
|
||||||
name ~= "vox_core:dirt_with_grass" and
|
|
||||||
name ~= "vox_core:dirt_with_dry_grass" and
|
|
||||||
name ~= "vox_core:dirt_with_rainforest_litter" and
|
|
||||||
name ~= "vox_core:dry_dirt" and
|
|
||||||
name ~= "vox_core:dry_dirt_with_dry_grass" then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
if not minetest.find_node_near(pos, 3, {"group:water"}) then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
pos.y = pos.y + 1
|
|
||||||
local height = 0
|
|
||||||
while node.name == "vox_core:papyrus" and height < 4 do
|
|
||||||
height = height + 1
|
|
||||||
pos.y = pos.y + 1
|
|
||||||
node = minetest.get_node(pos)
|
|
||||||
end
|
|
||||||
if height == 4 or node.name ~= "air" then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
if minetest.get_node_light(pos) < 13 then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
minetest.set_node(pos, {name = "vox_core:papyrus"})
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
|
|
||||||
minetest.register_abm({
|
|
||||||
label = "Grow cactus",
|
|
||||||
nodenames = {"vox_core:cactus"},
|
|
||||||
neighbors = {"group:sand"},
|
|
||||||
interval = 12,
|
|
||||||
chance = 83,
|
|
||||||
action = function(...)
|
|
||||||
vox_core.grow_cactus(...)
|
|
||||||
end
|
|
||||||
})
|
|
||||||
|
|
||||||
minetest.register_abm({
|
|
||||||
label = "Grow papyrus",
|
|
||||||
nodenames = {"vox_core:papyrus"},
|
|
||||||
-- Grows on the dirt and surface dirt nodes of the biomes papyrus appears in,
|
|
||||||
-- including the old savanna nodes.
|
|
||||||
-- 'vox_core:dirt_with_grass' is here only because it was allowed before.
|
|
||||||
neighbors = {
|
|
||||||
"vox_core:dirt",
|
|
||||||
"vox_core:dirt_with_grass",
|
|
||||||
"vox_core:dirt_with_dry_grass",
|
|
||||||
"vox_core:dirt_with_rainforest_litter",
|
|
||||||
"vox_core:dry_dirt",
|
|
||||||
"vox_core:dry_dirt_with_dry_grass",
|
|
||||||
},
|
|
||||||
interval = 14,
|
|
||||||
chance = 71,
|
|
||||||
action = function(...)
|
|
||||||
vox_core.grow_papyrus(...)
|
|
||||||
end
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Dig upwards
|
|
||||||
--
|
|
||||||
|
|
||||||
local in_dig_up = false
|
|
||||||
|
|
||||||
function vox_core.dig_up(pos, node, digger, max_height)
|
|
||||||
if in_dig_up then return end -- Do not recurse
|
|
||||||
if digger == nil then return end
|
|
||||||
max_height = max_height or 100
|
|
||||||
|
|
||||||
in_dig_up = true
|
|
||||||
for y = 1, max_height do
|
|
||||||
local up_pos = vector.offset(pos, 0, y, 0)
|
|
||||||
local up_node = minetest.get_node(up_pos)
|
|
||||||
if up_node.name ~= node.name then
|
|
||||||
break
|
|
||||||
end
|
|
||||||
if not minetest.node_dig(up_pos, up_node, digger) then
|
|
||||||
break
|
|
||||||
end
|
|
||||||
end
|
|
||||||
in_dig_up = false
|
|
||||||
end
|
|
||||||
|
|
||||||
-- errors are hard to handle, instead we rely on resetting this value the next step
|
|
||||||
minetest.register_globalstep(function()
|
|
||||||
in_dig_up = false
|
|
||||||
end)
|
|
||||||
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Fence registration helper
|
|
||||||
--
|
|
||||||
local fence_collision_extra = minetest.settings:get_bool("enable_fence_tall") and 3/8 or 0
|
|
||||||
|
|
||||||
function vox_core.register_fence(name, def)
|
|
||||||
local fence_texture = "default_fence_overlay.png^" .. def.texture ..
|
|
||||||
"^default_fence_overlay.png^[makealpha:255,126,126"
|
|
||||||
-- Allow almost everything to be overridden
|
|
||||||
local default_fields = {
|
|
||||||
paramtype = "light",
|
|
||||||
drawtype = "nodebox",
|
|
||||||
node_box = {
|
|
||||||
type = "connected",
|
|
||||||
fixed = {-1/8, -1/2, -1/8, 1/8, 1/2, 1/8},
|
|
||||||
-- connect_top =
|
|
||||||
-- connect_bottom =
|
|
||||||
connect_front = {{-1/16, 3/16, -1/2, 1/16, 5/16, -1/8 },
|
|
||||||
{-1/16, -5/16, -1/2, 1/16, -3/16, -1/8 }},
|
|
||||||
connect_left = {{-1/2, 3/16, -1/16, -1/8, 5/16, 1/16},
|
|
||||||
{-1/2, -5/16, -1/16, -1/8, -3/16, 1/16}},
|
|
||||||
connect_back = {{-1/16, 3/16, 1/8, 1/16, 5/16, 1/2 },
|
|
||||||
{-1/16, -5/16, 1/8, 1/16, -3/16, 1/2 }},
|
|
||||||
connect_right = {{ 1/8, 3/16, -1/16, 1/2, 5/16, 1/16},
|
|
||||||
{ 1/8, -5/16, -1/16, 1/2, -3/16, 1/16}}
|
|
||||||
},
|
|
||||||
collision_box = {
|
|
||||||
type = "connected",
|
|
||||||
fixed = {-1/8, -1/2, -1/8, 1/8, 1/2 + fence_collision_extra, 1/8},
|
|
||||||
-- connect_top =
|
|
||||||
-- connect_bottom =
|
|
||||||
connect_front = {-1/8, -1/2, -1/2, 1/8, 1/2 + fence_collision_extra, -1/8},
|
|
||||||
connect_left = {-1/2, -1/2, -1/8, -1/8, 1/2 + fence_collision_extra, 1/8},
|
|
||||||
connect_back = {-1/8, -1/2, 1/8, 1/8, 1/2 + fence_collision_extra, 1/2},
|
|
||||||
connect_right = { 1/8, -1/2, -1/8, 1/2, 1/2 + fence_collision_extra, 1/8}
|
|
||||||
},
|
|
||||||
connects_to = {"group:fence", "group:wood", "group:tree", "group:wall"},
|
|
||||||
inventory_image = fence_texture,
|
|
||||||
wield_image = fence_texture,
|
|
||||||
tiles = {def.texture},
|
|
||||||
sunlight_propagates = true,
|
|
||||||
is_ground_content = false,
|
|
||||||
groups = {},
|
|
||||||
}
|
|
||||||
for k, v in pairs(default_fields) do
|
|
||||||
if def[k] == nil then
|
|
||||||
def[k] = v
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Always add to the fence group, even if no group provided
|
|
||||||
def.groups.fence = 1
|
|
||||||
|
|
||||||
local material = def.material
|
|
||||||
def.texture = nil
|
|
||||||
def.material = nil
|
|
||||||
|
|
||||||
minetest.register_node(name, def)
|
|
||||||
|
|
||||||
-- Register crafting recipe, trim away starting colon if any
|
|
||||||
if not material then return end
|
|
||||||
name = string.gsub(name, "^:", "")
|
|
||||||
minetest.register_craft({
|
|
||||||
output = name .. " 4",
|
|
||||||
recipe = {
|
|
||||||
{ material, 'group:stick', material },
|
|
||||||
{ material, 'group:stick', material },
|
|
||||||
}
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Fence rail registration helper
|
|
||||||
--
|
|
||||||
|
|
||||||
function vox_core.register_fence_rail(name, def)
|
|
||||||
local fence_rail_texture = "default_fence_rail_overlay.png^" .. def.texture ..
|
|
||||||
"^default_fence_rail_overlay.png^[makealpha:255,126,126"
|
|
||||||
-- Allow almost everything to be overridden
|
|
||||||
local default_fields = {
|
|
||||||
paramtype = "light",
|
|
||||||
drawtype = "nodebox",
|
|
||||||
node_box = {
|
|
||||||
type = "connected",
|
|
||||||
fixed = {{-1/16, 3/16, -1/16, 1/16, 5/16, 1/16},
|
|
||||||
{-1/16, -3/16, -1/16, 1/16, -5/16, 1/16}},
|
|
||||||
-- connect_top =
|
|
||||||
-- connect_bottom =
|
|
||||||
connect_front = {{-1/16, 3/16, -1/2, 1/16, 5/16, -1/16},
|
|
||||||
{-1/16, -5/16, -1/2, 1/16, -3/16, -1/16}},
|
|
||||||
connect_left = {{-1/2, 3/16, -1/16, -1/16, 5/16, 1/16},
|
|
||||||
{-1/2, -5/16, -1/16, -1/16, -3/16, 1/16}},
|
|
||||||
connect_back = {{-1/16, 3/16, 1/16, 1/16, 5/16, 1/2 },
|
|
||||||
{-1/16, -5/16, 1/16, 1/16, -3/16, 1/2 }},
|
|
||||||
connect_right = {{ 1/16, 3/16, -1/16, 1/2, 5/16, 1/16},
|
|
||||||
{ 1/16, -5/16, -1/16, 1/2, -3/16, 1/16}}
|
|
||||||
},
|
|
||||||
collision_box = {
|
|
||||||
type = "connected",
|
|
||||||
fixed = {-1/8, -1/2, -1/8, 1/8, 1/2 + fence_collision_extra, 1/8},
|
|
||||||
-- connect_top =
|
|
||||||
-- connect_bottom =
|
|
||||||
connect_front = {-1/8, -1/2, -1/2, 1/8, 1/2 + fence_collision_extra, -1/8},
|
|
||||||
connect_left = {-1/2, -1/2, -1/8, -1/8, 1/2 + fence_collision_extra, 1/8},
|
|
||||||
connect_back = {-1/8, -1/2, 1/8, 1/8, 1/2 + fence_collision_extra, 1/2},
|
|
||||||
connect_right = { 1/8, -1/2, -1/8, 1/2, 1/2 + fence_collision_extra, 1/8}
|
|
||||||
},
|
|
||||||
connects_to = {"group:fence", "group:wall"},
|
|
||||||
inventory_image = fence_rail_texture,
|
|
||||||
wield_image = fence_rail_texture,
|
|
||||||
tiles = {def.texture},
|
|
||||||
sunlight_propagates = true,
|
|
||||||
is_ground_content = false,
|
|
||||||
groups = {},
|
|
||||||
}
|
|
||||||
for k, v in pairs(default_fields) do
|
|
||||||
if def[k] == nil then
|
|
||||||
def[k] = v
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Always add to the fence group, even if no group provided
|
|
||||||
def.groups.fence = 1
|
|
||||||
|
|
||||||
local material = def.material
|
|
||||||
def.texture = nil
|
|
||||||
def.material = nil
|
|
||||||
|
|
||||||
minetest.register_node(name, def)
|
|
||||||
|
|
||||||
-- Register crafting recipe, trim away starting colon if any
|
|
||||||
if not material then return end
|
|
||||||
name = string.gsub(name, "^:", "")
|
|
||||||
minetest.register_craft({
|
|
||||||
output = name .. " 16",
|
|
||||||
recipe = {
|
|
||||||
{ material, material },
|
|
||||||
{ "", ""},
|
|
||||||
{ material, material },
|
|
||||||
}
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Mese post registration helper
|
|
||||||
--
|
|
||||||
|
|
||||||
function vox_core.register_mesepost(name, def)
|
|
||||||
local post_texture = def.texture .. "^default_mese_post_light_side.png^[makealpha:0,0,0"
|
|
||||||
local post_texture_dark = def.texture .. "^default_mese_post_light_side_dark.png^[makealpha:0,0,0"
|
|
||||||
-- Allow almost everything to be overridden
|
|
||||||
local default_fields = {
|
|
||||||
wield_image = post_texture,
|
|
||||||
drawtype = "nodebox",
|
|
||||||
node_box = {
|
|
||||||
type = "fixed",
|
|
||||||
fixed = {
|
|
||||||
{-2 / 16, -8 / 16, -2 / 16, 2 / 16, 8 / 16, 2 / 16},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
paramtype = "light",
|
|
||||||
tiles = {def.texture, def.texture, post_texture_dark, post_texture_dark, post_texture, post_texture},
|
|
||||||
use_texture_alpha = "opaque",
|
|
||||||
light_source = vox_core.LIGHT_MAX,
|
|
||||||
sunlight_propagates = true,
|
|
||||||
is_ground_content = false,
|
|
||||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
|
||||||
sounds = vox_core.node_sound_wood_defaults(),
|
|
||||||
}
|
|
||||||
for k, v in pairs(default_fields) do
|
|
||||||
if def[k] == nil then
|
|
||||||
def[k] = v
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
local material = def.material
|
|
||||||
def.texture = nil
|
|
||||||
def.material = nil
|
|
||||||
|
|
||||||
minetest.register_node(name, def)
|
|
||||||
|
|
||||||
-- Register crafting recipe, trim away starting colon if any
|
|
||||||
if not material then return end
|
|
||||||
name = string.gsub(name, "^:", "")
|
|
||||||
minetest.register_craft({
|
|
||||||
output = name .. " 4",
|
|
||||||
recipe = {
|
|
||||||
{'', 'vox_core:glass', ''},
|
|
||||||
{'vox_core:mese_crystal', 'vox_core:mese_crystal', 'vox_core:mese_crystal'},
|
|
||||||
{'', material, ''},
|
|
||||||
}
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Leafdecay
|
|
||||||
--
|
|
||||||
|
|
||||||
-- Prevent decay of placed leaves
|
|
||||||
|
|
||||||
vox_core.after_place_leaves = function(pos, placer, itemstack, pointed_thing)
|
|
||||||
if placer and placer:is_player() then
|
|
||||||
local node = minetest.get_node(pos)
|
|
||||||
node.param2 = 1
|
|
||||||
minetest.set_node(pos, node)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Leafdecay
|
|
||||||
local function leafdecay_after_destruct(pos, oldnode, def)
|
|
||||||
for _, v in pairs(minetest.find_nodes_in_area(vector.subtract(pos, def.radius),
|
|
||||||
vector.add(pos, def.radius), def.leaves)) do
|
|
||||||
local node = minetest.get_node(v)
|
|
||||||
local timer = minetest.get_node_timer(v)
|
|
||||||
if node.param2 ~= 1 and not timer:is_started() then
|
|
||||||
timer:start(math.random(20, 120) / 10)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
local movement_gravity = tonumber(
|
|
||||||
minetest.settings:get("movement_gravity")) or 9.81
|
|
||||||
|
|
||||||
local function leafdecay_on_timer(pos, def)
|
|
||||||
if minetest.find_node_near(pos, def.radius, def.trunks) then
|
|
||||||
return false
|
|
||||||
end
|
|
||||||
|
|
||||||
local node = minetest.get_node(pos)
|
|
||||||
local drops = minetest.get_node_drops(node.name)
|
|
||||||
for _, item in ipairs(drops) do
|
|
||||||
local is_leaf
|
|
||||||
for _, v in pairs(def.leaves) do
|
|
||||||
if v == item then
|
|
||||||
is_leaf = true
|
|
||||||
end
|
|
||||||
end
|
|
||||||
if minetest.get_item_group(item, "leafdecay_drop") ~= 0 or
|
|
||||||
not is_leaf then
|
|
||||||
minetest.add_item({
|
|
||||||
x = pos.x - 0.5 + math.random(),
|
|
||||||
y = pos.y - 0.5 + math.random(),
|
|
||||||
z = pos.z - 0.5 + math.random(),
|
|
||||||
}, item)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
minetest.remove_node(pos)
|
|
||||||
minetest.check_for_falling(pos)
|
|
||||||
|
|
||||||
-- spawn a few particles for the removed node
|
|
||||||
minetest.add_particlespawner({
|
|
||||||
amount = 8,
|
|
||||||
time = 0.001,
|
|
||||||
minpos = vector.subtract(pos, {x=0.5, y=0.5, z=0.5}),
|
|
||||||
maxpos = vector.add(pos, {x=0.5, y=0.5, z=0.5}),
|
|
||||||
minvel = vector.new(-0.5, -1, -0.5),
|
|
||||||
maxvel = vector.new(0.5, 0, 0.5),
|
|
||||||
minacc = vector.new(0, -movement_gravity, 0),
|
|
||||||
maxacc = vector.new(0, -movement_gravity, 0),
|
|
||||||
minsize = 0,
|
|
||||||
maxsize = 0,
|
|
||||||
node = node,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.register_leafdecay(def)
|
|
||||||
assert(def.leaves)
|
|
||||||
assert(def.trunks)
|
|
||||||
assert(def.radius)
|
|
||||||
for _, v in pairs(def.trunks) do
|
|
||||||
minetest.override_item(v, {
|
|
||||||
after_destruct = function(pos, oldnode)
|
|
||||||
leafdecay_after_destruct(pos, oldnode, def)
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
for _, v in pairs(def.leaves) do
|
|
||||||
minetest.override_item(v, {
|
|
||||||
on_timer = function(pos)
|
|
||||||
leafdecay_on_timer(pos, def)
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Convert vox_core:dirt to something that fits the environment
|
|
||||||
--
|
|
||||||
|
|
||||||
minetest.register_abm({
|
|
||||||
label = "Grass spread",
|
|
||||||
nodenames = {"vox_core:dirt"},
|
|
||||||
neighbors = {
|
|
||||||
"air",
|
|
||||||
"group:grass",
|
|
||||||
"group:dry_grass",
|
|
||||||
"vox_core:snow",
|
|
||||||
},
|
|
||||||
interval = 6,
|
|
||||||
chance = 50,
|
|
||||||
catch_up = false,
|
|
||||||
action = function(pos, node)
|
|
||||||
-- Check for darkness: night, shadow or under a light-blocking node
|
|
||||||
-- Returns if ignore above
|
|
||||||
local above = {x = pos.x, y = pos.y + 1, z = pos.z}
|
|
||||||
if (minetest.get_node_light(above) or 0) < 13 then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Look for spreading dirt-type neighbours
|
|
||||||
local p2 = minetest.find_node_near(pos, 1, "group:spreading_dirt_type")
|
|
||||||
if p2 then
|
|
||||||
local n3 = minetest.get_node(p2)
|
|
||||||
minetest.set_node(pos, {name = n3.name})
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Else, any seeding nodes on top?
|
|
||||||
local name = minetest.get_node(above).name
|
|
||||||
-- Snow check is cheapest, so comes first
|
|
||||||
if name == "vox_core:snow" then
|
|
||||||
minetest.set_node(pos, {name = "vox_core:dirt_with_snow"})
|
|
||||||
elseif minetest.get_item_group(name, "grass") ~= 0 then
|
|
||||||
minetest.set_node(pos, {name = "vox_core:dirt_with_grass"})
|
|
||||||
elseif minetest.get_item_group(name, "dry_grass") ~= 0 then
|
|
||||||
minetest.set_node(pos, {name = "vox_core:dirt_with_dry_grass"})
|
|
||||||
end
|
|
||||||
end
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Grass and dry grass removed in darkness
|
|
||||||
--
|
|
||||||
|
|
||||||
minetest.register_abm({
|
|
||||||
label = "Grass covered",
|
|
||||||
nodenames = {"group:spreading_dirt_type", "vox_core:dry_dirt_with_dry_grass"},
|
|
||||||
interval = 8,
|
|
||||||
chance = 50,
|
|
||||||
catch_up = false,
|
|
||||||
action = function(pos, node)
|
|
||||||
local above = {x = pos.x, y = pos.y + 1, z = pos.z}
|
|
||||||
local name = minetest.get_node(above).name
|
|
||||||
local nodedef = minetest.registered_nodes[name]
|
|
||||||
if name ~= "ignore" and nodedef and not ((nodedef.sunlight_propagates or
|
|
||||||
nodedef.paramtype == "light") and
|
|
||||||
nodedef.liquidtype == "none") then
|
|
||||||
if node.name == "vox_core:dry_dirt_with_dry_grass" then
|
|
||||||
minetest.set_node(pos, {name = "vox_core:dry_dirt"})
|
|
||||||
else
|
|
||||||
minetest.set_node(pos, {name = "vox_core:dirt"})
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Moss growth on cobble near water
|
|
||||||
--
|
|
||||||
|
|
||||||
local moss_correspondences = {
|
|
||||||
["vox_core:cobble"] = "vox_core:mossycobble",
|
|
||||||
["vox_structural:slab_cobble"] = "vox_structural:slab_mossycobble",
|
|
||||||
["vox_structural:stair_cobble"] = "vox_structural:stair_mossycobble",
|
|
||||||
["vox_structural:stair_inner_cobble"] = "vox_structural:stair_inner_mossycobble",
|
|
||||||
["vox_structural:stair_outer_cobble"] = "vox_structural:stair_outer_mossycobble",
|
|
||||||
["vox_structural:cobble"] = "vox_structural:mossycobble",
|
|
||||||
}
|
|
||||||
minetest.register_abm({
|
|
||||||
label = "Moss growth",
|
|
||||||
nodenames = {"vox_core:cobble", "vox_structural:slab_cobble", "vox_structural:stair_cobble",
|
|
||||||
"vox_structural:stair_inner_cobble", "vox_structural:stair_outer_cobble",
|
|
||||||
"vox_structural:cobble"},
|
|
||||||
neighbors = {"group:water"},
|
|
||||||
interval = 16,
|
|
||||||
chance = 200,
|
|
||||||
catch_up = false,
|
|
||||||
action = function(pos, node)
|
|
||||||
node.name = moss_correspondences[node.name]
|
|
||||||
if node.name then
|
|
||||||
minetest.set_node(pos, node)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
})
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Register a craft to copy the metadata of items
|
|
||||||
--
|
|
||||||
|
|
||||||
function vox_core.register_craft_metadata_copy(ingredient, result)
|
|
||||||
minetest.register_craft({
|
|
||||||
type = "shapeless",
|
|
||||||
output = result,
|
|
||||||
recipe = {ingredient, result}
|
|
||||||
})
|
|
||||||
|
|
||||||
minetest.register_on_craft(function(itemstack, player, old_craft_grid, craft_inv)
|
|
||||||
if itemstack:get_name() ~= result then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
local original
|
|
||||||
local index
|
|
||||||
for i = 1, #old_craft_grid do
|
|
||||||
if old_craft_grid[i]:get_name() == result then
|
|
||||||
original = old_craft_grid[i]
|
|
||||||
index = i
|
|
||||||
end
|
|
||||||
end
|
|
||||||
if not original then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
local copymeta = original:get_meta():to_table()
|
|
||||||
itemstack:get_meta():from_table(copymeta)
|
|
||||||
-- put the book with metadata back in the craft grid
|
|
||||||
craft_inv:set_stack("craft", index, original)
|
|
||||||
end)
|
|
||||||
end
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Log API / helpers
|
|
||||||
--
|
|
||||||
|
|
||||||
local log_non_player_actions = minetest.settings:get_bool("log_non_player_actions", false)
|
|
||||||
|
|
||||||
local is_pos = function(v)
|
|
||||||
return type(v) == "table" and
|
|
||||||
type(v.x) == "number" and type(v.y) == "number" and type(v.z) == "number"
|
|
||||||
end
|
|
||||||
|
|
||||||
function vox_core.log_player_action(player, ...)
|
|
||||||
local msg = player:get_player_name()
|
|
||||||
if player.is_fake_player or not player:is_player() then
|
|
||||||
if not log_non_player_actions then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
msg = msg .. "(" .. (type(player.is_fake_player) == "string"
|
|
||||||
and player.is_fake_player or "*") .. ")"
|
|
||||||
end
|
|
||||||
for _, v in ipairs({...}) do
|
|
||||||
-- translate pos
|
|
||||||
local part = is_pos(v) and minetest.pos_to_string(v) or v
|
|
||||||
-- no leading spaces before punctuation marks
|
|
||||||
msg = msg .. (string.match(part, "^[;,.]") and "" or " ") .. part
|
|
||||||
end
|
|
||||||
minetest.log("action", msg)
|
|
||||||
end
|
|
||||||
|
|
||||||
local nop = function() end
|
|
||||||
function vox_core.set_inventory_action_loggers(def, name)
|
|
||||||
local on_move = def.on_metadata_inventory_move or nop
|
|
||||||
def.on_metadata_inventory_move = function(pos, from_list, from_index,
|
|
||||||
to_list, to_index, count, player)
|
|
||||||
vox_core.log_player_action(player, "moves stuff in", name, "at", pos)
|
|
||||||
return on_move(pos, from_list, from_index, to_list, to_index, count, player)
|
|
||||||
end
|
|
||||||
local on_put = def.on_metadata_inventory_put or nop
|
|
||||||
def.on_metadata_inventory_put = function(pos, listname, index, stack, player)
|
|
||||||
vox_core.log_player_action(player, "moves", stack:get_name(), stack:get_count(), "to", name, "at", pos)
|
|
||||||
return on_put(pos, listname, index, stack, player)
|
|
||||||
end
|
|
||||||
local on_take = def.on_metadata_inventory_take or nop
|
|
||||||
def.on_metadata_inventory_take = function(pos, listname, index, stack, player)
|
|
||||||
vox_core.log_player_action(player, "takes", stack:get_name(), stack:get_count(), "from", name, "at", pos)
|
|
||||||
return on_take(pos, listname, index, stack, player)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
--
|
|
||||||
-- NOTICE: This method is not an official part of the API yet.
|
|
||||||
-- This method may change in future.
|
|
||||||
--
|
|
||||||
|
|
||||||
function vox_core.can_interact_with_node(player, pos)
|
|
||||||
if player and player:is_player() then
|
|
||||||
if minetest.check_player_privs(player, "protection_bypass") then
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
else
|
|
||||||
return false
|
|
||||||
end
|
|
||||||
|
|
||||||
local meta = minetest.get_meta(pos)
|
|
||||||
local owner = meta:get_string("owner")
|
|
||||||
|
|
||||||
if not owner or owner == "" or owner == player:get_player_name() then
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Is player wielding the right key?
|
|
||||||
local item = player:get_wielded_item()
|
|
||||||
if minetest.get_item_group(item:get_name(), "key") == 1 then
|
|
||||||
local key_meta = item:get_meta()
|
|
||||||
|
|
||||||
if key_meta:get_string("secret") == "" then
|
|
||||||
local key_oldmeta = item:get_meta():get_string("")
|
|
||||||
if key_oldmeta == "" or not minetest.parse_json(key_oldmeta) then
|
|
||||||
return false
|
|
||||||
end
|
|
||||||
|
|
||||||
key_meta:set_string("secret", minetest.parse_json(key_oldmeta).secret)
|
|
||||||
item:set_metadata("")
|
|
||||||
end
|
|
||||||
|
|
||||||
return meta:get_string("key_lock_secret") == key_meta:get_string("secret")
|
|
||||||
end
|
|
||||||
|
|
||||||
return false
|
|
||||||
end
|
|
|
@ -1,232 +0,0 @@
|
||||||
-- Gems: Diamond, Emerald, Ruby, Sapphire, Topaz, Amethyst, Opal, Onyx, Garnet, Peridot, Aquamarine, Citrine, Tourmaline, Zircon, Tanzanite, Spinel, Lapis Lazuli, Malachite, Azurite, Turquoise, Amber, Moonstone, Sunstone, Bloodstone, Agate, Jasper, Chalcedony, Chrysoprase, Carnelian, Sardonyx, Heliotrope, Alexandrite, Tiger's Eye, Serpentine, Rhodonite
|
|
||||||
core.register_node("vox_core:diamond_ore", {
|
|
||||||
description = "Diamond Ore",
|
|
||||||
tiles = {"vox_diamond_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("diamond_ore", "vox_core:diamond_ore")
|
|
||||||
core.register_alias("default:stone_with_diamond", "vox_core:diamond_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:emerald_ore", {
|
|
||||||
description = "Emerald Ore",
|
|
||||||
tiles = {"vox_emerald_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("emerald_ore", "vox_core:emerald_ore")
|
|
||||||
core.register_alias("default:stone_with_emerald", "vox_core:emerald_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:ruby_ore", {
|
|
||||||
description = "Ruby Ore",
|
|
||||||
tiles = {"vox_ruby_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("ruby_ore", "vox_core:ruby_ore")
|
|
||||||
core.register_alias("default:stone_with_ruby", "vox_core:ruby_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:sapphire_ore", {
|
|
||||||
description = "Sapphire Ore",
|
|
||||||
tiles = {"vox_sapphire_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("sapphire_ore", "vox_core:sapphire_ore")
|
|
||||||
core.register_alias("default:stone_with_sapphire", "vox_core:sapphire_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:topaz_ore", {
|
|
||||||
description = "Topaz Ore",
|
|
||||||
tiles = {"vox_topaz_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("topaz_ore", "vox_core:topaz_ore")
|
|
||||||
core.register_alias("default:stone_with_topaz", "vox_core:topaz_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:amethyst_ore", {
|
|
||||||
description = "Amethyst Ore",
|
|
||||||
tiles = {"vox_amethyst_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("amethyst_ore", "vox_core:amethyst_ore")
|
|
||||||
core.register_alias("default:stone_with_amethyst", "vox_core:amethyst_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:opal_ore", {
|
|
||||||
description = "Opal Ore",
|
|
||||||
tiles = {"vox_opal_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("opal_ore", "vox_core:opal_ore")
|
|
||||||
core.register_alias("default:stone_with_opal", "vox_core:opal_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:onyx_ore", {
|
|
||||||
description = "Onyx Ore",
|
|
||||||
tiles = {"vox_onyx_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("onyx_ore", "vox_core:onyx_ore")
|
|
||||||
core.register_alias("default:stone_with_onyx", "vox_core:onyx_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:garnet_ore", {
|
|
||||||
description = "Garnet Ore",
|
|
||||||
tiles = {"vox_garnet_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("garnet_ore", "vox_core:garnet_ore")
|
|
||||||
core.register_alias("default:stone_with_garnet", "vox_core:garnet_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:peridot_ore", {
|
|
||||||
description = "Peridot Ore",
|
|
||||||
tiles = {"vox_peridot_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("peridot_ore", "vox_core:peridot_ore")
|
|
||||||
core.register_alias("default:stone_with_peridot", "vox_core:peridot_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:aquamarine_ore", {
|
|
||||||
description = "Aquamarine Ore",
|
|
||||||
tiles = {"vox_aquamarine_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("aquamarine_ore", "vox_core:aquamarine_ore")
|
|
||||||
core.register_alias("default:stone_with_aquamarine", "vox_core:aquamarine_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:citrine_ore", {
|
|
||||||
description = "Citrine Ore",
|
|
||||||
tiles = {"vox_citrine_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("citrine_ore", "vox_core:citrine_ore")
|
|
||||||
core.register_alias("default:stone_with_citrine", "vox_core:citrine_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:tourmaline_ore", {
|
|
||||||
description = "Tourmaline Ore",
|
|
||||||
tiles = {"vox_tourmaline_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("tourmaline_ore", "vox_core:tourmaline_ore")
|
|
||||||
core.register_alias("default:stone_with_tourmaline", "vox_core:tourmaline_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:zircon_ore", {
|
|
||||||
description = "Zircon Ore",
|
|
||||||
tiles = {"vox_zircon_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("zircon_ore", "vox_core:zircon_ore")
|
|
||||||
core.register_alias("default:stone_with_zircon", "vox_core:zircon_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:tanzanite_ore", {
|
|
||||||
description = "Tanzanite Ore",
|
|
||||||
tiles = {"vox_tanzanite_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("tanzanite_ore", "vox_core:tanzanite_ore")
|
|
||||||
core.register_alias("default:stone_with_tanzanite", "vox_core:tanzanite_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:spinel_ore", {
|
|
||||||
description = "Spinel Ore",
|
|
||||||
tiles = {"vox_spinel_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("spinel_ore", "vox_core:spinel_ore")
|
|
||||||
core.register_alias("default:stone_with_spinel", "vox_core:spinel_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:lapis_lazuli_ore", {
|
|
||||||
description = "Lapis Lazuli Ore",
|
|
||||||
tiles = {"vox_lapis_lazuli_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("lapis_lazuli_ore", "vox_core:lapis_lazuli_ore")
|
|
||||||
core.register_alias("default:stone_with_lapis_lazuli", "vox_core:lapis_lazuli_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:malachite_ore", {
|
|
||||||
description = "Malachite Ore",
|
|
||||||
tiles = {"vox_malachite_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("malachite_ore", "vox_core:malachite_ore")
|
|
||||||
core.register_alias("default:stone_with_malachite", "vox_core:malachite_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:azurite_ore", {
|
|
||||||
description = "Azurite Ore",
|
|
||||||
tiles = {"vox_azurite_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("azurite_ore", "vox_core:azurite_ore")
|
|
||||||
core.register_alias("default:stone_with_azurite", "vox_core:azurite_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:turquoise_ore", {
|
|
||||||
description = "Turquoise Ore",
|
|
||||||
tiles = {"vox_turquoise_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("turquoise_ore", "vox_core:turquoise_ore")
|
|
||||||
core.register_alias("default:stone_with_turquoise", "vox_core:turquoise_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:amber_ore", {
|
|
||||||
description = "Amber Ore",
|
|
||||||
tiles = {"vox_amber_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("amber_ore", "vox_core:amber_ore")
|
|
||||||
core.register_alias("default:stone_with_amber", "vox_core:amber_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:moonstone_ore", {
|
|
||||||
description = "Moonstone Ore",
|
|
||||||
tiles = {"vox_moonstone_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("moonstone_ore", "vox_core:moonstone_ore")
|
|
||||||
core.register_alias("default:stone_with_moonstone", "vox_core:moonstone_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:sunstone_ore", {
|
|
||||||
description = "Sunstone Ore",
|
|
||||||
tiles = {"vox_sunstone_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("sunstone_ore", "vox_core:sunstone_ore")
|
|
||||||
core.register_alias("default:stone_with_sunstone", "vox_core:sunstone_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:bloodstone_ore", {
|
|
||||||
description = "Bloodstone Ore",
|
|
||||||
tiles = {"vox_bloodstone_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("bloodstone_ore", "vox_core:bloodstone_ore")
|
|
||||||
core.register_alias("default:stone_with_bloodstone", "vox_core:bloodstone_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:agate_ore", {
|
|
||||||
description = "Agate Ore",
|
|
||||||
tiles = {"vox_agate_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("agate_ore", "vox_core:agate_ore")
|
|
||||||
core.register_alias("default:stone_with_agate", "vox_core:agate_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:jasper_ore", {
|
|
||||||
description = "Jasper Ore",
|
|
||||||
tiles = {"vox_jasper_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("jasper_ore", "vox_core:jasper_ore")
|
|
||||||
core.register_alias("default:stone_with_jasper", "vox_core:jasper_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:chalcedony_ore", {
|
|
||||||
description = "Chalcedony Ore",
|
|
||||||
tiles = {"vox_chalcedony_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("chalcedony_ore", "vox_core:chalcedony_ore")
|
|
||||||
core.register_alias("default:stone_with_chalcedony", "vox_core:chalcedony_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:chrysoprase_ore", {
|
|
||||||
description = "Chrysoprase Ore",
|
|
||||||
tiles = {"vox_chrysoprase_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("chrysoprase_ore", "vox_core:chrysoprase_ore")
|
|
||||||
core.register_alias("default:stone_with_chrysoprase", "vox_core:chrysoprase_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:carnelian_ore", {
|
|
||||||
description = "Carnelian Ore",
|
|
||||||
tiles = {"vox_carnelian_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("carnelian_ore", "vox_core:carnelian_ore")
|
|
||||||
core.register_alias("default:stone_with_carnelian", "vox_core:carnelian_ore")
|
|
|
@ -1,794 +0,0 @@
|
||||||
-- -------------------------------------------------------------------------- --
|
|
||||||
-- Liquids --
|
|
||||||
-- -------------------------------------------------------------------------- --
|
|
||||||
-- Water
|
|
||||||
minetest.register_node("vox_core:water_source", {
|
|
||||||
description = ("Water Source"),
|
|
||||||
drawtype = "liquid",
|
|
||||||
waving = 3,
|
|
||||||
tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png",
|
|
||||||
backface_culling = false,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 2.0,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png",
|
|
||||||
backface_culling = true,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 2.0,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
use_texture_alpha = "blend",
|
|
||||||
paramtype = "light",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
is_ground_content = false,
|
|
||||||
drop = "",
|
|
||||||
drowning = 1,
|
|
||||||
liquidtype = "source",
|
|
||||||
liquid_alternative_flowing = "vox_core:water_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:water_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 103, r = 30, g = 60, b = 90},
|
|
||||||
groups = {water = 3, liquid = 3, cools_lava = 1},
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Flowing Water
|
|
||||||
minetest.register_node("vox_core:water_flowing", {
|
|
||||||
description = ("Flowing Water"),
|
|
||||||
drawtype = "flowingliquid",
|
|
||||||
waving = 3,
|
|
||||||
tiles = {"default_water.png"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_flowing_animated.png",
|
|
||||||
backface_culling = false,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.5,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name = "default_water_flowing_animated.png",
|
|
||||||
backface_culling = true,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.5,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
use_texture_alpha = "blend",
|
|
||||||
paramtype = "light",
|
|
||||||
paramtype2 = "flowingliquid",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
is_ground_content = false,
|
|
||||||
drop = "",
|
|
||||||
drowning = 1,
|
|
||||||
liquidtype = "flowing",
|
|
||||||
liquid_alternative_flowing = "vox_core:water_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:water_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 103, r = 30, g = 60, b = 90},
|
|
||||||
groups = {water = 3, liquid = 3, not_in_creative_inventory = 1, cools_lava = 1},
|
|
||||||
})
|
|
||||||
|
|
||||||
-- River Water
|
|
||||||
core.register_node("vox_core:river_water_source", {
|
|
||||||
description = "River Water Source",
|
|
||||||
drawtype = "liquid",
|
|
||||||
tiles = {
|
|
||||||
{
|
|
||||||
name = "default_river_water_source_animated.png",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 2.0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_river_water_source_animated.png",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
drowning = 1,
|
|
||||||
liquidtype = "source",
|
|
||||||
liquid_alternative_flowing = "vox_core:river_water_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:river_water_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 103, r = 30, g = 60, b = 90},
|
|
||||||
groups = {water = 3, liquid = 3, puts_out_fire = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Flowing River Water
|
|
||||||
core.register_node("vox_core:river_water_flowing", {
|
|
||||||
description = "Flowing River Water",
|
|
||||||
drawtype = "flowingliquid",
|
|
||||||
tiles = {"default_river_water_flowing_animated.png"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_river_water_flowing_animated.png",
|
|
||||||
backface_culling = false,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
paramtype2 = "flowingliquid",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
drowning = 1,
|
|
||||||
liquidtype = "flowing",
|
|
||||||
liquid_alternative_flowing = "vox_core:river_water_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:river_water_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 103, r = 30, g = 60, b = 90},
|
|
||||||
groups = {water = 3, liquid = 3, puts_out_fire = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Lava
|
|
||||||
core.register_node("vox_core:lava_source", {
|
|
||||||
description = "Lava Source",
|
|
||||||
drawtype = "liquid",
|
|
||||||
tiles = {
|
|
||||||
{
|
|
||||||
name = "default_lava_source_animated.png",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 2.0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_lava_source_animated.png",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "source",
|
|
||||||
liquid_alternative_flowing = "vox_core:lava_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:lava_source",
|
|
||||||
liquid_viscosity = 7,
|
|
||||||
post_effect_color = {a = 240, r = 255, g = 64, b = 0},
|
|
||||||
groups = {lava = 3, liquid = 3, hot = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Flowing Lava
|
|
||||||
core.register_node("vox_core:lava_flowing", {
|
|
||||||
description = "Flowing Lava",
|
|
||||||
drawtype = "flowingliquid",
|
|
||||||
tiles = {"default_lava_flowing_animated.png"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_lava_flowing_animated.png",
|
|
||||||
backface_culling = false,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
paramtype2 = "flowingliquid",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "flowing",
|
|
||||||
liquid_alternative_flowing = "vox_core:lava_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:lava_source",
|
|
||||||
liquid_viscosity = 7,
|
|
||||||
post_effect_color = {a = 240, r = 255, g = 64, b = 0},
|
|
||||||
groups = {lava = 3, liquid = 3, hot = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Oil
|
|
||||||
core.register_node("vox_core:oil_source", {
|
|
||||||
description = "Oil Source",
|
|
||||||
drawtype = "liquid",
|
|
||||||
tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png^[colorize:black:200",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 2.0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png^[colorize:black:200",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "source",
|
|
||||||
liquid_alternative_flowing = "vox_core:oil_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:oil_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 0, b = 0},
|
|
||||||
groups = {oil = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Flowing Oil
|
|
||||||
core.register_node("vox_core:oil_flowing", {
|
|
||||||
description = "Flowing Oil",
|
|
||||||
drawtype = "flowingliquid",
|
|
||||||
tiles = {"default_water_flowing_animated.png^[colorize:black:200"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_flowing_animated.png^[colorize:black:200",
|
|
||||||
backface_culling = false,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
paramtype2 = "flowingliquid",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "flowing",
|
|
||||||
liquid_alternative_flowing = "vox_core:oil_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:oil_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 0, b = 0},
|
|
||||||
groups = {oil = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Acid
|
|
||||||
core.register_node("vox_core:acid_source", {
|
|
||||||
description = "Acid Source",
|
|
||||||
drawtype = "liquid",
|
|
||||||
tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png^[colorize:green:200",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 2.0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png^[colorize:green:200",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "source",
|
|
||||||
liquid_alternative_flowing = "vox_core:acid_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:acid_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 255, b = 0},
|
|
||||||
groups = {acid = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Flowing Acid
|
|
||||||
core.register_node("vox_core:acid_flowing", {
|
|
||||||
description = "Flowing Acid",
|
|
||||||
drawtype = "flowingliquid",
|
|
||||||
tiles = {"default_water_flowing_animated.png^[colorize:green:200"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_flowing_animated.png^[colorize:green:200",
|
|
||||||
backface_culling = false,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
paramtype2 = "flowingliquid",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "flowing",
|
|
||||||
liquid_alternative_flowing = "vox_core:acid_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:acid_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 255, b = 0},
|
|
||||||
groups = {acid = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Slime
|
|
||||||
core.register_node("vox_core:slime_source", {
|
|
||||||
description = "Slime Source",
|
|
||||||
drawtype = "liquid",
|
|
||||||
tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png^[colorize:lime:200",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 2.0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png^[colorize:lime:200",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "source",
|
|
||||||
liquid_alternative_flowing = "vox_core:slime_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:slime_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 255, b = 0},
|
|
||||||
groups = {slime = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Flowing Slime
|
|
||||||
core.register_node("vox_core:slime_flowing", {
|
|
||||||
description = "Flowing Slime",
|
|
||||||
drawtype = "flowingliquid",
|
|
||||||
tiles = {"default_water_flowing_animated.png^[colorize:lime:200"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_flowing_animated.png^[colorize:lime:200",
|
|
||||||
backface_culling = false,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
paramtype2 = "flowingliquid",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "flowing",
|
|
||||||
liquid_alternative_flowing = "vox_core:slime_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:slime_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 255, b = 0},
|
|
||||||
groups = {slime = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Sewage
|
|
||||||
core.register_node("vox_core:sewage_source", {
|
|
||||||
description = "Sewage Source",
|
|
||||||
drawtype = "liquid",
|
|
||||||
tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png^[colorize:brown:200",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 2.0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png^[colorize:brown:200",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "source",
|
|
||||||
liquid_alternative_flowing = "vox_core:sewage_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:sewage_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 255, b = 0},
|
|
||||||
groups = {sewage = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Flowing Sewage
|
|
||||||
core.register_node("vox_core:sewage_flowing", {
|
|
||||||
description = "Flowing Sewage",
|
|
||||||
drawtype = "flowingliquid",
|
|
||||||
tiles = {"default_water_flowing_animated.png^[colorize:#4B5320:150"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_flowing_animated.png^[colorize:#4B5320:150",
|
|
||||||
backface_culling = false,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
paramtype2 = "flowingliquid",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "flowing",
|
|
||||||
liquid_alternative_flowing = "vox_core:sewage_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:sewage_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 255, b = 0},
|
|
||||||
groups = {sewage = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Tar
|
|
||||||
core.register_node("vox_core:tar_source", {
|
|
||||||
description = "Tar Source",
|
|
||||||
drawtype = "liquid",
|
|
||||||
tiles = {"default_water_source_animated.png^[colorize:#2F4F4F:200"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png^[colorize:#2F4F4F:200",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 2.0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "source",
|
|
||||||
liquid_alternative_flowing = "vox_core:tar_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:tar_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 0, b = 0},
|
|
||||||
groups = {tar = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Flowing Tar
|
|
||||||
core.register_node("vox_core:tar_flowing", {
|
|
||||||
description = "Flowing Tar",
|
|
||||||
drawtype = "flowingliquid",
|
|
||||||
tiles = {"default_water_flowing_animated.png^[colorize:#2F4F4F:200"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_flowing_animated.png^[colorize:#2F4F4F:200",
|
|
||||||
backface_culling = false,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
paramtype2 = "flowingliquid",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "flowing",
|
|
||||||
liquid_alternative_flowing = "vox_core:tar_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:tar_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 0, b = 0},
|
|
||||||
groups = {tar = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Oil
|
|
||||||
core.register_node("vox_core:oil_source", {
|
|
||||||
description = "Oil Source",
|
|
||||||
drawtype = "liquid",
|
|
||||||
tiles = {"default_water_source_animated.png^[colorize:#000000:200"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png^[colorize:#000000:200",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 2.0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "source",
|
|
||||||
liquid_alternative_flowing = "vox_core:oil_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:oil_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 0, b = 0},
|
|
||||||
groups = {oil = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Flowing Oil
|
|
||||||
core.register_node("vox_core:oil_flowing", {
|
|
||||||
description = "Flowing Oil",
|
|
||||||
drawtype = "flowingliquid",
|
|
||||||
tiles = {"default_water_flowing_animated.png^[colorize:#000000:200"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_flowing_animated.png^[colorize:#000000:200",
|
|
||||||
backface_culling = false,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
paramtype2 = "flowingliquid",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "flowing",
|
|
||||||
liquid_alternative_flowing = "vox_core:oil_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:oil_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 0, b = 0},
|
|
||||||
groups = {oil = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Acid
|
|
||||||
core.register_node("vox_core:acid_source", {
|
|
||||||
description = "Acid Source",
|
|
||||||
drawtype = "liquid",
|
|
||||||
tiles = {"default_water_source_animated.png^[colorize:#00FF00:150"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png^[colorize:#00FF00:150",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 2.0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "source",
|
|
||||||
liquid_alternative_flowing = "vox_core:acid_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:acid_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 255, b = 0},
|
|
||||||
groups = {acid = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Flowing Acid
|
|
||||||
core.register_node("vox_core:acid_flowing", {
|
|
||||||
description = "Flowing Acid",
|
|
||||||
drawtype = "flowingliquid",
|
|
||||||
tiles = {"default_water_flowing_animated.png^[colorize:#00FF00:150"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_flowing_animated.png^[colorize:#00FF00:150",
|
|
||||||
backface_culling = false,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
paramtype2 = "flowingliquid",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "flowing",
|
|
||||||
liquid_alternative_flowing = "vox_core:acid_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:acid_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 255, b = 0},
|
|
||||||
groups = {acid = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Slime
|
|
||||||
core.register_node("vox_core:slime_source", {
|
|
||||||
description = "Slime Source",
|
|
||||||
drawtype = "liquid",
|
|
||||||
tiles = {"default_water_source_animated.png^[colorize:#00FF00:100"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_source_animated.png^[colorize:#00FF00:100",
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 2.0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "source",
|
|
||||||
liquid_alternative_flowing = "vox_core:slime_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:slime_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 255, b = 0},
|
|
||||||
groups = {slime = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Flowing Slime
|
|
||||||
core.register_node("vox_core:slime_flowing", {
|
|
||||||
description = "Flowing Slime",
|
|
||||||
drawtype = "flowingliquid",
|
|
||||||
tiles = {"default_water_flowing_animated.png^[colorize:#00FF00:100"},
|
|
||||||
special_tiles = {
|
|
||||||
{
|
|
||||||
name = "default_water_flowing_animated.png^[colorize:#00FF00:100",
|
|
||||||
backface_culling = false,
|
|
||||||
animation = {
|
|
||||||
type = "vertical_frames",
|
|
||||||
aspect_w = 16,
|
|
||||||
aspect_h = 16,
|
|
||||||
length = 0.8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
alpha = 160,
|
|
||||||
paramtype = "light",
|
|
||||||
paramtype2 = "flowingliquid",
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
liquidtype = "flowing",
|
|
||||||
liquid_alternative_flowing = "vox_core:slime_flowing",
|
|
||||||
liquid_alternative_source = "vox_core:slime_source",
|
|
||||||
liquid_viscosity = 1,
|
|
||||||
post_effect_color = {a = 240, r = 0, g = 255, b = 0},
|
|
||||||
groups = {slime = 3, liquid = 3, igniter = 1}
|
|
||||||
})
|
|
|
@ -1,574 +0,0 @@
|
||||||
--[[
|
|
||||||
These are temporarily using Minetest Game assets for the time being.
|
|
||||||
|
|
||||||
Stone
|
|
||||||
-----
|
|
||||||
(1. Material 2. Cobble variant 3. Brick variant 4. Modified forms)
|
|
||||||
|
|
||||||
default:stone
|
|
||||||
default:cobble
|
|
||||||
default:stonebrick
|
|
||||||
default:stone_block
|
|
||||||
default:mossycobble
|
|
||||||
|
|
||||||
default:desert_stone
|
|
||||||
default:desert_cobble
|
|
||||||
default:desert_stonebrick
|
|
||||||
default:desert_stone_block
|
|
||||||
|
|
||||||
default:sandstone
|
|
||||||
default:sandstonebrick
|
|
||||||
default:sandstone_block
|
|
||||||
default:desert_sandstone
|
|
||||||
default:desert_sandstone_brick
|
|
||||||
default:desert_sandstone_block
|
|
||||||
default:silver_sandstone
|
|
||||||
default:silver_sandstone_brick
|
|
||||||
default:silver_sandstone_block
|
|
||||||
|
|
||||||
default:obsidian
|
|
||||||
default:obsidianbrick
|
|
||||||
default:obsidian_block
|
|
||||||
|
|
||||||
Soft / Non-Stone
|
|
||||||
----------------
|
|
||||||
(1. Material 2. Modified forms)
|
|
||||||
|
|
||||||
default:dirt
|
|
||||||
default:dirt_with_grass
|
|
||||||
default:dirt_with_grass_footsteps
|
|
||||||
default:dirt_with_dry_grass
|
|
||||||
default:dirt_with_snow
|
|
||||||
default:dirt_with_rainforest_litter
|
|
||||||
default:dirt_with_coniferous_litter
|
|
||||||
default:dry_dirt
|
|
||||||
default:dry_dirt_with_dry_grass
|
|
||||||
|
|
||||||
default:permafrost
|
|
||||||
default:permafrost_with_stones
|
|
||||||
default:permafrost_with_moss
|
|
||||||
|
|
||||||
default:sand
|
|
||||||
default:desert_sand
|
|
||||||
default:silver_sand
|
|
||||||
|
|
||||||
default:gravel
|
|
||||||
|
|
||||||
default:clay
|
|
||||||
|
|
||||||
default:snow
|
|
||||||
default:snowblock
|
|
||||||
default:ice
|
|
||||||
default:cave_ice
|
|
||||||
]] --
|
|
||||||
|
|
||||||
-- Bedrock
|
|
||||||
core.register_node("vox_core:bedrock", {
|
|
||||||
description = "Bedrock",
|
|
||||||
tiles = {"default_bedrock.png"},
|
|
||||||
groups = {cracky = 1}
|
|
||||||
})
|
|
||||||
core.register_alias("bedrock", "vox_core:bedrock")
|
|
||||||
core.register_alias("default:bedrock", "vox_core:bedrock")
|
|
||||||
|
|
||||||
-- Dirt
|
|
||||||
core.register_node("vox_core:dirt", {
|
|
||||||
description = "Dirt",
|
|
||||||
tiles = {"vox_dirt.png"},
|
|
||||||
groups = {crumbly = 3, soil = 1},
|
|
||||||
--sounds = node_sound_dirt_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("dirt", "vox_core:dirt")
|
|
||||||
core.register_alias("default:dirt", "vox_core:dirt")
|
|
||||||
|
|
||||||
-- Dirt with Grass
|
|
||||||
core.register_node("vox_core:dirt_with_grass", {
|
|
||||||
description = "Dirt with Grass",
|
|
||||||
tiles = {"default_grass.png", "vox_dirt.png",
|
|
||||||
{name = "vox_dirt.png^default_grass_side.png",
|
|
||||||
tileable_vertical = false}},
|
|
||||||
groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1},
|
|
||||||
drop = "vox_core:dirt",
|
|
||||||
--sounds = vox_core.node_sound_dirt_defaults({
|
|
||||||
-- footstep = {name = "default_grass_footstep", gain = 0.25},
|
|
||||||
--}),
|
|
||||||
})
|
|
||||||
|
|
||||||
core.register_node("vox_core:dirt_with_grass_footsteps", {
|
|
||||||
description = "Dirt with Grass and Footsteps",
|
|
||||||
tiles = {"default_grass.png^default_footprint.png", "vox_dirt.png",
|
|
||||||
{name = "vox_dirt.png^default_grass_side.png",
|
|
||||||
tileable_vertical = false}},
|
|
||||||
groups = {crumbly = 3, soil = 1, not_in_creative_inventory = 1},
|
|
||||||
drop = "vox_core:dirt",
|
|
||||||
--sounds = vox_core.node_sound_dirt_defaults({
|
|
||||||
-- footstep = {name = "default_grass_footstep", gain = 0.25},
|
|
||||||
--}),
|
|
||||||
})
|
|
||||||
|
|
||||||
core.register_node("vox_core:dirt_with_dry_grass", {
|
|
||||||
description = "Dirt with Savanna Grass",
|
|
||||||
tiles = {"default_dry_grass.png",
|
|
||||||
"vox_dirt.png",
|
|
||||||
{name = "vox_dirt.png^default_dry_grass_side.png",
|
|
||||||
tileable_vertical = false}},
|
|
||||||
groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1},
|
|
||||||
drop = "vox_core:dirt",
|
|
||||||
--sounds = vox_core.node_sound_dirt_defaults({
|
|
||||||
-- footstep = {name = "default_grass_footstep", gain = 0.4},
|
|
||||||
--}),
|
|
||||||
})
|
|
||||||
|
|
||||||
core.register_node("vox_core:dirt_with_snow", {
|
|
||||||
description = "Dirt with Snow",
|
|
||||||
tiles = {"default_snow.png", "vox_dirt.png",
|
|
||||||
{name = "vox_dirt.png^default_snow_side.png",
|
|
||||||
tileable_vertical = false}},
|
|
||||||
groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1, snowy = 1},
|
|
||||||
drop = "vox_core:dirt",
|
|
||||||
--sounds = vox_core.node_sound_dirt_defaults({
|
|
||||||
-- footstep = {name = "default_snow_footstep", gain = 0.2},
|
|
||||||
--}),
|
|
||||||
})
|
|
||||||
|
|
||||||
core.register_node("vox_core:dirt_with_rainforest_litter", {
|
|
||||||
description = "Dirt with Rainforest Litter",
|
|
||||||
tiles = {
|
|
||||||
"default_rainforest_litter.png",
|
|
||||||
"vox_dirt.png",
|
|
||||||
{name = "vox_dirt.png^default_rainforest_litter_side.png",
|
|
||||||
tileable_vertical = false}
|
|
||||||
},
|
|
||||||
groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1},
|
|
||||||
drop = "vox_core:dirt",
|
|
||||||
--sounds = vox_core.node_sound_dirt_defaults({
|
|
||||||
-- footstep = {name = "default_grass_footstep", gain = 0.4},
|
|
||||||
--}),
|
|
||||||
})
|
|
||||||
|
|
||||||
core.register_node("vox_core:dirt_with_coniferous_litter", {
|
|
||||||
description = "Dirt with Coniferous Litter",
|
|
||||||
tiles = {
|
|
||||||
"default_coniferous_litter.png",
|
|
||||||
"vox_dirt.png",
|
|
||||||
{name = "vox_dirt.png^default_coniferous_litter_side.png",
|
|
||||||
tileable_vertical = false}
|
|
||||||
},
|
|
||||||
groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1},
|
|
||||||
drop = "vox_core:dirt",
|
|
||||||
--sounds = vox_core.node_sound_dirt_defaults({
|
|
||||||
-- footstep = {name = "default_grass_footstep", gain = 0.4},
|
|
||||||
--}),
|
|
||||||
})
|
|
||||||
|
|
||||||
core.register_node("vox_core:dry_dirt", {
|
|
||||||
description = "Savanna Dirt",
|
|
||||||
tiles = {"default_dry_dirt.png"},
|
|
||||||
groups = {crumbly = 3, soil = 1},
|
|
||||||
--sounds = vox_core.node_sound_dirt_defaults(),
|
|
||||||
})
|
|
||||||
|
|
||||||
core.register_node("vox_core:dry_dirt_with_dry_grass", {
|
|
||||||
description = "Savanna Dirt with Savanna Grass",
|
|
||||||
tiles = {"default_dry_grass.png", "default_dry_dirt.png",
|
|
||||||
{name = "default_dry_dirt.png^default_dry_grass_side.png",
|
|
||||||
tileable_vertical = false}},
|
|
||||||
groups = {crumbly = 3, soil = 1},
|
|
||||||
drop = "vox_core:dry_dirt",
|
|
||||||
--sounds = vox_core.node_sound_dirt_defaults({
|
|
||||||
-- footstep = {name = "default_grass_footstep", gain = 0.4},
|
|
||||||
--}),
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Snow
|
|
||||||
core.register_node("vox_core:snow", {
|
|
||||||
description = "Snow",
|
|
||||||
tiles = {"default_snow.png"},
|
|
||||||
groups = {crumbly = 3}
|
|
||||||
})
|
|
||||||
core.register_alias("snow", "vox_core:snow")
|
|
||||||
core.register_alias("default:snow", "vox_core:snow")
|
|
||||||
|
|
||||||
-- Packed Snow
|
|
||||||
core.register_node("vox_core:packed_snow", {
|
|
||||||
description = "Packed Snow",
|
|
||||||
tiles = {"vox_packed_snow.png"},
|
|
||||||
groups = {crumbly = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("packed_snow", "vox_core:packed_snow")
|
|
||||||
|
|
||||||
-- Ice
|
|
||||||
core.register_node("vox_core:ice", {
|
|
||||||
description = "Ice",
|
|
||||||
tiles = {"default_ice.png"},
|
|
||||||
groups = {crumbly = 3}
|
|
||||||
})
|
|
||||||
core.register_alias("ice", "vox_core:ice")
|
|
||||||
core.register_alias("default:ice", "vox_core:ice")
|
|
||||||
|
|
||||||
-- Permafrost
|
|
||||||
core.register_node("vox_core:permafrost", {
|
|
||||||
description = "Permafrost",
|
|
||||||
tiles = {"vox_permafrost.png"},
|
|
||||||
groups = {cracky = 3},
|
|
||||||
--sounds = vox_core.node_sound_dirt_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("permafrost", "vox_core:permafrost")
|
|
||||||
|
|
||||||
-- Stone
|
|
||||||
core.register_node("vox_core:stone", {
|
|
||||||
description = "Stone",
|
|
||||||
tiles = {"default_stone.png"},
|
|
||||||
groups = {cracky = 3, stone = 1},
|
|
||||||
drop = "vox_core:cobble",
|
|
||||||
legacy_mineral = true,
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("stone", "vox_core:stone")
|
|
||||||
core.register_alias("mapgen_stone", "vox_core:stone")
|
|
||||||
-- core.register_alias("default:stone", "vox_core:stone")
|
|
||||||
|
|
||||||
-- Cobblestone
|
|
||||||
core.register_node("vox_core:cobblestone", {
|
|
||||||
description = "Cobblestone",
|
|
||||||
tiles = {"default_cobble.png"},
|
|
||||||
is_ground_content = false,
|
|
||||||
groups = {cracky = 3, stone = 2},
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("cobblestone", "vox_core:cobblestone")
|
|
||||||
core.register_alias("default:cobble", "vox_core:cobblestone")
|
|
||||||
|
|
||||||
-- Mossy Cobble
|
|
||||||
core.register_node("vox_core:mossycobble", {
|
|
||||||
description = "Mossy Cobble",
|
|
||||||
tiles = {"default_mossycobble.png"},
|
|
||||||
is_ground_content = false,
|
|
||||||
groups = {cracky = 3, stone = 1},
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("mossycobble", "vox_core:mossycobble")
|
|
||||||
core.register_alias("default:mossycobble", "vox_core:mossycobble")
|
|
||||||
|
|
||||||
-- Stone Block
|
|
||||||
core.register_node("vox_core:stone_block", {
|
|
||||||
description = "Stone Block",
|
|
||||||
tiles = {"default_stone_block.png"},
|
|
||||||
groups = {cracky = 2, stone = 1},
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("stone_block", "vox_core:stone_block")
|
|
||||||
core.register_alias("default:stone_block", "vox_core:stone_block")
|
|
||||||
|
|
||||||
-- Stone Brick
|
|
||||||
core.register_node("vox_core:stone_brick", {
|
|
||||||
description = "Stone Brick",
|
|
||||||
tiles = {"default_stone_brick.png"},
|
|
||||||
groups = {cracky = 2, stone = 1},
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("stone_brick", "vox_core:stone_brick")
|
|
||||||
core.register_alias("default:stonebrick", "vox_core:stone_brick")
|
|
||||||
|
|
||||||
-- Bluestone
|
|
||||||
core.register_node("vox_core:bluestone", {
|
|
||||||
description = "Bluestone",
|
|
||||||
tiles = {"vox_bluestone.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("bluestone", "vox_core:bluestone")
|
|
||||||
|
|
||||||
-- Sand
|
|
||||||
-- (I don't like sand. It's coarse and rough and irritating and it gets everywhere.)
|
|
||||||
core.register_node("vox_core:sand", {
|
|
||||||
description = "Sand",
|
|
||||||
tiles = {"default_sand.png"},
|
|
||||||
groups = {crumbly = 3, falling_node = 1, sand = 1},
|
|
||||||
--sounds = vox_core.node_sound_sand_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("sand", "vox_core:sand")
|
|
||||||
core.register_alias("default:sand", "vox_core:sand")
|
|
||||||
|
|
||||||
-- Desert Stone
|
|
||||||
core.register_node("vox_core:desert_stone", {
|
|
||||||
description = "Desert Stone",
|
|
||||||
tiles = {"default_desert_stone.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("desert_stone", "vox_core:desert_stone")
|
|
||||||
core.register_alias("default:desert_stone", "vox_core:desert_stone")
|
|
||||||
|
|
||||||
-- Desert Sand
|
|
||||||
core.register_node("vox_core:desert_sand", {
|
|
||||||
description = "Desert Sand",
|
|
||||||
tiles = {"default_desert_sand.png"},
|
|
||||||
groups = {crumbly = 3}
|
|
||||||
})
|
|
||||||
core.register_alias("desert_sand", "vox_core:desert_sand")
|
|
||||||
core.register_alias("default:desert_sand", "vox_core:desert_sand")
|
|
||||||
|
|
||||||
-- Sulfur Crust
|
|
||||||
core.register_node("vox_core:sulfur_crust", {
|
|
||||||
description = "Sulfur Crust",
|
|
||||||
tiles = {"vox_sulfur_crust.png"},
|
|
||||||
groups = {crumbly = 3}
|
|
||||||
})
|
|
||||||
core.register_alias("sulfur_crust", "vox_core:sulfur_crust")
|
|
||||||
|
|
||||||
-- Ash
|
|
||||||
core.register_node("vox_core:ash_block", {
|
|
||||||
description = "Ash Block",
|
|
||||||
tiles = {"vox_ash_block.png"},
|
|
||||||
groups = {crumbly = 3},
|
|
||||||
drop = "vox_mats:ash", -- Drops ash when broken
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Gravel
|
|
||||||
core.register_node("vox_core:gravel", {
|
|
||||||
description = "Gravel",
|
|
||||||
tiles = {"default_gravel.png"},
|
|
||||||
groups = {crumbly = 2, falling_node = 1},
|
|
||||||
--sounds = vox_core.node_sound_gravel_defaults(),
|
|
||||||
drop = {
|
|
||||||
max_items = 1,
|
|
||||||
items = {
|
|
||||||
{items = {"vox:main:flint"}, rarity = 16},
|
|
||||||
{items = {"vox:main:gravel"}}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
core.register_alias("gravel", "vox_core:gravel")
|
|
||||||
core.register_alias("default:gravel", "vox_core:gravel")
|
|
||||||
|
|
||||||
-- Sandstone
|
|
||||||
core.register_node("vox_core:sandstone", {
|
|
||||||
description = "Sandstone",
|
|
||||||
tiles = {"vox_sandstone.png"},
|
|
||||||
groups = {crumbly = 1, cracky = 3},
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("sandstone", "vox_core:sandstone")
|
|
||||||
core.register_alias("default:sandstone", "vox_core:sandstone")
|
|
||||||
|
|
||||||
-- Sandstone Brick
|
|
||||||
core.register_node("vox_core:sandstone_brick", {
|
|
||||||
description = "Sandstone Brick",
|
|
||||||
paramtype2 = "facedir",
|
|
||||||
place_param2 = 0,
|
|
||||||
tiles = {"default_sandstone_brick.png"},
|
|
||||||
is_ground_content = false,
|
|
||||||
groups = {cracky = 2},
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("sandstone_brick", "vox_core:sandstone_brick")
|
|
||||||
core.register_alias("default:sandstonebrick", "vox_core:sandstone_brick")
|
|
||||||
|
|
||||||
-- Sandstone Block
|
|
||||||
core.register_node("vox_core:sandstone_block", {
|
|
||||||
description = "Sandstone Block",
|
|
||||||
tiles = {"default_sandstone_block.png"},
|
|
||||||
is_ground_content = false,
|
|
||||||
groups = {cracky = 2},
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("sandstone_block", "vox_core:sandstone_block")
|
|
||||||
core.register_alias("default:sandstone_block", "vox_core:sandstone_block")
|
|
||||||
|
|
||||||
-- Desert Sandstone
|
|
||||||
core.register_node("vox_core:desert_sandstone", {
|
|
||||||
description = "Desert Sandstone",
|
|
||||||
tiles = {"default_desert_sandstone.png"},
|
|
||||||
groups = {crumbly = 1, cracky = 3},
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("desert_sandstone", "vox_core:desert_sandstone")
|
|
||||||
core.register_alias("default:desert_sandstone", "vox_core:desert_sandstone")
|
|
||||||
|
|
||||||
-- Desert Sandstone Brick
|
|
||||||
core.register_node("vox_core:desert_sandstone_brick", {
|
|
||||||
description = "Desert Sandstone Brick",
|
|
||||||
paramtype2 = "facedir",
|
|
||||||
place_param2 = 0,
|
|
||||||
tiles = {"default_desert_sandstone_brick.png"},
|
|
||||||
is_ground_content = false,
|
|
||||||
groups = {cracky = 2},
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("desert_sandstone_brick", "vox_core:desert_sandstone_brick")
|
|
||||||
core.register_alias("default:desert_sandstone_brick", "vox_core:desert_sandstone_brick")
|
|
||||||
|
|
||||||
-- Desert Sandstone Block
|
|
||||||
core.register_node("vox_core:desert_sandstone_block", {
|
|
||||||
description = "Desert Sandstone Block",
|
|
||||||
tiles = {"default_desert_sandstone_block.png"},
|
|
||||||
is_ground_content = false,
|
|
||||||
groups = {cracky = 2},
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("desert_sandstone_block", "vox_core:desert_sandstone_block")
|
|
||||||
core.register_alias("default:desert_sandstone_block", "vox_core:desert_sandstone_block")
|
|
||||||
|
|
||||||
-- Silver Sandstone
|
|
||||||
core.register_node("vox_core:silver_sandstone", {
|
|
||||||
description = "Silver Sandstone",
|
|
||||||
tiles = {"default_silver_sandstone.png"},
|
|
||||||
groups = {crumbly = 1, cracky = 3},
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("silver_sandstone", "vox_core:silver_sandstone")
|
|
||||||
core.register_alias("default:silver_sandstone", "vox_core:silver_sandstone")
|
|
||||||
|
|
||||||
-- Silver Sandstone Brick
|
|
||||||
core.register_node("vox_core:silver_sandstone_brick", {
|
|
||||||
description = "Silver Sandstone Brick",
|
|
||||||
tiles = {"default_silver_sandstone_brick.png"},
|
|
||||||
is_ground_content = false,
|
|
||||||
groups = {cracky = 2},
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
})
|
|
||||||
core.register_alias("silver_sandstone_brick", "vox_core:silver_sandstone_brick")
|
|
||||||
core.register_alias("default:silver_sandstone_brick", "vox_core:silver_sandstone_brick")
|
|
||||||
|
|
||||||
|
|
||||||
-- Clay
|
|
||||||
core.register_node("vox_core:clay", {
|
|
||||||
description = "Clay",
|
|
||||||
tiles = {"default_clay.png"},
|
|
||||||
groups = {crumbly = 3}
|
|
||||||
})
|
|
||||||
core.register_alias("clay", "vox_core:clay")
|
|
||||||
core.register_alias("default:clay", "vox_core:clay")
|
|
||||||
|
|
||||||
-- Hardened Clay
|
|
||||||
core.register_node("vox_core:hardened_clay", {
|
|
||||||
description = "Hardened Clay",
|
|
||||||
tiles = {"vox_hardened_clay.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("hardened_clay", "vox_core:hardened_clay")
|
|
||||||
core.register_alias("default:hardened_clay", "vox_core:hardened_clay")
|
|
||||||
|
|
||||||
-- Mud
|
|
||||||
core.register_node("vox_core:mud", {
|
|
||||||
description = "Mud",
|
|
||||||
tiles = {"vox_mud.png"},
|
|
||||||
groups = {crumbly = 3}
|
|
||||||
})
|
|
||||||
core.register_alias("mud", "vox_core:mud")
|
|
||||||
|
|
||||||
-- Salt Crystal
|
|
||||||
core.register_node("vox_core:salt_crystal", {
|
|
||||||
description = "Salt Crystal",
|
|
||||||
tiles = {"vox_salt_crystal.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("salt_crystal", "vox_core:salt_crystal")
|
|
||||||
|
|
||||||
-- Volcanic Rock
|
|
||||||
core.register_node("vox_core:volcanic_rock", {
|
|
||||||
description = "Volcanic Rock",
|
|
||||||
tiles = {"vox_volcanic_rock.png"},
|
|
||||||
groups = {cracky = 3}
|
|
||||||
})
|
|
||||||
core.register_alias("volcanic_rock", "vox_core:volcanic_rock")
|
|
||||||
|
|
||||||
-- EVEN MORE ROCKS!!!
|
|
||||||
|
|
||||||
-- Granite
|
|
||||||
core.register_node("vox_core:granite", {
|
|
||||||
description = "Granite",
|
|
||||||
tiles = {"vox_granite.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("granite", "vox_core:granite")
|
|
||||||
core.register_alias("default:granite", "vox_core:granite")
|
|
||||||
|
|
||||||
-- Diorite
|
|
||||||
core.register_node("vox_core:diorite", {
|
|
||||||
description = "Diorite",
|
|
||||||
tiles = {"vox_diorite.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("diorite", "vox_core:diorite")
|
|
||||||
core.register_alias("default:diorite", "vox_core:diorite")
|
|
||||||
|
|
||||||
-- Andesite
|
|
||||||
core.register_node("vox_core:andesite", {
|
|
||||||
description = "Andesite",
|
|
||||||
tiles = {"vox_andesite.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("andesite", "vox_core:andesite")
|
|
||||||
core.register_alias("default:andesite", "vox_core:andesite")
|
|
||||||
|
|
||||||
-- Basalt
|
|
||||||
core.register_node("vox_core:basalt", {
|
|
||||||
description = "Basalt",
|
|
||||||
tiles = {"vox_basalt.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("basalt", "vox_core:basalt")
|
|
||||||
core.register_alias("default:basalt", "vox_core:basalt")
|
|
||||||
|
|
||||||
-- Obsidian
|
|
||||||
core.register_node("vox_core:obsidian", {
|
|
||||||
description = "Obsidian",
|
|
||||||
tiles = {"default_obsidian.png"},
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
groups = {cracky = 1, level = 2},
|
|
||||||
})
|
|
||||||
core.register_alias("obsidian", "vox_core:obsidian")
|
|
||||||
core.register_alias("default:obsidian", "vox_core:obsidian")
|
|
||||||
|
|
||||||
-- Obsidian Brick
|
|
||||||
core.register_node("vox_core:obsidian_brick", {
|
|
||||||
description = "Obsidian Brick",
|
|
||||||
paramtype2 = "facedir",
|
|
||||||
place_param2 = 0,
|
|
||||||
tiles = {"default_obsidian_brick.png"},
|
|
||||||
is_ground_content = false,
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
groups = {cracky = 1, level = 2},
|
|
||||||
})
|
|
||||||
core.register_alias("obsidian_brick", "vox_core:obsidian_brick")
|
|
||||||
core.register_alias("default:obsidianbrick", "vox_core:obsidian_brick")
|
|
||||||
|
|
||||||
-- Obsidian Block
|
|
||||||
core.register_node("vox_core:obsidian_block", {
|
|
||||||
description = "Obsidian Block",
|
|
||||||
tiles = {"default_obsidian_block.png"},
|
|
||||||
is_ground_content = false,
|
|
||||||
--sounds = vox_core.node_sound_stone_defaults(),
|
|
||||||
groups = {cracky = 1, level = 2},
|
|
||||||
})
|
|
||||||
core.register_alias("obsidian_block", "vox_core:obsidian_block")
|
|
||||||
core.register_alias("default:obsidian_block", "vox_core:obsidian_block")
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- Marble
|
|
||||||
core.register_node("vox_core:marble", {
|
|
||||||
description = "Marble",
|
|
||||||
tiles = {"vox_marble.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("marble", "vox_core:marble")
|
|
||||||
core.register_alias("default:marble", "vox_core:marble")
|
|
||||||
|
|
||||||
-- Chalk
|
|
||||||
core.register_node("vox_core:chalk", {
|
|
||||||
description = "Chalk",
|
|
||||||
tiles = {"vox_chalk.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("chalk", "vox_core:chalk")
|
|
||||||
core.register_alias("default:chalk", "vox_core:chalk")
|
|
||||||
|
|
||||||
-- Limestone
|
|
||||||
core.register_node("vox_core:limestone", {
|
|
||||||
description = "Limestone",
|
|
||||||
tiles = {"vox_limestone.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("limestone", "vox_core:limestone")
|
|
||||||
core.register_alias("default:limestone", "vox_core:limestone")
|
|
|
@ -1,7 +0,0 @@
|
||||||
|
|
||||||
core.register_node("vox_core:coral_red", {
|
|
||||||
description = "Red Coral",
|
|
||||||
tiles = {"vox_coral_red.png"},
|
|
||||||
groups = {crumbly = 1}
|
|
||||||
})
|
|
||||||
core.register_alias("coral_red", "vox_core:coral_red")
|
|
|
@ -1,153 +0,0 @@
|
||||||
-- -------------------------------------------------------------------------- --
|
|
||||||
-- Ores --
|
|
||||||
-- -------------------------------------------------------------------------- --
|
|
||||||
|
|
||||||
|
|
||||||
-- Fuel: Coal, Uranium, Peat
|
|
||||||
core.register_node("vox_core:coal_ore", {
|
|
||||||
description = "Coal Ore",
|
|
||||||
tiles = {"vox_coal_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("coal_ore", "vox_core:coal_ore")
|
|
||||||
core.register_alias("default:stone_with_coal", "vox_core:coal_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:uranium_ore", {
|
|
||||||
description = "Uranium Ore",
|
|
||||||
tiles = {"vox_uranium_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("uranium_ore", "vox_core:uranium_ore")
|
|
||||||
core.register_alias("default:stone_with_uranium", "vox_core:uranium_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:peat", {
|
|
||||||
description = "Peat",
|
|
||||||
tiles = {"vox_peat.png"},
|
|
||||||
groups = {crumbly = 2, flammable = 1}
|
|
||||||
})
|
|
||||||
core.register_alias("peat", "vox_core:peat")
|
|
||||||
|
|
||||||
-- Bone
|
|
||||||
core.register_node("vox_core:bone_ore", {
|
|
||||||
description = "Bone Ore",
|
|
||||||
tiles = {"vox_bone_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("bone_ore", "vox_core:bone_ore")
|
|
||||||
core.register_alias("default:stone_with_bone", "vox_core:bone_ore")
|
|
||||||
|
|
||||||
-- Sulfur
|
|
||||||
core.register_node("vox_core:sulfur_ore", {
|
|
||||||
description = "Sulfur Ore",
|
|
||||||
tiles = {"vox_sulfur_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("sulfur_ore", "vox_core:sulfur_ore")
|
|
||||||
core.register_alias("default:stone_with_sulfur", "vox_core:sulfur_ore")
|
|
||||||
|
|
||||||
-- Salt
|
|
||||||
core.register_node("vox_core:salt_ore", {
|
|
||||||
description = "Salt Ore",
|
|
||||||
tiles = {"vox_salt_ore.png"},
|
|
||||||
groups = {crumbly = 2},
|
|
||||||
drop = "vox_mats:salt"
|
|
||||||
})
|
|
||||||
core.register_alias("salt_ore", "vox_core:salt_ore")
|
|
||||||
core.register_alias("default:stone_with_salt", "vox_core:salt_ore")
|
|
||||||
|
|
||||||
-- Metals: Copper, Tin, Iron, Gold, Silver, Platinum, Lead, Zinc, Nickel, Cobalt, Titanium, Tungsten
|
|
||||||
core.register_node("vox_core:copper_ore", {
|
|
||||||
description = "Copper Ore",
|
|
||||||
tiles = {"vox_copper_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("copper_ore", "vox_core:copper_ore")
|
|
||||||
core.register_alias("default:stone_with_copper", "vox_core:copper_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:tin_ore", {
|
|
||||||
description = "Tin Ore",
|
|
||||||
tiles = {"vox_tin_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("tin_ore", "vox_core:tin_ore")
|
|
||||||
core.register_alias("default:stone_with_tin", "vox_core:tin_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:iron_ore", {
|
|
||||||
description = "Iron Ore",
|
|
||||||
tiles = {"vox_iron_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("iron_ore", "vox_core:iron_ore")
|
|
||||||
core.register_alias("default:stone_with_iron", "vox_core:iron_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:gold_ore", {
|
|
||||||
description = "Gold Ore",
|
|
||||||
tiles = {"vox_gold_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("gold_ore", "vox_core:gold_ore")
|
|
||||||
core.register_alias("default:stone_with_gold", "vox_core:gold_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:silver_ore", {
|
|
||||||
description = "Silver Ore",
|
|
||||||
tiles = {"vox_silver_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("silver_ore", "vox_core:silver_ore")
|
|
||||||
core.register_alias("default:stone_with_silver", "vox_core:silver_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:platinum_ore", {
|
|
||||||
description = "Platinum Ore",
|
|
||||||
tiles = {"vox_platinum_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("platinum_ore", "vox_core:platinum_ore")
|
|
||||||
core.register_alias("default:stone_with_platinum", "vox_core:platinum_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:lead_ore", {
|
|
||||||
description = "Lead Ore",
|
|
||||||
tiles = {"vox_lead_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("lead_ore", "vox_core:lead_ore")
|
|
||||||
core.register_alias("default:stone_with_lead", "vox_core:lead_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:zinc_ore", {
|
|
||||||
description = "Zinc Ore",
|
|
||||||
tiles = {"vox_zinc_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("zinc_ore", "vox_core:zinc_ore")
|
|
||||||
core.register_alias("default:stone_with_zinc", "vox_core:zinc_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:nickel_ore", {
|
|
||||||
description = "Nickel Ore",
|
|
||||||
tiles = {"vox_nickel_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("nickel_ore", "vox_core:nickel_ore")
|
|
||||||
core.register_alias("default:stone_with_nickel", "vox_core:nickel_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:cobalt_ore", {
|
|
||||||
description = "Cobalt Ore",
|
|
||||||
tiles = {"vox_cobalt_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("cobalt_ore", "vox_core:cobalt_ore")
|
|
||||||
core.register_alias("default:stone_with_cobalt", "vox_core:cobalt_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:titanium_ore", {
|
|
||||||
description = "Titanium Ore",
|
|
||||||
tiles = {"vox_titanium_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("titanium_ore", "vox_core:titanium_ore")
|
|
||||||
core.register_alias("default:stone_with_titanium", "vox_core:titanium_ore")
|
|
||||||
|
|
||||||
core.register_node("vox_core:tungsten_ore", {
|
|
||||||
description = "Tungsten Ore",
|
|
||||||
tiles = {"vox_tungsten_ore.png"},
|
|
||||||
groups = {cracky = 2}
|
|
||||||
})
|
|
||||||
core.register_alias("tungsten_ore", "vox_core:tungsten_ore")
|
|
||||||
core.register_alias("default:stone_with_tungsten", "vox_core:tungsten_ore")
|
|
|
@ -1,203 +0,0 @@
|
||||||
-- plants.lua
|
|
||||||
|
|
||||||
-- Register Cactus
|
|
||||||
minetest.register_node("vox_core:cactus", {
|
|
||||||
description = "Cactus",
|
|
||||||
tiles = {"default_cactus_top.png", "default_cactus_top.png", "default_cactus_side.png"},
|
|
||||||
paramtype2 = "facedir",
|
|
||||||
groups = {choppy = 3},
|
|
||||||
--sounds = default.node_sound_wood_defaults(),
|
|
||||||
on_place = minetest.rotate_node,
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Register Large Cactus Seedling
|
|
||||||
minetest.register_node("vox_core:large_cactus_seedling", {
|
|
||||||
description = "Large Cactus Seedling",
|
|
||||||
drawtype = "plantlike",
|
|
||||||
tiles = {"default_large_cactus_seedling.png"},
|
|
||||||
inventory_image = "default_large_cactus_seedling.png",
|
|
||||||
wield_image = "default_large_cactus_seedling.png",
|
|
||||||
paramtype = "light",
|
|
||||||
sunlight_propagates = true,
|
|
||||||
walkable = false,
|
|
||||||
selection_box = {
|
|
||||||
type = "fixed",
|
|
||||||
fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, 0.5, 6 / 16},
|
|
||||||
},
|
|
||||||
groups = {choppy = 3, dig_immediate = 3, attached_node = 1},
|
|
||||||
-- sounds = default.node_sound_wood_defaults(),
|
|
||||||
on_place = function(itemstack, placer, pointed_thing)
|
|
||||||
return itemstack
|
|
||||||
end,
|
|
||||||
on_construct = function(pos)
|
|
||||||
minetest.get_node_timer(pos):start(math.random(1859, 3719))
|
|
||||||
end,
|
|
||||||
on_timer = function(pos)
|
|
||||||
default.grow_large_cactus(pos)
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Register Papyrus
|
|
||||||
minetest.register_node("vox_core:papyrus", {
|
|
||||||
description = "Papyrus",
|
|
||||||
drawtype = "plantlike",
|
|
||||||
tiles = {"default_papyrus.png"},
|
|
||||||
inventory_image = "default_papyrus.png",
|
|
||||||
wield_image = "default_papyrus.png",
|
|
||||||
paramtype = "light",
|
|
||||||
sunlight_propagates = true,
|
|
||||||
walkable = false,
|
|
||||||
selection_box = {
|
|
||||||
type = "fixed",
|
|
||||||
fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, 0.5, 6 / 16},
|
|
||||||
},
|
|
||||||
groups = {snappy = 3, flammable = 2},
|
|
||||||
--sounds = default.node_sound_leaves_defaults(),
|
|
||||||
after_dig_node = function(pos, node, metadata, digger)
|
|
||||||
default.dig_up(pos, node, digger)
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Register Dry Shrub
|
|
||||||
minetest.register_node("vox_core:dry_shrub", {
|
|
||||||
description = "Dry Shrub",
|
|
||||||
drawtype = "plantlike",
|
|
||||||
waving = 1,
|
|
||||||
tiles = {"default_dry_shrub.png"},
|
|
||||||
inventory_image = "default_dry_shrub.png",
|
|
||||||
wield_image = "default_dry_shrub.png",
|
|
||||||
paramtype = "light",
|
|
||||||
paramtype2 = "meshoptions",
|
|
||||||
place_param2 = 4,
|
|
||||||
sunlight_propagates = true,
|
|
||||||
walkable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
groups = {snappy = 3, flammable = 3, attached_node = 1},
|
|
||||||
--sounds = default.node_sound_leaves_defaults(),
|
|
||||||
selection_box = {
|
|
||||||
type = "fixed",
|
|
||||||
fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, 4 / 16, 6 / 16},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Register Jungle Grass
|
|
||||||
minetest.register_node("vox_core:junglegrass", {
|
|
||||||
description = "Jungle Grass",
|
|
||||||
drawtype = "plantlike",
|
|
||||||
waving = 1,
|
|
||||||
visual_scale = 1.69,
|
|
||||||
tiles = {"default_junglegrass.png"},
|
|
||||||
inventory_image = "default_junglegrass.png",
|
|
||||||
wield_image = "default_junglegrass.png",
|
|
||||||
paramtype = "light",
|
|
||||||
sunlight_propagates = true,
|
|
||||||
walkable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
groups = {snappy = 3, flora = 1, attached_node = 1, grass = 1, junglegrass = 1, flammable = 1},
|
|
||||||
--sounds = default.node_sound_leaves_defaults(),
|
|
||||||
selection_box = {
|
|
||||||
type = "fixed",
|
|
||||||
fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, 0.5, 6 / 16},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Register Grass
|
|
||||||
for i = 1, 5 do
|
|
||||||
minetest.register_node("vox_core:grass_" .. i, {
|
|
||||||
description = "Grass",
|
|
||||||
drawtype = "plantlike",
|
|
||||||
waving = 1,
|
|
||||||
tiles = {"default_grass_" .. i .. ".png"},
|
|
||||||
inventory_image = "default_grass_" .. math.min(i + 2, 5) .. ".png",
|
|
||||||
wield_image = "default_grass_" .. math.min(i + 2, 5) .. ".png",
|
|
||||||
paramtype = "light",
|
|
||||||
sunlight_propagates = true,
|
|
||||||
walkable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
groups = {snappy = 3, flora = 1, attached_node = 1, grass = 1, normal_grass = 1, flammable = 1},
|
|
||||||
--sounds = default.node_sound_leaves_defaults(),
|
|
||||||
selection_box = {
|
|
||||||
type = "fixed",
|
|
||||||
fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, -5 / 16 + (i - 1) * 2 / 16, 6 / 16},
|
|
||||||
},
|
|
||||||
on_place = function(itemstack, placer, pointed_thing)
|
|
||||||
return itemstack
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Register Dry Grass
|
|
||||||
for i = 1, 5 do
|
|
||||||
minetest.register_node("vox_core:dry_grass_" .. i, {
|
|
||||||
description = "Savanna Grass",
|
|
||||||
drawtype = "plantlike",
|
|
||||||
waving = 1,
|
|
||||||
tiles = {"default_dry_grass_" .. i .. ".png"},
|
|
||||||
inventory_image = "default_dry_grass_" .. math.min(i + 2, 5) .. ".png",
|
|
||||||
wield_image = "default_dry_grass_" .. math.min(i + 2, 5) .. ".png",
|
|
||||||
paramtype = "light",
|
|
||||||
sunlight_propagates = true,
|
|
||||||
walkable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
groups = {snappy = 3, flammable = 3, flora = 1, attached_node = 1, grass = 1, dry_grass = 1},
|
|
||||||
--sounds = default.node_sound_leaves_defaults(),
|
|
||||||
selection_box = {
|
|
||||||
type = "fixed",
|
|
||||||
fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, -3 / 16 + (i - 1) * 2 / 16, 6 / 16},
|
|
||||||
},
|
|
||||||
on_place = function(itemstack, placer, pointed_thing)
|
|
||||||
return itemstack
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Register Fern
|
|
||||||
for i = 1, 3 do
|
|
||||||
minetest.register_node("vox_core:fern_" .. i, {
|
|
||||||
description = "Fern",
|
|
||||||
drawtype = "plantlike",
|
|
||||||
waving = 1,
|
|
||||||
tiles = {"default_fern_" .. i .. ".png"},
|
|
||||||
inventory_image = "default_fern_" .. i .. ".png",
|
|
||||||
wield_image = "default_fern_" .. i .. ".png",
|
|
||||||
paramtype = "light",
|
|
||||||
sunlight_propagates = true,
|
|
||||||
walkable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
groups = {snappy = 3, flammable = 3, flora = 1, grass = 1, fern = 1, attached_node = 1},
|
|
||||||
--sounds = default.node_sound_leaves_defaults(),
|
|
||||||
selection_box = {
|
|
||||||
type = "fixed",
|
|
||||||
fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, -0.25 + (i - 1) * 0.25, 6 / 16},
|
|
||||||
},
|
|
||||||
on_place = function(itemstack, placer, pointed_thing)
|
|
||||||
return itemstack
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Register Marram Grass
|
|
||||||
for i = 1, 3 do
|
|
||||||
minetest.register_node("vox_core:marram_grass_" .. i, {
|
|
||||||
description = "Marram Grass",
|
|
||||||
drawtype = "plantlike",
|
|
||||||
waving = 1,
|
|
||||||
tiles = {"default_marram_grass_" .. i .. ".png"},
|
|
||||||
inventory_image = "default_marram_grass_" .. i .. ".png",
|
|
||||||
wield_image = "default_marram_grass_" .. i .. ".png",
|
|
||||||
paramtype = "light",
|
|
||||||
sunlight_propagates = true,
|
|
||||||
walkable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
groups = {snappy = 3, flammable = 3, flora = 1, grass = 1, marram_grass = 1, attached_node = 1},
|
|
||||||
--sounds = default.node_sound_leaves_defaults(),
|
|
||||||
selection_box = {
|
|
||||||
type = "fixed",
|
|
||||||
fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, -0.25 + (i - 1) * 0.25, 6 / 16},
|
|
||||||
},
|
|
||||||
on_place = function(itemstack, placer, pointed_thing)
|
|
||||||
return itemstack
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
Before Width: | Height: | Size: 476 B |
|
@ -1,138 +0,0 @@
|
||||||
-- vox_core/trees.lua
|
|
||||||
|
|
||||||
-- support for MT game translation.
|
|
||||||
local S = minetest.get_translator("vox_core")
|
|
||||||
|
|
||||||
-- Placeholder for vox_core sound functions
|
|
||||||
local function vox_core_sound_wood_defaults()
|
|
||||||
return {
|
|
||||||
footstep = {name = "vox_core_wood_footstep", gain = 0.3},
|
|
||||||
dug = {name = "vox_core_wood_dug", gain = 1.0},
|
|
||||||
place = {name = "vox_core_wood_place", gain = 1.0},
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
local function vox_core_sound_leaves_defaults()
|
|
||||||
return {
|
|
||||||
footstep = {name = "vox_core_leaves_footstep", gain = 0.45},
|
|
||||||
dug = {name = "vox_core_leaves_dug", gain = 0.7},
|
|
||||||
place = {name = "vox_core_leaves_place", gain = 1.0},
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
local function vox_core_sound_sapling_defaults()
|
|
||||||
return {
|
|
||||||
footstep = {name = "vox_core_sapling_footstep", gain = 0.2},
|
|
||||||
dug = {name = "vox_core_sapling_dug", gain = 0.25},
|
|
||||||
place = {name = "vox_core_sapling_place", gain = 1.0},
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Tree nodes
|
|
||||||
minetest.register_node("vox_core:tree", {
|
|
||||||
description = S("Apple Tree"),
|
|
||||||
tiles = {"default_tree_top.png", "default_tree_top.png", "default_tree.png"},
|
|
||||||
paramtype2 = "facedir",
|
|
||||||
is_ground_content = false,
|
|
||||||
groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2},
|
|
||||||
sounds = vox_core_sound_wood_defaults(),
|
|
||||||
on_place = minetest.rotate_node
|
|
||||||
})
|
|
||||||
|
|
||||||
minetest.register_node("vox_core:wood", {
|
|
||||||
description = S("Apple Wood Planks"),
|
|
||||||
paramtype2 = "facedir",
|
|
||||||
place_param2 = 0,
|
|
||||||
tiles = {"default_wood.png"},
|
|
||||||
is_ground_content = false,
|
|
||||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, wood = 1},
|
|
||||||
sounds = vox_core_sound_wood_defaults(),
|
|
||||||
})
|
|
||||||
|
|
||||||
minetest.register_node("vox_core:sapling", {
|
|
||||||
description = S("Apple Tree Sapling"),
|
|
||||||
drawtype = "plantlike",
|
|
||||||
tiles = {"default_sapling.png"},
|
|
||||||
inventory_image = "default_sapling.png",
|
|
||||||
wield_image = "default_sapling.png",
|
|
||||||
paramtype = "light",
|
|
||||||
sunlight_propagates = true,
|
|
||||||
walkable = false,
|
|
||||||
on_timer = grow_sapling,
|
|
||||||
selection_box = {
|
|
||||||
type = "fixed",
|
|
||||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 16, 4 / 16}
|
|
||||||
},
|
|
||||||
groups = {snappy = 2, dig_immediate = 3, flammable = 2, attached_node = 1, sapling = 1},
|
|
||||||
sounds = vox_core_sound_sapling_defaults(),
|
|
||||||
on_construct = function(pos)
|
|
||||||
minetest.get_node_timer(pos):start(math.random(300, 1500))
|
|
||||||
end,
|
|
||||||
on_place = function(itemstack, placer, pointed_thing)
|
|
||||||
return itemstack
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
|
|
||||||
minetest.register_node("vox_core:leaves", {
|
|
||||||
description = S("Apple Tree Leaves"),
|
|
||||||
drawtype = "allfaces_optional",
|
|
||||||
waving = 1,
|
|
||||||
tiles = {"default_leaves.png"},
|
|
||||||
special_tiles = {"default_leaves_simple.png"},
|
|
||||||
paramtype = "light",
|
|
||||||
is_ground_content = false,
|
|
||||||
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1},
|
|
||||||
drop = {
|
|
||||||
max_items = 1,
|
|
||||||
items = {
|
|
||||||
{items = {"vox_core:sapling"}, rarity = 20},
|
|
||||||
{items = {"vox_core:leaves"}}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
sounds = vox_core_sound_leaves_defaults(),
|
|
||||||
after_place_node = after_place_leaves,
|
|
||||||
})
|
|
||||||
|
|
||||||
minetest.register_node("vox_core:apple", {
|
|
||||||
description = S("Apple"),
|
|
||||||
drawtype = "plantlike",
|
|
||||||
tiles = {"default_apple.png"},
|
|
||||||
inventory_image = "default_apple.png",
|
|
||||||
paramtype = "light",
|
|
||||||
sunlight_propagates = true,
|
|
||||||
walkable = false,
|
|
||||||
is_ground_content = false,
|
|
||||||
selection_box = {
|
|
||||||
type = "fixed",
|
|
||||||
fixed = {-3 / 16, -7 / 16, -3 / 16, 3 / 16, 4 / 16, 3 / 16}
|
|
||||||
},
|
|
||||||
groups = {fleshy = 3, dig_immediate = 3, flammable = 2, leafdecay = 3, leafdecay_drop = 1, food_apple = 1},
|
|
||||||
on_use = minetest.item_eat(2),
|
|
||||||
sounds = vox_core_sound_leaves_defaults(),
|
|
||||||
after_place_node = function(pos, placer, itemstack)
|
|
||||||
minetest.set_node(pos, {name = "vox_core:apple", param2 = 1})
|
|
||||||
end,
|
|
||||||
after_dig_node = function(pos, oldnode, oldmetadata, digger)
|
|
||||||
if oldnode.param2 == 0 then
|
|
||||||
minetest.set_node(pos, {name = "vox_core:apple_mark"})
|
|
||||||
end
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
|
|
||||||
minetest.register_node("vox_core:apple_mark", {
|
|
||||||
description = S("Apple Marker"),
|
|
||||||
inventory_image = "default_apple.png^default_invisible_node_overlay.png",
|
|
||||||
wield_image = "default_apple.png^default_invisible_node_overlay.png",
|
|
||||||
drawtype = "airlike",
|
|
||||||
paramtype = "light",
|
|
||||||
sunlight_propagates = true,
|
|
||||||
walkable = false,
|
|
||||||
pointable = false,
|
|
||||||
diggable = false,
|
|
||||||
buildable_to = true,
|
|
||||||
drop = "",
|
|
||||||
groups = {not_in_creative_inventory = 1},
|
|
||||||
on_timer = function(pos, elapsed)
|
|
||||||
minetest.set_node(pos, {name = "vox_core:apple"})
|
|
||||||
end,
|
|
||||||
})
|
|
232
mods/ITEMS/vox_main/gems.lua
Normal file
|
@ -0,0 +1,232 @@
|
||||||
|
-- Gems: Diamond, Emerald, Ruby, Sapphire, Topaz, Amethyst, Opal, Onyx, Garnet, Peridot, Aquamarine, Citrine, Tourmaline, Zircon, Tanzanite, Spinel, Lapis Lazuli, Malachite, Azurite, Turquoise, Amber, Moonstone, Sunstone, Bloodstone, Agate, Jasper, Chalcedony, Chrysoprase, Carnelian, Sardonyx, Heliotrope, Alexandrite, Tiger's Eye, Serpentine, Rhodonite
|
||||||
|
core.register_node("vox_main:diamond_ore", {
|
||||||
|
description = "Diamond Ore",
|
||||||
|
tiles = {"vox_diamond_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("diamond_ore", "vox_main:diamond_ore")
|
||||||
|
core.register_alias("default:stone_with_diamond", "vox_main:diamond_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:emerald_ore", {
|
||||||
|
description = "Emerald Ore",
|
||||||
|
tiles = {"vox_emerald_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("emerald_ore", "vox_main:emerald_ore")
|
||||||
|
core.register_alias("default:stone_with_emerald", "vox_main:emerald_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:ruby_ore", {
|
||||||
|
description = "Ruby Ore",
|
||||||
|
tiles = {"vox_ruby_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("ruby_ore", "vox_main:ruby_ore")
|
||||||
|
core.register_alias("default:stone_with_ruby", "vox_main:ruby_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:sapphire_ore", {
|
||||||
|
description = "Sapphire Ore",
|
||||||
|
tiles = {"vox_sapphire_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("sapphire_ore", "vox_main:sapphire_ore")
|
||||||
|
core.register_alias("default:stone_with_sapphire", "vox_main:sapphire_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:topaz_ore", {
|
||||||
|
description = "Topaz Ore",
|
||||||
|
tiles = {"vox_topaz_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("topaz_ore", "vox_main:topaz_ore")
|
||||||
|
core.register_alias("default:stone_with_topaz", "vox_main:topaz_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:amethyst_ore", {
|
||||||
|
description = "Amethyst Ore",
|
||||||
|
tiles = {"vox_amethyst_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("amethyst_ore", "vox_main:amethyst_ore")
|
||||||
|
core.register_alias("default:stone_with_amethyst", "vox_main:amethyst_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:opal_ore", {
|
||||||
|
description = "Opal Ore",
|
||||||
|
tiles = {"vox_opal_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("opal_ore", "vox_main:opal_ore")
|
||||||
|
core.register_alias("default:stone_with_opal", "vox_main:opal_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:onyx_ore", {
|
||||||
|
description = "Onyx Ore",
|
||||||
|
tiles = {"vox_onyx_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("onyx_ore", "vox_main:onyx_ore")
|
||||||
|
core.register_alias("default:stone_with_onyx", "vox_main:onyx_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:garnet_ore", {
|
||||||
|
description = "Garnet Ore",
|
||||||
|
tiles = {"vox_garnet_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("garnet_ore", "vox_main:garnet_ore")
|
||||||
|
core.register_alias("default:stone_with_garnet", "vox_main:garnet_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:peridot_ore", {
|
||||||
|
description = "Peridot Ore",
|
||||||
|
tiles = {"vox_peridot_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("peridot_ore", "vox_main:peridot_ore")
|
||||||
|
core.register_alias("default:stone_with_peridot", "vox_main:peridot_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:aquamarine_ore", {
|
||||||
|
description = "Aquamarine Ore",
|
||||||
|
tiles = {"vox_aquamarine_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("aquamarine_ore", "vox_main:aquamarine_ore")
|
||||||
|
core.register_alias("default:stone_with_aquamarine", "vox_main:aquamarine_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:citrine_ore", {
|
||||||
|
description = "Citrine Ore",
|
||||||
|
tiles = {"vox_citrine_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("citrine_ore", "vox_main:citrine_ore")
|
||||||
|
core.register_alias("default:stone_with_citrine", "vox_main:citrine_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:tourmaline_ore", {
|
||||||
|
description = "Tourmaline Ore",
|
||||||
|
tiles = {"vox_tourmaline_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("tourmaline_ore", "vox_main:tourmaline_ore")
|
||||||
|
core.register_alias("default:stone_with_tourmaline", "vox_main:tourmaline_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:zircon_ore", {
|
||||||
|
description = "Zircon Ore",
|
||||||
|
tiles = {"vox_zircon_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("zircon_ore", "vox_main:zircon_ore")
|
||||||
|
core.register_alias("default:stone_with_zircon", "vox_main:zircon_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:tanzanite_ore", {
|
||||||
|
description = "Tanzanite Ore",
|
||||||
|
tiles = {"vox_tanzanite_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("tanzanite_ore", "vox_main:tanzanite_ore")
|
||||||
|
core.register_alias("default:stone_with_tanzanite", "vox_main:tanzanite_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:spinel_ore", {
|
||||||
|
description = "Spinel Ore",
|
||||||
|
tiles = {"vox_spinel_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("spinel_ore", "vox_main:spinel_ore")
|
||||||
|
core.register_alias("default:stone_with_spinel", "vox_main:spinel_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:lapis_lazuli_ore", {
|
||||||
|
description = "Lapis Lazuli Ore",
|
||||||
|
tiles = {"vox_lapis_lazuli_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("lapis_lazuli_ore", "vox_main:lapis_lazuli_ore")
|
||||||
|
core.register_alias("default:stone_with_lapis_lazuli", "vox_main:lapis_lazuli_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:malachite_ore", {
|
||||||
|
description = "Malachite Ore",
|
||||||
|
tiles = {"vox_malachite_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("malachite_ore", "vox_main:malachite_ore")
|
||||||
|
core.register_alias("default:stone_with_malachite", "vox_main:malachite_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:azurite_ore", {
|
||||||
|
description = "Azurite Ore",
|
||||||
|
tiles = {"vox_azurite_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("azurite_ore", "vox_main:azurite_ore")
|
||||||
|
core.register_alias("default:stone_with_azurite", "vox_main:azurite_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:turquoise_ore", {
|
||||||
|
description = "Turquoise Ore",
|
||||||
|
tiles = {"vox_turquoise_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("turquoise_ore", "vox_main:turquoise_ore")
|
||||||
|
core.register_alias("default:stone_with_turquoise", "vox_main:turquoise_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:amber_ore", {
|
||||||
|
description = "Amber Ore",
|
||||||
|
tiles = {"vox_amber_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("amber_ore", "vox_main:amber_ore")
|
||||||
|
core.register_alias("default:stone_with_amber", "vox_main:amber_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:moonstone_ore", {
|
||||||
|
description = "Moonstone Ore",
|
||||||
|
tiles = {"vox_moonstone_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("moonstone_ore", "vox_main:moonstone_ore")
|
||||||
|
core.register_alias("default:stone_with_moonstone", "vox_main:moonstone_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:sunstone_ore", {
|
||||||
|
description = "Sunstone Ore",
|
||||||
|
tiles = {"vox_sunstone_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("sunstone_ore", "vox_main:sunstone_ore")
|
||||||
|
core.register_alias("default:stone_with_sunstone", "vox_main:sunstone_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:bloodstone_ore", {
|
||||||
|
description = "Bloodstone Ore",
|
||||||
|
tiles = {"vox_bloodstone_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("bloodstone_ore", "vox_main:bloodstone_ore")
|
||||||
|
core.register_alias("default:stone_with_bloodstone", "vox_main:bloodstone_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:agate_ore", {
|
||||||
|
description = "Agate Ore",
|
||||||
|
tiles = {"vox_agate_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("agate_ore", "vox_main:agate_ore")
|
||||||
|
core.register_alias("default:stone_with_agate", "vox_main:agate_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:jasper_ore", {
|
||||||
|
description = "Jasper Ore",
|
||||||
|
tiles = {"vox_jasper_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("jasper_ore", "vox_main:jasper_ore")
|
||||||
|
core.register_alias("default:stone_with_jasper", "vox_main:jasper_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:chalcedony_ore", {
|
||||||
|
description = "Chalcedony Ore",
|
||||||
|
tiles = {"vox_chalcedony_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("chalcedony_ore", "vox_main:chalcedony_ore")
|
||||||
|
core.register_alias("default:stone_with_chalcedony", "vox_main:chalcedony_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:chrysoprase_ore", {
|
||||||
|
description = "Chrysoprase Ore",
|
||||||
|
tiles = {"vox_chrysoprase_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("chrysoprase_ore", "vox_main:chrysoprase_ore")
|
||||||
|
core.register_alias("default:stone_with_chrysoprase", "vox_main:chrysoprase_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:carnelian_ore", {
|
||||||
|
description = "Carnelian Ore",
|
||||||
|
tiles = {"vox_carnelian_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("carnelian_ore", "vox_main:carnelian_ore")
|
||||||
|
core.register_alias("default:stone_with_carnelian", "vox_main:carnelian_ore")
|
|
@ -11,45 +11,33 @@
|
||||||
-- with this program; if not, see <http://www.gnu.org/licenses/>.
|
-- with this program; if not, see <http://www.gnu.org/licenses/>.
|
||||||
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
||||||
|
|
||||||
vox_core = {}
|
|
||||||
|
|
||||||
-- Load from minerals.lua
|
-- Load from minerals.lua
|
||||||
dofile(core.get_modpath("vox_core").."/minerals.lua")
|
dofile(core.get_modpath("vox_main").."/minerals.lua")
|
||||||
-- Load from ores.lua
|
-- Load from ores.lua
|
||||||
dofile(core.get_modpath("vox_core").."/ores.lua")
|
dofile(core.get_modpath("vox_main").."/ores.lua")
|
||||||
-- Load from gems.lua
|
-- Load from gems.lua
|
||||||
dofile(core.get_modpath("vox_core").."/gems.lua")
|
dofile(core.get_modpath("vox_main").."/gems.lua")
|
||||||
-- Load from liquids.lua
|
-- Load from liquids.lua
|
||||||
dofile(core.get_modpath("vox_core").."/liquids.lua")
|
dofile(core.get_modpath("vox_main").."/liquids.lua")
|
||||||
-- Load from trees.lua
|
|
||||||
dofile(core.get_modpath("vox_core").."/trees.lua")
|
|
||||||
-- Load from plants.lua
|
|
||||||
dofile(core.get_modpath("vox_core").."/plants.lua")
|
|
||||||
|
|
||||||
-- Load from ocean.lua
|
-- Load from ocean.lua
|
||||||
dofile(core.get_modpath("vox_core").."/ocean.lua")
|
dofile(core.get_modpath("vox_main").."/ocean.lua")
|
||||||
-- Load from sky_island.lua
|
-- Load from sky_island.lua
|
||||||
dofile(core.get_modpath("vox_core").."/sky_island.lua")
|
dofile(core.get_modpath("vox_main").."/sky_island.lua")
|
||||||
|
|
||||||
-- Load from mobdrops.lua
|
-- Load from mobdrops.lua
|
||||||
dofile(minetest.get_modpath("vox_core").."/mobdrops.lua")
|
dofile(minetest.get_modpath("vox_main").."/mobdrops.lua")
|
||||||
-- Load from mats.lua
|
-- Load from mats.lua
|
||||||
dofile(minetest.get_modpath("vox_core").."/mats.lua")
|
dofile(minetest.get_modpath("vox_main").."/mats.lua")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- Load from functions.lua
|
|
||||||
-- This is copy/paste from 'default' mod and we're using it temporarily(?)
|
|
||||||
--dofile(minetest.get_modpath("vox_core").."/functions.lua")
|
|
||||||
|
|
||||||
-- Glowing Moss
|
-- Glowing Moss
|
||||||
core.register_node("vox_core:glowing_moss", {
|
core.register_node("vox_main:glowing_moss", {
|
||||||
description = "Glowing Moss",
|
description = "Glowing Moss",
|
||||||
tiles = {"vox_glowing_moss.png"},
|
tiles = {"vox_glowing_moss.png"},
|
||||||
light_source = 8,
|
light_source = 8,
|
||||||
groups = {crumbly = 1}
|
groups = {crumbly = 1}
|
||||||
})
|
})
|
||||||
core.register_alias("glowing_moss", "vox_core:glowing_moss")
|
core.register_alias("glowing_moss", "vox_main:glowing_moss")
|
||||||
|
|
||||||
|
|
||||||
-- ---------------------------- Dyeable Nodes -------------------------- --
|
-- ---------------------------- Dyeable Nodes -------------------------- --
|
370
mods/ITEMS/vox_main/liquids.lua
Normal file
|
@ -0,0 +1,370 @@
|
||||||
|
-- -------------------------------------------------------------------------- --
|
||||||
|
-- Liquids --
|
||||||
|
-- -------------------------------------------------------------------------- --
|
||||||
|
|
||||||
|
-- Water
|
||||||
|
core.register_node("vox_main:water_source", {
|
||||||
|
description = "Water Source",
|
||||||
|
drawtype = "liquid",
|
||||||
|
tiles = {
|
||||||
|
{
|
||||||
|
name = "vox_water.png",
|
||||||
|
animation = {
|
||||||
|
type = "vertical_frames",
|
||||||
|
aspect_w = 16,
|
||||||
|
aspect_h = 16,
|
||||||
|
length = 2.0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
alpha = 128,
|
||||||
|
paramtype = "light",
|
||||||
|
walkable = false,
|
||||||
|
pointable = false,
|
||||||
|
diggable = false,
|
||||||
|
buildable_to = true,
|
||||||
|
liquidtype = "source",
|
||||||
|
liquid_alternative_flowing = "vox_main:water_flowing",
|
||||||
|
liquid_alternative_source = "vox_main:water_source",
|
||||||
|
liquid_viscosity = 1,
|
||||||
|
post_effect_color = {a = 103, r = 30, g = 60, b = 90}
|
||||||
|
})
|
||||||
|
core.register_alias("water_source", "vox_main:water_source")
|
||||||
|
core.register_alias("default:river_water", "vox_main:water_source")
|
||||||
|
core.register_alias("mapgen_water_source", "vox_main:water_source")
|
||||||
|
|
||||||
|
core.register_node("vox_main:water_flowing", {
|
||||||
|
description = "Flowing Water",
|
||||||
|
drawtype = "flowingliquid",
|
||||||
|
tiles = {"vox_water.png"},
|
||||||
|
special_tiles = {
|
||||||
|
{
|
||||||
|
name = "vox_water.png",
|
||||||
|
backface_culling = false,
|
||||||
|
animation = {
|
||||||
|
type = "vertical_frames",
|
||||||
|
aspect_w = 16,
|
||||||
|
aspect_h = 16,
|
||||||
|
length = 0.8
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
alpha = 160,
|
||||||
|
paramtype = "light",
|
||||||
|
walkable = false,
|
||||||
|
pointable = false,
|
||||||
|
diggable = false,
|
||||||
|
buildable_to = true,
|
||||||
|
liquidtype = "flowing",
|
||||||
|
liquid_alternative_flowing = "vox_main:water_flowing",
|
||||||
|
liquid_alternative_source = "vox_main:water_source",
|
||||||
|
liquid_viscosity = 1,
|
||||||
|
post_effect_color = {a = 103, r = 30, g = 60, b = 90}
|
||||||
|
})
|
||||||
|
core.register_alias("water_flowing", "vox_main:water_flowing")
|
||||||
|
core.register_alias("default:river_water_flowing", "vox_main:water_flowing")
|
||||||
|
core.register_alias("mapgen_water_flowing", "vox_main:water_flowing")
|
||||||
|
|
||||||
|
-- River Water
|
||||||
|
core.register_node("vox_main:river_water_source", {
|
||||||
|
description = "River Water Source",
|
||||||
|
drawtype = "liquid",
|
||||||
|
tiles = {
|
||||||
|
{
|
||||||
|
name = "vox_river_water.png",
|
||||||
|
animation = {
|
||||||
|
type = "vertical_frames",
|
||||||
|
aspect_w = 16,
|
||||||
|
aspect_h = 16,
|
||||||
|
length = 2.0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
alpha = 128,
|
||||||
|
paramtype = "light",
|
||||||
|
walkable = false,
|
||||||
|
pointable = false,
|
||||||
|
diggable = false,
|
||||||
|
buildable_to = true,
|
||||||
|
liquidtype = "source",
|
||||||
|
liquid_alternative_flowing = "vox_main:river_water_flowing",
|
||||||
|
liquid_alternative_source = "vox_main:river_water_source",
|
||||||
|
liquid_viscosity = 1,
|
||||||
|
post_effect_color = {a = 103, r = 30, g = 60, b = 90}
|
||||||
|
})
|
||||||
|
core.register_alias("river_water_source", "vox_main:river_water_source")
|
||||||
|
core.register_alias("mapgen_river_water_source", "vox_main:river_water_source")
|
||||||
|
core.register_alias("default:river_water_source", "vox_main:river_water_source")
|
||||||
|
|
||||||
|
core.register_node("vox_main:river_water_flowing", {
|
||||||
|
description = "Flowing River Water",
|
||||||
|
drawtype = "flowingliquid",
|
||||||
|
tiles = {"vox_river_water.png"},
|
||||||
|
special_tiles = {
|
||||||
|
{
|
||||||
|
name = "vox_river_water.png",
|
||||||
|
backface_culling = false,
|
||||||
|
animation = {
|
||||||
|
type = "vertical_frames",
|
||||||
|
aspect_w = 16,
|
||||||
|
aspect_h = 16,
|
||||||
|
length = 0.8
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
alpha = 160,
|
||||||
|
paramtype = "light",
|
||||||
|
walkable = false,
|
||||||
|
pointable = false,
|
||||||
|
diggable = false,
|
||||||
|
buildable_to = true,
|
||||||
|
liquidtype = "flowing",
|
||||||
|
liquid_alternative_flowing = "vox_main:river_water_flowing",
|
||||||
|
liquid_alternative_source = "vox_main:river_water_source",
|
||||||
|
liquid_viscosity = 1,
|
||||||
|
post_effect_color = {a = 103, r = 30, g = 60, b = 90}
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Hotspring Water
|
||||||
|
core.register_node("vox_main:hotspring_water_source", {
|
||||||
|
description = "Hotspring Water Source",
|
||||||
|
drawtype = "liquid",
|
||||||
|
tiles = {
|
||||||
|
{
|
||||||
|
name = "vox_hotspring_water.png",
|
||||||
|
animation = {
|
||||||
|
type = "vertical_frames",
|
||||||
|
aspect_w = 16,
|
||||||
|
aspect_h = 16,
|
||||||
|
length = 2.0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
alpha = 128,
|
||||||
|
paramtype = "light",
|
||||||
|
walkable = false,
|
||||||
|
pointable = false,
|
||||||
|
diggable = false,
|
||||||
|
buildable_to = true,
|
||||||
|
liquidtype = "source",
|
||||||
|
liquid_alternative_flowing = "vox_main:hotspring_water_flowing",
|
||||||
|
liquid_alternative_source = "vox_main:hotspring_water_source",
|
||||||
|
liquid_viscosity = 1,
|
||||||
|
post_effect_color = {a = 103, r = 30, g = 60, b = 90}
|
||||||
|
})
|
||||||
|
core.register_alias("hotspring_water_source", "vox_main:hotspring_water_source")
|
||||||
|
core.register_alias("mapgen_hotspring_water_source", "vox_main:hotspring_water_source")
|
||||||
|
|
||||||
|
core.register_node("vox_main:hotspring_water_flowing", {
|
||||||
|
description = "Flowing Hotspring Water",
|
||||||
|
drawtype = "flowingliquid",
|
||||||
|
tiles = {"vox_hotspring_water.png"},
|
||||||
|
special_tiles = {
|
||||||
|
{
|
||||||
|
name = "vox_hotspring_water.png",
|
||||||
|
backface_culling = false,
|
||||||
|
animation = {
|
||||||
|
type = "vertical_frames",
|
||||||
|
aspect_w = 16,
|
||||||
|
aspect_h = 16,
|
||||||
|
length = 0.8
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
alpha = 160,
|
||||||
|
paramtype = "light",
|
||||||
|
walkable = false,
|
||||||
|
pointable = false,
|
||||||
|
diggable = false,
|
||||||
|
buildable_to = true,
|
||||||
|
liquidtype = "flowing",
|
||||||
|
liquid_alternative_flowing = "vox_main:hotspring_water_flowing",
|
||||||
|
liquid_alternative_source = "vox_main:hotspring_water_source",
|
||||||
|
liquid_viscosity = 1,
|
||||||
|
post_effect_color = {a = 103, r = 30, g = 60, b = 90}
|
||||||
|
})
|
||||||
|
core.register_alias("hotspring_water_flowing", "vox_main:hotspring_water_flowing")
|
||||||
|
core.register_alias("mapgen_hotspring_water_flowing", "vox_main:hotspring_water_flowing")
|
||||||
|
|
||||||
|
-- Lava
|
||||||
|
core.register_node("vox_main:lava_source", {
|
||||||
|
description = "Lava Source",
|
||||||
|
drawtype = "liquid",
|
||||||
|
tiles = {
|
||||||
|
{
|
||||||
|
name = "vox_lava.png",
|
||||||
|
animation = {
|
||||||
|
type = "vertical_frames",
|
||||||
|
aspect_w = 16,
|
||||||
|
aspect_h = 16,
|
||||||
|
length = 2.0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
alpha = 255,
|
||||||
|
paramtype = "light",
|
||||||
|
walkable = false,
|
||||||
|
pointable = false,
|
||||||
|
diggable = false,
|
||||||
|
buildable_to = true,
|
||||||
|
liquidtype = "source",
|
||||||
|
liquid_alternative_flowing = "vox_main:lava_flowing",
|
||||||
|
liquid_alternative_source = "vox_main:lava_source",
|
||||||
|
liquid_viscosity = 7,
|
||||||
|
post_effect_color = {a = 255, r = 255, g = 0, b = 0}
|
||||||
|
})
|
||||||
|
core.register_alias("lava_source", "vox_main:lava_source")
|
||||||
|
core.register_alias("default:lava_source", "vox_main:lava_source")
|
||||||
|
core.register_alias("mapgen_lava_source", "vox_main:lava_source")
|
||||||
|
|
||||||
|
core.register_node("vox_main:lava_flowing", {
|
||||||
|
description = "Flowing Lava",
|
||||||
|
drawtype = "flowingliquid",
|
||||||
|
tiles = {"vox_lava.png"},
|
||||||
|
special_tiles = {
|
||||||
|
{
|
||||||
|
name = "vox_lava.png",
|
||||||
|
backface_culling = false,
|
||||||
|
animation = {
|
||||||
|
type = "vertical_frames",
|
||||||
|
aspect_w = 16,
|
||||||
|
aspect_h = 16,
|
||||||
|
length = 2.0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
alpha = 255,
|
||||||
|
paramtype = "light",
|
||||||
|
walkable = false,
|
||||||
|
pointable = false,
|
||||||
|
diggable = false,
|
||||||
|
buildable_to = true,
|
||||||
|
liquidtype = "flowing",
|
||||||
|
liquid_alternative_flowing = "vox_main:lava_flowing",
|
||||||
|
liquid_alternative_source = "vox_main:lava_source",
|
||||||
|
liquid_viscosity = 7,
|
||||||
|
post_effect_color = {a = 255, r = 255, g = 0, b = 0}
|
||||||
|
})
|
||||||
|
core.register_alias("lava_flowing", "vox_main:lava_flowing")
|
||||||
|
core.register_alias("default:lava_flowing", "vox_main:lava_flowing")
|
||||||
|
core.register_alias("mapgen_lava_flowing", "vox_main:lava_flowing")
|
||||||
|
|
||||||
|
-- Oil
|
||||||
|
core.register_node("vox_main:oil_source", {
|
||||||
|
description = "Oil Source",
|
||||||
|
drawtype = "liquid",
|
||||||
|
tiles = {
|
||||||
|
{
|
||||||
|
name = "vox_oil.png",
|
||||||
|
animation = {
|
||||||
|
type = "vertical_frames",
|
||||||
|
aspect_w = 16,
|
||||||
|
aspect_h = 16,
|
||||||
|
length = 2.0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
alpha = 255,
|
||||||
|
paramtype = "light",
|
||||||
|
walkable = false,
|
||||||
|
pointable = false,
|
||||||
|
diggable = false,
|
||||||
|
buildable_to = true,
|
||||||
|
liquidtype = "source",
|
||||||
|
liquid_alternative_flowing = "vox_main:oil_flowing",
|
||||||
|
liquid_alternative_source = "vox_main:oil_source",
|
||||||
|
liquid_viscosity = 1,
|
||||||
|
post_effect_color = {a = 255, r = 0, g = 0, b = 0}
|
||||||
|
})
|
||||||
|
core.register_alias("oil_source", "vox_main:oil_source")
|
||||||
|
core.register_alias("mapgen_oil_source", "vox_main:oil_source")
|
||||||
|
|
||||||
|
core.register_node("vox_main:oil_flowing", {
|
||||||
|
description = "Flowing Oil",
|
||||||
|
drawtype = "flowingliquid",
|
||||||
|
tiles = {"vox_oil.png"},
|
||||||
|
special_tiles = {
|
||||||
|
{
|
||||||
|
name = "vox_oil.png",
|
||||||
|
backface_culling = false,
|
||||||
|
animation = {
|
||||||
|
type = "vertical_frames",
|
||||||
|
aspect_w = 16,
|
||||||
|
aspect_h = 16,
|
||||||
|
length = 2.0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
alpha = 255,
|
||||||
|
paramtype = "light",
|
||||||
|
walkable = false,
|
||||||
|
pointable = false,
|
||||||
|
diggable = false,
|
||||||
|
buildable_to = true,
|
||||||
|
liquidtype = "flowing",
|
||||||
|
liquid_alternative_flowing = "vox_main:oil_flowing",
|
||||||
|
liquid_alternative_source = "vox_main:oil_source",
|
||||||
|
liquid_viscosity = 1,
|
||||||
|
post_effect_color = {a = 255, r = 0, g = 0, b = 0}
|
||||||
|
})
|
||||||
|
core.register_alias("oil_flowing", "vox_main:oil_flowing")
|
||||||
|
core.register_alias("mapgen_oil_flowing", "vox_main:oil_flowing")
|
||||||
|
|
||||||
|
-- Acid
|
||||||
|
core.register_node("vox_main:acid_source", {
|
||||||
|
description = "Acid Source",
|
||||||
|
drawtype = "liquid",
|
||||||
|
tiles = {
|
||||||
|
{
|
||||||
|
name = "vox_acid.png",
|
||||||
|
animation = {
|
||||||
|
type = "vertical_frames",
|
||||||
|
aspect_w = 16,
|
||||||
|
aspect_h = 16,
|
||||||
|
length = 2.0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
alpha = 255,
|
||||||
|
paramtype = "light",
|
||||||
|
walkable = false,
|
||||||
|
pointable = false,
|
||||||
|
diggable = false,
|
||||||
|
buildable_to = true,
|
||||||
|
liquidtype = "source",
|
||||||
|
liquid_alternative_flowing = "vox_main:acid_flowing",
|
||||||
|
liquid_alternative_source = "vox_main:acid_source",
|
||||||
|
liquid_viscosity = 1,
|
||||||
|
post_effect_color = {a = 255, r = 0, g = 255, b = 0}
|
||||||
|
})
|
||||||
|
core.register_alias("acid_source", "vox_main:acid_source")
|
||||||
|
core.register_alias("mapgen_acid_source", "vox_main:acid_source")
|
||||||
|
|
||||||
|
core.register_node("vox_main:acid_flowing", {
|
||||||
|
description = "Flowing Acid",
|
||||||
|
drawtype = "flowingliquid",
|
||||||
|
tiles = {"vox_acid.png"},
|
||||||
|
special_tiles = {
|
||||||
|
{
|
||||||
|
name = "vox_acid.png",
|
||||||
|
backface_culling = false,
|
||||||
|
animation = {
|
||||||
|
type = "vertical_frames",
|
||||||
|
aspect_w = 16,
|
||||||
|
aspect_h = 16,
|
||||||
|
length = 2.0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
alpha = 255,
|
||||||
|
paramtype = "light",
|
||||||
|
walkable = false,
|
||||||
|
pointable = false,
|
||||||
|
diggable = false,
|
||||||
|
buildable_to = true,
|
||||||
|
liquidtype = "flowing",
|
||||||
|
liquid_alternative_flowing = "vox_main:acid_flowing",
|
||||||
|
liquid_alternative_source = "vox_main:acid_source",
|
||||||
|
liquid_viscosity = 1,
|
||||||
|
post_effect_color = {a = 255, r = 0, g = 255, b = 0}
|
||||||
|
})
|
|
@ -1,37 +1,37 @@
|
||||||
-- Ash
|
-- Ash
|
||||||
minetest.register_craftitem("vox_core:ash", {
|
minetest.register_craftitem("vox_main:ash", {
|
||||||
description = "Ash",
|
description = "Ash",
|
||||||
inventory_image = "ash.png",
|
inventory_image = "ash.png",
|
||||||
groups = {crumbly = 3},
|
groups = {crumbly = 3},
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Salt
|
-- Salt
|
||||||
minetest.register_craftitem("vox_core:salt", {
|
minetest.register_craftitem("vox_main:salt", {
|
||||||
description = "Salt",
|
description = "Salt",
|
||||||
inventory_image = "salt.png",
|
inventory_image = "salt.png",
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Lye
|
-- Lye
|
||||||
minetest.register_craftitem("vox_core:lye", {
|
minetest.register_craftitem("vox_main:lye", {
|
||||||
description = "Lye",
|
description = "Lye",
|
||||||
inventory_image = "lye.png",
|
inventory_image = "lye.png",
|
||||||
})
|
})
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
output = "vox_core:lye",
|
output = "vox_main:lye",
|
||||||
recipe = {
|
recipe = {
|
||||||
{"vox_core:ash", "bucket:water_bucket"},
|
{"vox_main:ash", "bucket:water_bucket"},
|
||||||
},
|
},
|
||||||
replacements = {{"bucket:water_bucket", "bucket:bucket"}},
|
replacements = {{"bucket:water_bucket", "bucket:bucket"}},
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Soap
|
-- Soap
|
||||||
minetest.register_craftitem("vox_core:soap", {
|
minetest.register_craftitem("vox_main:soap", {
|
||||||
description = "Soap",
|
description = "Soap",
|
||||||
inventory_image = "soap.png",
|
inventory_image = "soap.png",
|
||||||
})
|
})
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
output = "vox_core:soap",
|
output = "vox_main:soap",
|
||||||
recipe = {
|
recipe = {
|
||||||
{"vox_mobdrops:fat", "vox_core:lye", "vox_core:salt"},
|
{"vox_mobdrops:fat", "vox_main:lye", "vox_main:salt"},
|
||||||
},
|
},
|
||||||
})
|
})
|
265
mods/ITEMS/vox_main/minerals.lua
Normal file
|
@ -0,0 +1,265 @@
|
||||||
|
|
||||||
|
-- Bedrock
|
||||||
|
core.register_node("vox_main:bedrock", {
|
||||||
|
description = "Bedrock",
|
||||||
|
tiles = {"vox_bedrock.png"},
|
||||||
|
groups = {cracky = 1}
|
||||||
|
})
|
||||||
|
core.register_alias("bedrock", "vox_main:bedrock")
|
||||||
|
core.register_alias("default:bedrock", "vox_main:bedrock")
|
||||||
|
|
||||||
|
-- Dirt
|
||||||
|
core.register_node("vox_main:dirt", {
|
||||||
|
description = "Dirt",
|
||||||
|
tiles = {"vox_dirt.png"},
|
||||||
|
groups = {crumbly = 3}
|
||||||
|
})
|
||||||
|
core.register_alias("dirt", "vox_main:dirt")
|
||||||
|
core.register_alias("default:dirt", "vox_main:dirt")
|
||||||
|
|
||||||
|
-- Grass
|
||||||
|
core.register_node("vox_main:grass_block", {
|
||||||
|
description = "Grass Block",
|
||||||
|
tiles = {"vox_grass_block.png"},
|
||||||
|
groups = {cracky = 3}
|
||||||
|
})
|
||||||
|
core.register_alias("grass_block", "vox_main:grass_block")
|
||||||
|
core.register_alias("default:dirt_with_grass_block" , "vox_main:grass_block")
|
||||||
|
|
||||||
|
-- Snow
|
||||||
|
core.register_node("vox_main:snow", {
|
||||||
|
description = "Snow",
|
||||||
|
tiles = {"vox_snow.png"},
|
||||||
|
groups = {crumbly = 3}
|
||||||
|
})
|
||||||
|
core.register_alias("snow", "vox_main:snow")
|
||||||
|
core.register_alias("default:snow", "vox_main:snow")
|
||||||
|
|
||||||
|
-- Packed Snow
|
||||||
|
core.register_node("vox_main:packed_snow", {
|
||||||
|
description = "Packed Snow",
|
||||||
|
tiles = {"vox_packed_snow.png"},
|
||||||
|
groups = {crumbly = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("packed_snow", "vox_main:packed_snow")
|
||||||
|
|
||||||
|
-- Ice
|
||||||
|
core.register_node("vox_main:ice", {
|
||||||
|
description = "Ice",
|
||||||
|
tiles = {"vox_ice.png"},
|
||||||
|
groups = {crumbly = 3}
|
||||||
|
})
|
||||||
|
core.register_alias("ice", "vox_main:ice")
|
||||||
|
core.register_alias("default:ice", "vox_main:ice")
|
||||||
|
|
||||||
|
-- Dirt With Snow
|
||||||
|
core.register_node("vox_main:dirt_with_snow", {
|
||||||
|
description = "Dirt With Snow",
|
||||||
|
tiles = {"vox_dirt_with_snow.png"},
|
||||||
|
groups = {crumbly = 3}
|
||||||
|
})
|
||||||
|
core.register_alias("dirt_with_snow", "vox_main:dirt_with_snow")
|
||||||
|
|
||||||
|
-- Permafrost
|
||||||
|
core.register_node("vox_main:permafrost", {
|
||||||
|
description = "Permafrost",
|
||||||
|
tiles = {"vox_permafrost.png"},
|
||||||
|
groups = {crumbly = 3}
|
||||||
|
})
|
||||||
|
core.register_alias("permafrost", "vox_main:permafrost")
|
||||||
|
|
||||||
|
-- Bluestone
|
||||||
|
core.register_node("vox_main:bluestone", {
|
||||||
|
description = "Bluestone",
|
||||||
|
tiles = {"vox_bluestone.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("bluestone", "vox_main:bluestone")
|
||||||
|
|
||||||
|
-- Stone
|
||||||
|
core.register_node("vox_main:stone", {
|
||||||
|
description = "Stone",
|
||||||
|
tiles = {"vox_stone.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("stone", "vox_main:stone")
|
||||||
|
core.register_alias("mapgen_stone", "vox_main:stone")
|
||||||
|
-- core.register_alias("default:stone", "vox_main:stone")
|
||||||
|
|
||||||
|
-- Cobblestone
|
||||||
|
core.register_node("vox_main:cobblestone", {
|
||||||
|
description = "Cobblestone",
|
||||||
|
tiles = {"vox_cobblestone.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("cobblestone", "vox_main:cobblestone")
|
||||||
|
core.register_alias("default:cobble", "vox_main:cobblestone")
|
||||||
|
|
||||||
|
-- Mossy Cobblestone
|
||||||
|
core.register_node("vox_main:mossycobble", {
|
||||||
|
description = "Mossy Cobblestone",
|
||||||
|
tiles = {"vox_mossycobble.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("mossycobble", "vox_main:mossycobble")
|
||||||
|
core.register_alias("default:mossycobble", "vox_main:mossycobble")
|
||||||
|
|
||||||
|
-- Sand
|
||||||
|
-- (I don't like sand. It's coarse and rough and irritating and it gets everywhere.)
|
||||||
|
core.register_node("vox_main:sand", {
|
||||||
|
description = "Sand",
|
||||||
|
tiles = {"vox_sand.png"},
|
||||||
|
groups = {crumbly = 3}
|
||||||
|
})
|
||||||
|
core.register_alias("sand", "vox_main:sand")
|
||||||
|
core.register_alias("default:sand", "vox_main:sand")
|
||||||
|
|
||||||
|
-- Sulfur Crust
|
||||||
|
core.register_node("vox_main:sulfur_crust", {
|
||||||
|
description = "Sulfur Crust",
|
||||||
|
tiles = {"vox_sulfur_crust.png"},
|
||||||
|
groups = {crumbly = 3}
|
||||||
|
})
|
||||||
|
core.register_alias("sulfur_crust", "vox_main:sulfur_crust")
|
||||||
|
|
||||||
|
-- Ash
|
||||||
|
minetest.register_node("vox_main:ash_block", {
|
||||||
|
description = "Ash Block",
|
||||||
|
tiles = {"vox_ash_block.png"},
|
||||||
|
groups = {crumbly = 3},
|
||||||
|
drop = "vox_mats:ash", -- Drops ash when broken
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Gravel
|
||||||
|
core.register_node("vox_main:gravel", {
|
||||||
|
description = "Gravel",
|
||||||
|
tiles = {"vox_gravel.png"},
|
||||||
|
groups = {crumbly = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("gravel", "vox_main:gravel")
|
||||||
|
core.register_alias("default:gravel", "vox_main:gravel")
|
||||||
|
|
||||||
|
-- Sandstone
|
||||||
|
core.register_node("vox_main:sandstone", {
|
||||||
|
description = "Sandstone",
|
||||||
|
tiles = {"vox_sandstone.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("sandstone", "vox_main:sandstone")
|
||||||
|
core.register_alias("default:sandstone", "vox_main:sandstone")
|
||||||
|
|
||||||
|
-- Clay
|
||||||
|
core.register_node("vox_main:clay", {
|
||||||
|
description = "Clay",
|
||||||
|
tiles = {"vox_clay.png"},
|
||||||
|
groups = {crumbly = 3}
|
||||||
|
})
|
||||||
|
core.register_alias("clay", "vox_main:clay")
|
||||||
|
core.register_alias("default:clay", "vox_main:clay")
|
||||||
|
|
||||||
|
-- Hardened Clay
|
||||||
|
core.register_node("vox_main:hardened_clay", {
|
||||||
|
description = "Hardened Clay",
|
||||||
|
tiles = {"vox_hardened_clay.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("hardened_clay", "vox_main:hardened_clay")
|
||||||
|
core.register_alias("default:hardened_clay", "vox_main:hardened_clay")
|
||||||
|
|
||||||
|
-- Mud
|
||||||
|
core.register_node("vox_main:mud", {
|
||||||
|
description = "Mud",
|
||||||
|
tiles = {"vox_mud.png"},
|
||||||
|
groups = {crumbly = 3}
|
||||||
|
})
|
||||||
|
core.register_alias("mud", "vox_main:mud")
|
||||||
|
|
||||||
|
-- Salt Crystal
|
||||||
|
core.register_node("vox_main:salt_crystal", {
|
||||||
|
description = "Salt Crystal",
|
||||||
|
tiles = {"vox_salt_crystal.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("salt_crystal", "vox_main:salt_crystal")
|
||||||
|
|
||||||
|
-- Volcanic Rock
|
||||||
|
core.register_node("vox_main:volcanic_rock", {
|
||||||
|
description = "Volcanic Rock",
|
||||||
|
tiles = {"vox_volcanic_rock.png"},
|
||||||
|
groups = {cracky = 3}
|
||||||
|
})
|
||||||
|
core.register_alias("volcanic_rock", "vox_main:volcanic_rock")
|
||||||
|
|
||||||
|
-- EVEN MORE ROCKS!!!
|
||||||
|
|
||||||
|
-- Granite
|
||||||
|
core.register_node("vox_main:granite", {
|
||||||
|
description = "Granite",
|
||||||
|
tiles = {"vox_granite.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("granite", "vox_main:granite")
|
||||||
|
core.register_alias("default:granite", "vox_main:granite")
|
||||||
|
|
||||||
|
-- Diorite
|
||||||
|
core.register_node("vox_main:diorite", {
|
||||||
|
description = "Diorite",
|
||||||
|
tiles = {"vox_diorite.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("diorite", "vox_main:diorite")
|
||||||
|
core.register_alias("default:diorite", "vox_main:diorite")
|
||||||
|
|
||||||
|
-- Andesite
|
||||||
|
core.register_node("vox_main:andesite", {
|
||||||
|
description = "Andesite",
|
||||||
|
tiles = {"vox_andesite.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("andesite", "vox_main:andesite")
|
||||||
|
core.register_alias("default:andesite", "vox_main:andesite")
|
||||||
|
|
||||||
|
-- Basalt
|
||||||
|
core.register_node("vox_main:basalt", {
|
||||||
|
description = "Basalt",
|
||||||
|
tiles = {"vox_basalt.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("basalt", "vox_main:basalt")
|
||||||
|
core.register_alias("default:basalt", "vox_main:basalt")
|
||||||
|
|
||||||
|
-- Obsidian
|
||||||
|
core.register_node("vox_main:obsidian", {
|
||||||
|
description = "Obsidian",
|
||||||
|
tiles = {"vox_obsidian.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("obsidian", "vox_main:obsidian")
|
||||||
|
core.register_alias("default:obsidian", "vox_main:obsidian")
|
||||||
|
|
||||||
|
-- Marble
|
||||||
|
core.register_node("vox_main:marble", {
|
||||||
|
description = "Marble",
|
||||||
|
tiles = {"vox_marble.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("marble", "vox_main:marble")
|
||||||
|
core.register_alias("default:marble", "vox_main:marble")
|
||||||
|
|
||||||
|
-- Chalk
|
||||||
|
core.register_node("vox_main:chalk", {
|
||||||
|
description = "Chalk",
|
||||||
|
tiles = {"vox_chalk.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("chalk", "vox_main:chalk")
|
||||||
|
core.register_alias("default:chalk", "vox_main:chalk")
|
||||||
|
|
||||||
|
-- Limestone
|
||||||
|
core.register_node("vox_main:limestone", {
|
||||||
|
description = "Limestone",
|
||||||
|
tiles = {"vox_limestone.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("limestone", "vox_main:limestone")
|
||||||
|
core.register_alias("default:limestone", "vox_main:limestone")
|
|
@ -1,13 +1,13 @@
|
||||||
-- We'll register drops from mobs here, but what mobs drop elsewhere.
|
-- We'll register drops from mobs here, but what mobs drop elsewhere.
|
||||||
|
|
||||||
-- Fat
|
-- Fat
|
||||||
minetest.register_craftitem("vox_core:fat", {
|
minetest.register_craftitem("vox_main:fat", {
|
||||||
description = "Fat",
|
description = "Fat",
|
||||||
inventory_image = "fat.png",
|
inventory_image = "fat.png",
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Leather
|
-- Leather
|
||||||
minetest.register_craftitem("vox_core:leather", {
|
minetest.register_craftitem("vox_main:leather", {
|
||||||
description = "Leather",
|
description = "Leather",
|
||||||
inventory_image = "leather.png",
|
inventory_image = "leather.png",
|
||||||
})
|
})
|
|
@ -1,3 +1,3 @@
|
||||||
name = vox_core
|
name = vox_main
|
||||||
description = Voxelis - Main : Core content
|
description = Voxelis - Main : Core content
|
||||||
depends = vox_colors
|
depends = vox_colors
|
7
mods/ITEMS/vox_main/ocean.lua
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
|
||||||
|
core.register_node("vox_main:coral_red", {
|
||||||
|
description = "Red Coral",
|
||||||
|
tiles = {"vox_coral_red.png"},
|
||||||
|
groups = {crumbly = 1}
|
||||||
|
})
|
||||||
|
core.register_alias("coral_red", "vox_main:coral_red")
|
153
mods/ITEMS/vox_main/ores.lua
Normal file
|
@ -0,0 +1,153 @@
|
||||||
|
-- -------------------------------------------------------------------------- --
|
||||||
|
-- Ores --
|
||||||
|
-- -------------------------------------------------------------------------- --
|
||||||
|
|
||||||
|
|
||||||
|
-- Fuel: Coal, Uranium, Peat
|
||||||
|
core.register_node("vox_main:coal_ore", {
|
||||||
|
description = "Coal Ore",
|
||||||
|
tiles = {"vox_coal_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("coal_ore", "vox_main:coal_ore")
|
||||||
|
core.register_alias("default:stone_with_coal", "vox_main:coal_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:uranium_ore", {
|
||||||
|
description = "Uranium Ore",
|
||||||
|
tiles = {"vox_uranium_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("uranium_ore", "vox_main:uranium_ore")
|
||||||
|
core.register_alias("default:stone_with_uranium", "vox_main:uranium_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:peat", {
|
||||||
|
description = "Peat",
|
||||||
|
tiles = {"vox_peat.png"},
|
||||||
|
groups = {crumbly = 2, flammable = 1}
|
||||||
|
})
|
||||||
|
core.register_alias("peat", "vox_main:peat")
|
||||||
|
|
||||||
|
-- Bone
|
||||||
|
core.register_node("vox_main:bone_ore", {
|
||||||
|
description = "Bone Ore",
|
||||||
|
tiles = {"vox_bone_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("bone_ore", "vox_main:bone_ore")
|
||||||
|
core.register_alias("default:stone_with_bone", "vox_main:bone_ore")
|
||||||
|
|
||||||
|
-- Sulfur
|
||||||
|
core.register_node("vox_main:sulfur_ore", {
|
||||||
|
description = "Sulfur Ore",
|
||||||
|
tiles = {"vox_sulfur_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("sulfur_ore", "vox_main:sulfur_ore")
|
||||||
|
core.register_alias("default:stone_with_sulfur", "vox_main:sulfur_ore")
|
||||||
|
|
||||||
|
-- Salt
|
||||||
|
core.register_node("vox_main:salt_ore", {
|
||||||
|
description = "Salt Ore",
|
||||||
|
tiles = {"vox_salt_ore.png"},
|
||||||
|
groups = {crumbly = 2},
|
||||||
|
drop = "vox_mats:salt"
|
||||||
|
})
|
||||||
|
core.register_alias("salt_ore", "vox_main:salt_ore")
|
||||||
|
core.register_alias("default:stone_with_salt", "vox_main:salt_ore")
|
||||||
|
|
||||||
|
-- Metals: Copper, Tin, Iron, Gold, Silver, Platinum, Lead, Zinc, Nickel, Cobalt, Titanium, Tungsten
|
||||||
|
core.register_node("vox_main:copper_ore", {
|
||||||
|
description = "Copper Ore",
|
||||||
|
tiles = {"vox_copper_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("copper_ore", "vox_main:copper_ore")
|
||||||
|
core.register_alias("default:stone_with_copper", "vox_main:copper_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:tin_ore", {
|
||||||
|
description = "Tin Ore",
|
||||||
|
tiles = {"vox_tin_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("tin_ore", "vox_main:tin_ore")
|
||||||
|
core.register_alias("default:stone_with_tin", "vox_main:tin_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:iron_ore", {
|
||||||
|
description = "Iron Ore",
|
||||||
|
tiles = {"vox_iron_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("iron_ore", "vox_main:iron_ore")
|
||||||
|
core.register_alias("default:stone_with_iron", "vox_main:iron_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:gold_ore", {
|
||||||
|
description = "Gold Ore",
|
||||||
|
tiles = {"vox_gold_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("gold_ore", "vox_main:gold_ore")
|
||||||
|
core.register_alias("default:stone_with_gold", "vox_main:gold_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:silver_ore", {
|
||||||
|
description = "Silver Ore",
|
||||||
|
tiles = {"vox_silver_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("silver_ore", "vox_main:silver_ore")
|
||||||
|
core.register_alias("default:stone_with_silver", "vox_main:silver_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:platinum_ore", {
|
||||||
|
description = "Platinum Ore",
|
||||||
|
tiles = {"vox_platinum_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("platinum_ore", "vox_main:platinum_ore")
|
||||||
|
core.register_alias("default:stone_with_platinum", "vox_main:platinum_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:lead_ore", {
|
||||||
|
description = "Lead Ore",
|
||||||
|
tiles = {"vox_lead_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("lead_ore", "vox_main:lead_ore")
|
||||||
|
core.register_alias("default:stone_with_lead", "vox_main:lead_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:zinc_ore", {
|
||||||
|
description = "Zinc Ore",
|
||||||
|
tiles = {"vox_zinc_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("zinc_ore", "vox_main:zinc_ore")
|
||||||
|
core.register_alias("default:stone_with_zinc", "vox_main:zinc_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:nickel_ore", {
|
||||||
|
description = "Nickel Ore",
|
||||||
|
tiles = {"vox_nickel_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("nickel_ore", "vox_main:nickel_ore")
|
||||||
|
core.register_alias("default:stone_with_nickel", "vox_main:nickel_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:cobalt_ore", {
|
||||||
|
description = "Cobalt Ore",
|
||||||
|
tiles = {"vox_cobalt_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("cobalt_ore", "vox_main:cobalt_ore")
|
||||||
|
core.register_alias("default:stone_with_cobalt", "vox_main:cobalt_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:titanium_ore", {
|
||||||
|
description = "Titanium Ore",
|
||||||
|
tiles = {"vox_titanium_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("titanium_ore", "vox_main:titanium_ore")
|
||||||
|
core.register_alias("default:stone_with_titanium", "vox_main:titanium_ore")
|
||||||
|
|
||||||
|
core.register_node("vox_main:tungsten_ore", {
|
||||||
|
description = "Tungsten Ore",
|
||||||
|
tiles = {"vox_tungsten_ore.png"},
|
||||||
|
groups = {cracky = 2}
|
||||||
|
})
|
||||||
|
core.register_alias("tungsten_ore", "vox_main:tungsten_ore")
|
||||||
|
core.register_alias("default:stone_with_tungsten", "vox_main:tungsten_ore")
|
|
@ -2,9 +2,9 @@
|
||||||
-- Cloud Block - Only pegasus can walk on it :)
|
-- Cloud Block - Only pegasus can walk on it :)
|
||||||
-- Players may stand on it, but sink partway through. If multiple blocks are
|
-- Players may stand on it, but sink partway through. If multiple blocks are
|
||||||
-- stacked, you fall to the lowest block and still don't fall through.
|
-- stacked, you fall to the lowest block and still don't fall through.
|
||||||
core.register_node("vox_core:cloud", {
|
core.register_node("vox_main:cloud", {
|
||||||
description = "Cloud",
|
description = "Cloud",
|
||||||
tiles = {"vox_cloud.png"},
|
tiles = {"vox_cloud.png"},
|
||||||
groups = {crumbly = 1}
|
groups = {crumbly = 1}
|
||||||
})
|
})
|
||||||
core.register_alias("cloud", "vox_core:cloud")
|
core.register_alias("cloud", "vox_main:cloud")
|
|
@ -6,13 +6,13 @@ local dyeable_craftitem = {"wool, carpet"}
|
||||||
-- ---------------------------- Basics -------------------------- --
|
-- ---------------------------- Basics -------------------------- --
|
||||||
-- "We've got wool and wool accessories.
|
-- "We've got wool and wool accessories.
|
||||||
-- String
|
-- String
|
||||||
minetest.register_craftitem("vox_core:string", {
|
minetest.register_craftitem("vox_main:string", {
|
||||||
description = "String",
|
description = "String",
|
||||||
inventory_image = "vox_core_string.png"
|
inventory_image = "vox_main_string.png"
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Wool
|
-- Wool
|
||||||
minetest.register_node("vox_core:wool", {
|
minetest.register_node("vox_main:wool", {
|
||||||
description = "Wool",
|
description = "Wool",
|
||||||
tiles = {"vox_textiles_wool.png"},
|
tiles = {"vox_textiles_wool.png"},
|
||||||
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=3},
|
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=3},
|
||||||
|
@ -21,7 +21,7 @@ minetest.register_node("vox_core:wool", {
|
||||||
|
|
||||||
-- Carpet
|
-- Carpet
|
||||||
-- These are made from wool and can be dyed
|
-- These are made from wool and can be dyed
|
||||||
minetest.register_node("vox_core:carpet", {
|
minetest.register_node("vox_main:carpet", {
|
||||||
description = "Carpet",
|
description = "Carpet",
|
||||||
tiles = {"vox_textiles_carpet.png"},
|
tiles = {"vox_textiles_carpet.png"},
|
||||||
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=3},
|
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=3},
|
Before Width: | Height: | Size: 216 B After Width: | Height: | Size: 216 B |
BIN
mods/ITEMS/vox_main/textures/vox_dirt.png
Normal file
After Width: | Height: | Size: 415 B |
Before Width: | Height: | Size: 149 B After Width: | Height: | Size: 149 B |
Before Width: | Height: | Size: 590 B After Width: | Height: | Size: 590 B |
Before Width: | Height: | Size: 119 B After Width: | Height: | Size: 119 B |
Before Width: | Height: | Size: 123 B After Width: | Height: | Size: 123 B |
Before Width: | Height: | Size: 590 B After Width: | Height: | Size: 590 B |
|
@ -1,382 +0,0 @@
|
||||||
-- -------------------------------------------------------------- --
|
|
||||||
-- BIOMES
|
|
||||||
-- -------------------------------------------------------------- --
|
|
||||||
|
|
||||||
-- Helper function to create noise parameters
|
|
||||||
local function create_noise_params(offset, scale, spread, seed, octaves, persist)
|
|
||||||
return {
|
|
||||||
offset = offset,
|
|
||||||
scale = scale,
|
|
||||||
spread = spread,
|
|
||||||
seed = seed,
|
|
||||||
octaves = octaves,
|
|
||||||
persist = persist
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Grassland
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "grassland",
|
|
||||||
node_top = "vox_core:dirt_with_grass",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:dirt",
|
|
||||||
depth_filler = 3,
|
|
||||||
node_stone = "vox_core:stone",
|
|
||||||
node_river_water = "vox_core:river_water_source",
|
|
||||||
node_riverbed = "vox_core:sand",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
node_dungeon = "vox_core:cobble",
|
|
||||||
node_dungeon_alt = "vox_core:mossycobble",
|
|
||||||
node_dungeon_stair = "vox_core:stonebrick",
|
|
||||||
vertical_blend = 5, -- Smooth transition between biomes
|
|
||||||
horizontal_blend = 6,
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 3, -- Ensure grassland spawns above beach level
|
|
||||||
heat_point = 50,
|
|
||||||
humidity_point = 35,
|
|
||||||
noise_params = create_noise_params(0, 1, {x = 100, y = 100, z = 100}, 12345, 3, 0.5)
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Forest
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "forest",
|
|
||||||
node_top = "vox_core:dirt_with_grass",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:dirt",
|
|
||||||
depth_filler = 3,
|
|
||||||
node_stone = "vox_core:stone",
|
|
||||||
node_river_water = "vox_core:river_water_source",
|
|
||||||
node_riverbed = "vox_core:sand",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
node_dungeon = "vox_core:cobble",
|
|
||||||
node_dungeon_alt = "vox_core:mossycobble",
|
|
||||||
node_dungeon_stair = "vox_core:stonebrick",
|
|
||||||
vertical_blend = 4, -- Smooth transition between biomes
|
|
||||||
horizontal_blend = 6,
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 6, -- Ensure forest spawns above beach level
|
|
||||||
heat_point = 45,
|
|
||||||
humidity_point = 70,
|
|
||||||
noise_params = create_noise_params(0, 1, {x = 100, y = 100, z = 100}, 67890, 3, 0.5)
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Desert
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "desert",
|
|
||||||
node_top = "vox_core:desert_sand",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:desert_sand",
|
|
||||||
depth_filler = 1,
|
|
||||||
node_stone = "vox_core:desert_stone",
|
|
||||||
node_river_water = "vox_core:river_water_source",
|
|
||||||
node_riverbed = "vox_core:sand",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
node_dungeon = "vox_core:desert_stonebrick",
|
|
||||||
node_dungeon_alt = "vox_core:desert_stone",
|
|
||||||
node_dungeon_stair = "vox_core:desert_stonebrick",
|
|
||||||
vertical_blend = 5, -- Smooth transition between biomes
|
|
||||||
horizontal_blend = 6,
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1, -- Ensure desert spawns above beach level
|
|
||||||
heat_point = 92,
|
|
||||||
humidity_point = 16
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Tundra
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "tundra",
|
|
||||||
node_top = "vox_core:dirt_with_snow",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:dirt",
|
|
||||||
depth_filler = 3,
|
|
||||||
node_stone = "vox_core:stone",
|
|
||||||
node_water_top = "vox_core:ice",
|
|
||||||
depth_water_top = 10,
|
|
||||||
node_river_water = "vox_core:river_water_source",
|
|
||||||
node_riverbed = "vox_core:gravel",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
node_dungeon = "vox_core:cobble",
|
|
||||||
node_dungeon_alt = "vox_core:mossycobble",
|
|
||||||
node_dungeon_stair = "vox_core:stonebrick",
|
|
||||||
vertical_blend = 5,
|
|
||||||
horizontal_blend = 6,
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1, -- Ensure tundra spawns above ocean level
|
|
||||||
heat_point = 0,
|
|
||||||
humidity_point = 40
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Icesheet
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "icesheet",
|
|
||||||
node_dust = "vox_core:snowblock",
|
|
||||||
node_top = "vox_core:snowblock",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:snowblock",
|
|
||||||
depth_filler = 3,
|
|
||||||
node_stone = "vox_core:cave_ice",
|
|
||||||
node_water_top = "vox_core:ice",
|
|
||||||
depth_water_top = 10,
|
|
||||||
node_river_water = "vox_core:ice",
|
|
||||||
node_riverbed = "vox_core:gravel",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
node_dungeon = "vox_core:ice",
|
|
||||||
node_dungeon_stair = "vox_core:stonebrick",
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
heat_point = 0,
|
|
||||||
humidity_point = 73
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Icesheet Ocean
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "icesheet_ocean",
|
|
||||||
node_dust = "vox_core:snowblock",
|
|
||||||
node_top = "vox_core:sand",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:sand",
|
|
||||||
depth_filler = 3,
|
|
||||||
node_water_top = "vox_core:water_source",
|
|
||||||
depth_water_top = 10,
|
|
||||||
node_cave_liquid = "vox_core:water_source",
|
|
||||||
node_riverbed = "vox_core:gravel",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
y_max = 0,
|
|
||||||
y_min = -255,
|
|
||||||
heat_point = 0,
|
|
||||||
humidity_point = 73
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Tundra Under
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "tundra_under",
|
|
||||||
node_cave_liquid = {"vox_core:water_source", "vox_core:lava_source"},
|
|
||||||
node_dungeon = "vox_core:cobble",
|
|
||||||
node_dungeon_alt = "vox_core:mossycobble",
|
|
||||||
node_dungeon_stair = "vox_core:stonebrick",
|
|
||||||
y_max = -1, -- Ensure tundra_under spawns below ocean level
|
|
||||||
y_min = -31000,
|
|
||||||
heat_point = 0,
|
|
||||||
humidity_point = 40
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Tundra Highland
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "tundra_highland",
|
|
||||||
node_dust = "vox_core:snow",
|
|
||||||
node_riverbed = "vox_core:gravel",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
node_dungeon = "vox_core:cobble",
|
|
||||||
node_dungeon_alt = "vox_core:mossycobble",
|
|
||||||
node_dungeon_stair = "vox_core:stonebrick",
|
|
||||||
vertical_blend = 5,
|
|
||||||
horizontal_blend = 6,
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 47,
|
|
||||||
heat_point = 0,
|
|
||||||
humidity_point = 40
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Tundra Beach
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "tundra_beach",
|
|
||||||
node_top = "vox_core:gravel",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:gravel",
|
|
||||||
depth_filler = 2,
|
|
||||||
node_riverbed = "vox_core:gravel",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
node_dungeon = "vox_core:cobble",
|
|
||||||
node_dungeon_alt = "vox_core:mossycobble",
|
|
||||||
node_dungeon_stair = "vox_core:stonebrick",
|
|
||||||
vertical_blend = 5,
|
|
||||||
horizontal_blend = 6,
|
|
||||||
y_max = 4,
|
|
||||||
y_min = -3,
|
|
||||||
heat_point = 0,
|
|
||||||
humidity_point = 40
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Tundra Ocean
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "tundra_ocean",
|
|
||||||
node_top = "vox_core:sand",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:sand",
|
|
||||||
depth_filler = 3,
|
|
||||||
node_riverbed = "vox_core:gravel",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
node_cave_liquid = "vox_core:water_source",
|
|
||||||
node_dungeon = "vox_core:cobble",
|
|
||||||
node_dungeon_alt = "vox_core:mossycobble",
|
|
||||||
node_dungeon_stair = "vox_core:stonebrick",
|
|
||||||
vertical_blend = 1,
|
|
||||||
horizontal_blend = 6,
|
|
||||||
y_max = 0,
|
|
||||||
y_min = -255,
|
|
||||||
heat_point = 0,
|
|
||||||
humidity_point = 40
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Ocean
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "ocean",
|
|
||||||
node_top = "vox_core:sand",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:sand",
|
|
||||||
depth_filler = 3,
|
|
||||||
node_water_top = "vox_core:water_source",
|
|
||||||
depth_water_top = 10,
|
|
||||||
node_river_water = "vox_core:river_water_source",
|
|
||||||
node_riverbed = "vox_core:gravel",
|
|
||||||
depth_riverbed = 4,
|
|
||||||
y_min = -255,
|
|
||||||
y_max = 0, -- Ocean level at height 0
|
|
||||||
heat_point = 50,
|
|
||||||
humidity_point = 70
|
|
||||||
})
|
|
||||||
|
|
||||||
-- River
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "river",
|
|
||||||
node_top = "vox_core:dirt_with_grass",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:dirt",
|
|
||||||
depth_filler = 3,
|
|
||||||
node_river_water = "vox_core:river_water_source",
|
|
||||||
node_riverbed = "vox_core:sand",
|
|
||||||
depth_riverbed = 3,
|
|
||||||
y_min = -2,
|
|
||||||
y_max = 0, -- River level at height 0
|
|
||||||
heat_point = 50,
|
|
||||||
humidity_point = 70
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Beach
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "beach",
|
|
||||||
node_top = "vox_core:sand",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:sand",
|
|
||||||
depth_filler = 3,
|
|
||||||
y_min = 0,
|
|
||||||
y_max = 5, -- Allow beach to vary in height
|
|
||||||
vertical_blend = 3, -- Smooth transition between biomes
|
|
||||||
horizontal_blend = 6,
|
|
||||||
heat_point = 50,
|
|
||||||
humidity_point = 70
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Savanna
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "savanna",
|
|
||||||
node_top = "vox_core:dry_dirt_with_dry_grass",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:dry_dirt",
|
|
||||||
depth_filler = 3,
|
|
||||||
node_stone = "vox_core:desert_stone",
|
|
||||||
node_river_water = "vox_core:river_water_source",
|
|
||||||
node_riverbed = "vox_core:sand",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
node_dungeon = "vox_core:cobble",
|
|
||||||
node_dungeon_alt = "vox_core:mossycobble",
|
|
||||||
node_dungeon_stair = "vox_core:stonebrick",
|
|
||||||
vertical_blend = 4,
|
|
||||||
horizontal_blend = 6,
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 4,
|
|
||||||
heat_point = 85,
|
|
||||||
humidity_point = 20
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Volcanic
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "volcanic",
|
|
||||||
node_top = "vox_core:ash_block",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:volcanic_rock",
|
|
||||||
depth_filler = 6,
|
|
||||||
node_stone = "vox_core:stone",
|
|
||||||
node_river_water = "vox_core:lava_source",
|
|
||||||
node_riverbed = "vox_core:gravel",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
node_dungeon = "vox_core:cobble",
|
|
||||||
node_dungeon_alt = "vox_core:mossycobble",
|
|
||||||
node_dungeon_stair = "vox_core:stonebrick",
|
|
||||||
vertical_blend = 4,
|
|
||||||
horizontal_blend = 6,
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 7,
|
|
||||||
heat_point = 100,
|
|
||||||
humidity_point = 10
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Mountain
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "mountain",
|
|
||||||
node_top = "vox_core:granite",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:diorite",
|
|
||||||
depth_filler = 3,
|
|
||||||
node_stone = "vox_core:andesite",
|
|
||||||
node_river_water = "vox_core:river_water_source",
|
|
||||||
node_riverbed = "vox_core:gravel",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
node_dungeon = "vox_core:cobble",
|
|
||||||
node_dungeon_alt = "vox_core:mossycobble",
|
|
||||||
node_dungeon_stair = "vox_core:stonebrick",
|
|
||||||
horizontal_blend = 6,
|
|
||||||
vertical_blend = 10,
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 40,
|
|
||||||
heat_point = 30,
|
|
||||||
humidity_point = 40
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Painted Mesa
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "painted_mesa",
|
|
||||||
node_top = "vox_core:hardened_clay",
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:hardened_clay",
|
|
||||||
depth_filler = 3,
|
|
||||||
node_stone = "vox_core:desert_stone",
|
|
||||||
node_river_water = "vox_core:river_water_source",
|
|
||||||
node_riverbed = "vox_core:sand",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
node_dungeon = "vox_core:cobble",
|
|
||||||
node_dungeon_alt = "vox_core:mossycobble",
|
|
||||||
node_dungeon_stair = "vox_core:stonebrick",
|
|
||||||
vertical_blend = 3,
|
|
||||||
horizontal_blend = 6,
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 3,
|
|
||||||
heat_point = 75,
|
|
||||||
humidity_point = 25,
|
|
||||||
noise_params = create_noise_params(0, 1, {x = 100, y = 100, z = 100}, 54321, 3, 0.5)
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Register terracotta layers for Painted Mesa
|
|
||||||
local colors = {"red", "orange", "yellow", "brown", "white", "light_blue", "lime", "pink"}
|
|
||||||
for _, color in ipairs(colors) do
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "painted_mesa_" .. color,
|
|
||||||
node_top = "vox_core:teracotta_" .. color,
|
|
||||||
depth_top = 1,
|
|
||||||
node_filler = "vox_core:teracotta_" .. color,
|
|
||||||
depth_filler = 3,
|
|
||||||
node_stone = "vox_core:desert_stone",
|
|
||||||
node_river_water = "vox_core:river_water_source",
|
|
||||||
node_riverbed = "vox_core:sand",
|
|
||||||
depth_riverbed = 2,
|
|
||||||
node_dungeon = "vox_core:cobble",
|
|
||||||
node_dungeon_alt = "vox_core:mossycobble",
|
|
||||||
node_dungeon_stair = "vox_core:stonebrick",
|
|
||||||
vertical_blend = 3,
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 6,
|
|
||||||
heat_point = 75,
|
|
||||||
humidity_point = 25,
|
|
||||||
noise_params = create_noise_params(0, 1, {x = 100, y = 100, z = 100}, 98765, 3, 0.5)
|
|
||||||
})
|
|
||||||
end
|
|
|
@ -1,280 +0,0 @@
|
||||||
-- -------------------------------------------------------------- --
|
|
||||||
-- DECORATIONS
|
|
||||||
-- -------------------------------------------------------------- --
|
|
||||||
|
|
||||||
-- Kelp
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:kelp",
|
|
||||||
deco_type = "simple",
|
|
||||||
place_on = {"vox_core:sand"},
|
|
||||||
place_offset_y = -1,
|
|
||||||
sidelen = 16,
|
|
||||||
noise_params = {
|
|
||||||
offset = -0.04,
|
|
||||||
scale = 0.1,
|
|
||||||
spread = {x = 200, y = 200, z = 200},
|
|
||||||
seed = 87112,
|
|
||||||
octaves = 3,
|
|
||||||
persist = 0.7
|
|
||||||
},
|
|
||||||
biomes = {"ocean"},
|
|
||||||
y_max = 0, -- Ensure kelp can be placed up to ocean level
|
|
||||||
y_min = -10,
|
|
||||||
flags = "force_placement",
|
|
||||||
decoration = "vox_core:kelp",
|
|
||||||
param2 = 48,
|
|
||||||
param2_max = 96,
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Apple Tree
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:apple_tree",
|
|
||||||
deco_type = "schematic",
|
|
||||||
place_on = {"vox_core:dirt_with_grass"},
|
|
||||||
sidelen = 16,
|
|
||||||
fill_ratio = 0.02,
|
|
||||||
biomes = {"grassland"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
schematic = minetest.get_modpath("vox_core") .. "/schematics/apple_tree.mts",
|
|
||||||
flags = "place_center_x, place_center_z",
|
|
||||||
rotation = "random",
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Jungle Tree
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:jungle_tree",
|
|
||||||
deco_type = "schematic",
|
|
||||||
place_on = {"vox_core:dirt_with_rainforest_litter"},
|
|
||||||
sidelen = 16,
|
|
||||||
fill_ratio = 0.02,
|
|
||||||
biomes = {"rainforest"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
schematic = minetest.get_modpath("vox_core") .. "/schematics/jungle_tree.mts",
|
|
||||||
flags = "place_center_x, place_center_z",
|
|
||||||
rotation = "random",
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Pine Tree
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:pine_tree",
|
|
||||||
deco_type = "schematic",
|
|
||||||
place_on = {"vox_core:dirt_with_snow"},
|
|
||||||
sidelen = 16,
|
|
||||||
fill_ratio = 0.02,
|
|
||||||
biomes = {"taiga"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
schematic = minetest.get_modpath("vox_core") .. "/schematics/pine_tree.mts",
|
|
||||||
flags = "place_center_x, place_center_z",
|
|
||||||
rotation = "random",
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Acacia Tree
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:acacia_tree",
|
|
||||||
deco_type = "schematic",
|
|
||||||
place_on = {"vox_core:dry_dirt"},
|
|
||||||
sidelen = 16,
|
|
||||||
fill_ratio = 0.02,
|
|
||||||
biomes = {"savanna"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
schematic = minetest.get_modpath("vox_core") .. "/schematics/acacia_tree.mts",
|
|
||||||
flags = "place_center_x, place_center_z",
|
|
||||||
rotation = "random",
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Aspen Tree
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:aspen_tree",
|
|
||||||
deco_type = "schematic",
|
|
||||||
place_on = {"vox_core:dirt_with_grass"},
|
|
||||||
sidelen = 16,
|
|
||||||
fill_ratio = 0.02,
|
|
||||||
biomes = {"deciduous_forest"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
schematic = minetest.get_modpath("vox_core") .. "/schematics/aspen_tree.mts",
|
|
||||||
flags = "place_center_x, place_center_z",
|
|
||||||
rotation = "random",
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Grass
|
|
||||||
for i = 1, 5 do
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:grass_" .. i,
|
|
||||||
deco_type = "simple",
|
|
||||||
place_on = {"vox_core:dirt_with_grass"},
|
|
||||||
sidelen = 16,
|
|
||||||
noise_params = {
|
|
||||||
offset = -0.03,
|
|
||||||
scale = 0.09,
|
|
||||||
spread = {x = 100, y = 100, z = 100},
|
|
||||||
seed = 329,
|
|
||||||
octaves = 3,
|
|
||||||
persist = 0.6
|
|
||||||
},
|
|
||||||
biomes = {"grassland"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
decoration = "vox_core:grass_" .. i,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Dry Grass
|
|
||||||
for i = 1, 5 do
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:dry_grass_" .. i,
|
|
||||||
deco_type = "simple",
|
|
||||||
place_on = {"vox_core:dry_dirt"},
|
|
||||||
sidelen = 16,
|
|
||||||
noise_params = {
|
|
||||||
offset = 0.01,
|
|
||||||
scale = 0.05,
|
|
||||||
spread = {x = 100, y = 100, z = 100},
|
|
||||||
seed = 329,
|
|
||||||
octaves = 3,
|
|
||||||
persist = 0.6
|
|
||||||
},
|
|
||||||
biomes = {"savanna"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
decoration = "vox_core:dry_grass_" .. i,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Fern
|
|
||||||
for i = 1, 3 do
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:fern_" .. i,
|
|
||||||
deco_type = "simple",
|
|
||||||
place_on = {"vox_core:dirt_with_grass"},
|
|
||||||
sidelen = 16,
|
|
||||||
noise_params = {
|
|
||||||
offset = 0,
|
|
||||||
scale = 0.06,
|
|
||||||
spread = {x = 100, y = 100, z = 100},
|
|
||||||
seed = 329,
|
|
||||||
octaves = 3,
|
|
||||||
persist = 0.6
|
|
||||||
},
|
|
||||||
biomes = {"grassland"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
decoration = "vox_core:fern_" .. i,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Marram Grass
|
|
||||||
for i = 1, 3 do
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:marram_grass_" .. i,
|
|
||||||
deco_type = "simple",
|
|
||||||
place_on = {"vox_core:sand"},
|
|
||||||
sidelen = 16,
|
|
||||||
noise_params = {
|
|
||||||
offset = 0,
|
|
||||||
scale = 0.06,
|
|
||||||
spread = {x = 100, y = 100, z = 100},
|
|
||||||
seed = 329,
|
|
||||||
octaves = 3,
|
|
||||||
persist = 0.6
|
|
||||||
},
|
|
||||||
biomes = {"beach"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
decoration = "vox_core:marram_grass_" .. i,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Cactus
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:cactus",
|
|
||||||
deco_type = "schematic",
|
|
||||||
place_on = {"vox_core:desert_sand"},
|
|
||||||
sidelen = 16,
|
|
||||||
fill_ratio = 0.02,
|
|
||||||
biomes = {"desert"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
schematic = minetest.get_modpath("vox_core") .. "/schematics/cactus.mts",
|
|
||||||
flags = "place_center_x, place_center_z",
|
|
||||||
rotation = "random",
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Large Cactus Seedling
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:large_cactus_seedling",
|
|
||||||
deco_type = "simple",
|
|
||||||
place_on = {"vox_core:desert_sand"},
|
|
||||||
sidelen = 16,
|
|
||||||
noise_params = {
|
|
||||||
offset = 0,
|
|
||||||
scale = 0.06,
|
|
||||||
spread = {x = 100, y = 100, z = 100},
|
|
||||||
seed = 329,
|
|
||||||
octaves = 3,
|
|
||||||
persist = 0.6
|
|
||||||
},
|
|
||||||
biomes = {"desert"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
decoration = "vox_core:large_cactus_seedling",
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Papyrus
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:papyrus",
|
|
||||||
deco_type = "schematic",
|
|
||||||
place_on = {"vox_core:dirt"},
|
|
||||||
sidelen = 16,
|
|
||||||
fill_ratio = 0.02,
|
|
||||||
biomes = {"swamp"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
schematic = minetest.get_modpath("vox_core") .. "/schematics/papyrus.mts",
|
|
||||||
flags = "place_center_x, place_center_z",
|
|
||||||
rotation = "random",
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Dry Shrub
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:dry_shrub",
|
|
||||||
deco_type = "simple",
|
|
||||||
place_on = {"vox_core:desert_sand"},
|
|
||||||
sidelen = 16,
|
|
||||||
noise_params = {
|
|
||||||
offset = 0,
|
|
||||||
scale = 0.06,
|
|
||||||
spread = {x = 100, y = 100, z = 100},
|
|
||||||
seed = 329,
|
|
||||||
octaves = 3,
|
|
||||||
persist = 0.6
|
|
||||||
},
|
|
||||||
biomes = {"desert"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
decoration = "vox_core:dry_shrub",
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Jungle Grass
|
|
||||||
minetest.register_decoration({
|
|
||||||
name = "vox_core:junglegrass",
|
|
||||||
deco_type = "simple",
|
|
||||||
place_on = {"vox_core:dirt_with_rainforest_litter"},
|
|
||||||
sidelen = 16,
|
|
||||||
noise_params = {
|
|
||||||
offset = 0,
|
|
||||||
scale = 0.06,
|
|
||||||
spread = {x = 100, y = 100, z = 100},
|
|
||||||
seed = 329,
|
|
||||||
octaves = 3,
|
|
||||||
persist = 0.6
|
|
||||||
},
|
|
||||||
biomes = {"rainforest"},
|
|
||||||
y_max = 31000,
|
|
||||||
y_min = 1,
|
|
||||||
decoration = "vox_core:junglegrass",
|
|
||||||
})
|
|
|
@ -1,102 +0,0 @@
|
||||||
-- Granite
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "sheet",
|
|
||||||
ore = "vox_core:granite",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 180 * 180 * 180, -- Decrease scarcity to make more common
|
|
||||||
clust_num_ores = 6,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"mountains"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Diorite
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "stratum",
|
|
||||||
ore = "vox_core:diorite",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 120 * 120 * 120,
|
|
||||||
clust_num_ores = 4,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000, -- Adjust for greater depth
|
|
||||||
y_max = 31000, -- Adjust for greater height
|
|
||||||
biomes = {"grassland", "forest"} -- Restrict to specific biomes
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Andesite
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "sheet",
|
|
||||||
ore = "vox_core:andesite",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 120 * 120 * 120, -- Increase scarcity
|
|
||||||
clust_num_ores = 4,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000, -- Adjust for greater depth
|
|
||||||
y_max = 31000, -- Adjust for greater height
|
|
||||||
biomes = {"grassland", "forest"} -- Restrict to specific biomes
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Basalt
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "stratum",
|
|
||||||
ore = "vox_core:basalt",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 100 * 100 * 100, -- Increase scarcity
|
|
||||||
clust_num_ores = 2,
|
|
||||||
clust_size = 2,
|
|
||||||
y_min = -31000, -- Adjust for greater depth
|
|
||||||
y_max = 31000, -- Adjust for greater height
|
|
||||||
biomes = {"tundra", "icesheet"} -- Restrict to specific biomes
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Marble
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "sheet",
|
|
||||||
ore = "vox_core:marble",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 180 * 180 * 180, -- Decrease scarcity to make more common
|
|
||||||
clust_num_ores = 6,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"mountains"}
|
|
||||||
})
|
|
||||||
-- Chalk
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "sheet",
|
|
||||||
ore = "vox_core:chalk",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 120 * 120 * 120, -- Increase scarcity
|
|
||||||
clust_num_ores = 3,
|
|
||||||
clust_size = 2,
|
|
||||||
y_min = -31000, -- Adjust for greater depth
|
|
||||||
y_max = 31000, -- Adjust for greater height
|
|
||||||
biomes = {"desert", "grassland"} -- Restrict to specific biomes
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Limestone
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "sheet",
|
|
||||||
ore = "vox_core:limestone",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 180 * 180 * 180, -- Decrease scarcity to make more common
|
|
||||||
clust_num_ores = 6,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"mountains"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Obsidian
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "vein",
|
|
||||||
ore = "vox_core:obsidian",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 100 * 100 * 100,
|
|
||||||
clust_num_ores = 1,
|
|
||||||
clust_size = 1,
|
|
||||||
y_min = -31000, -- Adjust for greater depth
|
|
||||||
y_max = 31000, -- Adjust for greater height
|
|
||||||
biomes = {"volcanic"} -- Restrict to specific biomes
|
|
||||||
})
|
|
|
@ -1,211 +0,0 @@
|
||||||
-- -------------------------------------------------------------- --
|
|
||||||
-- ORES
|
|
||||||
-- -------------------------------------------------------------- --
|
|
||||||
|
|
||||||
-- Coal Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:coal_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 10 * 10 * 10, -- Make coal more common
|
|
||||||
clust_num_ores = 12,
|
|
||||||
clust_size = 6,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"grassland", "forest", "desert", "tundra", "icesheet", "savanna", "volcanic", "mountain", "painted_mesa"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Uranium Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:uranium_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 400 * 400 * 400, -- Adjust scarcity
|
|
||||||
clust_num_ores = 3,
|
|
||||||
clust_size = 2,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"tundra", "desert", "volcanic", "mountain"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Bone Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:bone_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 100 * 100 * 100, -- Adjust scarcity
|
|
||||||
clust_num_ores = 4,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"tundra", "desert", "savanna", "volcanic"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Iron Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:iron_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 15 * 15 * 15, -- Make iron more common
|
|
||||||
clust_num_ores = 10,
|
|
||||||
clust_size = 5,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"grassland", "forest", "desert", "tundra", "icesheet", "savanna", "volcanic", "mountain", "painted_mesa"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Copper Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:copper_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 20 * 20 * 20, -- Adjust scarcity
|
|
||||||
clust_num_ores = 8,
|
|
||||||
clust_size = 4,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"grassland", "forest", "desert", "tundra", "savanna", "volcanic", "mountain"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Tin Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:tin_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 25 * 25 * 25, -- Adjust scarcity
|
|
||||||
clust_num_ores = 6,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"grassland", "forest", "desert", "tundra", "savanna", "volcanic", "mountain"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Gold Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:gold_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 50 * 50 * 50, -- Adjust scarcity
|
|
||||||
clust_num_ores = 5,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"desert", "volcanic", "mountain", "painted_mesa"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Diamond Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:diamond_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 100 * 100 * 100, -- Adjust scarcity
|
|
||||||
clust_num_ores = 3,
|
|
||||||
clust_size = 2,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = -50,
|
|
||||||
biomes = {"mountain", "volcanic"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Emerald Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:emerald_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 150 * 150 * 150, -- Adjust scarcity
|
|
||||||
clust_num_ores = 4,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"forest", "mountain"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Ruby Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:ruby_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 150 * 150 * 150, -- Adjust scarcity
|
|
||||||
clust_num_ores = 4,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"desert", "volcanic"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Sapphire Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:sapphire_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 150 * 150 * 150, -- Adjust scarcity
|
|
||||||
clust_num_ores = 4,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"tundra", "icesheet"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Amethyst Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:amethyst_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 150 * 150 * 150, -- Adjust scarcity
|
|
||||||
clust_num_ores = 4,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"forest", "mountain"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Topaz Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:topaz_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 150 * 150 * 150, -- Adjust scarcity
|
|
||||||
clust_num_ores = 4,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"desert", "savanna"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Peridot Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:peridot_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 150 * 150 * 150, -- Adjust scarcity
|
|
||||||
clust_num_ores = 4,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"forest", "grassland"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Opal Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:opal_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 150 * 150 * 150, -- Adjust scarcity
|
|
||||||
clust_num_ores = 4,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"forest", "mountain"}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Onyx Ore
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "vox_core:onyx_ore",
|
|
||||||
wherein = "vox_core:stone",
|
|
||||||
clust_scarcity = 150 * 150 * 150, -- Adjust scarcity
|
|
||||||
clust_num_ores = 4,
|
|
||||||
clust_size = 3,
|
|
||||||
y_min = -31000,
|
|
||||||
y_max = 31000,
|
|
||||||
biomes = {"volcanic", "mountain"}
|
|
||||||
})
|
|
|
@ -7,43 +7,22 @@
|
||||||
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
||||||
|
|
||||||
-- -------------------------------------------------------------- --
|
-- -------------------------------------------------------------- --
|
||||||
-- ALIASES
|
-- BIOMES
|
||||||
-- -------------------------------------------------------------- --
|
-- -------------------------------------------------------------- --
|
||||||
-- Aliases for map generators
|
|
||||||
|
|
||||||
-- All mapgens
|
-- Grassland
|
||||||
minetest.register_alias("mapgen_stone", "vox_core:stone")
|
core.register_biome({
|
||||||
minetest.register_alias("mapgen_water_source", "vox_core:water_source")
|
name = "grassland",
|
||||||
minetest.register_alias("mapgen_river_water_source", "vox_core:river_water_source")
|
node_top = "grass",
|
||||||
|
depth_top = 1,
|
||||||
-- Additional aliases needed for mapgen v6
|
node_filler = "vox_main:dirt",
|
||||||
minetest.register_alias("mapgen_lava_source", "vox_core:lava_source")
|
node_stone = "vox_main:stone",
|
||||||
minetest.register_alias("mapgen_dirt", "vox_core:dirt")
|
depth_filler = 3,
|
||||||
minetest.register_alias("mapgen_dirt_with_grass", "vox_core:dirt_with_grass")
|
node_riverbed = "vox_main:sand",
|
||||||
minetest.register_alias("mapgen_sand", "vox_core:sand")
|
node_river_water = "vox_main:water_source",
|
||||||
minetest.register_alias("mapgen_gravel", "vox_core:gravel")
|
depth_riverbed = 2,
|
||||||
minetest.register_alias("mapgen_desert_stone", "vox_core:desert_stone")
|
height_min = 1,
|
||||||
minetest.register_alias("mapgen_desert_sand", "vox_core:desert_sand")
|
height_max = 256,
|
||||||
minetest.register_alias("mapgen_dirt_with_snow", "vox_core:dirt_with_snow")
|
heat_point = 35,
|
||||||
minetest.register_alias("mapgen_snowblock", "vox_core:snowblock")
|
humidity_point = 50
|
||||||
minetest.register_alias("mapgen_snow", "vox_core:snow")
|
})
|
||||||
minetest.register_alias("mapgen_ice", "vox_core:ice")
|
|
||||||
|
|
||||||
minetest.register_alias("mapgen_tree", "vox_core:tree")
|
|
||||||
minetest.register_alias("mapgen_leaves", "vox_core:leaves")
|
|
||||||
minetest.register_alias("mapgen_apple", "vox_core:apple")
|
|
||||||
minetest.register_alias("mapgen_jungletree", "vox_core:jungletree")
|
|
||||||
minetest.register_alias("mapgen_jungleleaves", "vox_core:jungleleaves")
|
|
||||||
minetest.register_alias("mapgen_junglegrass", "vox_core:junglegrass")
|
|
||||||
minetest.register_alias("mapgen_pine_tree", "vox_core:pine_tree")
|
|
||||||
minetest.register_alias("mapgen_pine_needles", "vox_core:pine_needles")
|
|
||||||
|
|
||||||
minetest.register_alias("mapgen_cobble", "vox_core:cobble")
|
|
||||||
minetest.register_alias("mapgen_stair_cobble", "vox_structural:stair_cobble")
|
|
||||||
minetest.register_alias("mapgen_mossycobble", "vox_core:mossycobble")
|
|
||||||
minetest.register_alias("mapgen_stair_desert_stone", "vox_structural:stair_desert_stone")
|
|
||||||
|
|
||||||
-- Run our register_ scripts
|
|
||||||
dofile(minetest.get_modpath("vox_overworld").."/register_biomes.lua")
|
|
||||||
dofile(minetest.get_modpath("vox_overworld").."/register_decorations.lua")
|
|
||||||
dofile(minetest.get_modpath("vox_overworld").."/register_ores.lua")
|
|
|
@ -7,7 +7,7 @@
|
||||||
-- local S = minetest.get_translator("default")
|
-- local S = minetest.get_translator("default")
|
||||||
|
|
||||||
-- -- Definitions made by this mod that other mods can use too
|
-- -- Definitions made by this mod that other mods can use too
|
||||||
default = {}
|
-- default = {}
|
||||||
|
|
||||||
-- default.LIGHT_MAX = 14
|
-- default.LIGHT_MAX = 14
|
||||||
-- default.get_translator = S
|
-- default.get_translator = S
|
2
mods/TEMP/default/mod.conf
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
name = Default
|
||||||
|
description = We are borrowing this stuff from the default mod.
|