Skip to content
Snippets Groups Projects
Commit cb537558 authored by David Bergström's avatar David Bergström
Browse files

Add ability to manually specify the path for the SC2 binary

parent 58d11644
No related branches found
No related tags found
No related merge requests found
...@@ -19,6 +19,7 @@ PYBIND11_MODULE(library, m) ...@@ -19,6 +19,7 @@ PYBIND11_MODULE(library, m)
py::class_<Coordinator>(m, "Coordinator") py::class_<Coordinator>(m, "Coordinator")
.def(py::init()) .def(py::init())
.def(py::init<std::string>())
.def("set_participants", &sc2::Coordinator::SetParticipants, "participants"_a) .def("set_participants", &sc2::Coordinator::SetParticipants, "participants"_a)
.def("launch_starcraft", &sc2::Coordinator::LaunchStarcraft) .def("launch_starcraft", &sc2::Coordinator::LaunchStarcraft)
.def("start_game", &sc2::Coordinator::StartGame, "map_path"_a) .def("start_game", &sc2::Coordinator::StartGame, "map_path"_a)
......
...@@ -14,12 +14,26 @@ using namespace pybind11::literals; ...@@ -14,12 +14,26 @@ using namespace pybind11::literals;
class Coordinator : public sc2::Coordinator class Coordinator : public sc2::Coordinator
{ {
public: public:
// TODO: We might not always want default value when we run on Linux
Coordinator() : sc2::Coordinator() Coordinator() : sc2::Coordinator()
{ {
char *argv[] = { "executable", NULL}; std::vector<std::string> arguments = { "pycommandcenter" };
int argc = sizeof(argv) / sizeof(char*) - 1; CustomLoadSettings(arguments);
LoadSettings(argc, argv); }
Coordinator(std::string path) : sc2::Coordinator()
{
std::vector<std::string> arguments = { "pycommandcenter", "-e", path };
CustomLoadSettings(arguments);
}
void CustomLoadSettings(std::vector<std::string> arguments)
{
std::vector<char*> argv;
for (const auto& arg : arguments)
argv.push_back((char*)arg.data());
argv.push_back(nullptr);
LoadSettings(argv.size() - 1, argv.data());
} }
}; };
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment