106 lines
2.4 KiB
Lua
106 lines
2.4 KiB
Lua
local S = nssm.S
|
|
|
|
-- non-eatable craftitems
|
|
|
|
local function nssm_craftitem(name, descr)
|
|
|
|
minetest.register_craftitem("nssm:" .. name, {
|
|
description = S(descr),
|
|
image = name .. ".png"
|
|
})
|
|
end
|
|
|
|
minetest.register_node("nssm:web", {
|
|
description = S("Web"),
|
|
inventory_image = "web.png",
|
|
tiles = {"web.png"} ,
|
|
drawtype = "plantlike",
|
|
paramtype = "light",
|
|
walkable = false,
|
|
pointable = true,
|
|
diggable = true,
|
|
buildable_to = false,
|
|
drop = "farming:cotton",
|
|
drowning = 0,
|
|
liquid_renewable = false,
|
|
liquidtype = "source",
|
|
liquid_range = 0,
|
|
liquid_alternative_flowing = "nssm:web",
|
|
liquid_alternative_source = "nssm:web",
|
|
liquid_viscosity = 20,
|
|
groups = {flammable = 2, snappy = 1, liquid = 1},
|
|
on_construct = function(pos)
|
|
if not nssm.spiders_litter_web then
|
|
minetest.get_node_timer(pos):start(15)
|
|
end
|
|
end,
|
|
on_timer = function(pos)
|
|
minetest.remove_node(pos)
|
|
end
|
|
})
|
|
|
|
|
|
|
|
|
|
nssm_craftitem("lava_titan_eye", "Lava Titan Eye")
|
|
nssm_craftitem("ant_queen_abdomen", "Ant Queen Abdomen")
|
|
|
|
-- Eggs
|
|
|
|
local function nssm_register_egg(name, descr)
|
|
|
|
minetest.register_craftitem("nssm:" .. name, {
|
|
description = S(descr .. " Egg"),
|
|
image = name.."_egg.png",
|
|
|
|
on_place = function(itemstack, placer, pointed_thing)
|
|
|
|
local pos1 = minetest.get_pointed_thing_position(pointed_thing, true)
|
|
|
|
pos1.y = pos1.y + 1.5
|
|
|
|
core.after(0.1, function()
|
|
minetest.add_entity(pos1, "nssm:" .. name)
|
|
end)
|
|
|
|
itemstack:take_item()
|
|
|
|
return itemstack
|
|
end
|
|
})
|
|
end
|
|
|
|
local function nssm_register_egg2(name, descr) -- mobs you can"t catch
|
|
|
|
minetest.register_craftitem("nssm:" .. name .. "_egg", {
|
|
description = S(descr .. " Egg"),
|
|
image = name .. "_egg.png",
|
|
|
|
on_place = function(itemstack, placer, pointed_thing)
|
|
|
|
local pos1 = minetest.get_pointed_thing_position(pointed_thing, true)
|
|
|
|
pos1.y = pos1.y + 1.5
|
|
|
|
core.after(0.1, function()
|
|
minetest.add_entity(pos1, "nssm:" .. name)
|
|
end)
|
|
|
|
itemstack:take_item()
|
|
|
|
return itemstack
|
|
end
|
|
})
|
|
end
|
|
|
|
nssm_register_egg2("ant_queen", "Ant Queen")
|
|
nssm_register_egg("ant_soldier", "Ant Soldier")
|
|
--nssm_register_egg("ant_worker", "Ant Worker")
|
|
--nssm_register_egg("daddy_long_legs", "Daddy Long Legs")
|
|
nssm_register_egg("dolidrosaurus", "Dolidrosaurus")
|
|
--nssm_register_egg("felucco", "Felucco")
|
|
nssm_register_egg2("giant_sandworm", "Giant Sandworm")
|
|
nssm_register_egg2("lava_titan", "Lava Titan")
|
|
nssm_register_egg("manticore", "Manticore")
|
|
nssm_register_egg("black_widow", "Black Widow")
|