Compare commits

..

No commits in common. "969744f242d0183530c644bff519f707e033f9cf" and "16c8bed915731cac30c696ca51cbbf91269447fd" have entirely different histories.

3 changed files with 18 additions and 55 deletions

View File

@ -16,13 +16,19 @@
local S=minetest.get_translator("industrialtest") local S=minetest.get_translator("industrialtest")
local function createItemFluidStorageText(itemstack) -- \brief Prepares itemstack containing fluid storage
-- \param itemstack ItemStack
-- \returns bool
function industrialtest.api.prepareFluidStorageItem(itemstack)
local meta=itemstack:get_meta() local meta=itemstack:get_meta()
local fluidCapacity=meta:get_int("industrialtest.fluidCapacity") local def=itemstack:get_definition()
local fluidAmount=meta:get_int("industrialtest.fluidAmount") if industrialtest.api.itemHasFluidStorage(itemstack) or not def.groups or not def.groups._industrialtest_fluidStorage or not def._industrialtest_fluidCapacity then
local lowerLimit=math.floor(fluidCapacity*0.25) return false
local color=(fluidAmount>lowerLimit and "#0000FF" or "#FF0000") end
return minetest.colorize(color,S("@1 / @2 mB",fluidAmount,fluidCapacity)) meta:set_int("industrialtest.fluidAmount",0)
meta:set_int("industrialtest.fluidCapacity",def._industrialtest_fluidCapacity)
industrialtest.api.updateItemFluidText(itemstack)
return true
end end
-- \brief Check if itemstack contains fluid storage -- \brief Check if itemstack contains fluid storage
@ -74,13 +80,8 @@ end
-- \returns nil -- \returns nil
function industrialtest.api.updateItemFluidText(itemstack) function industrialtest.api.updateItemFluidText(itemstack)
local meta=itemstack:get_meta() local meta=itemstack:get_meta()
if industrialtest.mtgAvailable then local def=itemstack:get_definition()
local def=itemstack:get_definition() meta:set_string("description",S("@1\n@2 / @3 mB",def.description,meta:get_int("industrialtest.fluidAmount"),meta:get_int("industrialtest.fluidCapacity")))
local fluidStorageText=createItemFluidStorageText(itemstack)
meta:set_string("description",string.format("%s\n%s",def.description,fluidStorageText))
elseif industrialtest.mclAvailable then
tt.reload_itemstack_description(itemstack)
end
itemstack:set_wear(65535-meta:get_int("industrialtest.fluidAmount")/meta:get_int("industrialtest.fluidCapacity")*65534) itemstack:set_wear(65535-meta:get_int("industrialtest.fluidAmount")/meta:get_int("industrialtest.fluidCapacity")*65534)
end end
@ -118,15 +119,3 @@ function industrialtest.api.transferFluidToItem(srcItemstack,itemstack,amount)
industrialtest.api.updateItemFluidText(srcItemstack) industrialtest.api.updateItemFluidText(srcItemstack)
return actualFlow return actualFlow
end end
if industrialtest.mclAvailable then
tt.register_snippet(function(itemstring,toolCapabilities,itemstack)
if not itemstack then
return nil
end
if not industrialtest.api.itemHasFluidStorage(itemstack) then
return nil
end
return createItemFluidStorageText(itemstack),false
end)
end

View File

@ -16,15 +16,6 @@
local S=minetest.get_translator("industrialtest") local S=minetest.get_translator("industrialtest")
local function createItemPowerText(itemstack)
local meta=itemstack:get_meta()
local powerCapacity=meta:get_int("industrialtest.powerCapacity")
local powerAmount=meta:get_int("industrialtest.powerAmount")
local lowerLimit=math.floor(powerCapacity*0.25)
local color=(powerAmount>lowerLimit and "#00FFFF" or "#FF0000")
return minetest.colorize(color,S("@1 / @2 EU",powerAmount,powerCapacity))
end
-- \brief Adds power storage to metadata -- \brief Adds power storage to metadata
-- \param capacity How much EU item/node can store -- \param capacity How much EU item/node can store
-- \param flow How much EU can flow in or out item/node per industrialtest.updateDelay -- \param flow How much EU can flow in or out item/node per industrialtest.updateDelay
@ -167,14 +158,9 @@ end
-- \returns nil -- \returns nil
function industrialtest.api.updateItemPowerText(itemstack) function industrialtest.api.updateItemPowerText(itemstack)
local meta=itemstack:get_meta() local meta=itemstack:get_meta()
if industrialtest.mtgAvailable then local def=minetest.registered_tools[itemstack:get_name()]
local def=minetest.registered_tools[itemstack:get_name()] local desc=meta:contains("industrialtest.descriptionOverride") and meta:get_string("industrialtest.descriptionOverride") or def.description
local desc=meta:contains("industrialtest.descriptionOverride") and meta:get_string("industrialtest.descriptionOverride") or def.description meta:set_string("description",S("@1\n@2 / @3 EU",desc,meta:get_int("industrialtest.powerAmount"),meta:get_int("industrialtest.powerCapacity")))
local powerText=createItemPowerText(itemstack)
meta:set_string("description",string.format("%s\n%s",desc,powerText))
elseif industrialtest.mclAvailable then
tt.reload_itemstack_description(itemstack)
end
itemstack:set_wear(65535-meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")*65534) itemstack:set_wear(65535-meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")*65534)
end end
@ -223,15 +209,3 @@ function industrialtest.api.transferPowerFromItem(srcItemstack,meta,amount)
return actualFlow return actualFlow
end end
if industrialtest.mclAvailable then
tt.register_snippet(function(itemstring,toolCapabilities,itemstack)
if not itemstack then
return nil
end
local meta=itemstack:get_meta()
if not industrialtest.api.hasPowerStorage(meta) then
return nil
end
return createItemPowerText(itemstack),false
end)
end

View File

@ -3,4 +3,4 @@
- `industrialtest_gui_water.png` was taken from Minetest Game (by Cisoun licensed with CC BY-SA 3.0) - `industrialtest_gui_water.png` was taken from Minetest Game (by Cisoun licensed with CC BY-SA 3.0)
- `industrialtest_gui_river_water.png` was taken from Minetest Game (by paramat licensed with CC BY-SA 3.0) - `industrialtest_gui_river_water.png` was taken from Minetest Game (by paramat licensed with CC BY-SA 3.0)
... rest was made either by LuanHawk, mrkubax10, HandfulOfFrogs or Migdyn and is licensed with CC BY 4.0 International ... rest was made either by LuanHawk, mrkubax10 or Migdyn and is licensed with CC BY 4.0 International