Skip to content
Snippets Groups Projects
Commit ef08163c authored by JacobF's avatar JacobF
Browse files

Don't remove furnace if something is inside it.

parent efd8dabd
No related branches found
No related tags found
No related merge requests found
......@@ -195,6 +195,24 @@ std::string FurnaceNodeMetadata::infoText()
return s;
}
}
bool FurnaceNodeMetadata::nodeRemovalDisabled()
{
/*
Disable removal if furnace is not empty
*/
InventoryList *list[3] = {m_inventory->getList("src"),
m_inventory->getList("dst"), m_inventory->getList("fuel")};
for(int i = 0; i < 3; i++) {
if(list[i] == NULL)
continue;
if(list[i]->getUsedSlots() == 0)
continue;
return true;
}
return false;
}
void FurnaceNodeMetadata::inventoryModified()
{
dstream<<"Furnace inventory modification callback"<<std::endl;
......
......@@ -76,6 +76,7 @@ class FurnaceNodeMetadata : public NodeMetadata
virtual Inventory* getInventory() {return m_inventory;}
virtual void inventoryModified();
virtual bool step(float dtime);
virtual bool nodeRemovalDisabled();
virtual std::string getInventoryDrawSpecString();
private:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment