2010-11-07 01:49:33 -07:00
|
|
|
// This forces the game to pause.
|
|
|
|
|
|
|
|
#include <iostream>
|
|
|
|
#include <vector>
|
|
|
|
#include <map>
|
|
|
|
using namespace std;
|
|
|
|
|
|
|
|
#include <DFHack.h>
|
|
|
|
#include <dfhack/modules/Gui.h>
|
|
|
|
|
2010-11-10 18:09:43 -07:00
|
|
|
int main (int argc, char** argv)
|
2010-11-07 01:49:33 -07:00
|
|
|
{
|
2010-11-10 18:09:43 -07:00
|
|
|
bool quiet = false;
|
|
|
|
for(int i = 1; i < argc; i++)
|
|
|
|
{
|
|
|
|
string test = argv[i];
|
|
|
|
if(test == "-q")
|
|
|
|
{
|
|
|
|
quiet = true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2010-11-07 01:49:33 -07:00
|
|
|
DFHack::ContextManager DFMgr("Memory.xml");
|
|
|
|
DFHack::Context *DF;
|
|
|
|
try
|
|
|
|
{
|
|
|
|
DF = DFMgr.getSingleContext();
|
|
|
|
DF->Attach();
|
|
|
|
}
|
|
|
|
catch (exception& e)
|
|
|
|
{
|
|
|
|
cerr << e.what() << endl;
|
|
|
|
#ifndef LINUX_BUILD
|
2010-11-10 18:09:43 -07:00
|
|
|
if(!quiet) cin.ignore();
|
2010-11-07 01:49:33 -07:00
|
|
|
#endif
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
DFHack::Gui *Gui =DF->getGui();
|
|
|
|
cout << "Pausing..." << endl;
|
|
|
|
|
|
|
|
Gui->SetPauseState(true);
|
|
|
|
DF->Resume();
|
|
|
|
#ifndef LINUX_BUILD
|
|
|
|
cout << "Done. The current game frame will have to finish first. This can take some time on bugged maps." << endl;
|
2010-11-10 18:09:43 -07:00
|
|
|
if (!quiet) cin.ignore();
|
2010-11-07 01:49:33 -07:00
|
|
|
#endif
|
|
|
|
return 0;
|
|
|
|
}
|