illuna/nodes.lua

248 lines
8.4 KiB
Lua
Raw Normal View History

minetest.register_node("illuna:desert_gravel", {
description = "Gravel",
tiles = {"desert_gravel.png"},
groups = {crumbly = 2, falling_node = 1},
2016-03-16 18:51:45 +01:00
sounds = default.node_sound_dirt_defaults({
footstep = {name="default_gravel_footstep", gain=0.5},
dug = {name="default_gravel_footstep", gain=1.0},
}),
drop = {
max_items = 1,
items = {
{items = {'default:flint'}, rarity = 16},
{items = {'illuna:desert_gravel'}}
}
}
})
2016-04-20 19:48:32 +02:00
2016-08-25 15:13:32 +02:00
function illuna.teamconstruct(pos)
minetest.add_entity({x=pos.x, y=pos.y+1.35, z=pos.z}, "illuna:teamlist")
local timer = minetest.get_node_timer(pos)
timer:start(5.0)
end
function illuna.particleconstruct(pos)
minetest.add_particlespawner({
amount = 2,
time = 0,
minpos = pos,
maxpos = pos,
minvel = {x = -0, y = 0, z = -0},
maxvel = {x = 1, y = 1, z = 1},
minacc = {x = -1, y = -1, z = -1},
maxacc = {x = 1, y = 1, z = 1},
minexptime = 2,
maxexptime = 3,
minsize = 0.2,
maxsize = 1,
texture = "illuna_particle.png",
})
end
minetest.register_entity("illuna:teamlist", {
visual = "sprite",
visual_size = {x=0.85, y=0.85},
collisionbox = {0},
physical = false,
textures = {"moreores_tin_block.png^team_wall.png"},
on_activate = function(self)
local pos = self.object:getpos()
local pos_under = {x=pos.x, y=pos.y-1, z=pos.z}
if minetest.get_node(pos_under).name ~= "illuna:team" then
self.object:remove()
end
end
})
minetest.register_node("illuna:team", {
description = "Illuna Teamlist",
tiles = {"caverealms_glow_obsidian.png"},
paramtype2 = "facedir",
groups = {cracky = 3},
light_source = 20,
drop = 'illuna:team',
on_construct = illuna.teamconstruct,
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("illuna:particlespawner", {
description = "Illuna Particlespawner",
tiles = {"caverealms_glow_obsidian.png"},
paramtype2 = "facedir",
groups = {cracky = 3},
light_source = 20,
drop = 'illuna:particlespawner',
on_construct = illuna.particleconstruct,
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("illuna:welcome_block_1", {
2016-08-02 18:05:14 +02:00
description = "Illuna Welcome Block 1",
tiles = {"default_obsidian.png", "default_obsidian.png", "default_obsidian.png", "default_obsidian.png", "default_obsidian.png", "default_obsidian.png^welcome_block_1.png"},
paramtype2 = "facedir",
groups = {cracky = 3},
on_place = minetest.rotate_node,
drop = 'illuna:welcome_block_1',
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("illuna:welcome_block_2", {
description = "Illuna Welcome Block 2",
tiles = {"default_obsidian.png", "default_obsidian.png", "default_obsidian.png", "default_obsidian.png", "default_obsidian.png", "default_obsidian.png^welcome_block_2.png"},
paramtype2 = "facedir",
groups = {cracky = 3},
on_place = minetest.rotate_node,
drop = 'illuna:welcome_block_2',
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("illuna:welcome_block_3", {
description = "Illuna Welcome Block 3",
tiles = {"default_obsidian.png", "default_obsidian.png", "default_obsidian.png", "default_obsidian.png", "default_obsidian.png", "default_obsidian.png^welcome_block_3.png"},
paramtype2 = "facedir",
groups = {cracky = 3},
on_place = minetest.rotate_node,
drop = 'illuna:welcome_block_3',
sounds = default.node_sound_stone_defaults(),
})
2016-08-02 18:15:52 +02:00
minetest.register_node("illuna:instruction_block_1", {
description = "Instruction Block 1",
tiles = {"default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png^instruction_block_1.png"},
paramtype2 = "facedir",
2016-05-22 22:42:04 +02:00
groups = {unbreakable = 1},
on_place = minetest.rotate_node,
2016-05-22 22:42:04 +02:00
sounds = default.node_sound_dirt_defaults({
footstep = {name="default_gravel_footstep", gain=0.5},
dug = {name="default_gravel_footstep", gain=1.0},
}),
drop = {
max_items = 1,
items = {
2016-08-02 18:15:52 +02:00
{items = {'illuna:instruction_block_1'}}
2016-05-22 22:42:04 +02:00
}
}
})
2016-08-02 18:15:52 +02:00
minetest.register_node("illuna:instruction_block_2", {
description = "Instruction Block 2",
tiles = {"default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png^instruction_block_2.png"},
paramtype2 = "facedir",
2016-05-22 22:42:04 +02:00
groups = {unbreakable = 1},
on_place = minetest.rotate_node,
2016-05-22 22:42:04 +02:00
sounds = default.node_sound_dirt_defaults({
footstep = {name="default_gravel_footstep", gain=0.5},
dug = {name="default_gravel_footstep", gain=1.0},
}),
drop = {
max_items = 1,
items = {
2016-08-02 18:15:52 +02:00
{items = {'illuna:instruction_block_2'}}
2016-05-22 22:42:04 +02:00
}
}
})
2016-08-02 18:15:52 +02:00
minetest.register_node("illuna:instruction_block_3", {
description = "Instruction Block 3",
tiles = {"default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png^instruction_block_3.png"},
paramtype2 = "facedir",
2016-05-22 22:42:04 +02:00
groups = {unbreakable = 1},
on_place = minetest.rotate_node,
2016-05-22 22:42:04 +02:00
sounds = default.node_sound_dirt_defaults({
footstep = {name="default_gravel_footstep", gain=0.5},
dug = {name="default_gravel_footstep", gain=1.0},
}),
drop = {
max_items = 1,
items = {
2016-08-02 18:15:52 +02:00
{items = {'illuna:instruction_block_3'}}
2016-05-22 22:42:04 +02:00
}
}
})
2016-08-02 18:15:52 +02:00
minetest.register_node("illuna:instruction_block_4", {
description = "Instruction Block 4",
tiles = {"default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png^instruction_block_4.png"},
paramtype2 = "facedir",
2016-05-22 22:42:04 +02:00
groups = {unbreakable = 1},
on_place = minetest.rotate_node,
2016-05-22 22:42:04 +02:00
sounds = default.node_sound_dirt_defaults({
footstep = {name="default_gravel_footstep", gain=0.5},
dug = {name="default_gravel_footstep", gain=1.0},
}),
drop = {
max_items = 1,
items = {
2016-08-02 18:15:52 +02:00
{items = {'illuna:instruction_block_4'}}
2016-05-22 22:42:04 +02:00
}
}
})
minetest.register_node("illuna:lw_instructions", {
description = "Instructions for the biopodworld",
drawtype = "signlike",
tiles = {"lw_instructions.png"},
visual_scale = 3.0,
inventory_image = "lw_instructions.png",
wield_image = "lw_instructions.png",
paramtype = "light",
paramtype2 = "wallmounted",
light_source = 12,
sunlight_propagates = true,
walkable = false,
selection_box = {
type = "wallmounted",
},
groups = { unbreakable = 1 },
})
-- nodeboxes by https://github.com/D00Med/LegendofMinetest
if minetest.get_modpath("ethereal") then
minetest.override_item("default:furnace", {
drawtype = "nodebox",
paramtype = "light",
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, -0.3125, 0.5}, -- NodeBox1
{-0.4375, 0.375, -0.5, 0.4375, 0.4375, 0.5}, -- NodeBox2
{-0.375, 0.4375, -0.5, 0.375, 0.5, 0.5}, -- NodeBox3
{-0.5, 0.3125, -0.5, 0.5, 0.375, 0.5}, -- NodeBox4
{-0.5, -0.5, -0.5, -0.3125, 0.3125, 0.5}, -- NodeBox5
{0.3125, -0.5, -0.5, 0.5, 0.375, 0.5}, -- NodeBox6
{-0.5, -0.0625, -0.5, 0.5, 0.0625, 0.5}, -- NodeBox7
{-0.5, -0.5, -0.375, 0.5, 0.3125, 0.5}, -- NodeBox8
}
},
})
minetest.override_item("default:chest_locked", {
paramtype = "light",
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, 0.25, 0.5}, -- NodeBox1
{-0.5, 0.375, -0.375, 0.5, 0.4375, 0.375}, -- NodeBox2
{-0.5, 0.25, -0.4375, 0.5, 0.375, 0.4375}, -- NodeBox3
{-0.5, 0.4375, -0.3125, 0.5, 0.5, 0.3125}, -- NodeBox4
}
},
})
minetest.override_item("default:chest", {
paramtype = "light",
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, 0.25, 0.5}, -- NodeBox1
{-0.5, 0.375, -0.375, 0.5, 0.4375, 0.375}, -- NodeBox2
{-0.5, 0.25, -0.4375, 0.5, 0.375, 0.4375}, -- NodeBox3
{-0.5, 0.4375, -0.3125, 0.5, 0.5, 0.3125}, -- NodeBox4
}
},
})
end