1
0
mirror of https://github.com/sys4-fr/server-nalc.git synced 2025-12-19 16:25:47 +01:00

Rollback again, something is crashing the server..

This commit is contained in:
LeMagnesium
2014-12-10 23:31:28 +01:00
parent 4de7f3e484
commit 8b3abd1b43
14 changed files with 392 additions and 368 deletions

View File

@@ -1,15 +1,14 @@
--
-- Formspecs
--
--
-- Formspecs
--
local function active_formspec(fuel_percent, item_percent)
local formspec =
local formspec =
"size[8,8.5]"..
default.gui_bg..
default.gui_bg_img..
default.gui_slots..
--gui_slots..
"list[current_name;src;2.75,0.5;1,1;]"..
"list[current_name;fuel;2.75,2.5;1,1;]"..
"image[2.75,1.5;1,1;default_furnace_fire_bg.png^[lowpart:"..
@@ -99,9 +98,9 @@ minetest.register_node("default:furnace", {
legacy_facedir_simple = true,
is_ground_content = false,
sounds = default.node_sound_stone_defaults(),
can_dig = can_dig,
allow_metadata_inventory_put = allow_metadata_inventory_put,
allow_metadata_inventory_move = allow_metadata_inventory_move,
allow_metadata_inventory_take = allow_metadata_inventory_take,
@@ -134,7 +133,7 @@ minetest.register_node("default:furnace_active", {
can_dig = can_dig,
allow_metadata_inventory_put = allow_metadata_inventory_put,
aallow_metadata_inventory_put = allow_metadata_inventory_put,
allow_metadata_inventory_move = allow_metadata_inventory_move,
allow_metadata_inventory_take = allow_metadata_inventory_take,
})
@@ -164,15 +163,15 @@ minetest.register_abm({
local fuel_time = meta:get_float("fuel_time") or 0
local src_time = meta:get_float("src_time") or 0
local fuel_totaltime = meta:get_float("fuel_totaltime") or 0
--
-- Inizialize inventory
--
local inv = meta:get_inventory()
for listname, size in pairs({
src = 1,
fuel = 1,
dst = 4,
src = 1,
fuel = 1,
dst = 4,
}) do
if inv:get_size(listname) ~= size then
inv:set_size(listname, size)
@@ -189,16 +188,16 @@ minetest.register_abm({
-- Check if we have cookable content
local cooked, aftercooked = minetest.get_craft_result({method = "cooking", width = 1, items = srclist})
local cookable = true
if cooked.time == 0 then
cookable = false
end
-- Check if we have enough fuel to burn
if fuel_time < fuel_totaltime then
-- The furnace is currently active and has enough fuel
fuel_time = fuel_time + 1
-- If there is a cookable item then check if it is ready yet
if cookable then
src_time = src_time + 1
@@ -216,7 +215,7 @@ minetest.register_abm({
if cookable then
-- We need to get new fuel
local fuel, afterfuel = minetest.get_craft_result({method = "fuel", width = 1, items = fuellist})
if fuel.time == 0 then
-- No valid fuel in fuel list
fuel_totaltime = 0
@@ -225,10 +224,10 @@ minetest.register_abm({
else
-- Take fuel from fuel list
inv:set_stack("fuel", 1, afterfuel.items[1])
fuel_totaltime = fuel.time
fuel_time = 0
end
else
-- We don't need to get new fuel since there is no cookable item
@@ -237,7 +236,7 @@ minetest.register_abm({
src_time = 0
end
end
--
-- Update formspec, infotext and node
--
@@ -245,7 +244,7 @@ minetest.register_abm({
local item_state = ""
local item_percent = 0
if cookable then
item_percent = math.floor(src_time / cooked.time * 100)
item_percent = math.floor(src_time / cooked.time * 100)
item_state = item_percent .. "%"
else
if srclist[1]:is_empty() then
@@ -254,7 +253,7 @@ minetest.register_abm({
item_state = "Not cookable"
end
end
local fuel_state = "Empty"
local active = "inactive "
if fuel_time <= fuel_totaltime and fuel_totaltime ~= 0 then
@@ -269,9 +268,9 @@ minetest.register_abm({
end
swap_node(pos, "default:furnace")
end
local infotext = "Furnace " .. active .. "(Item: " .. item_state .. "; Fuel: " .. fuel_state .. ")"
local infotext = "Furnace " .. active .. "(Item: " .. item_state .. "; Fuel: " .. fuel_state .. ")"
--
-- Set meta values
--