mirror of
https://github.com/Dragonop/claycrafter.git
synced 2025-06-30 04:20:23 +02:00
Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
1a64404611 | |||
f62ad8ef38 | |||
feb2efb6bc |
@ -5,6 +5,7 @@ Dependencies:
|
||||
Default
|
||||
Vessels
|
||||
Bucket
|
||||
moreblocks (optional)
|
||||
|
||||
claycrafter.lua is derivated from furnace.lua (minetest_game) by PilzAdam and Amaz1.
|
||||
Edited by everamzah to work for this mod.
|
||||
|
@ -200,10 +200,13 @@ minetest.register_abm({
|
||||
--
|
||||
-- Cooking
|
||||
--
|
||||
|
||||
local compressed_dirt = "claycrafter:compressed_dirt"
|
||||
if minetest.get_modpath("moreblocks") then
|
||||
compressed_dirt = "moreblocks:dirt_compressed"
|
||||
end
|
||||
local cooktime = minetest.get_item_group(inv:get_stack("fuel", 1):get_name(), "h2o")
|
||||
local cookable = true
|
||||
if inv:get_stack("src", 1):get_name() ~= "claycrafter:compressed_dirt" then
|
||||
if inv:get_stack("src", 1):get_name() ~= compressed_dirt then
|
||||
cookable = false
|
||||
end
|
||||
|
||||
@ -230,7 +233,7 @@ minetest.register_abm({
|
||||
end
|
||||
else
|
||||
-- Furnace ran out of fuel
|
||||
if cookable and inv:room_for_item("dst", ItemStack({name = "default:clay", count = 4})) then
|
||||
if cookable then
|
||||
-- We need to get new fuel
|
||||
local fueltime = minetest.get_item_group(inv:get_stack("fuel", 1):get_name(), "h2o")
|
||||
|
||||
@ -241,13 +244,16 @@ minetest.register_abm({
|
||||
src_time = 0
|
||||
else
|
||||
-- Take fuel from fuel list
|
||||
if inv:room_for_item("vessels", ItemStack({name = "vessels:drinking_glass"}))
|
||||
|
||||
if inv:room_for_item("dst", ItemStack({name = "default:clay", count = 4}))
|
||||
and inv:room_for_item("vessels", ItemStack({name = "vessels:drinking_glass"}))
|
||||
then
|
||||
inv:remove_item("fuel", inv:get_stack("fuel", 1):get_name())
|
||||
inv:add_item("vessels", {name = "vessels:drinking_glass"})
|
||||
else
|
||||
swap_node(pos, "claycrafter:claycrafter_active")
|
||||
end
|
||||
|
||||
fuel_totaltime = fueltime
|
||||
fuel_time = 0
|
||||
|
||||
@ -268,7 +274,7 @@ minetest.register_abm({
|
||||
local item_percent = 0
|
||||
if cookable then
|
||||
item_percent = math.floor(src_time / cooktime * 100)
|
||||
item_state = "Yes"
|
||||
item_state = "In use"
|
||||
else
|
||||
if srclist[1]:is_empty() then
|
||||
item_state = "Empty"
|
||||
|
4
depends.txt
Normal file
4
depends.txt
Normal file
@ -0,0 +1,4 @@
|
||||
vessels
|
||||
default
|
||||
bucket
|
||||
moreblocks?
|
1
description.txt
Normal file
1
description.txt
Normal file
@ -0,0 +1 @@
|
||||
Craft clay out of compressed dirt.
|
2
init.lua
2
init.lua
@ -5,3 +5,5 @@ local modpath = minetest.get_modpath("claycrafter")
|
||||
dofile(modpath .. "/items.lua")
|
||||
dofile(modpath .. "/recipes.lua")
|
||||
dofile(modpath .. "/claycrafter.lua")
|
||||
|
||||
minetest.log("action", "[claycrafter] loaded.")
|
||||
|
26
items.lua
26
items.lua
@ -1,21 +1,15 @@
|
||||
minetest.register_node("claycrafter:compressed_dirt", {
|
||||
if minetest.get_modpath("moreblocks") then
|
||||
minetest.register_alias("claycrafter:compressed_dirt", "moreblocks:dirt_compressed")
|
||||
else
|
||||
minetest.register_node("claycrafter:compressed_dirt", {
|
||||
description = "Compressed Dirt",
|
||||
tiles = {"claycrafter_compressed_dirt.png"},
|
||||
groups = {crumbly = 1, oddly_breakable_by_hand = 1, soil = 1, cracky =1}
|
||||
})
|
||||
})
|
||||
end
|
||||
|
||||
minetest.register_node("claycrafter:glass_of_water", {
|
||||
description = ("Glass of Water"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"claycrafter_glass_of_water.png"},
|
||||
inventory_image = "claycrafter_glass_of_water_inv.png",
|
||||
wield_image = "claycrafter_glass_of_water.png",
|
||||
paramtype = "light",
|
||||
is_ground_content = false,
|
||||
walkable = false,
|
||||
sunlight_propagates = true,
|
||||
selection_box = {type = "fixed",fixed = {-0.25, -0.5, -0.25, 0.25, 0, 0.25} },
|
||||
groups = {vessel = 1, dig_immediate = 3, attached_node = 1, h2o = 3}, -- How much time to convert 1 compressed dirt to 4 clay
|
||||
on_use = minetest.item_eat(0,"vessels:drinking_glass"),
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
minetest.register_craftitem("claycrafter:glass_of_water", {
|
||||
description = "Glass of Water",
|
||||
inventory_image = "claycrafter_glass_of_water.png",
|
||||
groups = {h2o = 1, vessel = 1}, -- How much time to convert 1 compressed dirt to 4 clay
|
||||
})
|
||||
|
3
mod.conf
3
mod.conf
@ -1,4 +1 @@
|
||||
name = claycrafter
|
||||
description = This mod introduces the Claycrafter, which converts Compressed Dirt to Clay using Glasses of Water.
|
||||
depends = vessels, default, bucket
|
||||
author = Dragonop
|
||||
|
11
recipes.lua
11
recipes.lua
@ -1,16 +1,13 @@
|
||||
minetest.register_craft({
|
||||
if not minetest.get_modpath("moreblocks") then
|
||||
minetest.register_craft({
|
||||
output = "claycrafter:compressed_dirt",
|
||||
recipe = {
|
||||
{"default:dirt", "default:dirt", "default:dirt"},
|
||||
{"default:dirt", "default:dirt", "default:dirt"},
|
||||
{"default:dirt", "default:dirt", "default:dirt"}
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "default:dirt 9",
|
||||
recipe = {{"claycrafter:compressed_dirt"}}
|
||||
})
|
||||
})
|
||||
end
|
||||
|
||||
minetest.register_craft({
|
||||
output = "claycrafter:glass_of_water 8",
|
||||
|
BIN
screenshot.png
BIN
screenshot.png
Binary file not shown.
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 7.4 KiB |
Binary file not shown.
Before Width: | Height: | Size: 377 B After Width: | Height: | Size: 233 B |
Binary file not shown.
Before Width: | Height: | Size: 396 B |
Reference in New Issue
Block a user