diff --git a/CHANGELOG.md b/CHANGELOG.md index bffd1ad..432d8d9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,6 +26,8 @@ So I had to go through the tedious process and fix them all. - 4 = 0.8 seconds - Replaced Purple Mushrooms with Glowshrooms - Added Homes System +- Removed Waypoints System +- Added Flint and Flint and Steel ## [Sep 29th 2024] Unnamed Minor Update diff --git a/mods/CORE/pyutest/sounds/alt_place.ogg b/mods/CORE/pyutest/sounds/alt_place.ogg new file mode 100644 index 0000000..3e566df Binary files /dev/null and b/mods/CORE/pyutest/sounds/alt_place.ogg differ diff --git a/mods/ITEMS/pyutest_blocks/special.lua b/mods/ITEMS/pyutest_blocks/special.lua index d6e6c1a..ed9638b 100644 --- a/mods/ITEMS/pyutest_blocks/special.lua +++ b/mods/ITEMS/pyutest_blocks/special.lua @@ -64,7 +64,8 @@ PyuTest.make_node("pyutest_blocks:contagious_acid", "Contagious Acid", { }, { "pyutest-acid.png" }, {}) PyuTest.make_node("pyutest_blocks:fire", "Fire", { - dig_immediate = 1 + dig_immediate = 1, + oddly_breakable_by_hand = PyuTest.BLOCK_FAST }, { "pyutest-fire.png" }, { drawtype = "firelike", walkable = false, @@ -73,7 +74,7 @@ PyuTest.make_node("pyutest_blocks:fire", "Fire", { sunlight_propagates = true, damage_per_second = 2, light_source = 8, - drop = "pyutest_blocks:ash 4" + drop = "pyutest_tools:ash 4" }) PyuTest.make_node("pyutest_blocks:tnt", "TNT", { diff --git a/mods/ITEMS/pyutest_crafts/init.lua b/mods/ITEMS/pyutest_crafts/init.lua index 259bfe8..b314be2 100644 --- a/mods/ITEMS/pyutest_crafts/init.lua +++ b/mods/ITEMS/pyutest_crafts/init.lua @@ -106,6 +106,14 @@ minetest.register_craft({ } }) +minetest.register_craft({ + output = "pyutest_tools:flint_and_steel", + recipe = { + "pyutest_tools:flint", "pyutest_ores:iron_ingot" + }, + type = "shapeless" +}) + -- not tools minetest.register_craft({ output = "pyutest_blocks:crate", diff --git a/mods/ITEMS/pyutest_overrides/init.lua b/mods/ITEMS/pyutest_overrides/init.lua index 03f5b3e..9e29219 100644 --- a/mods/ITEMS/pyutest_overrides/init.lua +++ b/mods/ITEMS/pyutest_overrides/init.lua @@ -6,3 +6,19 @@ minetest.override_item("pyutest_blocks:bone_block", { paramtype2 = "facedir", on_place = minetest.rotate_node }) + +minetest.override_item("pyutest_blocks:gravel_block", { + drop = { + max_items = 1, + items = { + { + rarity = 2.1, + items = {"pyutest_tools:flint"} + }, + + { + items = {"pyutest_blocks:gravel_block"} + } + } + } +}) diff --git a/mods/ITEMS/pyutest_tools/items.lua b/mods/ITEMS/pyutest_tools/items.lua index 578a2e8..33966ff 100644 --- a/mods/ITEMS/pyutest_tools/items.lua +++ b/mods/ITEMS/pyutest_tools/items.lua @@ -32,3 +32,4 @@ PyuTest.make_item("pyutest_tools:glass_bottle", "Glass Bottle", {}, "pyutest-gla PyuTest.make_item("pyutest_tools:brick", "Brick", {}, "pyutest-brick.png") PyuTest.make_item("pyutest_tools:snowball", "Snowball", {}, "pyutest-snowball.png") PyuTest.make_item("pyutest_tools:bone", "Bone", {}, "pyutest-bone.png") +PyuTest.make_item("pyutest_tools:flint", "Flint", {}, "pyutest-flint.png") diff --git a/mods/ITEMS/pyutest_tools/tools.lua b/mods/ITEMS/pyutest_tools/tools.lua index 2707d95..945df82 100644 --- a/mods/ITEMS/pyutest_tools/tools.lua +++ b/mods/ITEMS/pyutest_tools/tools.lua @@ -145,3 +145,19 @@ PyuTest.make_item("pyutest_tools:bomb", "Bomb", {}, "pyutest-bomb.png", { user:set_wielded_item(stack) end }) + +PyuTest.make_item("pyutest_tools:flint_and_steel", "Flint and Steel", {}, "pyutest-flint-and-steel.png", { + stack_max = 1, + on_place = function (itemstack, user, pointed_thing) + if pointed_thing.type == "node" then + minetest.set_node(pointed_thing.above, {name = "pyutest_blocks:fire"}) + + minetest.sound_play({ + name = "alt_place", + gain = 1 + }, { + pos = user:get_pos() + }) + end + end +}) diff --git a/mods/MAPGEN/pyutest_worlds/api.lua b/mods/MAPGEN/pyutest_worlds/api.lua index ae27e7b..17dac49 100644 --- a/mods/MAPGEN/pyutest_worlds/api.lua +++ b/mods/MAPGEN/pyutest_worlds/api.lua @@ -61,7 +61,7 @@ PyuTest.register_world = function (options) })) end - function World:create_token(name, world, color) + function World:create_token(name, world, color, craftitem) local average = (conf.y_max + conf.y_min) / 2 PyuTest.make_item(name, world .. " Token", { @@ -101,6 +101,15 @@ PyuTest.register_world = function (options) end) end }) + + minetest.register_craft({ + output = name, + recipe = { + craftitem, + "pyutest_ores:emerald_shard" + }, + type = "shapeless" + }) end return World diff --git a/mods/MAPGEN/pyutest_worlds/ice.lua b/mods/MAPGEN/pyutest_worlds/ice.lua index b883e61..85378b6 100644 --- a/mods/MAPGEN/pyutest_worlds/ice.lua +++ b/mods/MAPGEN/pyutest_worlds/ice.lua @@ -3,7 +3,7 @@ PyuTest.IceWorld = PyuTest.register_world({ y_max = -1000, y_min = -2000 }) -PyuTest.IceWorld:create_token("pyutest_worlds:ice_world_token", "Ice World", "#cbdbfc") +PyuTest.IceWorld:create_token("pyutest_worlds:ice_world_token", "Ice World", "#cbdbfc", "pyutest_blocks:ice_block") local icy_cavern = PyuTest.IceWorld:register_biome({ name = "icy_cavern", diff --git a/mods/MAPGEN/pyutest_worlds/lava.lua b/mods/MAPGEN/pyutest_worlds/lava.lua index 14c57fd..5013e81 100644 --- a/mods/MAPGEN/pyutest_worlds/lava.lua +++ b/mods/MAPGEN/pyutest_worlds/lava.lua @@ -3,7 +3,7 @@ PyuTest.LavaWorld = PyuTest.register_world({ y_max = -3002, y_min = -4002 }) -PyuTest.LavaWorld:create_token("pyutest_worlds:lava_world_token", "Lava World", "#511e1e") +PyuTest.LavaWorld:create_token("pyutest_worlds:lava_world_token", "Lava World", "#511e1e", "pyutest_tools:ash") local lava_cavern = PyuTest.LavaWorld:register_biome({ name = "lava_cavern", diff --git a/mods/MAPGEN/pyutest_worlds/mushroom.lua b/mods/MAPGEN/pyutest_worlds/mushroom.lua index ab7ec48..b2e253d 100644 --- a/mods/MAPGEN/pyutest_worlds/mushroom.lua +++ b/mods/MAPGEN/pyutest_worlds/mushroom.lua @@ -3,7 +3,7 @@ PyuTest.MushroomWorld = PyuTest.register_world({ y_max = -4003, y_min = -5003 }) -PyuTest.MushroomWorld:create_token("pyutest_worlds:mushroom_world_token", "Mushroom World", "#ac324c") +PyuTest.MushroomWorld:create_token("pyutest_worlds:mushroom_world_token", "Mushroom World", "#ac324c", "pyutest_blocks:mushroom_block") local mushroom_forest = PyuTest.MushroomWorld:register_biome({ name = "mushroom_forest", diff --git a/mods/MAPGEN/pyutest_worlds/slime.lua b/mods/MAPGEN/pyutest_worlds/slime.lua index 7932b9a..5cdfa33 100644 --- a/mods/MAPGEN/pyutest_worlds/slime.lua +++ b/mods/MAPGEN/pyutest_worlds/slime.lua @@ -3,7 +3,7 @@ PyuTest.SlimeWorld = PyuTest.register_world({ y_max = -2001, y_min = -3001 }) -PyuTest.SlimeWorld:create_token("pyutest_worlds:slime_world_token", "Slime World", "#7dbd3f") +PyuTest.SlimeWorld:create_token("pyutest_worlds:slime_world_token", "Slime World", "#7dbd3f", "pyutest_blocks:slime_block") local slimey_cavern = PyuTest.SlimeWorld:register_biome({ name = "slimey_cavern", diff --git a/mods/PLAYER/pyutest_cmds/gameplay.lua b/mods/PLAYER/pyutest_cmds/gameplay.lua index a39c49d..803d146 100644 --- a/mods/PLAYER/pyutest_cmds/gameplay.lua +++ b/mods/PLAYER/pyutest_cmds/gameplay.lua @@ -1,64 +1,3 @@ ---[[ -Format: - -user = { - name = { - pos = {x = 128, y = 50, z = 256}, - idx = 439 - } -} - -]] -local waypoints = {} - -minetest.register_chatcommand("waypoint", { - params = "", - description = [[Creates a waypoint at your position called - If the waypoint is already set, move the waypoint.]], - func = function (name, param) - if waypoints[name] == nil then - waypoints[name] = {} - end - - local player = minetest.get_player_by_name(name) - if player == nil then return end - - if waypoints[name][param] ~= nil then - player:hud_remove(waypoints[name][param].idx) - end - - local pos = player:get_pos() - - waypoints[name][param] = {} - waypoints[name][param].pos = pos - - local idx = player:hud_add({ - hud_elem_type = "waypoint", - name = param, - text = "m", - world_pos = pos, - number = 0xFFFFFFFF, - }) - waypoints[name][param].idx = idx - end -}) - -minetest.register_chatcommand("teleportwaypoint", { - params = "", - description = "Teleport to waypoint NAME", - func = function (name, param) - if waypoints[name] == nil then - waypoints[name] = {} - end - if waypoints[name][param] == nil then return end - - local player = minetest.get_player_by_name(name) - if player == nil then return end - - player:set_pos(waypoints[name][param].pos) - end -}) - minetest.register_chatcommand("biome", { description = "Return the current biome name", func = function (name) diff --git a/textures/pyutest-flint-and-steel.png b/textures/pyutest-flint-and-steel.png new file mode 100644 index 0000000..b8d17b5 Binary files /dev/null and b/textures/pyutest-flint-and-steel.png differ diff --git a/textures/pyutest-flint.png b/textures/pyutest-flint.png new file mode 100644 index 0000000..47a5205 Binary files /dev/null and b/textures/pyutest-flint.png differ