| 19 | } |
| 20 | |
| 21 | Maybe<InventorySlot> LuaConverter<InventorySlot>::to(LuaEngine&, LuaValue const& v) { |
| 22 | if (auto str = v.ptr<LuaString>()) { |
| 23 | auto string = str->toString(); |
| 24 | if (string.equalsIgnoreCase("swap")) |
| 25 | return {SwapSlot()}; |
| 26 | else if (string.equalsIgnoreCase("trash")) |
| 27 | return {TrashSlot()}; |
| 28 | else if (auto equipment = EquipmentSlotNames.leftPtr(str->toString())) |
| 29 | return {*equipment}; |
| 30 | else |
| 31 | return {}; |
| 32 | } |
| 33 | else if (auto table = v.ptr<LuaTable>()) |
| 34 | return {BagSlot(table->get<LuaString>(1).toString(), (uint8_t)table->get<unsigned>(2))}; |
| 35 | else |
| 36 | return {}; |
| 37 | } |
| 38 | |
| 39 | LuaValue LuaConverter<CollisionKind>::from(LuaEngine& engine, CollisionKind k) { |
| 40 | return engine.createString(CollisionKindNames.getRight(k)); |
nothing calls this directly
no test coverage detected