Craftings, Randomly spawning amonguses and more

This commit is contained in:
Kacper Kostka
2023-01-22 20:51:24 +01:00
parent aeba15798b
commit e1ea32ec0e
8 changed files with 243 additions and 41 deletions

View File

@@ -53,19 +53,19 @@ minetest.register_node("amogus_blocks:planks", {
description = "Planks",
tiles = {"Planks.png"},
drop = 'amogus_blocks:planks', groups = {cracky=3, stone=1},
drop = 'amogus_blocks:planks', groups = {choppy = 3},
})
minetest.register_node("amogus_blocks:purpleblock", {
description = "Purple Block",
tiles = {"purpleblock.png"},
drop = 'amogus_blocks:purpleblock', groups = {cracky=3, stone=1},
drop = 'amogus_blocks:purpleblock', groups = {crumbly = 3},
})
minetest.register_node("amogus_blocks:redblock", {
description = "Red Block",
tiles = {"redblock.png"},
drop = 'amogus_blocks:redblock', groups = {cracky=3, stone=1},
drop = 'amogus_blocks:redblock', groups = {crumbly = 3},
})
minetest.register_node("amogus_blocks:glowing_block", {
description = "Glowing Block",
@@ -96,7 +96,19 @@ minetest.register_node("amogus_blocks:grass", {
"g.png"
},
drop = 'amogus_blocks:dirt', groups = {cracky=3, stone=1},
drop = {
max_items = 2,
items = {
{
items = {'amogus_blocks:dirt'},
rarity = 3,
},
{
items = {'amogus_items:rock'},
rarity = 2,
},
},
}, groups = {crumbly=3},
})
minetest.register_node("amogus_blocks:wood", {
@@ -104,7 +116,7 @@ minetest.register_node("amogus_blocks:wood", {
tiles = {"wood.png"},
drop = 'amogus_items:wooden_plank',
groups = {cracky = 3, stone = 1},
groups = {choppy = 3, flammable = 3, wood = 1},
})
minetest.register_node("amogus_blocks:water", {
@@ -172,19 +184,43 @@ minetest.register_node("amogus_blocks:water", {
minetest.register_node("amogus_blocks:dirt", {
description = "Dirt",
tiles = {"d.png"},
groups = {cracky = 3, stone = 1},
--sounds = default.node_sound_dirt_defaults({
-- footstep = {name = "default_grass_footstep", gain = 0.4},
--}),
groups = {crumbly = 3},
--drop = {'amogus_blocks:dirt', 'amogus_items:rock'},
-- drop dirt and amogus_items:rock
drop = {
max_items = 2,
items = {
{
items = {'amogus_blocks:dirt'},
rarity = 3,
},
{
items = {'amogus_items:rock'},
rarity = 2,
},
},
},
drop = 'amogus_blocks:amogus_blocks', groups = {cracky=3, stone=1},
drop = 'amogus_blocks:dirt',
})
minetest.register_node("amogus_blocks:stone", {
description = "Stone",
tiles = {"stone.png"},
-- drop 10 times amogus_items:rock
drop = {
max_items = 10,
items = {
{
items = {'amogus_items:rock'},
rarity = 1,
},
},
},
--sounds = default.node_sound_stone_defaults(),
groups = {cracky = 3, stone = 1},
})
@@ -229,3 +265,26 @@ minetest.register_node("amogus_blocks:lucky_block", {
end
})
minetest.register_node("amogus_blocks:amogus_spawner", {
description = "Amogus Spawner",
tiles = {"amogus_spawner.png"},
on_generated = function(pos)
local meta = minetest.get_meta(pos)
meta:set_int("spawned", 0)
meta:set_int("interval", math.random(1,4))
minetest.get_node_timer(pos):start(meta:get_int("interval"))
end,
on_timer = function(pos)
local meta = minetest.get_meta(pos)
local spawned = meta:get_int("spawned")
if spawned < 30 then
minetest.add_entity({x = pos.x, y = pos.y + 1, z = pos.z}, "amogus_entities:amogus")
spawned = spawned + 1
meta:set_int("spawned", spawned)
minetest.get_node_timer(pos):start(meta:get_int("interval"))
else
minetest.remove_node(pos)
end
end
})