From 8c20d178b57aa4bfc754c0803d9ab165cbe0e319 Mon Sep 17 00:00:00 2001 From: Japa Date: Wed, 21 Feb 2018 22:27:04 +0530 Subject: [PATCH] Include plant type with plant items. --- plugins/remotefortressreader/item_reader.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/plugins/remotefortressreader/item_reader.cpp b/plugins/remotefortressreader/item_reader.cpp index f96397409..8fcb7a601 100644 --- a/plugins/remotefortressreader/item_reader.cpp +++ b/plugins/remotefortressreader/item_reader.cpp @@ -303,6 +303,8 @@ void CopyItem(RemoteFortressReader::Item * NetItem, df::item * DfItem) case df::enums::item_type::SEEDS: break; case df::enums::item_type::PLANT: + //For convenience, we encode the plant type into item type, even if it's available in the material. + type->set_mat_index(DfItem->getMaterialIndex()); break; case df::enums::item_type::SKIN_TANNED: break; @@ -521,6 +523,18 @@ DFHack::command_result GetItemList(DFHack::color_ostream &stream, const DFHack:: } break; } + case df::enums::item_type::PLANT: + { + for (int i = 0; i < world->raws.plants.all.size(); i++) + { + auto plantRaw = world->raws.plants.all[i]; + mat_def = out->add_material_list(); + mat_def->mutable_mat_pair()->set_mat_type((int)it); + mat_def->mutable_mat_pair()->set_mat_index(plantRaw->index); + mat_def->set_id(ENUM_KEY_STR(item_type, it) + "/" + plantRaw->id); + } + break; + } case df::enums::item_type::BOX: { mat_def = out->add_material_list();