summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortruelight <truelight@openttd.org>2004-12-13 17:04:41 +0000
committertruelight <truelight@openttd.org>2004-12-13 17:04:41 +0000
commitcbdc44926a86130152feb038c6a62d389c2d7d49 (patch)
treeeb2905e37feb2c6163f8f2da8d8f68dbf433d607
parentdfe9020f56b3c2a6468528b6860e939ca6bc2ac0 (diff)
downloadopenttd-cbdc44926a86130152feb038c6a62d389c2d7d49.tar.xz
(svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
-Fix: [Network] Fixed warnings that came with last revision -Cleanup: [Network] Removed an unused var (_network_client_port)
-rw-r--r--console_cmds.c24
-rw-r--r--network.h1
-rw-r--r--settings.c3
3 files changed, 21 insertions, 7 deletions
diff --git a/console_cmds.c b/console_cmds.c
index 5891986fb..3f7f57d2b 100644
--- a/console_cmds.c
+++ b/console_cmds.c
@@ -552,6 +552,9 @@ DEF_CONSOLE_CMD(ConSayClient)
/* the "set" command */
/* **************************** */
+extern void ConsoleSetPatchSetting(char *name, char *value);
+extern void ConsoleGetPatchSetting(char *name);
+
DEF_CONSOLE_CMD(ConSet) {
if (argc < 2) {
IConsolePrint(_iconsole_color_warning, "Unknonw usage. Usage: set [setting] [value].");
@@ -562,8 +565,8 @@ DEF_CONSOLE_CMD(ConSet) {
// setting the server password
if ((strcmp(argv[1],"server_pw") == 0) || (strcmp(argv[1],"server_password") == 0)) {
- if (!_networking) {
- IConsolePrintF(_iconsole_color_error,"No network game running");
+ if (!_network_server) {
+ IConsolePrintF(_iconsole_color_error, "You are not the server");
return NULL;
}
if (argc == 3) {
@@ -639,8 +642,8 @@ DEF_CONSOLE_CMD(ConSet) {
// setting the server name
if (strcmp(argv[1],"server_name") == 0) {
- if (!_networking) {
- IConsolePrintF(_iconsole_color_error,"No network game running");
+ if (!_network_server) {
+ IConsolePrintF(_iconsole_color_error, "You are not the server");
return NULL;
}
if (argc == 3) {
@@ -654,6 +657,19 @@ DEF_CONSOLE_CMD(ConSet) {
return NULL;
}
+ // setting the server name
+ if (strcmp(argv[1],"port") == 0) {
+ if (argc == 3 && atoi(argv[2]) != 0) {
+ _network_server_port = atoi(argv[2]);
+ IConsolePrintF(_iconsole_color_warning, "Server-port changed to '%d'", _network_server_port);
+ IConsolePrintF(_iconsole_color_warning, "Changes will take effect the next time you start a server.");
+ } else {
+ IConsolePrintF(_iconsole_color_default, "Current server-port is '%d'", _network_server_port);
+ IConsolePrint(_iconsole_color_warning, "Usage: set server_port <port>.");
+ }
+ return NULL;
+ }
+
#endif
// Patch-options
diff --git a/network.h b/network.h
index ac554bacd..7b8674211 100644
--- a/network.h
+++ b/network.h
@@ -137,7 +137,6 @@ VARDEF uint16 _network_game_count;
VARDEF uint16 _network_lobby_company_count;
-VARDEF uint _network_client_port;
VARDEF uint _network_server_port;
VARDEF bool _is_network_server; // Does this client wants to be a network-server?
VARDEF char _network_server_name[NETWORK_NAME_LENGTH];
diff --git a/settings.c b/settings.c
index ff22db584..ef8862e20 100644
--- a/settings.c
+++ b/settings.c
@@ -723,10 +723,9 @@ static const SettingDesc misc_settings[] = {
#ifdef ENABLE_NETWORK
static const SettingDesc network_settings[] = {
- {"port", SDT_UINT | SDT_NOSAVE, (void*)NETWORK_DISCOVER_PORT, &_network_client_port, NULL},
- {"server_port", SDT_UINT | SDT_NOSAVE, (void*)NETWORK_DEFAULT_PORT, &_network_server_port, NULL},
{"sync_freq", SDT_UINT16 | SDT_NOSAVE, (void*)100, &_network_sync_freq, NULL},
{"frame_freq", SDT_UINT8 | SDT_NOSAVE, (void*)0, &_network_frame_freq, NULL},
+ {"server_port", SDT_UINT, (void*)NETWORK_DEFAULT_PORT, &_network_server_port, NULL},
{"player_name", SDT_STRINGBUF | (lengthof(_network_player_name) << 16), NULL, &_network_player_name, NULL},
{"server_password", SDT_STRINGBUF | (lengthof(_network_game_info.server_password) << 16), NULL, &_network_game_info.server_password, NULL},
{"server_name", SDT_STRINGBUF | (lengthof(_network_server_name) << 16), NULL, &_network_server_name, NULL},