| 160 | } |
| 161 | |
| 162 | void CopyItem(RemoteFortressReader::Item * NetItem, df::item * DfItem) |
| 163 | { |
| 164 | NetItem->set_id(DfItem->id); |
| 165 | NetItem->set_flags1(DfItem->flags.whole); |
| 166 | NetItem->set_flags2(DfItem->flags2.whole); |
| 167 | auto pos = NetItem->mutable_pos(); |
| 168 | pos->set_x(DfItem->pos.x); |
| 169 | pos->set_y(DfItem->pos.y); |
| 170 | pos->set_z(DfItem->pos.z); |
| 171 | auto mat = NetItem->mutable_material(); |
| 172 | mat->set_mat_index(DfItem->getMaterialIndex()); |
| 173 | mat->set_mat_type(DfItem->getMaterial()); |
| 174 | auto type = NetItem->mutable_type(); |
| 175 | type->set_mat_type(DfItem->getType()); |
| 176 | type->set_mat_index(DfItem->getSubtype()); |
| 177 | |
| 178 | bool isProjectile = false; |
| 179 | |
| 180 | item_type::item_type itemType = DfItem->getType(); |
| 181 | |
| 182 | switch (itemType) |
| 183 | { |
| 184 | case df::enums::item_type::NONE: |
| 185 | break; |
| 186 | case df::enums::item_type::BAR: |
| 187 | break; |
| 188 | case df::enums::item_type::SMALLGEM: |
| 189 | { |
| 190 | VIRTUAL_CAST_VAR(smallgem_item, df::item_smallgemst, DfItem); |
| 191 | type->set_mat_index(smallgem_item->shape); |
| 192 | break; |
| 193 | } |
| 194 | case df::enums::item_type::BLOCKS: |
| 195 | break; |
| 196 | case df::enums::item_type::ROUGH: |
| 197 | break; |
| 198 | case df::enums::item_type::BOULDER: |
| 199 | break; |
| 200 | case df::enums::item_type::WOOD: |
| 201 | break; |
| 202 | case df::enums::item_type::DOOR: |
| 203 | break; |
| 204 | case df::enums::item_type::FLOODGATE: |
| 205 | break; |
| 206 | case df::enums::item_type::BED: |
| 207 | break; |
| 208 | case df::enums::item_type::CHAIR: |
| 209 | break; |
| 210 | case df::enums::item_type::CHAIN: |
| 211 | break; |
| 212 | case df::enums::item_type::FLASK: |
| 213 | break; |
| 214 | case df::enums::item_type::GOBLET: |
| 215 | break; |
| 216 | case df::enums::item_type::INSTRUMENT: |
| 217 | break; |
| 218 | case df::enums::item_type::TOY: |
| 219 | break; |
no test coverage detected