Currently, when you take out items from a furnace, you get XP for the item you took out, not for the smelting recipe that was used to get the item.
This doesn't affect vanilla Minecraft, but creates some problems with mods that add other smelting recipes, and ones that allow turning ingots into dusts and then back into ingots again, creating a way of farming XP (which they have "resolved" by disabling getting XP from smelting those materials).
I suggest adding an internal XP storage for the furnace. Whenever an item is smelted, the XP for that recipe is added to the storage, and when taking out items, you'd get all, or part of those XP. (For example taking out half of the items would give you half of the stored XP.)
This could also have a neat side effect for vanilla. Destroying the furnace could not just drop its contents, but also its stored XP.
[I wasn't sure whether to post this in Minecraft or Minecraft API, since it doesn't really have anything to do with the API, but this really isn't a bug related to vanilla Minecraft either.]
Comments 4
"This doesn't affect vanilla Minecraft"
You said it yourself. This is more a feature request (and at that, it is a feature request of an internal API). If modders want this, they should make it themselves - it is nothing to do with the upcoming Minecraft API.
I had to give it a try. I mean, the function to add a recipe takes the XP amount, and therefore it should be bound to the recipe, not the output item, right? From a modders perspektive it actually is a bug - or at least doesn't work as intended.
If it's not a bug, its a feature request. Suggestions go to http://www.minecraftforum.net/forum/1-suggestions/