Modpack refactor (#4)
Split this mod into a set of sub-mods in a modpack, and in the process did a whole bunch of renovations. * updated Subterrane's API to allow for more patterned placement of things * added "warrens" * clean separation of flooded and non-flooded caverns * rearranged biomes to make cavern layers more distinct * added oil layer * added underworld layer
26
df_mapitems/LICENSE.txt
Normal file
@ -0,0 +1,26 @@
|
||||
Dwarf Fortress is copyright 2018 by Tarn Adams. This mod uses no assets or other copyrighted materials from Dwarf Fortress.
|
||||
|
||||
Sounds and textures are under various licenses, see the license.txt file in the /sounds and /textures directories for details.
|
||||
|
||||
License for Code
|
||||
----------------
|
||||
|
||||
Copyright (C) 2018 FaceDeer
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
44
df_mapitems/aliases.lua
Normal file
@ -0,0 +1,44 @@
|
||||
-- These used to be defined in subterrane, but now dfcaverns handles it.
|
||||
if not minetest.registered_nodes["subterrane:wet_flowstone"] then
|
||||
minetest.register_alias("subterrane:dry_stal_1", "df_mapitems:dry_stal_1")
|
||||
minetest.register_alias("subterrane:dry_stal_2", "df_mapitems:dry_stal_2")
|
||||
minetest.register_alias("subterrane:dry_stal_3", "df_mapitems:dry_stal_3")
|
||||
minetest.register_alias("subterrane:dry_stal_4", "df_mapitems:dry_stal_4")
|
||||
minetest.register_alias("subterrane:wet_stal_1", "df_mapitems:wet_stal_1")
|
||||
minetest.register_alias("subterrane:wet_stal_2", "df_mapitems:wet_stal_2")
|
||||
minetest.register_alias("subterrane:wet_stal_3", "df_mapitems:wet_stal_3")
|
||||
minetest.register_alias("subterrane:wet_stal_4", "df_mapitems:wet_stal_4")
|
||||
minetest.register_alias("subterrane:wet_flowstone", "df_mapitems:wet_flowstone")
|
||||
minetest.register_alias("subterrane:dry_flowstone", "df_mapitems:dry_flowstone")
|
||||
end
|
||||
|
||||
minetest.register_alias("dfcaverns:cave_coral_3" , "df_mapitems:cave_coral_3" )
|
||||
minetest.register_alias("dfcaverns:cave_coral_2" , "df_mapitems:cave_coral_2" )
|
||||
minetest.register_alias("dfcaverns:cave_coral_1" , "df_mapitems:cave_coral_1" )
|
||||
minetest.register_alias("dfcaverns:dry_stal_1" , "df_mapitems:dry_stal_1" )
|
||||
minetest.register_alias("dfcaverns:dry_stal_2" , "df_mapitems:dry_stal_2" )
|
||||
minetest.register_alias("dfcaverns:dry_stal_3" , "df_mapitems:dry_stal_3" )
|
||||
minetest.register_alias("dfcaverns:dry_stal_4" , "df_mapitems:dry_stal_4" )
|
||||
minetest.register_alias("dfcaverns:wet_stal_1" , "df_mapitems:wet_stal_1" )
|
||||
minetest.register_alias("dfcaverns:wet_stal_2" , "df_mapitems:wet_stal_2" )
|
||||
minetest.register_alias("dfcaverns:wet_stal_3" , "df_mapitems:wet_stal_3" )
|
||||
minetest.register_alias("dfcaverns:wet_stal_4" , "df_mapitems:wet_stal_4" )
|
||||
minetest.register_alias("dfcaverns:wet_flowstone" , "df_mapitems:wet_flowstone" )
|
||||
minetest.register_alias("dfcaverns:dry_flowstone" , "df_mapitems:dry_flowstone" )
|
||||
minetest.register_alias("dfcaverns:icicle_1" , "df_mapitems:icicle_1" )
|
||||
minetest.register_alias("dfcaverns:icicle_2" , "df_mapitems:icicle_2" )
|
||||
minetest.register_alias("dfcaverns:icicle_3" , "df_mapitems:icicle_3" )
|
||||
minetest.register_alias("dfcaverns:icicle_4" , "df_mapitems:icicle_4" )
|
||||
minetest.register_alias("dfcaverns:glow_mese" , "df_mapitems:glow_mese" )
|
||||
minetest.register_alias("dfcaverns:glow_ruby_ore" , "df_mapitems:glow_ruby_ore" )
|
||||
minetest.register_alias("dfcaverns:big_crystal" , "df_mapitems:big_crystal" )
|
||||
minetest.register_alias("dfcaverns:med_crystal" , "df_mapitems:med_crystal" )
|
||||
minetest.register_alias("dfcaverns:big_crystal_30" , "df_mapitems:big_crystal_30" )
|
||||
minetest.register_alias("dfcaverns:med_crystal_30" , "df_mapitems:med_crystal_30" )
|
||||
minetest.register_alias("dfcaverns:big_crystal_30_45" , "df_mapitems:big_crystal_30_45" )
|
||||
minetest.register_alias("dfcaverns:med_crystal_30_45" , "df_mapitems:med_crystal_30_45" )
|
||||
minetest.register_alias("dfcaverns:glow_worm" , "df_mapitems:glow_worm" )
|
||||
minetest.register_alias("dfcaverns:dirt_with_cave_moss" , "df_mapitems:dirt_with_cave_moss" )
|
||||
minetest.register_alias("dfcaverns:cobble_with_floor_fungus" , "df_mapitems:cobble_with_floor_fungus" )
|
||||
minetest.register_alias("dfcaverns:cobble_with_floor_fungus_fine", "df_mapitems:cobble_with_floor_fungus_fine")
|
||||
minetest.register_alias("dfcaverns:snareweed" , "df_mapitems:snareweed" )
|
114
df_mapitems/cave_coral.lua
Normal file
@ -0,0 +1,114 @@
|
||||
-- internationalization boilerplate
|
||||
local MP = minetest.get_modpath(minetest.get_current_modname())
|
||||
local S, NS = dofile(MP.."/intllib.lua")
|
||||
|
||||
minetest.register_node("df_mapitems:cave_coral_3", {
|
||||
description = S("Cave Coral"),
|
||||
_doc_items_longdesc = df_mapitems.doc.cave_coral_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.cave_coral_usage,
|
||||
tiles = {"dfcaverns_cave_coral_end.png", "dfcaverns_cave_coral_end.png", "dfcaverns_cave_coral.png"},
|
||||
is_ground_content = true,
|
||||
drop = "default:coral_skeleton",
|
||||
light_source = 3,
|
||||
groups = {cracky = 3, dfcaverns_cave_coral = 1},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_node("df_mapitems:cave_coral_2", {
|
||||
description = S("Cave Coral"),
|
||||
_doc_items_longdesc = df_mapitems.doc.cave_coral_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.cave_coral_usage,
|
||||
tiles = {"dfcaverns_cave_coral_end.png", "dfcaverns_cave_coral_end.png", "dfcaverns_cave_coral.png"},
|
||||
is_ground_content = true,
|
||||
drop = "default:coral_skeleton",
|
||||
light_source = 2,
|
||||
groups = {cracky = 3, dfcaverns_cave_coral = 1},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_node("df_mapitems:cave_coral_1", {
|
||||
description = S("Cave Coral"),
|
||||
_doc_items_longdesc = df_mapitems.doc.cave_coral_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.cave_coral_usage,
|
||||
tiles = {"dfcaverns_cave_coral_end.png", "dfcaverns_cave_coral_end.png", "dfcaverns_cave_coral.png"},
|
||||
is_ground_content = true,
|
||||
drop = "default:coral_skeleton",
|
||||
light_source = 1,
|
||||
groups = {cracky = 3, dfcaverns_cave_coral = 1},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
local coral_names = {"df_mapitems:cave_coral_1", "df_mapitems:cave_coral_2", "df_mapitems:cave_coral_3"}
|
||||
minetest.register_abm{
|
||||
label = "df_mapitems:shifting_coral",
|
||||
nodenames = {"group:dfcaverns_cave_coral"},
|
||||
interval = 2,
|
||||
chance = 10,
|
||||
action = function(pos)
|
||||
minetest.swap_node(pos, {name=coral_names[math.random(1,3)]})
|
||||
end,
|
||||
}
|
||||
|
||||
local c_coral_1 = minetest.get_content_id("df_mapitems:cave_coral_1")
|
||||
local c_coral_2 = minetest.get_content_id("df_mapitems:cave_coral_2")
|
||||
local c_coral_3 = minetest.get_content_id("df_mapitems:cave_coral_3")
|
||||
local c_coral_skeleton = minetest.get_content_id("default:coral_skeleton")
|
||||
local c_dirt = minetest.get_content_id("default:dirt")
|
||||
local c_stone = minetest.get_content_id("default:stone")
|
||||
local c_water = minetest.get_content_id("default:water_source")
|
||||
|
||||
local corals = {c_coral_1, c_coral_2, c_coral_3}
|
||||
local get_coral = function()
|
||||
return corals[math.random(1,3)]
|
||||
end
|
||||
|
||||
df_mapitems.spawn_cave_coral = function(area, data, vi, iterations)
|
||||
local run = math.random(2,4)
|
||||
local index = vi
|
||||
local zstride = area.zstride
|
||||
local ystride = area.ystride
|
||||
while run > 0 do
|
||||
if math.random() > 0.95 or data[index] == c_stone or not area:containsi(index) then return end
|
||||
data[index] = get_coral()
|
||||
if iterations > 2 then
|
||||
data[index + 1] = get_coral()
|
||||
data[index - 1] = get_coral()
|
||||
data[index + zstride] = get_coral()
|
||||
data[index - zstride] = get_coral()
|
||||
end
|
||||
if iterations > 3 then
|
||||
data[index + 2] = get_coral()
|
||||
data[index - 2] = get_coral()
|
||||
data[index + zstride * 2] = get_coral()
|
||||
data[index - zstride * 2] = get_coral()
|
||||
data[index + 1 + zstride] = get_coral()
|
||||
data[index - 1 + zstride] = get_coral()
|
||||
data[index + 1 - zstride] = get_coral()
|
||||
data[index - 1 - zstride] = get_coral()
|
||||
end
|
||||
index = index + ystride
|
||||
run = run - 1
|
||||
end
|
||||
|
||||
local newiterations = iterations - 1
|
||||
if newiterations == 0 then return end
|
||||
|
||||
if math.random() > 0.5 then
|
||||
df_mapitems.spawn_cave_coral(area, data, index + 1 - ystride, newiterations)
|
||||
df_mapitems.spawn_cave_coral(area, data, index - 1 - ystride, newiterations)
|
||||
else
|
||||
df_mapitems.spawn_cave_coral(area, data, index + zstride - ystride, newiterations)
|
||||
df_mapitems.spawn_cave_coral(area, data, index - zstride - ystride, newiterations)
|
||||
end
|
||||
end
|
||||
|
||||
df_mapitems.spawn_coral_pile = function(area, data, vi, radius)
|
||||
local pos = area:position(vi)
|
||||
for li in area:iterp(vector.add(pos, -radius), vector.add(pos, radius)) do
|
||||
local adjacent = li + area.ystride
|
||||
local node_type = data[li]
|
||||
if math.random() < 0.2 and not mapgen_helper.buildable_to(node_type) and data[adjacent] == c_water then
|
||||
data[adjacent] = c_coral_skeleton
|
||||
end
|
||||
end
|
||||
end
|
27
df_mapitems/config.lua
Normal file
@ -0,0 +1,27 @@
|
||||
local CONFIG_FILE_PREFIX = "dfcaverns_"
|
||||
|
||||
df_mapitems.config = {}
|
||||
|
||||
local print_settingtypes = false
|
||||
|
||||
local function setting(stype, name, default, description)
|
||||
local value
|
||||
if stype == "bool" then
|
||||
value = minetest.setting_getbool(CONFIG_FILE_PREFIX..name)
|
||||
elseif stype == "string" then
|
||||
value = minetest.setting_get(CONFIG_FILE_PREFIX..name)
|
||||
elseif stype == "int" or stype == "float" then
|
||||
value = tonumber(minetest.setting_get(CONFIG_FILE_PREFIX..name))
|
||||
end
|
||||
if value == nil then
|
||||
value = default
|
||||
end
|
||||
df_mapitems.config[name] = value
|
||||
|
||||
if print_settingtypes then
|
||||
minetest.debug(CONFIG_FILE_PREFIX..name.." ("..description..") "..stype.." "..tostring(default))
|
||||
end
|
||||
end
|
||||
|
||||
setting("float", "glow_worm_delay_multiplier", 10.0, "glow worm growth delay multiplier")
|
||||
setting("bool", "snareweed_damage", true, "Snareweed causes damage to players")
|
59
df_mapitems/crystals_mese.lua
Normal file
@ -0,0 +1,59 @@
|
||||
-- internationalization boilerplate
|
||||
local MP = minetest.get_modpath(minetest.get_current_modname())
|
||||
local S, NS = dofile(MP.."/intllib.lua")
|
||||
|
||||
--glowing mese crystal blocks
|
||||
minetest.register_node("df_mapitems:glow_mese", {
|
||||
description = S("Flawless Mese Block"),
|
||||
_doc_items_longdesc = df_mapitems.doc.glow_mese_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.glow_mese_usage,
|
||||
tiles = {"dfcaverns_glow_mese.png"},
|
||||
is_ground_content = true,
|
||||
groups = {cracky=3},
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
light_source = 13,
|
||||
paramtype = "light",
|
||||
use_texture_alpha = true,
|
||||
drawtype = "glasslike",
|
||||
sunlight_propagates = true,
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = 'df_mapitems:mese_crystal 2',
|
||||
recipe = {
|
||||
{'df_mapitems:glow_mese'},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_node("df_mapitems:mese_crystal", {
|
||||
description = S("Flawless Mese Crystal"),
|
||||
_doc_items_longdesc = df_mapitems.doc.glow_mese_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.glow_mese_usage,
|
||||
tiles = {"dfcaverns_glow_mese.png"},
|
||||
groups = {cracky = 2},
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
drawtype = "mesh",
|
||||
mesh = "underch_crystal.obj",
|
||||
light_source = 12,
|
||||
is_ground_content = true,
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
use_texture_alpha = true,
|
||||
sunlight_propagates = true,
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = 'default:mese_crystal 9',
|
||||
recipe = {
|
||||
{'df_mapitems:mese_crystal'},
|
||||
}
|
||||
})
|
||||
|
||||
if minetest.get_modpath("radiant_damage") and radiant_damage.override_radiant_damage and radiant_damage.config.enable_mese_damage then
|
||||
radiant_damage.override_radiant_damage("mese", {
|
||||
emitted_by = {
|
||||
["df_mapitems:glow_mese"] = radiant_damage.config.mese_damage*12,
|
||||
["df_mapitems:mese_crystal"] = radiant_damage.config.mese_damage*9
|
||||
}
|
||||
})
|
||||
end
|
311
df_mapitems/crystals_ruby.lua
Normal file
@ -0,0 +1,311 @@
|
||||
-- internationalization boilerplate
|
||||
local MP = minetest.get_modpath(minetest.get_current_modname())
|
||||
local S, NS = dofile(MP.."/intllib.lua")
|
||||
|
||||
minetest.register_node("df_mapitems:glow_ruby_ore", {
|
||||
description = S("Red Crystal Vein"),
|
||||
_doc_items_longdesc = df_mapitems.doc.glow_ruby_ore_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.glow_ruby_ore_usage,
|
||||
tiles = {"dfcaverns_glow_ruby_ore.png"},
|
||||
is_ground_content = true,
|
||||
groups = {cracky=2},
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_node("df_mapitems:big_crystal", {
|
||||
description = S("Giant Red Crystal"),
|
||||
_doc_items_longdesc = df_mapitems.doc.big_crystal_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.big_crystal_usage,
|
||||
drawtype = "mesh",
|
||||
mesh = "hex_crystal_big.obj",
|
||||
tiles = {
|
||||
"dfcaverns_glow_ruby4x.png",
|
||||
"dfcaverns_glow_ruby.png",
|
||||
},
|
||||
use_texture_alpha = true,
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
sunlight_propagates = true,
|
||||
light_source = 12,
|
||||
groups = {cracky=2, dfcaverns_big_crystal = 1},
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.5, -0.5, -0.5, 0.5, 3, 0.5},
|
||||
},
|
||||
collision_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.5, -0.5, -0.5, 0.5, 3, 0.5},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_node("df_mapitems:med_crystal", {
|
||||
description = S("Big Red Crystal"),
|
||||
_doc_items_longdesc = df_mapitems.doc.big_crystal_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.big_crystal_usage,
|
||||
drawtype = "mesh",
|
||||
mesh = "hex_crystal_med.obj",
|
||||
tiles = {
|
||||
"dfcaverns_glow_ruby.png",
|
||||
"dfcaverns_glow_ruby_quarter.png",
|
||||
},
|
||||
use_texture_alpha = true,
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
sunlight_propagates = true,
|
||||
light_source = 12,
|
||||
groups = {cracky=2, dfcaverns_big_crystal = 1},
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.25, -0.5, -0.25, 0.25, 1.25, 0.25},
|
||||
},
|
||||
collision_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.25, -0.5, -0.25, 0.25, 1.25, 0.25},
|
||||
},
|
||||
})
|
||||
|
||||
|
||||
minetest.register_node("df_mapitems:big_crystal_30", {
|
||||
description = S("Giant Red Crystal"),
|
||||
_doc_items_longdesc = df_mapitems.doc.big_crystal_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.big_crystal_usage,
|
||||
drawtype = "mesh",
|
||||
mesh = "hex_crystal_30_big.obj",
|
||||
tiles = {
|
||||
"dfcaverns_glow_ruby4x.png",
|
||||
"dfcaverns_glow_ruby.png",
|
||||
},
|
||||
use_texture_alpha = true,
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
sunlight_propagates = true,
|
||||
light_source = 12,
|
||||
drop = "df_mapitems:big_crystal",
|
||||
groups = {cracky=2, dfcaverns_big_crystal = 1},
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.5, -0.5, -0.625, 0.5, 0.5, 0.375},
|
||||
{-0.5, 0.5, -1.25, 0.5, 1.5, -0.25},
|
||||
{-0.5, 1.5, -1.875, 0.5, 2.5, -0.875},
|
||||
--The following is a more accurate set of collision boxes that theoretically
|
||||
--allows the crystal to be climbed like stairs, but in practice the physics
|
||||
--don't seem to work quite right so I'm leaving it "simple" for now.
|
||||
-- {-0.5, -0.5, -0.625, 0.5, 0.0, 0.375},
|
||||
-- {-0.5, 0.0, -0.9375, 0.5, 0.5, 0.0625},
|
||||
-- {-0.5, 0.5, -1.25, 0.5, 1.0, -0.25},
|
||||
-- {-0.5, 1.0, -1.5625, 0.5, 1.5, -0.5625},
|
||||
-- {-0.5, 1.5, -1.875, 0.5, 2.0, -0.875},
|
||||
-- {-0.25, 2.0, -1.625, 0.25, 2.5, -1.125},
|
||||
},
|
||||
},
|
||||
collision_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.5, -0.5, -0.625, 0.5, 0.5, 0.375},
|
||||
{-0.5, 0.5, -1.25, 0.5, 1.5, -0.25},
|
||||
{-0.5, 1.5, -1.875, 0.5, 2.5, -0.875},
|
||||
-- {-0.5, -0.5, -0.625, 0.5, 0.0, 0.375},
|
||||
-- {-0.5, 0.0, -0.9375, 0.5, 0.5, 0.0625},
|
||||
-- {-0.5, 0.5, -1.25, 0.5, 1.0, -0.25},
|
||||
-- {-0.5, 1.0, -1.5625, 0.5, 1.5, -0.5625},
|
||||
-- {-0.5, 1.5, -1.875, 0.5, 2.0, -0.875},
|
||||
-- {-0.25, 2.0, -1.625, 0.25, 2.5, -1.125},
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_node("df_mapitems:med_crystal_30", {
|
||||
description = S("Big Red Crystal"),
|
||||
_doc_items_longdesc = df_mapitems.doc.big_crystal_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.big_crystal_usage,
|
||||
drawtype = "mesh",
|
||||
mesh = "hex_crystal_30_med.obj",
|
||||
tiles = {
|
||||
"dfcaverns_glow_ruby.png",
|
||||
"dfcaverns_glow_ruby_quarter.png",
|
||||
},
|
||||
use_texture_alpha = true,
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
sunlight_propagates = true,
|
||||
light_source = 12,
|
||||
drop = "df_mapitems:med_crystal",
|
||||
groups = {cracky=2, dfcaverns_big_crystal = 1},
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.25, -0.5, -0.3125, 0.25, 0.0, 0.1875},
|
||||
{-0.25, 0.0, -0.625, 0.25, 0.5, -0.125},
|
||||
{-0.25, 0.5, -0.9375, 0.25, 1.0, -0.4375},
|
||||
}
|
||||
},
|
||||
collision_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.25, -0.5, -0.3125, 0.25, 0.0, 0.1875},
|
||||
{-0.25, 0.0, -0.625, 0.25, 0.5, -0.125},
|
||||
{-0.25, 0.5, -0.9375, 0.25, 1.0, -0.4375},
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_node("df_mapitems:big_crystal_30_45", {
|
||||
description = S("Giant Red Crystal"),
|
||||
_doc_items_longdesc = df_mapitems.doc.big_crystal_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.big_crystal_usage,
|
||||
drawtype = "mesh",
|
||||
mesh = "hex_crystal_30_45_big.obj",
|
||||
tiles = {
|
||||
"dfcaverns_glow_ruby4x.png",
|
||||
"dfcaverns_glow_ruby.png",
|
||||
},
|
||||
use_texture_alpha = true,
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
sunlight_propagates = true,
|
||||
light_source = 12,
|
||||
drop = "df_mapitems:big_crystal",
|
||||
groups = {cracky=2, dfcaverns_big_crystal = 1},
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.375, -0.5, -0.625, 0.625, 0.5, 0.375},
|
||||
{0.0625, 0.5, -1.0625, 1.0625, 1.5, -0.0625},
|
||||
{0.5, 1.5, -1.5, 1.5, 2.5, -0.5},
|
||||
},
|
||||
},
|
||||
collision_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.375, -0.5, -0.625, 0.625, 0.5, 0.375},
|
||||
{0.0625, 0.5, -1.0625, 1.0625, 1.5, -0.0625},
|
||||
{0.5, 1.5, -1.5, 1.5, 2.5, -0.5},
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
|
||||
minetest.register_node("df_mapitems:med_crystal_30_45", {
|
||||
description = S("Big Red Crystal"),
|
||||
_doc_items_longdesc = df_mapitems.doc.big_crystal_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.big_crystal_usage,
|
||||
drawtype = "mesh",
|
||||
mesh = "hex_crystal_30_45_med.obj",
|
||||
tiles = {
|
||||
"dfcaverns_glow_ruby4x.png",
|
||||
"dfcaverns_glow_ruby.png",
|
||||
},
|
||||
use_texture_alpha = true,
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
sunlight_propagates = true,
|
||||
light_source = 12,
|
||||
drop = "df_mapitems:med_crystal",
|
||||
groups = {cracky=2, dfcaverns_big_crystal = 1},
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.1875, -0.5, -0.3125, 0.3125, 0.0, 0.1875},
|
||||
{0.03125, 0.0, -0.53125, 0.53125, 0.5, -0.03125},
|
||||
{0.25, 0.5, -0.75, 0.75, 1.0, -0.25},
|
||||
},
|
||||
},
|
||||
collision_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.1875, -0.5, -0.3125, 0.3125, 0.0, 0.1875},
|
||||
{0.03125, 0.0, -0.53125, 0.53125, 0.5, -0.03125},
|
||||
{0.25, 0.5, -0.75, 0.75, 1.0, -0.25},
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = 'df_mapitems:big_crystal_30',
|
||||
recipe = {'df_mapitems:big_crystal'},
|
||||
})
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = 'df_mapitems:big_crystal_30_45',
|
||||
recipe = {'df_mapitems:big_crystal_30'},
|
||||
})
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = 'df_mapitems:big_crystal',
|
||||
recipe = {'df_mapitems:big_crystal_30_45'},
|
||||
})
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = 'df_mapitems:med_crystal_30',
|
||||
recipe = {'df_mapitems:med_crystal'},
|
||||
})
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = 'df_mapitems:med_crystal_30_45',
|
||||
recipe = {'df_mapitems:med_crystal_30'},
|
||||
})
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = 'df_mapitems:med_crystal',
|
||||
recipe = {'df_mapitems:med_crystal_30_45'},
|
||||
})
|
||||
|
||||
local c_stone = minetest.get_content_id("default:stone")
|
||||
local c_air = minetest.get_content_id("air")
|
||||
local c_big_crystal = minetest.get_content_id("df_mapitems:big_crystal")
|
||||
local c_med_crystal = minetest.get_content_id("df_mapitems:med_crystal")
|
||||
local c_big_crystal_30 = minetest.get_content_id("df_mapitems:big_crystal_30")
|
||||
local c_med_crystal_30 = minetest.get_content_id("df_mapitems:med_crystal_30")
|
||||
local c_big_crystal_30_45 = minetest.get_content_id("df_mapitems:big_crystal_30_45")
|
||||
local c_med_crystal_30_45 = minetest.get_content_id("df_mapitems:med_crystal_30_45")
|
||||
local c_glow_ore = minetest.get_content_id("df_mapitems:glow_ruby_ore")
|
||||
|
||||
df_mapitems.place_big_crystal = function(data, data_param2, vi, ceiling)
|
||||
local orientation = math.random()
|
||||
if orientation < 0.33 then
|
||||
if math.random() > 0.5 then
|
||||
data[vi] = c_big_crystal
|
||||
else
|
||||
data[vi] = c_med_crystal
|
||||
end
|
||||
elseif orientation < 0.66 then
|
||||
if math.random() > 0.5 then
|
||||
data[vi] = c_big_crystal_30
|
||||
else
|
||||
data[vi] = c_med_crystal_30
|
||||
end
|
||||
else
|
||||
if math.random() > 0.5 then
|
||||
data[vi] = c_big_crystal_30_45
|
||||
else
|
||||
data[vi] = c_med_crystal_30_45
|
||||
end
|
||||
end
|
||||
if ceiling then
|
||||
data_param2[vi] = math.random(20,23)
|
||||
else
|
||||
data_param2[vi] = math.random(0,3)
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
df_mapitems.place_big_crystal_cluster = function(area, data, data_param2, vi, radius, ceiling)
|
||||
local y
|
||||
if ceiling then y = -1 else y = 1 end
|
||||
local pos = area:position(vi)
|
||||
for li in area:iterp(vector.add(pos, -radius), vector.add(pos, radius)) do
|
||||
local adjacent = li + y*area.ystride
|
||||
if math.random() > 0.5 and data[li] == c_stone and data[adjacent] == c_air then
|
||||
df_mapitems.place_big_crystal(data, data_param2, adjacent, ceiling)
|
||||
data[li] = c_glow_ore
|
||||
end
|
||||
end
|
||||
end
|
7
df_mapitems/depends.txt
Normal file
@ -0,0 +1,7 @@
|
||||
default
|
||||
subterrane
|
||||
df_farming?
|
||||
farming?
|
||||
intllib?
|
||||
doc?
|
||||
radiant_damage?
|
1
df_mapitems/description.txt
Normal file
@ -0,0 +1 @@
|
||||
Various node types used by the dfcaverns mapgen mod. Includes cave coral, flowstone, glowing crystals, glow worms, moss and fungi ground cover, and snare weed.
|
43
df_mapitems/doc.lua
Normal file
@ -0,0 +1,43 @@
|
||||
df_mapitems.doc = {}
|
||||
|
||||
if not minetest.get_modpath("doc") then
|
||||
return
|
||||
end
|
||||
|
||||
-- internationalization boilerplate
|
||||
local MP = minetest.get_modpath(minetest.get_current_modname())
|
||||
local S, NS = dofile(MP.."/intllib.lua")
|
||||
|
||||
df_mapitems.doc.cave_moss_desc = S("Cave moss is technically a form of mold, but fortunately a relatively benign one given its ubiquity. Its fibers form a tough but springy mat over the surface of any organic-rich soil that accumulates deep underground.")
|
||||
df_mapitems.doc.cave_moss_usage = S("Cave moss has no known uses aside from the faint glow it emits. It dies when exposed to bright light sources such as the Sun.")
|
||||
df_mapitems.doc.floor_fungus_desc = S("Floor fungus produces a thin, slick film that spreads through the cracks of broken rock. Its ability to subsist on the tiniest traces of nutrients means it's found in relatively harsh underground environments.")
|
||||
df_mapitems.doc.floor_fungus_usage = S("Floor fungus has no known uses. It can penetrate deeply into cobblestone constructions if an infestation gets hold, but it is difficult to transport and is inhibited by light so it hasn't spread beyond the deep caverns.")
|
||||
|
||||
df_mapitems.doc.hoar_moss_desc = S("Hoar moss is a strange glowing crust that sometimes forms on the surface of water flowing over ice.")
|
||||
df_mapitems.doc.hoar_moss_usage = S("Hoar moss has no known use aside from providing a faint source of light.")
|
||||
|
||||
df_mapitems.doc.glow_worms_desc = S("Glistening strings of silk hang from the ceilings of some of the larger caverns, lit by the millions of tiny bioluminescent worms that spun them. Glow worms prey on the insects they lure and entangle with their faux starry sky - and sometimes the occasional bat or other larger flying beast.")
|
||||
df_mapitems.doc.glow_worms_usage = S("Glow worms can be harvested and used as a source of light but they die when exposed to light significantly brighter than themselves or when immersed in water. A colony of glow worms hung in a hospitable environment will undergo a modest amount of growth, allowing it to be divided and propagated.")
|
||||
|
||||
df_mapitems.doc.snareweed_desc = S("A nasty kelp-like plant that grows in patches on the floor of the Sunless Sea. Its reflective patches draw in the unwary and then its prickly barbs catch and hold small creatures.")
|
||||
df_mapitems.doc.snareweed_usage = S("Snareweed has no practical use, its fibers disintegrate when they dry.")
|
||||
|
||||
df_mapitems.doc.cave_coral_desc = S("A rare form of coral found only deep underground in the Sunless Sea, cave coral grows hanging from the ceilings of flooded caverns.")
|
||||
df_mapitems.doc.cave_coral_usage = S("Aside from their aesthetic beauty, cave corals can be harvested for simple building materials.")
|
||||
|
||||
df_mapitems.doc.flowstone_desc = S("Flowstone is a carbonate-rich rock formation deposited by flowing water. It consists of minerals that the water dissolved earlier as it widens cracks and fissures into caves.")
|
||||
df_mapitems.doc.flowstone_usage = S("Aside from the aesthetic beauty of its formations flowstone has no special properties or uses.")
|
||||
df_mapitems.doc.dripstone_desc = S("The iconic stalactites and stalagmites found in caverns are composed of flowstone (or 'dripstone' in the case of these formations). Moist dripstone is still undergoing growth, whereas dry dripstone is found in 'dead' caverns once the source of water that created them ceases.")
|
||||
df_mapitems.doc.dripstone_usage = S("Although stalagmites are blunter than the stalactites above them, they can cause extra damage to the unwary caver who falls on them.")
|
||||
df_mapitems.doc.icicle_desc = S("Ice formed by water dripping slowly into a cold environment, icicles tend to be exceptionally pure and clear.")
|
||||
df_mapitems.doc.icicle_usage = S("Falling onto an icicle is particularly damaging.")
|
||||
|
||||
|
||||
df_mapitems.doc.glow_mese_desc = S("Deep in the infernal conditions of the magma sea, over the course of millions of years, mese crystals grow into flawless blocks that glow bright with strange energies.")
|
||||
df_mapitems.doc.glow_mese_usage = S("These blocks can be broken down into a large number of mese crystals, but cannot be artificially reassembled.")
|
||||
|
||||
df_mapitems.doc.glow_ruby_ore_desc = S("Large, dry caverns deep underground are well suited to aeons-long processes that concentrate crystalline substances in their walls. This rock is riddled with veins of the stuff.")
|
||||
df_mapitems.doc.glow_ruby_ore_usage = S("Aside from its aesthetic value this rock has no particular use.")
|
||||
|
||||
df_mapitems.doc.big_crystal_desc = S("Monolithic crystals of this size form only over extremely long periods deep underground, in large long-lived cavities that allow them room to grow. Water and the life it hosts tend to disrupt the formation process of these crystals so they're only found in dry environments.")
|
||||
df_mapitems.doc.big_crystal_usage = S("Aside from its aesthetic value this crystal has no particular use.")
|
68
df_mapitems/flowstone.lua
Normal file
@ -0,0 +1,68 @@
|
||||
-- internationalization boilerplate
|
||||
local MP = minetest.get_modpath(minetest.get_current_modname())
|
||||
local S, NS = dofile(MP.."/intllib.lua")
|
||||
|
||||
-----------------------------------------------
|
||||
|
||||
df_mapitems.dry_stalagmite_ids = subterrane.register_stalagmite_nodes("df_mapitems:dry_stal", {
|
||||
description = S("Dry Dripstone"),
|
||||
_doc_items_longdesc = df_mapitems.doc.dripstone_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.dripstone_usage,
|
||||
tiles = {
|
||||
"default_stone.png^[brighten",
|
||||
},
|
||||
groups = {cracky = 3, stone = 2},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_node("df_mapitems:dry_flowstone", {
|
||||
description = S("Dry Flowstone"),
|
||||
_doc_items_longdesc = df_mapitems.doc.flowstone_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.flowstone_usage,
|
||||
tiles = {"default_stone.png^[brighten"},
|
||||
groups = {cracky = 3, stone = 1, lava_heatable = 1},
|
||||
_magma_conduits_heats_to = "default:cobble",
|
||||
is_ground_content = true,
|
||||
drop = 'default:cobble',
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
-----------------------------------------------
|
||||
|
||||
df_mapitems.wet_stalagmite_ids = subterrane.register_stalagmite_nodes("df_mapitems:wet_stal", {
|
||||
description = S("Wet Dripstone"),
|
||||
_doc_items_longdesc = df_mapitems.doc.dripstone_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.dripstone_usage,
|
||||
tiles = {
|
||||
"default_stone.png^[brighten^dfcaverns_dripstone_streaks.png",
|
||||
},
|
||||
groups = {cracky = 3, stone = 2, subterrane_wet_dripstone = 1},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
}, "df_mapitems:dry_stal")
|
||||
|
||||
|
||||
minetest.register_node("df_mapitems:wet_flowstone", {
|
||||
description = S("Wet Flowstone"),
|
||||
_doc_items_longdesc = df_mapitems.doc.flowstone_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.flowstone_usage,
|
||||
tiles = {"default_stone.png^[brighten^dfcaverns_dripstone_streaks.png"},
|
||||
groups = {cracky = 3, stone = 1, subterrane_wet_dripstone = 1, lava_heatable = 1},
|
||||
_magma_conduits_heats_to = "df_mapitems:dry_flowstone",
|
||||
is_ground_content = true,
|
||||
drop = 'default:cobble',
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
-----------------------------------------------
|
||||
|
||||
df_mapitems.icicle_ids = subterrane.register_stalagmite_nodes("df_mapitems:icicle", {
|
||||
description = S("Icicle"),
|
||||
_doc_items_longdesc = df_mapitems.doc.icicle_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.icicle_usage,
|
||||
tiles = {
|
||||
"default_ice.png",
|
||||
},
|
||||
groups = {cracky = 3, puts_out_fire = 1, cools_lava = 1, slippery = 3},
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
})
|
||||
|
81
df_mapitems/glow_worms.lua
Normal file
@ -0,0 +1,81 @@
|
||||
-- internationalization boilerplate
|
||||
local MP = minetest.get_modpath(minetest.get_current_modname())
|
||||
local S, NS = dofile(MP.."/intllib.lua")
|
||||
|
||||
local growth_multiplier = 1
|
||||
if minetest.get_modpath("df_farming") then
|
||||
growth_multiplier = df_farming.config.plant_growth_time
|
||||
end
|
||||
|
||||
minetest.register_node("df_mapitems:glow_worm", {
|
||||
description = S("Glow Worms"),
|
||||
_doc_items_longdesc = df_mapitems.doc.glow_worms_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.glow_worms_usage,
|
||||
tiles = {
|
||||
{
|
||||
name = "dfcaverns_glow_worm_animated.png",
|
||||
animation = {
|
||||
type = "vertical_frames",
|
||||
aspect_w = 16,
|
||||
aspect_h = 16,
|
||||
length = 4.0,
|
||||
},
|
||||
},
|
||||
},
|
||||
inventory_image = "dfcaverns_glow_worm.png",
|
||||
wield_image = "dfcaverns_glow_worm.png",
|
||||
is_ground_content = true,
|
||||
groups = {oddly_breakable_by_hand=3, light_sensitive_fungus = 12},
|
||||
_dfcaverns_dead_node = "air",
|
||||
light_source = 9,
|
||||
paramtype = "light",
|
||||
drawtype = "plantlike",
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
floodable = true,
|
||||
visual_scale = 1.0,
|
||||
after_place_node = function(pos, placer)
|
||||
if df_mapitems.config.glow_worm_delay_multiplier > 0 then
|
||||
minetest.get_node_timer(pos):start(math.random(
|
||||
df_mapitems.config.glow_worm_delay_multiplier * growth_multiplier * 0.75,
|
||||
df_mapitems.config.glow_worm_delay_multiplier * growth_multiplier * 1.25))
|
||||
end
|
||||
end,
|
||||
on_timer = function(pos, elapsed)
|
||||
local below = {x=pos.x, y=pos.y-1, z=pos.z}
|
||||
if minetest.get_node(below).name == "air" then
|
||||
minetest.set_node(below, {name="df_mapitems:glow_worm"})
|
||||
if math.random() > 0.5 then
|
||||
minetest.get_node_timer(below):start(math.random(
|
||||
df_mapitems.config.glow_worm_delay_multiplier * growth_multiplier * 0.75,
|
||||
df_mapitems.config.glow_worm_delay_multiplier * growth_multiplier * 1.25))
|
||||
end
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
local c_air = minetest.get_content_id("air")
|
||||
local c_worm = minetest.get_content_id("df_mapitems:glow_worm")
|
||||
|
||||
df_mapitems.glow_worm_ceiling = function(area, data, vi)
|
||||
local ystride = area.ystride
|
||||
local bi = vi - ystride
|
||||
if data[vi] == c_air and data[bi] == c_air then
|
||||
data[vi] = c_worm
|
||||
data[bi] = c_worm
|
||||
if math.random(2) == 1 then
|
||||
bi = bi - ystride
|
||||
if data[bi] == c_air then
|
||||
data[bi] = c_worm
|
||||
if math.random(2) == 1 then
|
||||
bi = bi - ystride
|
||||
if data[bi] == c_air then
|
||||
data[bi] = c_worm
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
119
df_mapitems/ground_cover.lua
Normal file
@ -0,0 +1,119 @@
|
||||
-- internationalization boilerplate
|
||||
local MP = minetest.get_modpath(minetest.get_current_modname())
|
||||
local S, NS = dofile(MP.."/intllib.lua")
|
||||
|
||||
--------------------------------------------------
|
||||
-- Cave moss
|
||||
|
||||
-- cyan/dark cyan
|
||||
|
||||
minetest.register_node("df_mapitems:dirt_with_cave_moss", {
|
||||
description = S("Dirt With Cave Moss"),
|
||||
_doc_items_longdesc = df_mapitems.doc.cave_moss_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.cave_moss_usage,
|
||||
tiles = {"default_dirt.png^dfcaverns_cave_moss.png", "default_dirt.png",
|
||||
{name = "default_dirt.png^dfcaverns_cave_moss_side.png",
|
||||
tileable_vertical = false}},
|
||||
drop = "default:dirt",
|
||||
is_ground_content = true,
|
||||
light_source = 2,
|
||||
paramtype = "light",
|
||||
groups = {crumbly = 3, soil = 1, light_sensitive_fungus = 8},
|
||||
sounds = default.node_sound_dirt_defaults({
|
||||
footstep = {name = "default_grass_footstep", gain = 0.25},
|
||||
}),
|
||||
soil = {
|
||||
base = "df_mapitems:dirt_with_cave_moss",
|
||||
dry = "farming:soil",
|
||||
wet = "farming:soil_wet"
|
||||
},
|
||||
_dfcaverns_dead_node = "default:dirt",
|
||||
})
|
||||
|
||||
minetest.register_abm{
|
||||
label = "df_mapitems:cave_moss_spread",
|
||||
nodenames = {"default:dirt"},
|
||||
neighbors = {"df_mapitems:dirt_with_cave_moss"},
|
||||
interval = 60,
|
||||
chance = 15,
|
||||
catch_up = true,
|
||||
action = function(pos)
|
||||
local above_def = minetest.registered_nodes[minetest.get_node({x=pos.x, y=pos.y+1, z=pos.z}).name]
|
||||
if above_def and (above_def.buildable_to == true or above_def.walkable == false) then
|
||||
minetest.swap_node(pos, {name="df_mapitems:dirt_with_cave_moss"})
|
||||
end
|
||||
end,
|
||||
}
|
||||
|
||||
--------------------------------------------------
|
||||
-- floor fungus
|
||||
|
||||
-- white/yellow
|
||||
|
||||
minetest.register_node("df_mapitems:cobble_with_floor_fungus", {
|
||||
description = S("Cobblestone With Floor Fungus"),
|
||||
_doc_items_longdesc = df_mapitems.doc.floor_fungus_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.floor_fungus_usage,
|
||||
tiles = {"default_cobble.png^dfcaverns_floor_fungus.png"},
|
||||
drops = "default:cobble",
|
||||
is_ground_content = true,
|
||||
paramtype = "light",
|
||||
groups = {cracky = 3, stone = 2, slippery = 1, light_sensitive_fungus = 8},
|
||||
_dfcaverns_dead_node = "default:cobble",
|
||||
sounds = default.node_sound_stone_defaults({
|
||||
footstep = {name = "dfcaverns_squish", gain = 0.25},
|
||||
}),
|
||||
})
|
||||
|
||||
minetest.register_node("df_mapitems:cobble_with_floor_fungus_fine", {
|
||||
description = S("Cobblestone With Floor Fungus"),
|
||||
_doc_items_longdesc = df_mapitems.doc.floor_fungus_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.floor_fungus_usage,
|
||||
tiles = {"default_cobble.png^dfcaverns_floor_fungus_fine.png"},
|
||||
drops = "default:cobble",
|
||||
is_ground_content = true,
|
||||
paramtype = "light",
|
||||
groups = {cracky = 3, stone = 2, slippery = 1, light_sensitive_fungus = 8},
|
||||
_dfcaverns_dead_node = "default:cobble",
|
||||
sounds = default.node_sound_stone_defaults({
|
||||
footstep = {name = "dfcaverns_squish", gain = 0.25},
|
||||
}),
|
||||
})
|
||||
|
||||
minetest.register_abm{
|
||||
label = "df_mapitems:floor_fungus_spread",
|
||||
nodenames = {"default:cobble"},
|
||||
neighbors = {"df_mapitems:cobble_with_floor_fungus"},
|
||||
interval = 60,
|
||||
chance = 10,
|
||||
catch_up = true,
|
||||
action = function(pos)
|
||||
minetest.swap_node(pos, {name="df_mapitems:cobble_with_floor_fungus_fine"})
|
||||
end,
|
||||
}
|
||||
minetest.register_abm{
|
||||
label = "df_mapitems:floor_fungus_thickening",
|
||||
nodenames = {"default:cobble_with_floor_fungus_fine"},
|
||||
interval = 59,
|
||||
chance = 10,
|
||||
catch_up = true,
|
||||
action = function(pos)
|
||||
minetest.swap_node(pos, {name="df_mapitems:cobble_with_floor_fungus"})
|
||||
end,
|
||||
}
|
||||
|
||||
------------------------------------------------------
|
||||
-- Hoar moss
|
||||
|
||||
minetest.register_node("df_mapitems:ice_with_hoar_moss", {
|
||||
description = S("Ice With Hoar Moss"),
|
||||
_doc_items_longdesc = df_mapitems.doc.hoar_moss_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.hoar_moss_usage,
|
||||
tiles = {"default_ice.png^dfcaverns_hoar_moss.png"},
|
||||
drops = "default:ice",
|
||||
paramtype = "light",
|
||||
light_source = 2,
|
||||
groups = {cracky = 3, puts_out_fire = 1, cools_lava = 1, slippery = 2, light_sensitive_fungus = 8},
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
_dfcaverns_dead_node = "default:ice",
|
||||
})
|
20
df_mapitems/init.lua
Normal file
@ -0,0 +1,20 @@
|
||||
df_mapitems = {}
|
||||
|
||||
--grab a shorthand for the filepath of the mod
|
||||
local modpath = minetest.get_modpath(minetest.get_current_modname())
|
||||
|
||||
--load companion lua files
|
||||
dofile(modpath.."/config.lua")
|
||||
dofile(modpath.."/doc.lua")
|
||||
dofile(modpath.."/aliases.lua")
|
||||
|
||||
dofile(modpath.."/ground_cover.lua")
|
||||
dofile(modpath.."/glow_worms.lua")
|
||||
dofile(modpath.."/flowstone.lua")
|
||||
dofile(modpath.."/snareweed.lua")
|
||||
dofile(modpath.."/cave_coral.lua")
|
||||
|
||||
dofile(modpath.."/crystals_mese.lua")
|
||||
dofile(modpath.."/crystals_ruby.lua")
|
||||
|
||||
dofile(modpath.."/veinstone.lua")
|
45
df_mapitems/intllib.lua
Normal file
@ -0,0 +1,45 @@
|
||||
|
||||
-- Fallback functions for when `intllib` is not installed.
|
||||
-- Code released under Unlicense <http://unlicense.org>.
|
||||
|
||||
-- Get the latest version of this file at:
|
||||
-- https://raw.githubusercontent.com/minetest-mods/intllib/master/lib/intllib.lua
|
||||
|
||||
local function format(str, ...)
|
||||
local args = { ... }
|
||||
local function repl(escape, open, num, close)
|
||||
if escape == "" then
|
||||
local replacement = tostring(args[tonumber(num)])
|
||||
if open == "" then
|
||||
replacement = replacement..close
|
||||
end
|
||||
return replacement
|
||||
else
|
||||
return "@"..open..num..close
|
||||
end
|
||||
end
|
||||
return (str:gsub("(@?)@(%(?)(%d+)(%)?)", repl))
|
||||
end
|
||||
|
||||
local gettext, ngettext
|
||||
if minetest.get_modpath("intllib") then
|
||||
if intllib.make_gettext_pair then
|
||||
-- New method using gettext.
|
||||
gettext, ngettext = intllib.make_gettext_pair()
|
||||
else
|
||||
-- Old method using text files.
|
||||
gettext = intllib.Getter()
|
||||
end
|
||||
end
|
||||
|
||||
-- Fill in missing functions.
|
||||
|
||||
gettext = gettext or function(msgid, ...)
|
||||
return format(msgid, ...)
|
||||
end
|
||||
|
||||
ngettext = ngettext or function(msgid, msgid_plural, n, ...)
|
||||
return format(n==1 and msgid or msgid_plural, ...)
|
||||
end
|
||||
|
||||
return gettext, ngettext
|
245
df_mapitems/locale/it.po
Normal file
@ -0,0 +1,245 @@
|
||||
# ITALIAN LOCALE FOR THE DFCAVERNS MODULE
|
||||
# Copyright (C) 2017 FaceDeer <derksenmobile@gmail.com>
|
||||
# This file is distributed under the same license as the DFCAVERNS package.
|
||||
# Hamlet <h4mlet@riseup.net>, 2017.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: dfcaverns module's Italian locale\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-12-29 19:30-0700\n"
|
||||
"PO-Revision-Date: 2017-08-17 23:01+0100\n"
|
||||
"Last-Translator: H4mlet <h4mlet@riseup.net>\n"
|
||||
"Language-Team: ITALIANO\n"
|
||||
"Language: it\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 1.6.10\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: df_mapitems\cave_coral.lua:6
|
||||
#: df_mapitems\cave_coral.lua:18
|
||||
#: df_mapitems\cave_coral.lua:30
|
||||
#, fuzzy
|
||||
msgid "Cave Coral"
|
||||
msgstr "Grano di caverna"
|
||||
|
||||
#: df_mapitems\crystals_mese.lua:7
|
||||
msgid "Flawless Mese Block"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\crystals_mese.lua:29
|
||||
msgid "Flawless Mese Crystal"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\crystals_ruby.lua:6
|
||||
msgid "Red Crystal Vein"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\crystals_ruby.lua:16
|
||||
#: df_mapitems\crystals_ruby.lua:71
|
||||
#: df_mapitems\crystals_ruby.lua:158
|
||||
msgid "Giant Red Crystal"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\crystals_ruby.lua:43
|
||||
#: df_mapitems\crystals_ruby.lua:122
|
||||
#: df_mapitems\crystals_ruby.lua:195
|
||||
msgid "Big Red Crystal"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:11
|
||||
msgid ""
|
||||
"Cave moss is technically a form of mold, but fortunately a relatively benign "
|
||||
"one given its ubiquity. Its fibers form a tough but springy mat over the "
|
||||
"surface of any organic-rich soil that accumulates deep underground."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:12
|
||||
msgid ""
|
||||
"Cave moss has no known uses aside from the faint glow it emits. It dies when "
|
||||
"exposed to bright light sources such as the Sun."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:13
|
||||
msgid ""
|
||||
"Floor fungus produces a thin, slick film that spreads through the cracks of "
|
||||
"broken rock. Its ability to subsist on the tiniest traces of nutrients means "
|
||||
"it's found in relatively harsh underground environments."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:14
|
||||
msgid ""
|
||||
"Floor fungus has no known uses. It can penetrate deeply into cobblestone "
|
||||
"constructions if an infestation gets hold, but it is difficult to transport "
|
||||
"and is inhibited by light so it hasn't spread beyond the deep caverns."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:16
|
||||
msgid ""
|
||||
"Hoar moss is a strange glowing crust that sometimes forms on the surface of "
|
||||
"water flowing over ice."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:17
|
||||
msgid ""
|
||||
"Hoar moss has no known use aside from providing a faint source of light."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:19
|
||||
msgid ""
|
||||
"Glistening strings of silk hang from the ceilings of some of the larger "
|
||||
"caverns, lit by the millions of tiny bioluminescent worms that spun them. "
|
||||
"Glow worms prey on the insects they lure and entangle with their faux starry "
|
||||
"sky - and sometimes the occasional bat or other larger flying beast."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:20
|
||||
msgid ""
|
||||
"Glow worms can be harvested and used as a source of light but they die when "
|
||||
"exposed to light significantly brighter than themselves or when immersed in "
|
||||
"water. A colony of glow worms hung in a hospitable environment will undergo "
|
||||
"a modest amount of growth, allowing it to be divided and propagated."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:22
|
||||
msgid ""
|
||||
"A nasty kelp-like plant that grows in patches on the floor of the Sunless "
|
||||
"Sea. Its reflective patches draw in the unwary and then its prickly barbs "
|
||||
"catch and hold small creatures."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:23
|
||||
msgid "Snareweed has no practical use, its fibers disintegrate when they dry."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:25
|
||||
msgid ""
|
||||
"A rare form of coral found only deep underground in the Sunless Sea, cave "
|
||||
"coral grows hanging from the ceilings of flooded caverns."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:26
|
||||
msgid ""
|
||||
"Aside from their aesthetic beauty, cave corals can be harvested for simple "
|
||||
"building materials."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:28
|
||||
msgid ""
|
||||
"Flowstone is a carbonate-rich rock formation deposited by flowing water. It "
|
||||
"consists of minerals that the water dissolved earlier as it widens cracks "
|
||||
"and fissures into caves."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:29
|
||||
msgid ""
|
||||
"Aside from the aesthetic beauty of its formations flowstone has no special "
|
||||
"properties or uses."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:30
|
||||
msgid ""
|
||||
"The iconic stalactites and stalagmites found in caverns are composed of "
|
||||
"flowstone (or 'dripstone' in the case of these formations). Moist dripstone "
|
||||
"is still undergoing growth, whereas dry dripstone is found in 'dead' caverns "
|
||||
"once the source of water that created them ceases."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:31
|
||||
msgid ""
|
||||
"Although stalagmites are blunter than the stalactites above them, they can "
|
||||
"cause extra damage to the unwary caver who falls on them."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:32
|
||||
msgid ""
|
||||
"Ice formed by water dripping slowly into a cold environment, icicles tend to "
|
||||
"be exceptionally pure and clear."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:33
|
||||
msgid "Falling onto an icicle is particularly damaging."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:36
|
||||
msgid ""
|
||||
"Deep in the infernal conditions of the magma sea, over the course of "
|
||||
"millions of years, mese crystals grow into flawless blocks that glow bright "
|
||||
"with strange energies."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:37
|
||||
msgid ""
|
||||
"These blocks can be broken down into a large number of mese crystals, but "
|
||||
"cannot be artificially reassembled."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:39
|
||||
msgid ""
|
||||
"Large, dry caverns deep underground are well suited to aeons-long processes "
|
||||
"that concentrate crystalline substances in their walls. This rock is riddled "
|
||||
"with veins of the stuff."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:40
|
||||
msgid "Aside from its aesthetic value this rock has no particular use."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:42
|
||||
msgid ""
|
||||
"Monolithic crystals of this size form only over extremely long periods deep "
|
||||
"underground, in large long-lived cavities that allow them room to grow. "
|
||||
"Water and the life it hosts tend to disrupt the formation process of these "
|
||||
"crystals so they're only found in dry environments."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:43
|
||||
msgid "Aside from its aesthetic value this crystal has no particular use."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\flowstone.lua:8
|
||||
msgid "Dry Dripstone"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\flowstone.lua:19
|
||||
msgid "Dry Flowstone"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\flowstone.lua:33
|
||||
msgid "Wet Dripstone"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\flowstone.lua:45
|
||||
msgid "Wet Flowstone"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\flowstone.lua:59
|
||||
msgid "Icicle"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\glow_worms.lua:11
|
||||
msgid "Glow Worms"
|
||||
msgstr "Vermi luminosi"
|
||||
|
||||
#: df_mapitems\ground_cover.lua:11
|
||||
msgid "Dirt With Cave Moss"
|
||||
msgstr "Terra con muschio di caverna"
|
||||
|
||||
#: df_mapitems\ground_cover.lua:53
|
||||
#: df_mapitems\ground_cover.lua:67
|
||||
msgid "Cobblestone With Floor Fungus"
|
||||
msgstr "Ciottoli con funghi del terreno"
|
||||
|
||||
#: df_mapitems\ground_cover.lua:106
|
||||
msgid "Ice With Hoar Moss"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\snareweed.lua:6
|
||||
msgid "Snareweed"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\veinstone.lua:6
|
||||
msgid "Veinstone"
|
||||
msgstr ""
|
243
df_mapitems/locale/template.pot
Normal file
@ -0,0 +1,243 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-12-29 19:30-0700\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=CHARSET\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: df_mapitems\cave_coral.lua:6
|
||||
#: df_mapitems\cave_coral.lua:18
|
||||
#: df_mapitems\cave_coral.lua:30
|
||||
msgid "Cave Coral"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\crystals_mese.lua:7
|
||||
msgid "Flawless Mese Block"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\crystals_mese.lua:29
|
||||
msgid "Flawless Mese Crystal"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\crystals_ruby.lua:6
|
||||
msgid "Red Crystal Vein"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\crystals_ruby.lua:16
|
||||
#: df_mapitems\crystals_ruby.lua:71
|
||||
#: df_mapitems\crystals_ruby.lua:158
|
||||
msgid "Giant Red Crystal"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\crystals_ruby.lua:43
|
||||
#: df_mapitems\crystals_ruby.lua:122
|
||||
#: df_mapitems\crystals_ruby.lua:195
|
||||
msgid "Big Red Crystal"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:11
|
||||
msgid ""
|
||||
"Cave moss is technically a form of mold, but fortunately a relatively benign "
|
||||
"one given its ubiquity. Its fibers form a tough but springy mat over the "
|
||||
"surface of any organic-rich soil that accumulates deep underground."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:12
|
||||
msgid ""
|
||||
"Cave moss has no known uses aside from the faint glow it emits. It dies when "
|
||||
"exposed to bright light sources such as the Sun."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:13
|
||||
msgid ""
|
||||
"Floor fungus produces a thin, slick film that spreads through the cracks of "
|
||||
"broken rock. Its ability to subsist on the tiniest traces of nutrients means "
|
||||
"it's found in relatively harsh underground environments."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:14
|
||||
msgid ""
|
||||
"Floor fungus has no known uses. It can penetrate deeply into cobblestone "
|
||||
"constructions if an infestation gets hold, but it is difficult to transport "
|
||||
"and is inhibited by light so it hasn't spread beyond the deep caverns."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:16
|
||||
msgid ""
|
||||
"Hoar moss is a strange glowing crust that sometimes forms on the surface of "
|
||||
"water flowing over ice."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:17
|
||||
msgid ""
|
||||
"Hoar moss has no known use aside from providing a faint source of light."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:19
|
||||
msgid ""
|
||||
"Glistening strings of silk hang from the ceilings of some of the larger "
|
||||
"caverns, lit by the millions of tiny bioluminescent worms that spun them. "
|
||||
"Glow worms prey on the insects they lure and entangle with their faux starry "
|
||||
"sky - and sometimes the occasional bat or other larger flying beast."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:20
|
||||
msgid ""
|
||||
"Glow worms can be harvested and used as a source of light but they die when "
|
||||
"exposed to light significantly brighter than themselves or when immersed in "
|
||||
"water. A colony of glow worms hung in a hospitable environment will undergo "
|
||||
"a modest amount of growth, allowing it to be divided and propagated."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:22
|
||||
msgid ""
|
||||
"A nasty kelp-like plant that grows in patches on the floor of the Sunless "
|
||||
"Sea. Its reflective patches draw in the unwary and then its prickly barbs "
|
||||
"catch and hold small creatures."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:23
|
||||
msgid "Snareweed has no practical use, its fibers disintegrate when they dry."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:25
|
||||
msgid ""
|
||||
"A rare form of coral found only deep underground in the Sunless Sea, cave "
|
||||
"coral grows hanging from the ceilings of flooded caverns."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:26
|
||||
msgid ""
|
||||
"Aside from their aesthetic beauty, cave corals can be harvested for simple "
|
||||
"building materials."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:28
|
||||
msgid ""
|
||||
"Flowstone is a carbonate-rich rock formation deposited by flowing water. It "
|
||||
"consists of minerals that the water dissolved earlier as it widens cracks "
|
||||
"and fissures into caves."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:29
|
||||
msgid ""
|
||||
"Aside from the aesthetic beauty of its formations flowstone has no special "
|
||||
"properties or uses."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:30
|
||||
msgid ""
|
||||
"The iconic stalactites and stalagmites found in caverns are composed of "
|
||||
"flowstone (or 'dripstone' in the case of these formations). Moist dripstone "
|
||||
"is still undergoing growth, whereas dry dripstone is found in 'dead' caverns "
|
||||
"once the source of water that created them ceases."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:31
|
||||
msgid ""
|
||||
"Although stalagmites are blunter than the stalactites above them, they can "
|
||||
"cause extra damage to the unwary caver who falls on them."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:32
|
||||
msgid ""
|
||||
"Ice formed by water dripping slowly into a cold environment, icicles tend to "
|
||||
"be exceptionally pure and clear."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:33
|
||||
msgid "Falling onto an icicle is particularly damaging."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:36
|
||||
msgid ""
|
||||
"Deep in the infernal conditions of the magma sea, over the course of "
|
||||
"millions of years, mese crystals grow into flawless blocks that glow bright "
|
||||
"with strange energies."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:37
|
||||
msgid ""
|
||||
"These blocks can be broken down into a large number of mese crystals, but "
|
||||
"cannot be artificially reassembled."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:39
|
||||
msgid ""
|
||||
"Large, dry caverns deep underground are well suited to aeons-long processes "
|
||||
"that concentrate crystalline substances in their walls. This rock is riddled "
|
||||
"with veins of the stuff."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:40
|
||||
msgid "Aside from its aesthetic value this rock has no particular use."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:42
|
||||
msgid ""
|
||||
"Monolithic crystals of this size form only over extremely long periods deep "
|
||||
"underground, in large long-lived cavities that allow them room to grow. "
|
||||
"Water and the life it hosts tend to disrupt the formation process of these "
|
||||
"crystals so they're only found in dry environments."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\doc.lua:43
|
||||
msgid "Aside from its aesthetic value this crystal has no particular use."
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\flowstone.lua:8
|
||||
msgid "Dry Dripstone"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\flowstone.lua:19
|
||||
msgid "Dry Flowstone"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\flowstone.lua:33
|
||||
msgid "Wet Dripstone"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\flowstone.lua:45
|
||||
msgid "Wet Flowstone"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\flowstone.lua:59
|
||||
msgid "Icicle"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\glow_worms.lua:11
|
||||
msgid "Glow Worms"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\ground_cover.lua:11
|
||||
msgid "Dirt With Cave Moss"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\ground_cover.lua:53
|
||||
#: df_mapitems\ground_cover.lua:67
|
||||
msgid "Cobblestone With Floor Fungus"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\ground_cover.lua:106
|
||||
msgid "Ice With Hoar Moss"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\snareweed.lua:6
|
||||
msgid "Snareweed"
|
||||
msgstr ""
|
||||
|
||||
#: df_mapitems\veinstone.lua:6
|
||||
msgid "Veinstone"
|
||||
msgstr ""
|
6
df_mapitems/locale/update.bat
Normal file
@ -0,0 +1,6 @@
|
||||
@echo off
|
||||
setlocal ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
|
||||
cd ..
|
||||
set LIST=
|
||||
for /r %%X in (*.lua) do set LIST=!LIST! %%X
|
||||
..\..\intllib\tools\xgettext.bat %LIST%
|
1
df_mapitems/mod.conf
Normal file
@ -0,0 +1 @@
|
||||
name = df_mapitems
|
22
df_mapitems/models/hex_crystal_30_45_big.mtl
Normal file
@ -0,0 +1,22 @@
|
||||
# Blender MTL File: 'hex crystal 30.blend'
|
||||
# Material Count: 2
|
||||
|
||||
newmtl End_Mat
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.640000 0.640000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
|
||||
newmtl Side_Mat
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.371605 0.494084
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
114
df_mapitems/models/hex_crystal_30_45_big.obj
Normal file
@ -0,0 +1,114 @@
|
||||
# Blender v2.77 (sub 0) OBJ File: 'hex crystal 30.blend'
|
||||
# www.blender.org
|
||||
mtllib hex_crystal_30_45.mtl
|
||||
o Cylinder
|
||||
v 0.135341 -0.831516 0.135341
|
||||
v -1.192872 2.421927 -1.192872
|
||||
v -0.353661 -0.499737 0.353446
|
||||
v -1.410977 2.090148 -0.703870
|
||||
v -0.442049 -0.716243 -0.088496
|
||||
v -1.499365 1.873641 -1.145812
|
||||
v -0.088496 -0.716243 -0.442049
|
||||
v -1.145812 1.873641 -1.499365
|
||||
v 0.353446 -0.499737 -0.353661
|
||||
v -0.703870 2.090148 -1.410977
|
||||
v 0.441834 -0.283230 0.088281
|
||||
v -0.615482 2.306654 -0.969035
|
||||
v 0.088281 -0.283230 0.441834
|
||||
v -0.969035 2.306654 -0.615482
|
||||
vt 0.4999 0.0000
|
||||
vt 0.4999 1.0000
|
||||
vt 0.3332 1.0000
|
||||
vt 0.3332 0.0000
|
||||
vt 0.1665 1.0000
|
||||
vt 0.1665 0.0000
|
||||
vt 0.0000 1.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 1.0000 -0.0000
|
||||
vt 1.0000 1.0000
|
||||
vt 0.8333 1.0000
|
||||
vt 0.8333 -0.0000
|
||||
vt 0.6666 1.0000
|
||||
vt 0.6666 -0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.5000 0.5000
|
||||
vt 0.9313 0.7490
|
||||
vt 0.5000 0.9980
|
||||
vt 0.5000 0.5000
|
||||
vt 0.5000 0.0020
|
||||
vt 0.9313 0.2510
|
||||
vt 0.0687 0.7490
|
||||
vt 0.0687 0.2510
|
||||
vt 0.0687 0.2510
|
||||
vt 0.0687 0.7490
|
||||
vt 0.5000 0.0020
|
||||
vt 0.5000 0.9980
|
||||
vt 0.9313 0.2510
|
||||
vt 0.9313 0.7490
|
||||
vn -0.9186 -0.2500 0.3062
|
||||
vn -0.6124 -0.5000 -0.6124
|
||||
vn 0.3062 -0.2500 -0.9186
|
||||
vn 0.9186 0.2500 -0.3062
|
||||
vn 0.6124 0.5000 0.6124
|
||||
vn -0.3062 0.2500 0.9186
|
||||
vn -0.3536 0.8660 -0.3536
|
||||
vn 0.3990 0.4733 -0.7854
|
||||
vn 0.7854 -0.4733 -0.3990
|
||||
vn -0.3439 -0.8143 0.4677
|
||||
vn -0.8735 0.4830 -0.0619
|
||||
vn -0.1410 -0.9799 -0.1410
|
||||
vn -0.6706 0.3173 -0.6706
|
||||
vn 0.4677 -0.8143 -0.3439
|
||||
vn -0.0619 0.4830 -0.8735
|
||||
vn 0.8735 -0.4830 0.0619
|
||||
vn 0.3439 0.8143 -0.4677
|
||||
vn 0.6706 -0.3173 0.6706
|
||||
vn 0.1410 0.9799 0.1410
|
||||
vn 0.0619 -0.4830 0.8735
|
||||
vn -0.4677 0.8143 0.3439
|
||||
g Cylinder_Cylinder_Side_Mat
|
||||
usemtl Side_Mat
|
||||
s off
|
||||
f 3/1/1 4/2/1 6/3/1 5/4/1
|
||||
f 5/4/2 6/3/2 8/5/2 7/6/2
|
||||
f 7/6/3 8/5/3 10/7/3 9/8/3
|
||||
f 9/9/4 10/10/4 12/11/4 11/12/4
|
||||
f 11/12/5 12/11/5 14/13/5 13/14/5
|
||||
f 13/14/6 14/13/6 4/2/6 3/1/6
|
||||
f 10/15/7 8/16/7 12/17/7
|
||||
f 12/17/8 8/16/8 2/18/8
|
||||
f 2/18/1 8/16/1 14/19/1
|
||||
f 14/19/7 8/16/7 6/20/7
|
||||
f 14/19/9 6/20/9 2/18/9
|
||||
f 11/21/9 1/22/9 7/23/9
|
||||
f 7/23/1 1/22/1 13/24/1
|
||||
f 13/24/8 1/22/8 5/25/8
|
||||
f 9/8/7 7/23/7 11/21/7
|
||||
f 11/21/7 7/23/7 13/24/7
|
||||
f 13/24/7 7/23/7 5/25/7
|
||||
f 13/24/7 5/25/7 3/26/7
|
||||
g Cylinder_Cylinder_End_Mat
|
||||
usemtl End_Mat
|
||||
f 1/27/10 3/28/10 5/29/10
|
||||
f 2/30/11 6/31/11 4/32/11
|
||||
f 1/27/12 5/29/12 7/33/12
|
||||
f 2/30/13 8/34/13 6/31/13
|
||||
f 1/27/14 7/33/14 9/35/14
|
||||
f 2/30/15 10/36/15 8/34/15
|
||||
f 1/27/16 9/35/16 11/37/16
|
||||
f 2/30/17 12/38/17 10/36/17
|
||||
f 1/27/18 11/37/18 13/39/18
|
||||
f 2/30/19 14/40/19 12/38/19
|
||||
f 1/27/20 13/39/20 3/28/20
|
||||
f 2/30/21 4/32/21 14/40/21
|
22
df_mapitems/models/hex_crystal_30_45_med.mtl
Normal file
@ -0,0 +1,22 @@
|
||||
# Blender MTL File: 'hex crystal 30 45.blend'
|
||||
# Material Count: 2
|
||||
|
||||
newmtl End_Mat
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.640000 0.640000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
|
||||
newmtl Side_Mat
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.371605 0.494084
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
114
df_mapitems/models/hex_crystal_30_45_med.obj
Normal file
@ -0,0 +1,114 @@
|
||||
# Blender v2.77 (sub 0) OBJ File: 'hex crystal 30 45.blend'
|
||||
# www.blender.org
|
||||
mtllib hex_crystal_30_45_med.mtl
|
||||
o Cylinder
|
||||
v 0.067670 -0.665758 0.067670
|
||||
v -0.596436 0.960964 -0.596436
|
||||
v -0.176830 -0.499868 0.176723
|
||||
v -0.705489 0.795074 -0.351935
|
||||
v -0.221025 -0.608121 -0.044248
|
||||
v -0.749683 0.686821 -0.572906
|
||||
v -0.044248 -0.608121 -0.221025
|
||||
v -0.572906 0.686821 -0.749683
|
||||
v 0.176723 -0.499868 -0.176830
|
||||
v -0.351935 0.795074 -0.705489
|
||||
v 0.220917 -0.391615 0.044140
|
||||
v -0.307741 0.903327 -0.484518
|
||||
v 0.044140 -0.391615 0.220917
|
||||
v -0.484518 0.903327 -0.307741
|
||||
vt 0.4999 0.0000
|
||||
vt 0.4999 1.0000
|
||||
vt 0.3332 1.0000
|
||||
vt 0.3332 0.0000
|
||||
vt 0.1665 1.0000
|
||||
vt 0.1665 0.0000
|
||||
vt 0.0000 1.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 1.0000 -0.0000
|
||||
vt 1.0000 1.0000
|
||||
vt 0.8333 1.0000
|
||||
vt 0.8333 -0.0000
|
||||
vt 0.6666 1.0000
|
||||
vt 0.6666 -0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.5000 0.5000
|
||||
vt 0.9313 0.7490
|
||||
vt 0.5000 0.9980
|
||||
vt 0.5000 0.5000
|
||||
vt 0.5000 0.0020
|
||||
vt 0.9313 0.2510
|
||||
vt 0.0687 0.7490
|
||||
vt 0.0687 0.2510
|
||||
vt 0.0687 0.2510
|
||||
vt 0.0687 0.7490
|
||||
vt 0.5000 0.0020
|
||||
vt 0.5000 0.9980
|
||||
vt 0.9313 0.2510
|
||||
vt 0.9313 0.7490
|
||||
vn -0.9186 -0.2500 0.3062
|
||||
vn -0.6124 -0.5000 -0.6124
|
||||
vn 0.3062 -0.2500 -0.9186
|
||||
vn 0.9186 0.2500 -0.3062
|
||||
vn 0.6124 0.5000 0.6124
|
||||
vn -0.3062 0.2500 0.9186
|
||||
vn -0.3536 0.8660 -0.3536
|
||||
vn 0.3990 0.4733 -0.7854
|
||||
vn 0.7854 -0.4733 -0.3990
|
||||
vn -0.3439 -0.8143 0.4677
|
||||
vn -0.8735 0.4830 -0.0619
|
||||
vn -0.1410 -0.9799 -0.1410
|
||||
vn -0.6706 0.3173 -0.6706
|
||||
vn 0.4677 -0.8143 -0.3439
|
||||
vn -0.0619 0.4830 -0.8735
|
||||
vn 0.8735 -0.4830 0.0619
|
||||
vn 0.3439 0.8143 -0.4677
|
||||
vn 0.6706 -0.3173 0.6706
|
||||
vn 0.1410 0.9799 0.1410
|
||||
vn 0.0619 -0.4830 0.8735
|
||||
vn -0.4677 0.8143 0.3439
|
||||
g Cylinder_Cylinder_Side_Mat
|
||||
usemtl Side_Mat
|
||||
s off
|
||||
f 3/1/1 4/2/1 6/3/1 5/4/1
|
||||
f 5/4/2 6/3/2 8/5/2 7/6/2
|
||||
f 7/6/3 8/5/3 10/7/3 9/8/3
|
||||
f 9/9/4 10/10/4 12/11/4 11/12/4
|
||||
f 11/12/5 12/11/5 14/13/5 13/14/5
|
||||
f 13/14/6 14/13/6 4/2/6 3/1/6
|
||||
f 10/15/7 8/16/7 12/17/7
|
||||
f 12/17/8 8/16/8 2/18/8
|
||||
f 2/18/1 8/16/1 14/19/1
|
||||
f 14/19/7 8/16/7 6/20/7
|
||||
f 14/19/9 6/20/9 2/18/9
|
||||
f 11/21/9 1/22/9 7/23/9
|
||||
f 7/23/1 1/22/1 13/24/1
|
||||
f 13/24/8 1/22/8 5/25/8
|
||||
f 9/8/7 7/23/7 11/21/7
|
||||
f 11/21/7 7/23/7 13/24/7
|
||||
f 13/24/7 7/23/7 5/25/7
|
||||
f 13/24/7 5/25/7 3/26/7
|
||||
g Cylinder_Cylinder_End_Mat
|
||||
usemtl End_Mat
|
||||
f 1/27/10 3/28/10 5/29/10
|
||||
f 2/30/11 6/31/11 4/32/11
|
||||
f 1/27/12 5/29/12 7/33/12
|
||||
f 2/30/13 8/34/13 6/31/13
|
||||
f 1/27/14 7/33/14 9/35/14
|
||||
f 2/30/15 10/36/15 8/34/15
|
||||
f 1/27/16 9/35/16 11/37/16
|
||||
f 2/30/17 12/38/17 10/36/17
|
||||
f 1/27/18 11/37/18 13/39/18
|
||||
f 2/30/19 14/40/19 12/38/19
|
||||
f 1/27/20 13/39/20 3/28/20
|
||||
f 2/30/21 4/32/21 14/40/21
|
22
df_mapitems/models/hex_crystal_30_big.mtl
Normal file
@ -0,0 +1,22 @@
|
||||
# Blender MTL File: 'hex crystal 30.blend'
|
||||
# Material Count: 2
|
||||
|
||||
newmtl End_Mat
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.640000 0.640000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
|
||||
newmtl Side_Mat
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.371605 0.494084
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
114
df_mapitems/models/hex_crystal_30_big.obj
Normal file
@ -0,0 +1,114 @@
|
||||
# Blender v2.77 (sub 0) OBJ File: 'hex crystal 30.blend'
|
||||
# www.blender.org
|
||||
mtllib hex_crystal_30.mtl
|
||||
o Cylinder
|
||||
v -0.000000 -0.831516 0.191401
|
||||
v 0.000000 2.421927 -1.686976
|
||||
v -0.500000 -0.499737 -0.000152
|
||||
v -0.500000 2.090148 -1.495423
|
||||
v -0.250000 -0.716243 -0.375152
|
||||
v -0.250000 1.873641 -1.870423
|
||||
v 0.250000 -0.716243 -0.375152
|
||||
v 0.250000 1.873641 -1.870423
|
||||
v 0.500000 -0.499737 -0.000152
|
||||
v 0.500000 2.090148 -1.495423
|
||||
v 0.250000 -0.283230 0.374848
|
||||
v 0.250000 2.306654 -1.120423
|
||||
v -0.250000 -0.283230 0.374848
|
||||
v -0.250000 2.306654 -1.120423
|
||||
vt 0.4999 0.0000
|
||||
vt 0.4999 1.0000
|
||||
vt 0.3332 1.0000
|
||||
vt 0.3332 0.0000
|
||||
vt 0.1665 1.0000
|
||||
vt 0.1665 0.0000
|
||||
vt 0.0000 1.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 1.0000 -0.0000
|
||||
vt 1.0000 1.0000
|
||||
vt 0.8333 1.0000
|
||||
vt 0.8333 -0.0000
|
||||
vt 0.6666 1.0000
|
||||
vt 0.6666 -0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.5000 0.5000
|
||||
vt 0.9313 0.7490
|
||||
vt 0.5000 0.9980
|
||||
vt 0.5000 0.5000
|
||||
vt 0.5000 0.0020
|
||||
vt 0.9313 0.2510
|
||||
vt 0.0687 0.7490
|
||||
vt 0.0687 0.2510
|
||||
vt 0.0687 0.2510
|
||||
vt 0.0687 0.7490
|
||||
vt 0.5000 0.0020
|
||||
vt 0.5000 0.9980
|
||||
vt 0.9313 0.2510
|
||||
vt 0.9313 0.7490
|
||||
vn -0.8660 -0.2500 -0.4330
|
||||
vn 0.0000 -0.5000 -0.8660
|
||||
vn 0.8660 -0.2500 -0.4330
|
||||
vn 0.8660 0.2500 0.4330
|
||||
vn 0.0000 0.5000 0.8660
|
||||
vn -0.8660 0.2500 0.4330
|
||||
vn 0.0000 0.8660 -0.5000
|
||||
vn 0.8375 0.4733 -0.2732
|
||||
vn 0.8375 -0.4733 0.2732
|
||||
vn -0.5739 -0.8143 0.0875
|
||||
vn -0.5739 0.4830 -0.6614
|
||||
vn 0.0000 -0.9799 -0.1994
|
||||
vn -0.0000 0.3173 -0.9483
|
||||
vn 0.5739 -0.8143 0.0875
|
||||
vn 0.5739 0.4830 -0.6614
|
||||
vn 0.5739 -0.4830 0.6614
|
||||
vn 0.5739 0.8143 -0.0875
|
||||
vn 0.0000 -0.3173 0.9483
|
||||
vn 0.0000 0.9799 0.1994
|
||||
vn -0.5739 -0.4830 0.6614
|
||||
vn -0.5739 0.8143 -0.0875
|
||||
g Cylinder_Cylinder_Side_Mat
|
||||
usemtl Side_Mat
|
||||
s off
|
||||
f 3/1/1 4/2/1 6/3/1 5/4/1
|
||||
f 5/4/2 6/3/2 8/5/2 7/6/2
|
||||
f 7/6/3 8/5/3 10/7/3 9/8/3
|
||||
f 9/9/4 10/10/4 12/11/4 11/12/4
|
||||
f 11/12/5 12/11/5 14/13/5 13/14/5
|
||||
f 13/14/6 14/13/6 4/2/6 3/1/6
|
||||
f 10/15/7 8/16/7 12/17/7
|
||||
f 12/17/8 8/16/8 2/18/8
|
||||
f 2/18/1 8/16/1 14/19/1
|
||||
f 14/19/7 8/16/7 6/20/7
|
||||
f 14/19/9 6/20/9 2/18/9
|
||||
f 11/21/9 1/22/9 7/23/9
|
||||
f 7/23/1 1/22/1 13/24/1
|
||||
f 13/24/8 1/22/8 5/25/8
|
||||
f 9/8/7 7/23/7 11/21/7
|
||||
f 11/21/7 7/23/7 13/24/7
|
||||
f 13/24/7 7/23/7 5/25/7
|
||||
f 13/24/7 5/25/7 3/26/7
|
||||
g Cylinder_Cylinder_End_Mat
|
||||
usemtl End_Mat
|
||||
f 1/27/10 3/28/10 5/29/10
|
||||
f 2/30/11 6/31/11 4/32/11
|
||||
f 1/27/12 5/29/12 7/33/12
|
||||
f 2/30/13 8/34/13 6/31/13
|
||||
f 1/27/14 7/33/14 9/35/14
|
||||
f 2/30/15 10/36/15 8/34/15
|
||||
f 1/27/16 9/35/16 11/37/16
|
||||
f 2/30/17 12/38/17 10/36/17
|
||||
f 1/27/18 11/37/18 13/39/18
|
||||
f 2/30/19 14/40/19 12/38/19
|
||||
f 1/27/20 13/39/20 3/28/20
|
||||
f 2/30/21 4/32/21 14/40/21
|
22
df_mapitems/models/hex_crystal_30_med.mtl
Normal file
@ -0,0 +1,22 @@
|
||||
# Blender MTL File: 'hex crystal 30.blend'
|
||||
# Material Count: 2
|
||||
|
||||
newmtl End_Mat
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.640000 0.640000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
|
||||
newmtl Side_Mat
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.371605 0.494084
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
114
df_mapitems/models/hex_crystal_30_med.obj
Normal file
@ -0,0 +1,114 @@
|
||||
# Blender v2.77 (sub 0) OBJ File: 'hex crystal 30.blend'
|
||||
# www.blender.org
|
||||
mtllib hex_crystal_30_med.mtl
|
||||
o Cylinder
|
||||
v -0.000000 -0.665758 0.095701
|
||||
v 0.000000 0.960964 -0.843488
|
||||
v -0.250000 -0.499868 -0.000076
|
||||
v -0.250000 0.795074 -0.747711
|
||||
v -0.125000 -0.608121 -0.187576
|
||||
v -0.125000 0.686821 -0.935211
|
||||
v 0.125000 -0.608121 -0.187576
|
||||
v 0.125000 0.686821 -0.935212
|
||||
v 0.250000 -0.499868 -0.000076
|
||||
v 0.250000 0.795074 -0.747711
|
||||
v 0.125000 -0.391615 0.187424
|
||||
v 0.125000 0.903327 -0.560211
|
||||
v -0.125000 -0.391615 0.187424
|
||||
v -0.125000 0.903327 -0.560211
|
||||
vt 0.4999 0.0000
|
||||
vt 0.4999 1.0000
|
||||
vt 0.3332 1.0000
|
||||
vt 0.3332 0.0000
|
||||
vt 0.1665 1.0000
|
||||
vt 0.1665 0.0000
|
||||
vt 0.0000 1.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 1.0000 -0.0000
|
||||
vt 1.0000 1.0000
|
||||
vt 0.8333 1.0000
|
||||
vt 0.8333 -0.0000
|
||||
vt 0.6666 1.0000
|
||||
vt 0.6666 -0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.5000 0.5000
|
||||
vt 0.9313 0.7490
|
||||
vt 0.5000 0.9980
|
||||
vt 0.5000 0.5000
|
||||
vt 0.5000 0.0020
|
||||
vt 0.9313 0.2510
|
||||
vt 0.0687 0.7490
|
||||
vt 0.0687 0.2510
|
||||
vt 0.0687 0.2510
|
||||
vt 0.0687 0.7490
|
||||
vt 0.5000 0.0020
|
||||
vt 0.5000 0.9980
|
||||
vt 0.9313 0.2510
|
||||
vt 0.9313 0.7490
|
||||
vn -0.8660 -0.2500 -0.4330
|
||||
vn 0.0000 -0.5000 -0.8660
|
||||
vn 0.8660 -0.2500 -0.4330
|
||||
vn 0.8660 0.2500 0.4330
|
||||
vn 0.0000 0.5000 0.8660
|
||||
vn -0.8660 0.2500 0.4330
|
||||
vn 0.0000 0.8660 -0.5000
|
||||
vn 0.8375 0.4733 -0.2732
|
||||
vn 0.8375 -0.4733 0.2732
|
||||
vn -0.5739 -0.8143 0.0875
|
||||
vn -0.5739 0.4830 -0.6614
|
||||
vn 0.0000 -0.9799 -0.1994
|
||||
vn -0.0000 0.3173 -0.9483
|
||||
vn 0.5739 -0.8143 0.0875
|
||||
vn 0.5739 0.4830 -0.6614
|
||||
vn 0.5739 -0.4830 0.6614
|
||||
vn 0.5739 0.8143 -0.0875
|
||||
vn 0.0000 -0.3173 0.9483
|
||||
vn 0.0000 0.9799 0.1994
|
||||
vn -0.5739 -0.4830 0.6614
|
||||
vn -0.5739 0.8143 -0.0875
|
||||
g Cylinder_Cylinder_Side_Mat
|
||||
usemtl Side_Mat
|
||||
s off
|
||||
f 3/1/1 4/2/1 6/3/1 5/4/1
|
||||
f 5/4/2 6/3/2 8/5/2 7/6/2
|
||||
f 7/6/3 8/5/3 10/7/3 9/8/3
|
||||
f 9/9/4 10/10/4 12/11/4 11/12/4
|
||||
f 11/12/5 12/11/5 14/13/5 13/14/5
|
||||
f 13/14/6 14/13/6 4/2/6 3/1/6
|
||||
f 10/15/7 8/16/7 12/17/7
|
||||
f 12/17/8 8/16/8 2/18/8
|
||||
f 2/18/1 8/16/1 14/19/1
|
||||
f 14/19/7 8/16/7 6/20/7
|
||||
f 14/19/9 6/20/9 2/18/9
|
||||
f 11/21/9 1/22/9 7/23/9
|
||||
f 7/23/1 1/22/1 13/24/1
|
||||
f 13/24/8 1/22/8 5/25/8
|
||||
f 9/8/7 7/23/7 11/21/7
|
||||
f 11/21/7 7/23/7 13/24/7
|
||||
f 13/24/7 7/23/7 5/25/7
|
||||
f 13/24/7 5/25/7 3/26/7
|
||||
g Cylinder_Cylinder_End_Mat
|
||||
usemtl End_Mat
|
||||
f 1/27/10 3/28/10 5/29/10
|
||||
f 2/30/11 6/31/11 4/32/11
|
||||
f 1/27/12 5/29/12 7/33/12
|
||||
f 2/30/13 8/34/13 6/31/13
|
||||
f 1/27/14 7/33/14 9/35/14
|
||||
f 2/30/15 10/36/15 8/34/15
|
||||
f 1/27/16 9/35/16 11/37/16
|
||||
f 2/30/17 12/38/17 10/36/17
|
||||
f 1/27/18 11/37/18 13/39/18
|
||||
f 2/30/19 14/40/19 12/38/19
|
||||
f 1/27/20 13/39/20 3/28/20
|
||||
f 2/30/21 4/32/21 14/40/21
|
22
df_mapitems/models/hex_crystal_big.mtl
Normal file
@ -0,0 +1,22 @@
|
||||
# Blender MTL File: 'hex crystal.blend'
|
||||
# Material Count: 2
|
||||
|
||||
newmtl End_Mat
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.640000 0.640000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
|
||||
newmtl Side_Mat
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.371605 0.494084
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
114
df_mapitems/models/hex_crystal_big.obj
Normal file
@ -0,0 +1,114 @@
|
||||
# Blender v2.77 (sub 0) OBJ File: 'hex crystal.blend'
|
||||
# www.blender.org
|
||||
mtllib hex_crystal.mtl
|
||||
o Cylinder
|
||||
v 0.000000 -0.882802 0.000000
|
||||
v 0.000000 2.873951 0.000000
|
||||
v 0.000000 -0.499696 -0.500000
|
||||
v 0.000000 2.490845 -0.500000
|
||||
v 0.433013 -0.499696 -0.250000
|
||||
v 0.433013 2.490845 -0.250000
|
||||
v 0.433013 -0.499696 0.250000
|
||||
v 0.433013 2.490845 0.250000
|
||||
v -0.000000 -0.499696 0.500000
|
||||
v -0.000000 2.490845 0.500000
|
||||
v -0.433013 -0.499696 0.250000
|
||||
v -0.433013 2.490845 0.250000
|
||||
v -0.433013 -0.499696 -0.250000
|
||||
v -0.433013 2.490845 -0.250000
|
||||
vt 0.4999 0.0000
|
||||
vt 0.4999 1.0000
|
||||
vt 0.3332 1.0000
|
||||
vt 0.3332 0.0000
|
||||
vt 0.1665 1.0000
|
||||
vt 0.1665 0.0000
|
||||
vt 0.0000 1.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 1.0000 -0.0000
|
||||
vt 1.0000 1.0000
|
||||
vt 0.8333 1.0000
|
||||
vt 0.8333 -0.0000
|
||||
vt 0.6666 1.0000
|
||||
vt 0.6666 -0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.5000 0.5000
|
||||
vt 0.9313 0.7490
|
||||
vt 0.5000 0.9980
|
||||
vt 0.5000 0.5000
|
||||
vt 0.5000 0.0020
|
||||
vt 0.9313 0.2510
|
||||
vt 0.0687 0.7490
|
||||
vt 0.0687 0.2510
|
||||
vt 0.0687 0.2510
|
||||
vt 0.0687 0.7490
|
||||
vt 0.5000 0.0020
|
||||
vt 0.5000 0.9980
|
||||
vt 0.9313 0.2510
|
||||
vt 0.9313 0.7490
|
||||
vn 0.5000 0.0000 -0.8660
|
||||
vn 1.0000 0.0000 0.0000
|
||||
vn 0.5000 0.0000 0.8660
|
||||
vn -0.5000 0.0000 0.8660
|
||||
vn -1.0000 0.0000 0.0000
|
||||
vn -0.5000 0.0000 -0.8660
|
||||
vn 0.0000 1.0000 0.0000
|
||||
vn -0.0000 0.5465 0.8375
|
||||
vn 0.0000 -0.5465 0.8375
|
||||
vn 0.3313 -0.7489 -0.5739
|
||||
vn 0.3313 0.7489 -0.5739
|
||||
vn 0.6626 -0.7489 0.0000
|
||||
vn 0.6626 0.7489 0.0000
|
||||
vn 0.3313 -0.7489 0.5739
|
||||
vn 0.3313 0.7489 0.5739
|
||||
vn -0.3313 -0.7489 0.5739
|
||||
vn -0.3313 0.7489 0.5739
|
||||
vn -0.6626 -0.7489 0.0000
|
||||
vn -0.6626 0.7489 0.0000
|
||||
vn -0.3313 -0.7489 -0.5739
|
||||
vn -0.3313 0.7489 -0.5739
|
||||
g Cylinder_Cylinder_Side_Mat
|
||||
usemtl Side_Mat
|
||||
s off
|
||||
f 3/1/1 4/2/1 6/3/1 5/4/1
|
||||
f 5/4/2 6/3/2 8/5/2 7/6/2
|
||||
f 7/6/3 8/5/3 10/7/3 9/8/3
|
||||
f 9/9/4 10/10/4 12/11/4 11/12/4
|
||||
f 11/12/5 12/11/5 14/13/5 13/14/5
|
||||
f 13/14/6 14/13/6 4/2/6 3/1/6
|
||||
f 10/15/7 8/16/7 12/17/7
|
||||
f 12/17/8 8/16/8 2/18/8
|
||||
f 2/18/1 8/16/1 14/19/1
|
||||
f 14/19/7 8/16/7 6/20/7
|
||||
f 14/19/9 6/20/9 2/18/9
|
||||
f 11/21/9 1/22/9 7/23/9
|
||||
f 7/23/1 1/22/1 13/24/1
|
||||
f 13/24/8 1/22/8 5/25/8
|
||||
f 9/8/7 7/23/7 11/21/7
|
||||
f 11/21/7 7/23/7 13/24/7
|
||||
f 13/24/7 7/23/7 5/25/7
|
||||
f 13/24/7 5/25/7 3/26/7
|
||||
g Cylinder_Cylinder_End_Mat
|
||||
usemtl End_Mat
|
||||
f 1/27/10 3/28/10 5/29/10
|
||||
f 2/30/11 6/31/11 4/32/11
|
||||
f 1/27/12 5/29/12 7/33/12
|
||||
f 2/30/13 8/34/13 6/31/13
|
||||
f 1/27/14 7/33/14 9/35/14
|
||||
f 2/30/15 10/36/15 8/34/15
|
||||
f 1/27/16 9/35/16 11/37/16
|
||||
f 2/30/17 12/38/17 10/36/17
|
||||
f 1/27/18 11/37/18 13/39/18
|
||||
f 2/30/19 14/40/19 12/38/19
|
||||
f 1/27/20 13/39/20 3/28/20
|
||||
f 2/30/21 4/32/21 14/40/21
|
22
df_mapitems/models/hex_crystal_med.mtl
Normal file
@ -0,0 +1,22 @@
|
||||
# Blender MTL File: 'hex crystal.blend'
|
||||
# Material Count: 2
|
||||
|
||||
newmtl End_Mat
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.640000 0.640000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
|
||||
newmtl Side_Mat
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.371605 0.494084
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
114
df_mapitems/models/hex_crystal_med.obj
Normal file
@ -0,0 +1,114 @@
|
||||
# Blender v2.77 (sub 0) OBJ File: 'hex crystal.blend'
|
||||
# www.blender.org
|
||||
mtllib hex_crystal_med.mtl
|
||||
o Cylinder
|
||||
v 0.000000 -0.691401 0.000000
|
||||
v 0.000000 1.186976 0.000000
|
||||
v 0.000000 -0.499848 -0.250000
|
||||
v 0.000000 0.995423 -0.250000
|
||||
v 0.216506 -0.499848 -0.125000
|
||||
v 0.216506 0.995423 -0.125000
|
||||
v 0.216506 -0.499848 0.125000
|
||||
v 0.216506 0.995423 0.125000
|
||||
v -0.000000 -0.499848 0.250000
|
||||
v -0.000000 0.995423 0.250000
|
||||
v -0.216506 -0.499848 0.125000
|
||||
v -0.216506 0.995423 0.125000
|
||||
v -0.216506 -0.499848 -0.125000
|
||||
v -0.216506 0.995423 -0.125000
|
||||
vt 0.4999 0.0000
|
||||
vt 0.4999 1.0000
|
||||
vt 0.3332 1.0000
|
||||
vt 0.3332 0.0000
|
||||
vt 0.1665 1.0000
|
||||
vt 0.1665 0.0000
|
||||
vt 0.0000 1.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 1.0000 -0.0000
|
||||
vt 1.0000 1.0000
|
||||
vt 0.8333 1.0000
|
||||
vt 0.8333 -0.0000
|
||||
vt 0.6666 1.0000
|
||||
vt 0.6666 -0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.0000 0.0000
|
||||
vt 0.5000 0.5000
|
||||
vt 0.9313 0.7490
|
||||
vt 0.5000 0.9980
|
||||
vt 0.5000 0.5000
|
||||
vt 0.5000 0.0020
|
||||
vt 0.9313 0.2510
|
||||
vt 0.0687 0.7490
|
||||
vt 0.0687 0.2510
|
||||
vt 0.0687 0.2510
|
||||
vt 0.0687 0.7490
|
||||
vt 0.5000 0.0020
|
||||
vt 0.5000 0.9980
|
||||
vt 0.9313 0.2510
|
||||
vt 0.9313 0.7490
|
||||
vn 0.5000 0.0000 -0.8660
|
||||
vn 1.0000 0.0000 0.0000
|
||||
vn 0.5000 0.0000 0.8660
|
||||
vn -0.5000 0.0000 0.8660
|
||||
vn -1.0000 0.0000 0.0000
|
||||
vn -0.5000 0.0000 -0.8660
|
||||
vn 0.0000 1.0000 0.0000
|
||||
vn -0.0000 0.5465 0.8375
|
||||
vn 0.0000 -0.5465 0.8375
|
||||
vn 0.3313 -0.7489 -0.5739
|
||||
vn 0.3313 0.7489 -0.5739
|
||||
vn 0.6626 -0.7489 0.0000
|
||||
vn 0.6626 0.7489 0.0000
|
||||
vn 0.3313 -0.7489 0.5739
|
||||
vn 0.3313 0.7489 0.5739
|
||||
vn -0.3313 -0.7489 0.5739
|
||||
vn -0.3313 0.7489 0.5739
|
||||
vn -0.6626 -0.7489 0.0000
|
||||
vn -0.6626 0.7489 0.0000
|
||||
vn -0.3313 -0.7489 -0.5739
|
||||
vn -0.3313 0.7489 -0.5739
|
||||
g Cylinder_Cylinder_Side_Mat
|
||||
usemtl Side_Mat
|
||||
s off
|
||||
f 3/1/1 4/2/1 6/3/1 5/4/1
|
||||
f 5/4/2 6/3/2 8/5/2 7/6/2
|
||||
f 7/6/3 8/5/3 10/7/3 9/8/3
|
||||
f 9/9/4 10/10/4 12/11/4 11/12/4
|
||||
f 11/12/5 12/11/5 14/13/5 13/14/5
|
||||
f 13/14/6 14/13/6 4/2/6 3/1/6
|
||||
f 10/15/7 8/16/7 12/17/7
|
||||
f 12/17/8 8/16/8 2/18/8
|
||||
f 2/18/1 8/16/1 14/19/1
|
||||
f 14/19/7 8/16/7 6/20/7
|
||||
f 14/19/9 6/20/9 2/18/9
|
||||
f 11/21/9 1/22/9 7/23/9
|
||||
f 7/23/1 1/22/1 13/24/1
|
||||
f 13/24/8 1/22/8 5/25/8
|
||||
f 9/8/7 7/23/7 11/21/7
|
||||
f 11/21/7 7/23/7 13/24/7
|
||||
f 13/24/7 7/23/7 5/25/7
|
||||
f 13/24/7 5/25/7 3/26/7
|
||||
g Cylinder_Cylinder_End_Mat
|
||||
usemtl End_Mat
|
||||
f 1/27/10 3/28/10 5/29/10
|
||||
f 2/30/11 6/31/11 4/32/11
|
||||
f 1/27/12 5/29/12 7/33/12
|
||||
f 2/30/13 8/34/13 6/31/13
|
||||
f 1/27/14 7/33/14 9/35/14
|
||||
f 2/30/15 10/36/15 8/34/15
|
||||
f 1/27/16 9/35/16 11/37/16
|
||||
f 2/30/17 12/38/17 10/36/17
|
||||
f 1/27/18 11/37/18 13/39/18
|
||||
f 2/30/19 14/40/19 12/38/19
|
||||
f 1/27/20 13/39/20 3/28/20
|
||||
f 2/30/21 4/32/21 14/40/21
|
3
df_mapitems/models/license.txt
Normal file
@ -0,0 +1,3 @@
|
||||
All hex crystal models were created by FaceDeer and released under both the MIT license and under the Creative Commons CC0 license.
|
||||
|
||||
underch_crystal is from the [underch] (Underground Challenge) mod by Hume2 (https://gitlab.com/h2mm/underch) under the WTFPL license, relicened here to the MIT license
|
32
df_mapitems/models/underch_crystal.mtl
Normal file
@ -0,0 +1,32 @@
|
||||
# Blender MTL File: 'crystal.blend'
|
||||
# Material Count: 3
|
||||
|
||||
newmtl Material
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.640000 0.640000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
|
||||
newmtl Material.001
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.640000 0.640000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
||||
|
||||
newmtl Material.002
|
||||
Ns 96.078431
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.640000 0.640000 0.640000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.000000
|
||||
d 1.000000
|
||||
illum 2
|
107
df_mapitems/models/underch_crystal.obj
Normal file
@ -0,0 +1,107 @@
|
||||
# Blender v2.76 (sub 0) OBJ File: 'crystal.blend'
|
||||
# www.blender.org
|
||||
mtllib underch_crystal.mtl
|
||||
o Cube.001
|
||||
v 0.172286 -0.548977 -0.222058
|
||||
v 0.165892 -0.528919 0.010751
|
||||
v -0.065309 -0.563236 0.007358
|
||||
v -0.058916 -0.583294 -0.225451
|
||||
v 0.179327 0.201377 -0.503659
|
||||
v 0.171710 0.225272 -0.226315
|
||||
v -0.103720 0.184391 -0.230357
|
||||
v -0.096103 0.160496 -0.507701
|
||||
v 0.007959 0.394590 -0.413866
|
||||
v -0.238829 -0.557870 -0.066808
|
||||
v -0.011182 -0.528529 -0.111069
|
||||
v 0.036394 -0.554673 0.116299
|
||||
v -0.191253 -0.584014 0.160560
|
||||
v -0.549483 0.180196 -0.033148
|
||||
v -0.278287 0.215150 -0.085875
|
||||
v -0.221610 0.184005 0.184988
|
||||
v -0.492806 0.149051 0.237716
|
||||
v -0.434139 0.382762 0.109765
|
||||
v 0.032617 -0.584181 0.104827
|
||||
v -0.156722 -0.543012 -0.025937
|
||||
v -0.021474 -0.523372 -0.215584
|
||||
v 0.167865 -0.564541 -0.084819
|
||||
v 0.215590 0.116995 0.447251
|
||||
v -0.009969 0.166039 0.291472
|
||||
v 0.151151 0.189436 0.065547
|
||||
v 0.376709 0.140392 0.221326
|
||||
v 0.226702 0.351514 0.307113
|
||||
vt 0.500000 0.250000
|
||||
vt 0.250000 0.250000
|
||||
vt 0.250000 -0.000000
|
||||
vt 0.500000 -0.000000
|
||||
vt 0.750000 0.750000
|
||||
vt 1.000000 0.750000
|
||||
vt 0.875000 1.000000
|
||||
vt 1.000000 -0.000000
|
||||
vt 0.750000 0.000000
|
||||
vt 0.500000 0.750000
|
||||
vt 0.250000 0.750000
|
||||
vt 0.000000 0.750000
|
||||
vt 0.000000 -0.000000
|
||||
vt 0.125000 1.000000
|
||||
vt 0.375000 1.000000
|
||||
vt 0.625000 1.000000
|
||||
vt 0.000000 0.250000
|
||||
vt 0.750000 0.250000
|
||||
vn 0.100900 -0.985800 -0.134500
|
||||
vn -0.225200 0.644000 -0.731100
|
||||
vn -0.186600 -0.033700 -0.981900
|
||||
vn 0.928000 0.338600 -0.155300
|
||||
vn 0.193700 -0.023500 0.980800
|
||||
vn -0.909500 -0.389400 0.145500
|
||||
vn -0.906600 0.353700 0.230400
|
||||
vn 0.113100 0.455200 0.883200
|
||||
vn 0.693400 0.717800 -0.062600
|
||||
vn 0.145000 -0.985400 0.088900
|
||||
vn 0.738800 0.672800 -0.037700
|
||||
vn 0.999600 0.000900 0.027400
|
||||
vn -0.058500 0.299800 0.952200
|
||||
vn -0.998000 -0.058400 -0.022400
|
||||
vn 0.065800 -0.351100 -0.934000
|
||||
vn -0.044200 0.388600 -0.920400
|
||||
vn -0.902700 0.425900 -0.061500
|
||||
vn -0.112500 0.686700 0.718200
|
||||
vn -0.095900 -0.980800 -0.169900
|
||||
vn -0.426000 0.478900 0.767600
|
||||
vn -0.586400 -0.226800 0.777700
|
||||
vn -0.769200 0.386900 -0.508500
|
||||
vn 0.584800 0.171100 -0.792900
|
||||
vn 0.753200 -0.436800 0.491900
|
||||
vn 0.759600 0.306700 0.573500
|
||||
vn 0.534200 0.615200 -0.579800
|
||||
vn -0.569200 0.754000 -0.327900
|
||||
usemtl Material.001
|
||||
s off
|
||||
f 10/1/1 11/2/1 12/3/1 13/4/1
|
||||
f 15/5/2 14/6/2 18/7/2
|
||||
f 10/8/3 14/6/3 15/5/3 11/9/3
|
||||
f 11/9/4 15/5/4 16/10/4 12/4/4
|
||||
f 12/4/5 16/10/5 17/11/5 13/3/5
|
||||
f 14/12/6 10/13/6 13/3/6 17/11/6
|
||||
f 14/12/7 17/11/7 18/14/7
|
||||
f 17/11/8 16/10/8 18/15/8
|
||||
f 16/10/9 15/5/9 18/16/9
|
||||
usemtl Material
|
||||
f 1/17/10 2/13/10 3/3/10 4/2/10
|
||||
f 6/10/11 5/5/11 9/16/11
|
||||
f 1/9/12 5/5/12 6/10/12 2/4/12
|
||||
f 2/4/13 6/10/13 7/11/13 3/3/13
|
||||
f 3/3/14 7/11/14 8/12/14 4/13/14
|
||||
f 5/5/15 1/9/15 4/8/15 8/6/15
|
||||
f 5/5/16 8/6/16 9/7/16
|
||||
f 8/12/17 7/11/17 9/14/17
|
||||
f 7/11/18 6/10/18 9/15/18
|
||||
usemtl Material.002
|
||||
f 19/4/19 20/9/19 21/18/19 22/1/19
|
||||
f 24/5/20 23/6/20 27/7/20
|
||||
f 19/8/21 23/6/21 24/5/21 20/9/21
|
||||
f 20/9/22 24/5/22 25/10/22 21/4/22
|
||||
f 21/4/23 25/10/23 26/11/23 22/3/23
|
||||
f 23/12/24 19/13/24 22/3/24 26/11/24
|
||||
f 23/12/25 26/11/25 27/14/25
|
||||
f 26/11/26 25/10/26 27/15/26
|
||||
f 25/10/27 24/5/27 27/16/27
|
5
df_mapitems/settingtypes.txt
Normal file
@ -0,0 +1,5 @@
|
||||
#To disable glow worm growth, set this to 0.
|
||||
dfcaverns_glow_worm_delay_multiplier (glow worm growth delay multiplier) float 10
|
||||
dfcaverns_snareweed_damage (Snareweed causes damage to player) bool true
|
||||
dfcaverns_invulnerable_slade (Slade cannot be damaged) bool true
|
||||
dfcaverns_destructive_pit_plasma (Pit plasma destroys adjacent nodes) bool false
|
75
df_mapitems/snareweed.lua
Normal file
@ -0,0 +1,75 @@
|
||||
-- internationalization boilerplate
|
||||
local MP = minetest.get_modpath(minetest.get_current_modname())
|
||||
local S, NS = dofile(MP.."/intllib.lua")
|
||||
|
||||
minetest.register_node("df_mapitems:snareweed", {
|
||||
description = S("Snareweed"),
|
||||
_doc_items_longdesc = df_mapitems.doc.snareweed_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.snareweed_usage,
|
||||
tiles = {"default_dirt.png^dfcaverns_snareweed_roots.png", "default_dirt.png"},
|
||||
drawtype="plantlike_rooted",
|
||||
paramtype2 = "leveled",
|
||||
special_tiles = {{name = "dfcaverns_snareweed.png", tileable_vertical = true}},
|
||||
is_ground_content = true,
|
||||
drop = 'default:dirt',
|
||||
light_source = 6,
|
||||
groups = {crumbly = 3, soil = 1},
|
||||
sounds = default.node_sound_dirt_defaults(),
|
||||
})
|
||||
|
||||
if df_mapitems.config.snareweed_damage then
|
||||
local timer = 0
|
||||
|
||||
minetest.register_globalstep(function(dtime)
|
||||
timer = timer + dtime
|
||||
if timer >= 1 then
|
||||
timer = timer - 1
|
||||
for _, player in pairs(minetest.get_connected_players()) do
|
||||
local player_pos = player:getpos() -- node player's feet are in this location.
|
||||
local rounded_pos = vector.round(player_pos)
|
||||
local nearby_nodes = minetest.find_nodes_in_area(vector.add(rounded_pos, {x=0, y= -8, z=0}), rounded_pos, {"df_mapitems:snareweed"})
|
||||
for _, node_pos in ipairs(nearby_nodes) do
|
||||
local node = minetest.get_node(node_pos)
|
||||
local distance = player_pos.y - node_pos.y
|
||||
if distance <= node.param2/16 then
|
||||
minetest.log("action", player:get_player_name() .. " takes 2 damage from snareweed at " .. minetest.pos_to_string(node_pos))
|
||||
player:set_hp(player:get_hp() - 2)
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
|
||||
local c_water = minetest.get_content_id("default:water_source")
|
||||
local c_dirt = minetest.get_content_id("default:dirt")
|
||||
local c_stone = minetest.get_content_id("default:stone")
|
||||
local c_snareweed = minetest.get_content_id("df_mapitems:snareweed")
|
||||
|
||||
df_mapitems.place_snareweed = function(area, data, bi, param2_data)
|
||||
local max_height = 0
|
||||
local index = bi + area.ystride
|
||||
while area:containsi(index) and data[index] == c_water and max_height <= 8*16 do
|
||||
index = index + area.ystride
|
||||
max_height = max_height + 16
|
||||
end
|
||||
if max_height > 0 then
|
||||
data[bi] = c_snareweed
|
||||
param2_data[bi] = math.min(math.random(3*16, 8*16), max_height)
|
||||
else
|
||||
data[bi] = c_dirt
|
||||
end
|
||||
end
|
||||
|
||||
df_mapitems.place_snareweed_patch = function(area, data, bi, param2_data, radius)
|
||||
local pos = area:position(bi)
|
||||
for li in area:iterp(vector.add(pos, -radius), vector.add(pos, radius)) do
|
||||
local adjacent = li + area.ystride
|
||||
local node_type = data[li]
|
||||
if math.random() < 0.1 and (node_type == c_stone or node_type == c_dirt) and data[adjacent] == c_water then
|
||||
df_mapitems.place_snareweed(area, data, li, param2_data)
|
||||
end
|
||||
end
|
||||
end
|
BIN
df_mapitems/sounds/dfcaverns_squish.1.ogg
Normal file
BIN
df_mapitems/sounds/dfcaverns_squish.2.ogg
Normal file
BIN
df_mapitems/sounds/dfcaverns_squish.3.ogg
Normal file
3
df_mapitems/sounds/license.txt
Normal file
@ -0,0 +1,3 @@
|
||||
dfcaverns_squish.1.ogg - from https://freesound.org/people/DrMinky/sounds/167074/ by DrMinky under Creative Commons BY 3.0
|
||||
dfcaverns_squish.2.ogg - from https://freesound.org/people/DrMinky/sounds/167075/ by DrMinky under Creative Commons BY 3.0
|
||||
dfcaverns_squish.3.ogg - from https://freesound.org/people/DrMinky/sounds/167073/ by DrMinky under Creative Commons BY 3.0
|
BIN
df_mapitems/textures/dfcaverns_cave_coral.png
Normal file
After Width: | Height: | Size: 848 B |
BIN
df_mapitems/textures/dfcaverns_cave_coral_end.png
Normal file
After Width: | Height: | Size: 858 B |
BIN
df_mapitems/textures/dfcaverns_cave_moss.png
Normal file
After Width: | Height: | Size: 985 B |
BIN
df_mapitems/textures/dfcaverns_cave_moss_side.png
Normal file
After Width: | Height: | Size: 521 B |
BIN
df_mapitems/textures/dfcaverns_dripstone_streaks.png
Normal file
After Width: | Height: | Size: 520 B |
BIN
df_mapitems/textures/dfcaverns_floor_fungus.png
Normal file
After Width: | Height: | Size: 909 B |
BIN
df_mapitems/textures/dfcaverns_floor_fungus_fine.png
Normal file
After Width: | Height: | Size: 945 B |
BIN
df_mapitems/textures/dfcaverns_glow_mese.png
Normal file
After Width: | Height: | Size: 330 B |
BIN
df_mapitems/textures/dfcaverns_glow_ruby.png
Normal file
After Width: | Height: | Size: 330 B |
BIN
df_mapitems/textures/dfcaverns_glow_ruby4x.png
Normal file
After Width: | Height: | Size: 980 B |
BIN
df_mapitems/textures/dfcaverns_glow_ruby_ore.png
Normal file
After Width: | Height: | Size: 691 B |
BIN
df_mapitems/textures/dfcaverns_glow_ruby_quarter.png
Normal file
After Width: | Height: | Size: 364 B |
BIN
df_mapitems/textures/dfcaverns_glow_worm.png
Normal file
After Width: | Height: | Size: 191 B |
BIN
df_mapitems/textures/dfcaverns_glow_worm_animated.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
df_mapitems/textures/dfcaverns_hoar_moss.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
df_mapitems/textures/dfcaverns_snareweed.png
Normal file
After Width: | Height: | Size: 288 B |
BIN
df_mapitems/textures/dfcaverns_snareweed_roots.png
Normal file
After Width: | Height: | Size: 710 B |
BIN
df_mapitems/textures/dfcaverns_veins.png
Normal file
After Width: | Height: | Size: 957 B |
7
df_mapitems/textures/license.txt
Normal file
@ -0,0 +1,7 @@
|
||||
All textures not specifically listed here are created by FaceDeer and released under both the MIT license and under the Creative Commons CC0 license.
|
||||
|
||||
dfcaverns_glow_worm - copied from caverealms
|
||||
dfcaverns_glow_worm_animated - glow worm texture overlaid with rippling animation derived from default mod's water texture
|
||||
dfcaverns_glow_mese - from caverealms glow_mese
|
||||
dfcaverns_glow_ruby, dfcaverns_glow_ruby4x, dfcaverns_glow_ruby_quarter - from caverealms glow_ruby
|
||||
dfcaverns_glow_ruby_ore - from caverealms glow_ruby_ore
|
16
df_mapitems/veinstone.lua
Normal file
@ -0,0 +1,16 @@
|
||||
-- internationalization boilerplate
|
||||
local MP = minetest.get_modpath(minetest.get_current_modname())
|
||||
local S, NS = dofile(MP.."/intllib.lua")
|
||||
|
||||
minetest.register_node("df_mapitems:veinstone", {
|
||||
description = S("Veinstone"),
|
||||
_doc_items_longdesc = df_mapitems.doc.veinstone_desc,
|
||||
_doc_items_usagehelp = df_mapitems.doc.veinstone_usage,
|
||||
tiles = {"default_stone.png^dfcaverns_veins.png"},
|
||||
groups = {cracky = 3, stone = 1, lava_heatable = 1},
|
||||
_magma_conduits_heats_to = "default:cobble",
|
||||
is_ground_content = true,
|
||||
light_source = 2,
|
||||
drop = 'default:cobble',
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|