dfhack
dfhack copied to clipboard
(feature request) building_hacks: add support for furnaces
the lua frontend seems to be ready for furnaces already but the c++ part is not.
IIRC you (whoever takes up that task) need to reimplement everything here to furnace. Probably by moving code out to be shared for both.
Some more info after looking into the headers: you can't have furnaces connected to machines as they don't have machine info. So i'm not sure if it's even worth doing this?
so it is entirely impossible to do, or can it be done by handling the machine stuff directly?
Nothing is impossible per se. Just very very difficult.
In this case almost everything can be done easily (getMachineInfo could return some part of our memory - custom tracked or in some evil casting nightmare) but the hard part is how machines connect to each other (which needs work either way - it still has order of operations bug). The vmethod that is used for that is canConnectToMachine
and i think in furnace case it might be not the same (i.e. return always false) as workshop.
Adding machine info to furnaces is probably more trouble than it's worth, at least for now. It might not get saved properly even if we can construct it.
In-progress work available in https://github.com/DFHack/dfhack/pull/1376