Initial commit.
298
mods/firefly_world/init.lua
Normal file
|
|
@ -0,0 +1,298 @@
|
|||
local ns = firefly
|
||||
|
||||
function ns.register_node(name, def)
|
||||
local needs_alias
|
||||
if not name:find ":" then
|
||||
def._name = name
|
||||
name = "firefly:"..name
|
||||
needs_alias = true
|
||||
end
|
||||
|
||||
if not def.groups then def.groups = {} end
|
||||
def.groups.everything = 1
|
||||
def.groups.dig_immediate = 3
|
||||
|
||||
if def._variants then
|
||||
for i, x in ipairs(def.tiles) do
|
||||
if not x.name then
|
||||
def.tiles[i] = {name = x, align_style = "world"}
|
||||
end
|
||||
end
|
||||
for _, x in ipairs(def._variants) do
|
||||
if x == "slab" then
|
||||
ns.register_slab(def)
|
||||
elseif x == "stair" then
|
||||
ns.register_stair(def)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
minetest.register_node(":"..name, def)
|
||||
|
||||
if needs_alias then
|
||||
minetest.register_alias(def._name, name)
|
||||
end
|
||||
end
|
||||
|
||||
function ns.register_slab(def)
|
||||
def = table.copy(def)
|
||||
def._variants = nil
|
||||
|
||||
local paramtype2 = def.paramtype2 == "color" and "colorfacedir" or "facedir"
|
||||
|
||||
ns.register_node(def._name.."_slab", extend(def, {
|
||||
drawtype = "nodebox",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5}
|
||||
},
|
||||
paramtype = "light",
|
||||
paramtype2 = paramtype2
|
||||
}))
|
||||
end
|
||||
|
||||
function ns.register_stair(def)
|
||||
def = table.copy(def)
|
||||
def._variants = nil
|
||||
|
||||
def.groups[def._name.."_stair"] = 1
|
||||
|
||||
local paramtype2 = def.paramtype2 == "color" and "colorfacedir" or "facedir"
|
||||
|
||||
ns.register_node(def._name.."_stair", extend(table.copy(def), {
|
||||
drawtype = "nodebox",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {{-0.5, -0.5, -0.5, 0.5, 0, 0.5}, {-0.5, -0.5, 0, 0.5, 0.5, 0.5}}
|
||||
},
|
||||
paramtype = "light",
|
||||
paramtype2 = paramtype2
|
||||
}))
|
||||
|
||||
ns.register_node(def._name.."_stair_inner", extend(table.copy(def), {
|
||||
drawtype = "nodebox",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {{-0.5, -0.5, -0.5, 0.5, 0, 0.5}, {-0.5, -0.5, 0, 0.5, 0.5, 0.5}, {-0.5, -0.5, -0.5, 0, 0.5, 0.5}}
|
||||
},
|
||||
paramtype = "light",
|
||||
paramtype2 = paramtype2
|
||||
}))
|
||||
|
||||
ns.register_node(def._name.."_stair_outer", extend(def, {
|
||||
drawtype = "nodebox",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {{-0.5, -0.5, -0.5, 0.5, 0, 0.5}, {-0.5, 0, 0.5, 0, 0.5, 0}}
|
||||
},
|
||||
paramtype = "light",
|
||||
paramtype2 = paramtype2
|
||||
}))
|
||||
end
|
||||
|
||||
|
||||
|
||||
ns.register_node("dirt", {
|
||||
tiles = {"firefly_dirt.png"}
|
||||
})
|
||||
|
||||
ns.register_node("dirt_grass", {
|
||||
tiles = {"firefly_grass_top.png", "firefly_dirt.png", "firefly_dirt.png^firefly_grass_side.png"}
|
||||
})
|
||||
|
||||
ns.register_node("grass", {
|
||||
drawtype = "plantlike",
|
||||
tiles = {"firefly_grass.png"},
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
})
|
||||
|
||||
|
||||
ns.register_node("snow", {
|
||||
tiles = {"firefly_snow_top.png"}
|
||||
})
|
||||
|
||||
ns.register_node("snow_leveled", {
|
||||
drawtype = "nodebox",
|
||||
tiles = {"firefly_snow_top.png"},
|
||||
node_box = {
|
||||
type = "leveled",
|
||||
fixed = {
|
||||
-0.5, -0.5, -0.5,
|
||||
0.5, 6/16, 0.5
|
||||
}
|
||||
},
|
||||
paramtype = "light",
|
||||
paramtype2 = "leveled",
|
||||
place_param2 = 8
|
||||
})
|
||||
|
||||
ns.register_node("snow_grass", {
|
||||
drawtype = "plantlike",
|
||||
tiles = {"firefly_snow_grass.png"},
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
})
|
||||
|
||||
|
||||
ns.register_node("sand", {
|
||||
tiles = {"firefly_sand.png"}
|
||||
})
|
||||
|
||||
ns.register_node("sand_leveled", {
|
||||
drawtype = "nodebox",
|
||||
tiles = {"firefly_sand.png"},
|
||||
node_box = {
|
||||
type = "leveled",
|
||||
fixed = {
|
||||
-0.5, -0.5, -0.5,
|
||||
0.5, 6/16, 0.5
|
||||
}
|
||||
},
|
||||
paramtype = "light",
|
||||
paramtype2 = "leveled",
|
||||
place_param2 = 64
|
||||
})
|
||||
|
||||
ns.register_node("sandstone", {
|
||||
tiles = {"firefly_sandstone.png"},
|
||||
_variants = {"slab", "stair"},
|
||||
})
|
||||
|
||||
ns.register_node("sandstone_sandy", {
|
||||
tiles = {"firefly_sand.png", "firefly_sandstone.png", "firefly_sandstone.png^firefly_sand_side_2.png"}
|
||||
})
|
||||
|
||||
ns.register_node("sandstone_bricks", {
|
||||
tiles = {"firefly_sandstone_bricks.png"},
|
||||
_variants = {"slab", "stair"},
|
||||
})
|
||||
|
||||
ns.register_node("sandstone_bricks_sandy", {
|
||||
tiles = {"firefly_sand.png", "firefly_sandstone_bricks.png", "firefly_sandstone_bricks.png^firefly_sand_side.png"}
|
||||
})
|
||||
|
||||
ns.register_node("cactus", {
|
||||
tiles = {"firefly_cactus_top.png", "firefly_cactus_top.png", "firefly_cactus_side.png"},
|
||||
paramtype2 = "facedir"
|
||||
})
|
||||
|
||||
|
||||
ns.register_node("stone", {
|
||||
tiles = {"firefly_stone.png"},
|
||||
_variants = {"slab", "stair"},
|
||||
})
|
||||
|
||||
ns.register_node("stone_bricks", {
|
||||
tiles = {"firefly_stone_bricks.png"},
|
||||
_variants = {"slab", "stair"},
|
||||
})
|
||||
|
||||
|
||||
ns.register_node("metal_floor", {
|
||||
tiles = {"firefly_metal_floor.png"},
|
||||
_variants = {"slab", "stair"},
|
||||
})
|
||||
|
||||
ns.register_node("orange_light", {
|
||||
tiles = {"firefly_orange_light.png"},
|
||||
paramtype = "light",
|
||||
light_source = 14
|
||||
})
|
||||
|
||||
ns.register_node("gray_pillar", {
|
||||
tiles = {"firefly_gray_pillar_top.png", "firefly_gray_pillar_top.png", "firefly_gray_pillar_side.png"},
|
||||
paramtype2 = "facedir",
|
||||
_variants = {"slab", "stair"},
|
||||
})
|
||||
|
||||
ns.register_node("gray_column", {
|
||||
tiles = {{name = "firefly_gray_column.png"}},
|
||||
paramtype2 = "4dir",
|
||||
_variants = {"slab", "stair"},
|
||||
})
|
||||
|
||||
ns.register_node("gray_wall", {
|
||||
tiles = {"firefly_gray_wall.png"},
|
||||
_variants = {"slab", "stair"},
|
||||
})
|
||||
|
||||
ns.register_node("gray_tile", {
|
||||
tiles = {"firefly_gray_tile.png"},
|
||||
_variants = {"slab", "stair"},
|
||||
})
|
||||
|
||||
|
||||
local brown = "#584e2d"
|
||||
ns.register_node("brown_wall", {
|
||||
tiles = {"firefly_wall.png"},
|
||||
_variants = {"slab", "stair"},
|
||||
color = brown,
|
||||
})
|
||||
|
||||
ns.register_node("brown_column", {
|
||||
tiles = {{name = "firefly_column.png"}},
|
||||
paramtype2 = "4dir",
|
||||
_variants = {"slab", "stair"},
|
||||
color = brown,
|
||||
})
|
||||
|
||||
ns.register_node("brown_pillar", {
|
||||
tiles = {"firefly_pillar_top.png", "firefly_pillar_top.png", "firefly_pillar_side.png"},
|
||||
paramtype2 = "facedir",
|
||||
_variants = {"slab", "stair"},
|
||||
color = brown,
|
||||
})
|
||||
|
||||
|
||||
ns.register_node("glass", {
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
tiles = {{name = "firefly_glass.png", align_style = "world"}},
|
||||
use_texture_alpha = "clip",
|
||||
_variants = {"slab", "stair"},
|
||||
})
|
||||
|
||||
ns.register_node("colored_glass", {
|
||||
drawtype = "glasslike",
|
||||
paramtype = "light",
|
||||
paramtype2 = "color",
|
||||
palette = "firefly_glass_palette.png",
|
||||
sunlight_propagates = true,
|
||||
tiles = {{name = "firefly_colored_glass.png", align_style = "world"}},
|
||||
use_texture_alpha = "blend",
|
||||
_variants = {"slab", "stair"},
|
||||
})
|
||||
|
||||
ns.register_node("steel_grate", {
|
||||
drawtype = "mesh",
|
||||
mesh = "firefly_steel_grate.obj",
|
||||
tiles = {{name = "firefly_steel_grate.png", backface_culling = true}},
|
||||
use_texture_alpha = "clip",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
paramtype2 = "facedir",
|
||||
collision_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
-0.5, 6/16, -0.5,
|
||||
0.5, 0.5, 0.5
|
||||
}
|
||||
},
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
-0.5, 6/16, -0.5,
|
||||
0.5, 0.5, 0.5
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_chatcommand("chest", {
|
||||
privs = {give = true},
|
||||
func = function(name)
|
||||
minetest.registered_chatcommands.giveme.func(name, "chest_with_everything:chest")
|
||||
end
|
||||
})
|
||||
2
mods/firefly_world/mod.conf
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
name = firefly_world
|
||||
depends = firefly_base
|
||||
49
mods/firefly_world/models/firefly_steel_grate.obj
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
# Made in Blockbench 4.12.5
|
||||
mtllib firefly_steel_grate.mtl
|
||||
|
||||
o cube
|
||||
v 0.5 0.5 0.5
|
||||
v 0.5 0.5 -0.5
|
||||
v 0.5 0.375 0.5
|
||||
v 0.5 0.375 -0.5
|
||||
v -0.5 0.5 -0.5
|
||||
v -0.5 0.5 0.5
|
||||
v -0.5 0.375 -0.5
|
||||
v -0.5 0.375 0.5
|
||||
vt 0.5 1
|
||||
vt 1 1
|
||||
vt 1 0.9375
|
||||
vt 0.5 0.9375
|
||||
vt 0.5 0.9375
|
||||
vt 1 0.9375
|
||||
vt 1 0.875
|
||||
vt 0.5 0.875
|
||||
vt 0.5 0.875
|
||||
vt 1 0.875
|
||||
vt 1 0.8125
|
||||
vt 0.5 0.8125
|
||||
vt 0.5 0.8125
|
||||
vt 1 0.8125
|
||||
vt 1 0.75
|
||||
vt 0.5 0.75
|
||||
vt 0.5 0.5
|
||||
vt 0 0.5
|
||||
vt 0 1
|
||||
vt 0.5 1
|
||||
vt 0.5 0.5
|
||||
vt 0 0.5
|
||||
vt 0 0
|
||||
vt 0.5 0
|
||||
vn 0 0 -1
|
||||
vn 1 0 0
|
||||
vn 0 0 1
|
||||
vn -1 0 0
|
||||
vn 0 1 0
|
||||
vn 0 -1 0
|
||||
usemtl m_18cc3c99-d6ee-54f4-84b1-03e8119d680b
|
||||
f 4/4/1 7/3/1 5/2/1 2/1/1
|
||||
f 3/8/2 4/7/2 2/6/2 1/5/2
|
||||
f 8/12/3 3/11/3 1/10/3 6/9/3
|
||||
f 7/16/4 8/15/4 6/14/4 5/13/4
|
||||
f 6/20/5 1/19/5 2/18/5 5/17/5
|
||||
f 7/24/6 4/23/6 3/22/6 8/21/6
|
||||
BIN
mods/firefly_world/textures/firefly_cactus_side.png
Normal file
|
After Width: | Height: | Size: 234 B |
BIN
mods/firefly_world/textures/firefly_cactus_top.png
Normal file
|
After Width: | Height: | Size: 376 B |
BIN
mods/firefly_world/textures/firefly_colored_glass.png
Normal file
|
After Width: | Height: | Size: 188 B |
BIN
mods/firefly_world/textures/firefly_column.png
Normal file
|
After Width: | Height: | Size: 122 B |
BIN
mods/firefly_world/textures/firefly_concrete.png
Normal file
|
After Width: | Height: | Size: 188 B |
BIN
mods/firefly_world/textures/firefly_dirt.png
Normal file
|
After Width: | Height: | Size: 202 B |
BIN
mods/firefly_world/textures/firefly_glass.png
Normal file
|
After Width: | Height: | Size: 132 B |
BIN
mods/firefly_world/textures/firefly_glass_palette.png
Normal file
|
After Width: | Height: | Size: 100 B |
BIN
mods/firefly_world/textures/firefly_grass.png
Normal file
|
After Width: | Height: | Size: 214 B |
BIN
mods/firefly_world/textures/firefly_grass_side.png
Normal file
|
After Width: | Height: | Size: 297 B |
BIN
mods/firefly_world/textures/firefly_grass_top.png
Normal file
|
After Width: | Height: | Size: 292 B |
BIN
mods/firefly_world/textures/firefly_gray_column.png
Normal file
|
After Width: | Height: | Size: 120 B |
BIN
mods/firefly_world/textures/firefly_gray_pillar_side.png
Normal file
|
After Width: | Height: | Size: 118 B |
BIN
mods/firefly_world/textures/firefly_gray_pillar_top.png
Normal file
|
After Width: | Height: | Size: 178 B |
BIN
mods/firefly_world/textures/firefly_gray_tile.png
Normal file
|
After Width: | Height: | Size: 154 B |
BIN
mods/firefly_world/textures/firefly_gray_wall.png
Normal file
|
After Width: | Height: | Size: 190 B |
BIN
mods/firefly_world/textures/firefly_metal_floor.png
Normal file
|
After Width: | Height: | Size: 126 B |
BIN
mods/firefly_world/textures/firefly_orange_light.png
Normal file
|
After Width: | Height: | Size: 166 B |
BIN
mods/firefly_world/textures/firefly_pillar_side.png
Normal file
|
After Width: | Height: | Size: 118 B |
BIN
mods/firefly_world/textures/firefly_pillar_top.png
Normal file
|
After Width: | Height: | Size: 174 B |
BIN
mods/firefly_world/textures/firefly_sand.png
Normal file
|
After Width: | Height: | Size: 241 B |
BIN
mods/firefly_world/textures/firefly_sand_side.png
Normal file
|
After Width: | Height: | Size: 239 B |
BIN
mods/firefly_world/textures/firefly_sand_side_2.png
Normal file
|
After Width: | Height: | Size: 230 B |
BIN
mods/firefly_world/textures/firefly_sandstone.png
Normal file
|
After Width: | Height: | Size: 210 B |
BIN
mods/firefly_world/textures/firefly_sandstone_bricks.png
Normal file
|
After Width: | Height: | Size: 260 B |
BIN
mods/firefly_world/textures/firefly_snow_grass.png
Normal file
|
After Width: | Height: | Size: 192 B |
BIN
mods/firefly_world/textures/firefly_snow_top.png
Normal file
|
After Width: | Height: | Size: 202 B |
BIN
mods/firefly_world/textures/firefly_steel_grate.png
Normal file
|
After Width: | Height: | Size: 290 B |
BIN
mods/firefly_world/textures/firefly_stone.png
Normal file
|
After Width: | Height: | Size: 185 B |
BIN
mods/firefly_world/textures/firefly_stone_bricks.png
Normal file
|
After Width: | Height: | Size: 234 B |
BIN
mods/firefly_world/textures/firefly_wall.png
Normal file
|
After Width: | Height: | Size: 188 B |