Mineclonia/mods/CORE/mcl_init/init.lua

102 lines
3.7 KiB
Lua
Raw Normal View History

2017-02-17 22:06:52 +00:00
-- Some global variables (don't overwrite them!)
mcl_vars = {}
2019-03-07 12:05:26 +00:00
--- GUI / inventory menu settings
mcl_vars.gui_slots = "listcolors[#9990;#FFF7;#FFF0;#000;#FFF]"
2019-03-07 12:05:26 +00:00
-- nonbg is added as formspec prepend in mcl_formspec_prepend
mcl_vars.gui_nonbg = mcl_vars.gui_slots
-- Background stuff must be manually added by mods (no formspec prepend)
mcl_vars.gui_bg = "bgcolor[#080808BB;true]"
mcl_vars.gui_bg_img = ""
2019-03-07 12:05:26 +00:00
mcl_vars.inventory_header = mcl_vars.gui_bg
2017-03-04 22:00:23 +00:00
-- Mapgen variables
2017-02-22 23:15:47 +00:00
local mg_name = minetest.get_mapgen_setting("mg_name")
2017-03-04 22:00:23 +00:00
local minecraft_height_limit = 256
local superflat = mg_name == "flat" and minetest.get_mapgen_setting("mcl_superflat_classic") == "true"
if not superflat then
-- Normal mode
2017-08-16 13:29:05 +00:00
--[[ Realm stacking (h is for height)
- Overworld (h>=256)
- Void (h>=1000)
- Realm Barrier (h=11), to allow escaping the End
- End (h>=256)
- Void (h>=1000)
- Nether (h=128)
- Void (h>=1000)
]]
2017-03-04 22:00:23 +00:00
2017-08-16 13:29:05 +00:00
-- Overworld
mcl_vars.mg_overworld_min = -62
mcl_vars.mg_overworld_max_official = mcl_vars.mg_overworld_min + minecraft_height_limit
2017-03-04 22:00:23 +00:00
mcl_vars.mg_bedrock_overworld_min = mcl_vars.mg_overworld_min
mcl_vars.mg_bedrock_overworld_max = mcl_vars.mg_bedrock_overworld_min + 4
mcl_vars.mg_lava_overworld_max = mcl_vars.mg_overworld_min + 10
mcl_vars.mg_lava = true
2017-03-04 22:00:23 +00:00
mcl_vars.mg_bedrock_is_rough = true
2017-08-16 13:29:05 +00:00
2017-02-22 23:15:47 +00:00
else
-- Classic superflat
2017-02-22 23:15:47 +00:00
local ground = minetest.get_mapgen_setting("mgflat_ground_level")
ground = tonumber(ground)
if not ground then
ground = 8
end
mcl_vars.mg_overworld_min = ground - 3
2017-08-16 13:29:05 +00:00
mcl_vars.mg_overworld_max_official = mcl_vars.mg_overworld_min + minecraft_height_limit
mcl_vars.mg_bedrock_overworld_min = mcl_vars.mg_overworld_min
2017-03-04 22:00:23 +00:00
mcl_vars.mg_bedrock_overworld_max = mcl_vars.mg_bedrock_overworld_min
mcl_vars.mg_lava = false
2017-08-21 15:46:12 +00:00
mcl_vars.mg_lava_overworld_max = mcl_vars.mg_overworld_min
2017-03-04 22:00:23 +00:00
mcl_vars.mg_bedrock_is_rough = false
2017-02-22 23:15:47 +00:00
end
2017-02-20 06:10:03 +00:00
2017-08-16 16:56:39 +00:00
mcl_vars.mg_overworld_max = 31000
2017-08-16 13:29:05 +00:00
-- The Nether (around Y = -29000)
mcl_vars.mg_nether_min = -29067 -- Carefully chosen to be at a mapchunk border
2017-08-16 13:29:05 +00:00
mcl_vars.mg_nether_max = mcl_vars.mg_nether_min + 128
mcl_vars.mg_bedrock_nether_bottom_min = mcl_vars.mg_nether_min
mcl_vars.mg_bedrock_nether_top_max = mcl_vars.mg_nether_max
if not superflat then
mcl_vars.mg_bedrock_nether_bottom_max = mcl_vars.mg_bedrock_nether_bottom_min + 4
mcl_vars.mg_bedrock_nether_top_min = mcl_vars.mg_bedrock_nether_top_max - 4
mcl_vars.mg_lava_nether_max = mcl_vars.mg_nether_min + 31
else
-- Thin bedrock in classic superflat mapgen
mcl_vars.mg_bedrock_nether_bottom_max = mcl_vars.mg_bedrock_nether_bottom_min
mcl_vars.mg_bedrock_nether_top_min = mcl_vars.mg_bedrock_nether_top_max
mcl_vars.mg_lava_nether_max = mcl_vars.mg_nether_min + 2
end
if mg_name == "flat" then
if superflat then
mcl_vars.mg_flat_nether_floor = mcl_vars.mg_bedrock_nether_bottom_max + 4
mcl_vars.mg_flat_nether_ceiling = mcl_vars.mg_bedrock_nether_bottom_max + 52
else
mcl_vars.mg_flat_nether_floor = mcl_vars.mg_lava_nether_max + 4
mcl_vars.mg_flat_nether_ceiling = mcl_vars.mg_lava_nether_max + 52
end
end
2017-08-16 13:29:05 +00:00
-- The End (surface at ca. Y = -27000)
mcl_vars.mg_end_min = -27073 -- Carefully chosen to be at a mapchunk border
2017-08-16 13:29:05 +00:00
mcl_vars.mg_end_max_official = mcl_vars.mg_end_min + minecraft_height_limit
mcl_vars.mg_end_max = mcl_vars.mg_overworld_min - 2000
2019-03-09 18:15:10 +00:00
mcl_vars.mg_end_platform_pos = { x = 100, y = mcl_vars.mg_end_min + 74, z = 0 }
2017-11-21 04:39:27 +00:00
-- Realm barrier used to safely separate the End from the void below the Overworld
mcl_vars.mg_realm_barrier_overworld_end_max = mcl_vars.mg_end_max
mcl_vars.mg_realm_barrier_overworld_end_min = mcl_vars.mg_end_max - 11
2017-08-16 13:29:05 +00:00
2017-02-17 22:06:52 +00:00
-- Set default stack sizes
minetest.nodedef_default.stack_max = 64
minetest.craftitemdef_default.stack_max = 64
-- Set random seed for all other mods (Remember to make sure no other mod calls this function)
math.randomseed(os.time())