- added / updated commandline params to auto start or connect to a network game server
This commit is contained in:
parent
b99d1f7421
commit
5a42638060
|
@ -50,6 +50,8 @@ bool gameInitialized = false;
|
||||||
|
|
||||||
const char *GAME_ARGS[] = {
|
const char *GAME_ARGS[] = {
|
||||||
"--help",
|
"--help",
|
||||||
|
"--client",
|
||||||
|
"--server",
|
||||||
"--version",
|
"--version",
|
||||||
"--opengl-info",
|
"--opengl-info",
|
||||||
"--validate-techtrees",
|
"--validate-techtrees",
|
||||||
|
@ -58,6 +60,8 @@ const char *GAME_ARGS[] = {
|
||||||
|
|
||||||
enum GAME_ARG_TYPE {
|
enum GAME_ARG_TYPE {
|
||||||
GAME_ARG_HELP = 0,
|
GAME_ARG_HELP = 0,
|
||||||
|
GAME_ARG_CLIENT,
|
||||||
|
GAME_ARG_SERVER,
|
||||||
GAME_ARG_VERSION,
|
GAME_ARG_VERSION,
|
||||||
GAME_ARG_OPENGL_INFO,
|
GAME_ARG_OPENGL_INFO,
|
||||||
GAME_ARG_VALIDATE_TECHTREES,
|
GAME_ARG_VALIDATE_TECHTREES,
|
||||||
|
@ -451,6 +455,8 @@ int glestMain(int argc, char** argv){
|
||||||
printf("Commandline Parameter:\t\tDescription:");
|
printf("Commandline Parameter:\t\tDescription:");
|
||||||
printf("\n----------------------\t\t------------");
|
printf("\n----------------------\t\t------------");
|
||||||
printf("\n%s\t\t\t\tdisplays this help text.",GAME_ARGS[GAME_ARG_HELP]);
|
printf("\n%s\t\t\t\tdisplays this help text.",GAME_ARGS[GAME_ARG_HELP]);
|
||||||
|
printf("\n%s=x\t\t\tAuto connects to a network server at IP or hostname x",GAME_ARGS[GAME_ARG_CLIENT]);
|
||||||
|
printf("\n%s\t\t\tAuto creates a network server.",GAME_ARGS[GAME_ARG_SERVER]);
|
||||||
printf("\n%s\t\t\tdisplays the version string of this program.",GAME_ARGS[GAME_ARG_VERSION]);
|
printf("\n%s\t\t\tdisplays the version string of this program.",GAME_ARGS[GAME_ARG_VERSION]);
|
||||||
printf("\n%s\t\t\tdisplays your video driver's OpenGL information.",GAME_ARGS[GAME_ARG_OPENGL_INFO]);
|
printf("\n%s\t\t\tdisplays your video driver's OpenGL information.",GAME_ARGS[GAME_ARG_OPENGL_INFO]);
|
||||||
printf("\n%s=x\t\tdisplays a report detailing any known problems related",GAME_ARGS[GAME_ARG_VALIDATE_TECHTREES]);
|
printf("\n%s=x\t\tdisplays a report detailing any known problems related",GAME_ARGS[GAME_ARG_VALIDATE_TECHTREES]);
|
||||||
|
@ -618,11 +624,19 @@ int glestMain(int argc, char** argv){
|
||||||
SystemFlags::OutputDebug(SystemFlags::debugSystem,"In [%s::%s Line: %d]\n",__FILE__,__FUNCTION__,__LINE__);
|
SystemFlags::OutputDebug(SystemFlags::debugSystem,"In [%s::%s Line: %d]\n",__FILE__,__FUNCTION__,__LINE__);
|
||||||
|
|
||||||
//parse command line
|
//parse command line
|
||||||
if(argc==2 && string(argv[1])=="-server"){
|
if(hasCommandArgument(argc, argv,GAME_ARGS[GAME_ARG_SERVER]) == true) {
|
||||||
program->initServer(mainWindow);
|
program->initServer(mainWindow);
|
||||||
}
|
}
|
||||||
else if(argc==3 && string(argv[1])=="-client"){
|
else if(hasCommandArgument(argc, argv,string(GAME_ARGS[GAME_ARG_CLIENT]) + string("=")) == true) {
|
||||||
program->initClient(mainWindow, Ip(argv[2]));
|
int foundParamIndIndex = -1;
|
||||||
|
hasCommandArgument(argc, argv,string(GAME_ARGS[GAME_ARG_CLIENT]) + string("="),&foundParamIndIndex);
|
||||||
|
string serverToConnectTo = argv[foundParamIndIndex];
|
||||||
|
vector<string> paramPartTokens;
|
||||||
|
Tokenize(serverToConnectTo,paramPartTokens,"=");
|
||||||
|
if(paramPartTokens.size() >= 2) {
|
||||||
|
string autoConnectServer = paramPartTokens[1];
|
||||||
|
program->initClient(mainWindow, autoConnectServer);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
program->initNormal(mainWindow);
|
program->initNormal(mainWindow);
|
||||||
|
@ -634,7 +648,7 @@ int glestMain(int argc, char** argv){
|
||||||
SystemFlags::OutputDebug(SystemFlags::debugSystem,"In [%s::%s Line: %d] OpenGL Info:\n%s\n",__FILE__,__FUNCTION__,__LINE__,renderer.getGlInfo().c_str());
|
SystemFlags::OutputDebug(SystemFlags::debugSystem,"In [%s::%s Line: %d] OpenGL Info:\n%s\n",__FILE__,__FUNCTION__,__LINE__,renderer.getGlInfo().c_str());
|
||||||
|
|
||||||
if(hasCommandArgument(argc, argv,GAME_ARGS[GAME_ARG_OPENGL_INFO]) == true) {
|
if(hasCommandArgument(argc, argv,GAME_ARGS[GAME_ARG_OPENGL_INFO]) == true) {
|
||||||
Renderer &renderer= Renderer::getInstance();
|
//Renderer &renderer= Renderer::getInstance();
|
||||||
printf("%s",renderer.getGlInfo().c_str());
|
printf("%s",renderer.getGlInfo().c_str());
|
||||||
|
|
||||||
delete mainWindow;
|
delete mainWindow;
|
||||||
|
|
|
@ -124,7 +124,8 @@ MenuStateJoinGame::MenuStateJoinGame(Program *program, MainMenu *mainMenu, bool
|
||||||
if(connect)
|
if(connect)
|
||||||
{
|
{
|
||||||
labelServerIp.setText(serverIp.getString() + "_");
|
labelServerIp.setText(serverIp.getString() + "_");
|
||||||
connectToServer();
|
|
||||||
|
autoConnectToServer = true;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -133,6 +134,7 @@ MenuStateJoinGame::MenuStateJoinGame(Program *program, MainMenu *mainMenu, bool
|
||||||
|
|
||||||
chatManager.init(&console, -1);
|
chatManager.init(&console, -1);
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuStateJoinGame::~MenuStateJoinGame() {
|
MenuStateJoinGame::~MenuStateJoinGame() {
|
||||||
abortAutoFind = true;
|
abortAutoFind = true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user