Merge remote-tracking branch 'queatz/furnace-is-not-blackhole'

master
Perttu Ahola 2011-08-30 14:24:12 +03:00
commit 1a705523c0
2 changed files with 19 additions and 0 deletions

View File

@ -203,6 +203,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;

View File

@ -76,6 +76,7 @@ public:
virtual Inventory* getInventory() {return m_inventory;}
virtual void inventoryModified();
virtual bool step(float dtime);
virtual bool nodeRemovalDisabled();
virtual std::string getInventoryDrawSpecString();
private: