So I thought the game needed even more ores so I tried writing this but it won't work for some reason
Debug:
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
- Code: Select all
20:33:54: ERROR[main]: ========== ERROR FROM LUA ===========
20:33:54: ERROR[main]: Failed to load and run script from
20:33:54: ERROR[main]: C:\Users\Cameron\Downloads\Minetest(2)\bin\..\mods\minetest\fantasyores\init.lua:
20:33:54: ERROR[main]: ...inetest(2)\bin\..\mods\minetest\fantasyores\init.lua:9: attempt to index global 'default' (a nil value)
20:33:54: ERROR[main]: stack traceback:
20:33:54: ERROR[main]: ...inetest(2)\bin\..\mods\minetest\fantasyores\init.lua:9: in main chunk
20:33:54: ERROR[main]: =======END OF ERROR FROM LUA ========
Init:
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
- Code: Select all
minetest.register_node( "fantasyores:farnon_ore", {
description = "Farnon Ore",
tile_images = { "farnon_ore.png" },
is_ground_content = true,
drop = "fantasyores:farnon_coins",
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node( "fantasyores:tetron_ore", {
description = "Tetron Ore",
tile_images = { "tetron_ore.png" },
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node( "fantasyores:oranite_ore", {
description = "Oranite Ore",
tile_images = { "oranite_ore.png" },
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node( "fantasyores:magnite_ore", {
description = "Magnite Ore",
tile_images = { "magnite_ore.png" },
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node( "fantasyores:minite_ore", {
description = "Minite Ore",
tile_images = { "minite_ore.png" },
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_craftitem("fantasyores:farnon_coins", {
description = "Farnon Coins",
inventory_image = "fantasyores_farnon_coins.png",
})
minetest.register_craftitem("fantasyores:minite_ingot", {
description = "Minite Ingot",
inventory_image = "fantasyores_minite_ingot.png",
})
minetest.register_craftitem("fantasyores:oranite_ingot", {
description = "Oranite Ingot",
inventory_image = "fantasyores_oranite_ingot.png",
})
minetest.register_craft({
type = "cooking",
output = "fantasyores:minite_ingot",
recipe = "fantasyores_minite_ore",
})
minetest.register_craft({
type = "cooking",
output = "fantasyores:oranite_ingot",
recipe = "fantasyores_oranite_ore",
})
local function generate_ore(name, wherein, minp, maxp, seed, chunks_per_volume, ore_per_chunk, height_min, height_max)
if maxp.y < height_min or minp.y > height_max then
return
end
local y_min = math.max(minp.y, height_min)
local y_max = math.min(maxp.y, height_max)
local volume = (maxp.x-minp.x+1)*(y_max-y_min+1)*(maxp.z-minp.z+1)
local pr = PseudoRandom(seed)
local num_chunks = math.floor(chunks_per_volume * volume)
local chunk_size = 3
if ore_per_chunk <= 4 then
chunk_size = 2
end
local inverse_chance = math.floor(chunk_size*chunk_size*chunk_size / ore_per_chunk)
--print("generate_ore num_chunks: "..dump(num_chunks))
for i=1,num_chunks do
local y0 = pr:next(y_min, y_max-chunk_size+1)
if y0 >= height_min and y0 <= height_max then
local x0 = pr:next(minp.x, maxp.x-chunk_size+1)
local z0 = pr:next(minp.z, maxp.z-chunk_size+1)
local p0 = {x=x0, y=y0, z=z0}
for x1=0,chunk_size-1 do
for y1=0,chunk_size-1 do
for z1=0,chunk_size-1 do
if pr:next(1,inverse_chance) == 1 then
local x2 = x0+x1
local y2 = y0+y1
local z2 = z0+z1
local p2 = {x=x2, y=y2, z=z2}
if minetest.env:get_node(p2).name == wherein then
minetest.env:set_node(p2, {name=name})
end
end
end
end
end
end
end
end
minetest.register_on_generated(function(minp, maxp, seed)
generate_ore("fantasyores:oranite_ore", "default:stone", minp, maxp, seed+21, 1/10/10/10, 2, -100, -1)
end)
minetest.register_on_generated(function(minp, maxp, seed)
generate_ore("fantasyores:farnon_ore", "default:stone", minp, maxp, seed+21, 1/10/10/10, 2, -100, -1)
end)
minetest.register_on_generated(function(minp, maxp, seed)
generate_ore("fantasyores:magnite_ore", "default:stone", minp, maxp, seed+21, 1/10/10/10, 2, -100, -1)
end)
minetest.register_on_generated(function(minp, maxp, seed)
generate_ore("fantasyores:minite_ore", "default:stone", minp, maxp, seed+21, 1/10/10/10, 2, -100, -1)
end)
minetest.register_on_generated(function(minp, maxp, seed)
generate_ore("fantasyores:tetron_ore", "default:stone", minp, maxp, seed+21, 1/10/10/10, 2, -100, -1)
end)
Does anyone know why this won't work?