diff --git a/python-api-src/lib_unittype.cpp b/python-api-src/lib_unittype.cpp index 0586d1bd53ad397c9a8d5a3e1ebc8d082ea9f1df..c3535b422a8dc554102a505ef9edc15f94ac98d5 100644 --- a/python-api-src/lib_unittype.cpp +++ b/python-api-src/lib_unittype.cpp @@ -5,6 +5,7 @@ namespace py = pybind11; void define_unittype(py::module & m) { py::class_<UnitType>(m, "UnitType") + .def(py::init<const sc2::UnitTypeID &, IDABot &>()) .def("is", &UnitType::is, "Check if UnitType is UnitTypeID") .def(py::self == py::self) .def_property_readonly("name", &UnitType::getName) diff --git a/python-api-src/library.cpp b/python-api-src/library.cpp index c5a4e4fc6db1e35c2ebc04b418c4321eeca90300..855f44713acbba8bc57f6e83f4d19f217ce93f97 100644 --- a/python-api-src/library.cpp +++ b/python-api-src/library.cpp @@ -26,6 +26,18 @@ PYBIND11_MODULE(library, m) .value("Protoss", sc2::Race::Protoss) .value("Random", sc2::Race::Random); + /* + TODO: These also needs to be defined + + typedef SC2Type<ABILITY_ID> AbilityID; + typedef SC2Type<UPGRADE_ID> UpgradeID; + typedef SC2Type<BUFF_ID> BuffID; + */ + py::class_<sc2::UnitTypeID>(m, "UnitTypeID") + .def(py::init<sc2::UNIT_TYPEID>()); + + py::implicitly_convertible<sc2::UNIT_TYPEID, sc2::UnitTypeID>(); + py::class_<sc2::Agent>(m, "Agent") .def(py::init());