|
|
|
@ -58,6 +58,7 @@
|
|
|
|
|
#include "df/dfhack_material_category.h"
|
|
|
|
|
#include "df/enabler.h"
|
|
|
|
|
#include "df/engraving.h"
|
|
|
|
|
#include "df/flow_info.h"
|
|
|
|
|
#include "df/graphic.h"
|
|
|
|
|
#include "df/historical_figure.h"
|
|
|
|
|
|
|
|
|
@ -1395,6 +1396,29 @@ void CopyItems(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBloc
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CopyFlow(df::flow_info * localFlow, RemoteFortressReader::FlowInfo * netFlow, int index)
|
|
|
|
|
{
|
|
|
|
|
//There's no consistent ID to use, so we just use the pointer.
|
|
|
|
|
netFlow->set_index((int)localFlow);
|
|
|
|
|
netFlow->set_type((FlowType)localFlow->type);
|
|
|
|
|
netFlow->set_density(localFlow->density);
|
|
|
|
|
ConvertDFCoord(localFlow->pos, netFlow->mutable_pos());
|
|
|
|
|
ConvertDFCoord(localFlow->dest, netFlow->mutable_dest());
|
|
|
|
|
netFlow->set_expanding(localFlow->expanding);
|
|
|
|
|
netFlow->set_reuse(localFlow->reuse);
|
|
|
|
|
netFlow->set_guide_id(localFlow->guide_id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CopyFlows(df::map_block * DfBlock, RemoteFortressReader::MapBlock * NetBlock)
|
|
|
|
|
{
|
|
|
|
|
NetBlock->set_map_x(DfBlock->map_pos.x);
|
|
|
|
|
NetBlock->set_map_y(DfBlock->map_pos.y);
|
|
|
|
|
NetBlock->set_map_z(DfBlock->map_pos.z);
|
|
|
|
|
for (int i = 0; i < DfBlock->flows.size(); i++)
|
|
|
|
|
{
|
|
|
|
|
CopyFlow(DfBlock->flows[i], NetBlock->add_flows(), i);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static command_result GetBlockList(color_ostream &stream, const BlockRequest *in, BlockList *out)
|
|
|
|
|
{
|
|
|
|
|