console_cmds.c
author truelight
Thu, 23 Dec 2004 21:58:01 +0000
changeset 795 d3dc1a63e57f
parent 785 bba7b3b35dec
child 841 4874b9ce2765
permissions -rw-r--r--
(svn r1265) -Fix: the server can also no longer use the money cheat if the
advertise-mode is active
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
     1
/* -------------------- dont cross this line --------------------- */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
     2
#include "stdafx.h"
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
     3
#include "ttd.h"
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
     4
#include "console.h"
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
     5
#include "engine.h"
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
     6
#include "functions.h"
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
     7
#include "variables.h"
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
     8
#include "network_data.h"
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
     9
#include "network_client.h"
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    10
#include "network_server.h"
766
90f3c0a14380 (svn r1231) -Fix: missing header file for console_cmds.c
truelight
parents: 765
diff changeset
    11
#include "network_udp.h"
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    12
#include "command.h"
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
    13
#include "settings.h"
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    14
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
    15
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
    16
// ** scriptfile handling ** //
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
    17
static FILE * _script_file;
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
    18
static bool _script_running;
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
    19
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    20
// ** console command / variable defines ** //
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
    21
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
    22
#define DEF_CONSOLE_CMD(yyyy) static _iconsole_var * yyyy(byte argc, char* argv[], byte argt[])
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    23
#define DEF_CONSOLE_CMD_HOOK(yyyy) static bool yyyy(_iconsole_cmd * hookcmd)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    24
#define DEF_CONSOLE_VAR_HOOK(yyyy) static bool yyyy(_iconsole_var * hookvar)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    25
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
    26
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
    27
// ** supporting functions ** //
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
    28
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
    29
static uint32 GetArgumentInteger(const char* arg)
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    30
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
    31
	uint32 result;
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
    32
	sscanf(arg, "%u", &result);
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    33
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    34
	if (result == 0 && arg[0] == '0' && arg[1] == 'x')
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
    35
		sscanf(arg, "%x", &result);
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    36
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    37
	return result;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    38
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    39
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    40
/* **************************** */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    41
/* variable and command hooks   */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    42
/* **************************** */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    43
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    44
#ifdef ENABLE_NETWORK
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    45
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    46
DEF_CONSOLE_CMD_HOOK(ConCmdHookNoNetwork)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    47
{
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    48
	if (_networking) {
301
3b69e7025af9 (svn r307) -Fix: Several potential buffer-overflow fixes, and removal of 'magic-numbers' in favour of constants. (Tron)
darkvater
parents: 289
diff changeset
    49
		IConsoleError("This command is forbidden in multiplayer.");
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    50
		return false;
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
    51
	}
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    52
	return true;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    53
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    54
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    55
DEF_CONSOLE_VAR_HOOK(ConVarHookNoNetClient)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    56
{
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    57
	if (!_network_available) {
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    58
		IConsoleError("You can not use this command because there is no network available.");
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    59
		return false;
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    60
	}
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    61
	if (!_network_server) {
301
3b69e7025af9 (svn r307) -Fix: Several potential buffer-overflow fixes, and removal of 'magic-numbers' in favour of constants. (Tron)
darkvater
parents: 289
diff changeset
    62
		IConsoleError("This variable only makes sense for a network server.");
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    63
		return false;
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
    64
	}
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    65
	return true;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    66
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
    67
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    68
DEF_CONSOLE_CMD_HOOK(ConCmdHookNoNetClient)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    69
{
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    70
	if (!_network_available) {
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    71
		IConsoleError("You can not use this command because there is no network available.");
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    72
		return false;
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    73
	}
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    74
	if (!_network_server) {
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    75
		IConsoleError("This command is only available for a network server.");
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    76
		return false;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    77
	}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    78
	return true;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    79
}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    80
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    81
DEF_CONSOLE_CMD_HOOK(ConCmdHookNoNetServer)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    82
{
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    83
	if (!_network_available) {
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    84
		IConsoleError("You can not use this command because there is no network available.");
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    85
		return false;
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    86
	}
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    87
	if (_network_server) {
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    88
		IConsoleError("You can not use this command because you are a network-server.");
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    89
		return false;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    90
	}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    91
	return true;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    92
}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    93
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    94
DEF_CONSOLE_CMD_HOOK(ConCmdHookNeedNetwork)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
    95
{
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    96
	if (!_network_available) {
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    97
		IConsoleError("You can not use this command because there is no network available.");
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    98
		return false;
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
    99
	}
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   100
	if (!_networking) {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   101
		IConsoleError("Not connected. Multiplayer only command.");
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   102
		return false;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   103
	}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   104
	return true;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   105
}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   106
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   107
#endif /* ENABLE_NETWORK */
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   108
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   109
/* **************************** */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   110
/* reset commands               */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   111
/* **************************** */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   112
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   113
DEF_CONSOLE_CMD(ConResetEngines)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   114
{
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   115
	StartupEngines();
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   116
	return 0;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   117
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   118
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   119
#ifdef _DEBUG
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   120
DEF_CONSOLE_CMD(ConResetTile)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   121
{
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   122
	if (argc == 2) {
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   123
		TileIndex tile = (TileIndex)GetArgumentInteger(argv[1]);
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   124
		DoClearSquare(tile);
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   125
	}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   126
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   127
	return 0;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   128
}
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   129
#endif
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   130
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   131
DEF_CONSOLE_CMD(ConScrollToTile)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   132
{
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   133
	if (argc == 2) {
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   134
		TileIndex tile = (TileIndex)GetArgumentInteger(argv[1]);
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   135
		ScrollMainWindowToTile(tile);
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   136
	}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   137
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   138
	return 0;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   139
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   140
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   141
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   142
// ********************************* //
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   143
// * Network Core Console Commands * //
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   144
// ********************************* //
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   145
#ifdef ENABLE_NETWORK
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   146
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   147
DEF_CONSOLE_CMD(ConStatus)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   148
{
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   149
	const char *status;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   150
	int lag;
716
8af847728d5b (svn r1168) -Cleanup: [Network] Cleaned the network code a bit. Added 'const'
truelight
parents: 693
diff changeset
   151
	const NetworkClientState *cs;
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   152
	const NetworkClientInfo *ci;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   153
	FOR_ALL_CLIENTS(cs) {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   154
		lag = NetworkCalculateLag(cs);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   155
		ci = DEREF_CLIENT_INFO(cs);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   156
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   157
		switch (cs->status) {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   158
			case STATUS_INACTIVE:
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   159
				status = "inactive";
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   160
				break;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   161
			case STATUS_AUTH:
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   162
				status = "authorized";
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   163
				break;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   164
			case STATUS_MAP:
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   165
				status = "loading map";
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   166
				break;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   167
			case STATUS_DONE_MAP:
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   168
				status = "done map";
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   169
				break;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   170
			case STATUS_PRE_ACTIVE:
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   171
				status = "ready";
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   172
				break;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   173
			case STATUS_ACTIVE:
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   174
				status = "active";
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   175
				break;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   176
			default:
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   177
				status = "unknown";
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   178
				break;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   179
		}
602
f0afb4018788 (svn r1026) -Add: [Network] Added unique id, so in network, each client has an
truelight
parents: 554
diff changeset
   180
		IConsolePrintF(8, "Client #%d/%s  status: %s  frame-lag: %d  play-as: %d  unique-id: %s",
f0afb4018788 (svn r1026) -Add: [Network] Added unique id, so in network, each client has an
truelight
parents: 554
diff changeset
   181
			cs->index, ci->client_name, status, lag, ci->client_playas, ci->unique_id);
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   182
	}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   183
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   184
	return NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   185
}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   186
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   187
DEF_CONSOLE_CMD(ConKick)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   188
{
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   189
	NetworkClientInfo *ci;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   190
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   191
	if (argc == 2) {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   192
		uint32 index = atoi(argv[1]);
783
59446ec28325 (svn r1250) -Fix: a dedicated server could not kick user number 1
truelight
parents: 778
diff changeset
   193
		if (index == NETWORK_SERVER_INDEX && !_network_dedicated) {
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   194
			IConsolePrint(_iconsole_color_default, "Silly boy, you can not kick yourself!");
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   195
			return NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   196
		}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   197
		if (index == 0) {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   198
			IConsoleError("Invalid Client-ID");
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   199
			return NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   200
		}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   201
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   202
		ci = NetworkFindClientInfoFromIndex(index);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   203
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   204
		if (ci != NULL) {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   205
			SEND_COMMAND(PACKET_SERVER_ERROR)(NetworkFindClientStateFromIndex(index), NETWORK_ERROR_KICKED);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   206
			return NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   207
		} else {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   208
			IConsoleError("Client-ID not found");
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   209
			return NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   210
		}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   211
	}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   212
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   213
	IConsolePrint(_iconsole_color_default, "Unknown usage. Usage: kick <client-id>. For client-ids, see 'clients'.");
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   214
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   215
	return NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   216
}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   217
688
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   218
DEF_CONSOLE_CMD(ConResetCompany)
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   219
{
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   220
	Player *p;
716
8af847728d5b (svn r1168) -Cleanup: [Network] Cleaned the network code a bit. Added 'const'
truelight
parents: 693
diff changeset
   221
	NetworkClientState *cs;
688
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   222
	NetworkClientInfo *ci;
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   223
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   224
	if (argc == 2) {
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   225
		uint32 index = atoi(argv[1]);
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   226
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   227
		/* Check valid range */
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   228
		if (index < 1 || index > MAX_PLAYERS) {
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   229
			IConsolePrintF(_iconsole_color_error, "Company does not exist. Company-ID must be between 1 and %d.", MAX_PLAYERS);
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   230
			return NULL;
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   231
		}
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   232
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   233
		/* Check if company does exist */
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   234
		index--;
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   235
		p = DEREF_PLAYER(index);
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   236
		if (!p->is_active) {
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   237
			IConsolePrintF(_iconsole_color_error, "Company does not exist.");
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   238
			return NULL;
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   239
		}
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   240
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   241
		if (p->is_ai) {
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   242
			IConsolePrintF(_iconsole_color_error, "Company is owned by an AI.");
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   243
			return NULL;
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   244
		}
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   245
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   246
		/* Check if the company has active players */
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   247
		FOR_ALL_CLIENTS(cs) {
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   248
			ci = DEREF_CLIENT_INFO(cs);
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   249
			if (ci->client_playas-1 == index) {
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   250
				IConsolePrintF(_iconsole_color_error, "Cannot remove company: a client is connected to that company.");
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   251
				return NULL;
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   252
			}
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   253
		}
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   254
		ci = NetworkFindClientInfoFromIndex(NETWORK_SERVER_INDEX);
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   255
		if (ci->client_playas-1 == index) {
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   256
			IConsolePrintF(_iconsole_color_error, "Cannot remove company: a client is connected to that company.");
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   257
			return NULL;
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   258
		}
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   259
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   260
		/* It is safe to remove this company */
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   261
		DoCommandP(0, 2, index, NULL, CMD_PLAYER_CTRL);
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   262
		IConsolePrint(_iconsole_color_default, "Company deleted.");
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   263
		return NULL;
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   264
	}
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   265
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   266
	IConsolePrint(_iconsole_color_default, "Unknown usage. Usage: reset_company <company-id>.");
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   267
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   268
	return NULL;
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   269
}
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   270
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   271
DEF_CONSOLE_CMD(ConNetworkClients)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   272
{
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   273
	NetworkClientInfo *ci;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   274
	for (ci = _network_client_info; ci != &_network_client_info[MAX_CLIENT_INFO]; ci++) {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   275
		if (ci->client_index != NETWORK_EMPTY_INDEX) {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   276
			IConsolePrintF(8,"Client #%d   name: %s  play-as: %d", ci->client_index, ci->client_name, ci->client_playas);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   277
		}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   278
	}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   279
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   280
	return NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   281
}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   282
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   283
DEF_CONSOLE_CMD(ConNetworkConnect)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   284
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   285
	char* ip;
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   286
	const byte *port = NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   287
	const byte *player = NULL;
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   288
	uint16 rport;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   289
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   290
	if (argc<2) return NULL;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   291
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   292
	if (_networking) {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   293
		// We are in network-mode, first close it!
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   294
		NetworkDisconnect();
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   295
	}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   296
228
f65dec6727d9 (svn r229) -Fix: Some more const stuff fixed .(Tron)
darkvater
parents: 222
diff changeset
   297
	ip = argv[1];
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   298
	rport = NETWORK_DEFAULT_PORT;
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   299
228
f65dec6727d9 (svn r229) -Fix: Some more const stuff fixed .(Tron)
darkvater
parents: 222
diff changeset
   300
	ParseConnectionString(&player, &port, ip);
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   301
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   302
	IConsolePrintF(_iconsole_color_default, "Connecting to %s...", ip);
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   303
	if (player != NULL) {
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   304
		_network_playas = atoi(player);
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   305
		IConsolePrintF(_iconsole_color_default, "    player-no: %s", player);
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   306
	}
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   307
	if (port != NULL) {
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   308
		rport = atoi(port);
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   309
		IConsolePrintF(_iconsole_color_default, "    port: %s", port);
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   310
	}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   311
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   312
	NetworkClientConnectGame(ip, rport);
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   313
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   314
	return NULL;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   315
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   316
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   317
#endif /* ENABLE_NETWORK */
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   318
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   319
/* ******************************** */
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   320
/*   script file console commands   */
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   321
/* ******************************** */
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   322
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   323
DEF_CONSOLE_CMD(ConExec)
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   324
{
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   325
	char cmd[1024];
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   326
	bool doerror;
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   327
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   328
	if (argc<2) return NULL;
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   329
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   330
	doerror = true;
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   331
	_script_file = fopen(argv[1], "r");
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   332
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   333
	if (_script_file == NULL) {
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   334
		if (argc>2) if (atoi(argv[2])==0) doerror=false;
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   335
		if (doerror) IConsoleError("script file not found");
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   336
		return NULL;
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   337
		}
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   338
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   339
	_script_running = true;
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   340
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   341
	fgets(cmd, sizeof(cmd), _script_file);
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   342
	while (!feof(_script_file) && _script_running) {
636
2e51f3726f32 (svn r1067) -Add: [Console] Added comment for scripts (everything behind the # is
truelight
parents: 634
diff changeset
   343
		strtok(cmd, "\r\n#");
2e51f3726f32 (svn r1067) -Add: [Console] Added comment for scripts (everything behind the # is
truelight
parents: 634
diff changeset
   344
		if (strlen(cmd) > 0 && cmd[0] != '#')
2e51f3726f32 (svn r1067) -Add: [Console] Added comment for scripts (everything behind the # is
truelight
parents: 634
diff changeset
   345
			IConsoleCmdExec(cmd);
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   346
		fgets(cmd, sizeof(cmd), _script_file);
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   347
	}
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   348
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   349
	_script_running = false;
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   350
	fclose(_script_file);
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   351
	return NULL;
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   352
}
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   353
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   354
DEF_CONSOLE_CMD(ConReturn)
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   355
{
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   356
	_script_running = false;
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   357
	return NULL;
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   358
}
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   359
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   360
/* **************************** */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   361
/*   default console commands   */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   362
/* **************************** */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   363
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   364
DEF_CONSOLE_CMD(ConScript)
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   365
{
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   366
	extern FILE* _iconsole_output_file;
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   367
	if (_iconsole_output_file != NULL) {
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   368
		IConsolePrintF(_iconsole_color_default, "file output complete");
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   369
		fclose(_iconsole_output_file);
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   370
	} else {
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   371
		if (argc < 2) return NULL;
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   372
		IConsolePrintF(_iconsole_color_default, "file output started to: %s",
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   373
			argv[1]);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   374
		_iconsole_output_file = fopen(argv[1], "ab");
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   375
		if (_iconsole_output_file == NULL) IConsoleError("could not open file");
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   376
	}
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   377
	return NULL;
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   378
}
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   379
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   380
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   381
DEF_CONSOLE_CMD(ConEcho)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   382
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   383
	if (argc < 2) return NULL;
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   384
	IConsolePrint(_iconsole_color_default, argv[1]);
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   385
	return NULL;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   386
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   387
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   388
DEF_CONSOLE_CMD(ConEchoC)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   389
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   390
	if (argc < 3) return NULL;
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   391
	IConsolePrint(atoi(argv[1]), argv[2]);
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   392
	return NULL;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   393
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   394
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   395
extern void SwitchMode(int new_mode);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   396
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   397
DEF_CONSOLE_CMD(ConNewGame)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   398
{
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   399
	_docommand_recursive = 0;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   400
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   401
	_random_seeds[0][0] = Random();
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   402
	_random_seeds[0][1] = InteractiveRandom();
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   403
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   404
	SwitchMode(SM_NEWGAME);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   405
	return NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   406
}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   407
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   408
DEF_CONSOLE_CMD(ConPrintF)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   409
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   410
	if (argc < 3) return NULL;
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   411
	IConsolePrintF(_iconsole_color_default, argv[1] , argv[2], argv[3], argv[4], argv[5], argv[6], argv[7], argv[8], argv[9], argv[10], argv[11], argv[12], argv[13], argv[14], argv[15], argv[16], argv[17], argv[18], argv[19]); /* XXX ugh... */
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   412
	return NULL;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   413
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   414
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   415
DEF_CONSOLE_CMD(ConPrintFC)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   416
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   417
	if (argc < 3) return NULL;
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   418
	IConsolePrintF(atoi(argv[1]), argv[2] , argv[3], argv[4], argv[5], argv[6], argv[7], argv[8], argv[9], argv[10], argv[11], argv[12], argv[13], argv[14], argv[15], argv[16], argv[17], argv[18], argv[19]); /* XXX ugh... */
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   419
	return NULL;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   420
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   421
634
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   422
DEF_CONSOLE_CMD(ConAlias)
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   423
{
644
cd687cdec701 (svn r1077) Implements scripts/autoexec.scr to get executed on game starting (sign_de)
dominik
parents: 637
diff changeset
   424
	_iconsole_alias* alias;
cd687cdec701 (svn r1077) Implements scripts/autoexec.scr to get executed on game starting (sign_de)
dominik
parents: 637
diff changeset
   425
634
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   426
	if (argc < 3) return NULL;
644
cd687cdec701 (svn r1077) Implements scripts/autoexec.scr to get executed on game starting (sign_de)
dominik
parents: 637
diff changeset
   427
cd687cdec701 (svn r1077) Implements scripts/autoexec.scr to get executed on game starting (sign_de)
dominik
parents: 637
diff changeset
   428
	alias = IConsoleAliasGet(argv[1]);
cd687cdec701 (svn r1077) Implements scripts/autoexec.scr to get executed on game starting (sign_de)
dominik
parents: 637
diff changeset
   429
	if (alias == NULL) {
cd687cdec701 (svn r1077) Implements scripts/autoexec.scr to get executed on game starting (sign_de)
dominik
parents: 637
diff changeset
   430
		IConsoleAliasRegister(argv[1],argv[2]);
cd687cdec701 (svn r1077) Implements scripts/autoexec.scr to get executed on game starting (sign_de)
dominik
parents: 637
diff changeset
   431
	} else {
cd687cdec701 (svn r1077) Implements scripts/autoexec.scr to get executed on game starting (sign_de)
dominik
parents: 637
diff changeset
   432
		free(alias->cmdline);
cd687cdec701 (svn r1077) Implements scripts/autoexec.scr to get executed on game starting (sign_de)
dominik
parents: 637
diff changeset
   433
		alias->cmdline = strdup(argv[2]);
cd687cdec701 (svn r1077) Implements scripts/autoexec.scr to get executed on game starting (sign_de)
dominik
parents: 637
diff changeset
   434
	}
634
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   435
	return NULL;
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   436
}
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   437
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   438
DEF_CONSOLE_CMD(ConScreenShot)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   439
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   440
	if (argc < 2) {
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   441
		_make_screenshot = 1;
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   442
	} else {
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   443
		if (strcmp(argv[1], "big") == 0)
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   444
			_make_screenshot=2;
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   445
		if (strcmp(argv[1], "no_con") == 0) {
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   446
			IConsoleClose();
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   447
			_make_screenshot = 1;
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   448
		}
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   449
	}
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   450
	return NULL;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   451
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   452
229
b94bfdf02bae (svn r230) -Feature: IConsoleWarning for warning messages
signde
parents: 228
diff changeset
   453
DEF_CONSOLE_CMD(ConInfoVar)
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   454
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   455
	if (argc < 2) return NULL;
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   456
	if (argt[1] != ICONSOLE_VAR_REFERENCE) {
232
c3d08de192ed (svn r233) -Fix: german language fixes (Tron)
signde
parents: 229
diff changeset
   457
		IConsoleError("first argument has to be a variable reference");
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   458
	} else {
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   459
		_iconsole_var* item;
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   460
		item = (_iconsole_var*)argv[1];
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   461
		IConsolePrintF(_iconsole_color_default, "var_name: %s", item->name);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   462
		IConsolePrintF(_iconsole_color_default, "var_type: %i", item->type);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   463
		IConsolePrintF(_iconsole_color_default, "var_addr: %i", item->data.addr);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   464
		if (item->_malloc)
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   465
			IConsolePrintF(_iconsole_color_default, "var_malloc: internal");
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   466
		else
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   467
			IConsolePrintF(_iconsole_color_default, "var_malloc: external");
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   468
		if (item->hook_access) IConsoleWarning("var_access hooked");
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   469
		if (item->hook_before_change) IConsoleWarning("var_before_change hooked");
229
b94bfdf02bae (svn r230) -Feature: IConsoleWarning for warning messages
signde
parents: 228
diff changeset
   470
		if (item->hook_after_change) IConsoleWarning("var_after_change hooked");
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   471
	}
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   472
	return NULL;
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   473
}
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   474
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   475
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   476
DEF_CONSOLE_CMD(ConInfoCmd)
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   477
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   478
	if (argc < 2) return NULL;
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   479
	if (argt[1] != ICONSOLE_VAR_UNKNOWN) {
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   480
		IConsoleError("first argument has to be a command name");
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   481
	} else {
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   482
		_iconsole_cmd* item;
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   483
		item = IConsoleCmdGet(argv[1]);
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   484
		if (item == NULL) {
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   485
			IConsoleError("the given command was not found");
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   486
			return NULL;
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   487
		}
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   488
		IConsolePrintF(_iconsole_color_default, "cmd_name: %s", item->name);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   489
		IConsolePrintF(_iconsole_color_default, "cmd_addr: %i", item->addr);
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   490
		if (item->hook_access) IConsoleWarning("cmd_access hooked");
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   491
		if (item->hook_before_exec) IConsoleWarning("cmd_before_exec hooked");
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   492
		if (item->hook_after_exec) IConsoleWarning("cmd_after_exec hooked");
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   493
	}
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   494
	return NULL;
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   495
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   496
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   497
DEF_CONSOLE_CMD(ConDebugLevel)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   498
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   499
	if (argc < 2) return NULL;
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   500
	SetDebugString(argv[1]);
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   501
	return NULL;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   502
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   503
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   504
DEF_CONSOLE_CMD(ConExit)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   505
{
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   506
	_exit_game = true;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   507
	return NULL;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   508
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   509
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   510
DEF_CONSOLE_CMD(ConHelp)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   511
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   512
	IConsolePrint(13, " -- console help -- ");
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   513
	IConsolePrint( 1, " variables: [command to list them: list_vars]");
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   514
	IConsolePrint( 1, " temp_string = \"my little \"");
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   515
	IConsolePrint( 1, "");
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   516
	IConsolePrint( 1, " commands: [command to list them: list_cmds]");
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   517
	IConsolePrint( 1, " [command] [\"string argument with spaces\"] [argument 2] ...");
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   518
	IConsolePrint( 1, " printf \"%s world\" temp_string");
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   519
	IConsolePrint( 1, "");
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   520
	IConsolePrint( 1, " command/variable returning a value into an variable:");
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   521
	IConsolePrint( 1, " temp_uint16 << random");
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   522
	IConsolePrint( 1, " temp_uint16 << temp_uint16_2");
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   523
	IConsolePrint( 1, "");
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   524
	return NULL;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   525
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   526
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   527
DEF_CONSOLE_CMD(ConRandom)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   528
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   529
	_iconsole_var* result;
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   530
	result = IConsoleVarAlloc(ICONSOLE_VAR_UINT16);
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   531
	IConsoleVarSetValue(result, rand());
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   532
	return result;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   533
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   534
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   535
DEF_CONSOLE_CMD(ConListCommands)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   536
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   537
	const _iconsole_cmd* item;
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   538
	size_t l = 0;
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   539
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   540
	if (argv[1] != NULL) l = strlen(argv[1]);
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   541
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   542
	for (item = _iconsole_cmds; item != NULL; item = item->_next)
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   543
		if (argv[1] == NULL || strncmp(item->name, argv[1], l) == 0)
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   544
			IConsolePrintF(_iconsole_color_default, "%s", item->name);
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   545
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   546
	return NULL;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   547
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   548
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   549
DEF_CONSOLE_CMD(ConListVariables)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   550
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   551
	const _iconsole_var* item;
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   552
	size_t l = 0;
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   553
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   554
	if (argv[1] != NULL) l = strlen(argv[1]);
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   555
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   556
	for (item = _iconsole_vars; item != NULL; item = item->_next)
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   557
		if (argv[1] == NULL || strncmp(item->name, argv[1], l) == 0)
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   558
			IConsolePrintF(_iconsole_color_default, "%s", item->name);
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   559
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   560
	return NULL;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   561
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   562
634
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   563
DEF_CONSOLE_CMD(ConListAliases)
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   564
{
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   565
	const _iconsole_alias* item;
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   566
	size_t l = 0;
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   567
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   568
	if (argv[1] != NULL) l = strlen(argv[1]);
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   569
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   570
	for (item = _iconsole_aliases; item != NULL; item = item->_next)
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   571
		if (argv[1] == NULL || strncmp(item->name, argv[1], l) == 0)
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   572
			IConsolePrintF(_iconsole_color_default, "%s => %s", item->name, item->cmdline);
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   573
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   574
	return NULL;
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   575
}
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   576
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   577
DEF_CONSOLE_CMD(ConListDumpVariables)
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   578
{
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   579
	const _iconsole_var* item;
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   580
	size_t l = 0;
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   581
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   582
	if (argv[1] != NULL) l = strlen(argv[1]);
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   583
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   584
	for (item = _iconsole_vars; item != NULL; item = item->_next)
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   585
		if (argv[1] == NULL || strncmp(item->name, argv[1], l) == 0)
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   586
			IConsoleVarDump(item, NULL);
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   587
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   588
	return NULL;
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   589
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   590
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   591
#ifdef ENABLE_NETWORK
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   592
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   593
DEF_CONSOLE_CMD(ConSay)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   594
{
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   595
	if (argc == 2) {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   596
		if (!_network_server)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   597
			SEND_COMMAND(PACKET_CLIENT_CHAT)(NETWORK_ACTION_CHAT, DESTTYPE_BROADCAST, 0 /* param does not matter */, argv[1]);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   598
		else
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   599
			NetworkServer_HandleChat(NETWORK_ACTION_CHAT, DESTTYPE_BROADCAST, 0, argv[1], NETWORK_SERVER_INDEX);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   600
	} else
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   601
		IConsolePrint(_iconsole_color_default, "Unknown usage. Usage: say \"<msg>\"");
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   602
	return NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   603
}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   604
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   605
DEF_CONSOLE_CMD(ConSayPlayer)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   606
{
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   607
	if (argc == 3) {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   608
		if (atoi(argv[1]) < 1 || atoi(argv[1]) > MAX_PLAYERS) {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   609
			IConsolePrintF(_iconsole_color_default, "Unknown player. Player range is between 1 and %d.", MAX_PLAYERS);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   610
			return NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   611
		}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   612
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   613
		if (!_network_server)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   614
			SEND_COMMAND(PACKET_CLIENT_CHAT)(NETWORK_ACTION_CHAT_PLAYER, DESTTYPE_PLAYER, atoi(argv[1]), argv[2]);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   615
		else
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   616
			NetworkServer_HandleChat(NETWORK_ACTION_CHAT_PLAYER, DESTTYPE_PLAYER, atoi(argv[1]), argv[2], NETWORK_SERVER_INDEX);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   617
	} else
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   618
		IConsolePrint(_iconsole_color_default, "Unknown usage. Usage: say_player <playerno> \"<msg>\"");
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   619
	return NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   620
}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   621
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   622
DEF_CONSOLE_CMD(ConSayClient)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   623
{
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   624
	if (argc == 3) {
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   625
		if (!_network_server)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   626
			SEND_COMMAND(PACKET_CLIENT_CHAT)(NETWORK_ACTION_CHAT_CLIENT, DESTTYPE_CLIENT, atoi(argv[1]), argv[2]);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   627
		else
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   628
			NetworkServer_HandleChat(NETWORK_ACTION_CHAT_CLIENT, DESTTYPE_CLIENT, atoi(argv[1]), argv[2], NETWORK_SERVER_INDEX);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   629
	} else
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   630
		IConsolePrint(_iconsole_color_default, "Unknown usage. Usage: say_client <clientno> \"<msg>\"");
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   631
	return NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   632
}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   633
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   634
#endif /* ENABLE_NETWORK */
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   635
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   636
/* **************************** */
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   637
/*   the "set" command          */
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   638
/* **************************** */
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   639
627
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   640
extern void ConsoleSetPatchSetting(char *name, char *value);
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   641
extern void ConsoleGetPatchSetting(char *name);
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   642
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   643
DEF_CONSOLE_CMD(ConSet) {
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   644
	if (argc < 2) {
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   645
		IConsolePrint(_iconsole_color_warning, "Unknonw usage. Usage: set [setting] [value].");
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   646
		return NULL;
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   647
	}
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   648
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   649
#ifdef ENABLE_NETWORK
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   650
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   651
	// setting the server password
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   652
	if ((strcmp(argv[1],"server_pw") == 0) || (strcmp(argv[1],"server_password") == 0)) {
627
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   653
		if (!_network_server) {
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   654
			IConsolePrintF(_iconsole_color_error, "You are not the server");
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   655
			return NULL;
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   656
		}
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   657
		if (argc == 3) {
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   658
			// Change server password
665
e13a14eaf628 (svn r1101) -Fix: [Console] Removed magic numbers
truelight
parents: 664
diff changeset
   659
			if (strncmp(argv[2], "*", NETWORK_PASSWORD_LENGTH) == 0) {
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   660
				_network_game_info.server_password[0] = '\0';
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   661
				_network_game_info.use_password = 0;
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   662
			} else {
666
49beb75bb3a2 (svn r1102) -Fix: [Console] 'set server_pw' was acting crazy when you typed more
truelight
parents: 665
diff changeset
   663
				ttd_strlcpy(_network_game_info.server_password, argv[2], sizeof(_network_game_info.server_password));
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   664
				_network_game_info.use_password = 1;
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   665
			}
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   666
			IConsolePrintF(_iconsole_color_warning, "Game-password changed to '%s'", _network_game_info.server_password);
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   667
		} else {
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   668
			IConsolePrintF(_iconsole_color_default, "Current game-password is set to '%s'", _network_game_info.server_password);
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   669
			IConsolePrint(_iconsole_color_warning, "Usage: set server_pw \"<password>\".   Use * as <password> to set no password.");
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   670
		}
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   671
		return NULL;
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   672
	}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   673
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   674
	// setting the company password
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   675
	if ((strcmp(argv[1],"company_pw") == 0) || (strcmp(argv[1],"company_password") == 0)) {
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   676
		if (!_networking) {
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   677
			IConsolePrintF(_iconsole_color_error,"No network game running");
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   678
			return NULL;
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   679
		}
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   680
		if (_local_player >= MAX_PLAYERS) {
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   681
			IConsolePrintF(_iconsole_color_default, "You have to own a company to make use of this command.");
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   682
			return NULL;
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   683
		}
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   684
		if (argc == 3) {
773
a376cebd3dc0 (svn r1239) -Feature: Added gui option of setting company password. It can be found in the 'company information' window
darkvater
parents: 766
diff changeset
   685
			NetworkChangeCompanyPassword(argv[2]);
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   686
		} else {
773
a376cebd3dc0 (svn r1239) -Feature: Added gui option of setting company password. It can be found in the 'company information' window
darkvater
parents: 766
diff changeset
   687
			IConsolePrint(_iconsole_color_default, "'set company_pw' sets a password for your company, so no-one without the correct password can join.");
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   688
			IConsolePrint(_iconsole_color_warning, "Usage: set company_pw \"<password>\".   Use * as <password> to set no password.");
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   689
		}
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   690
		return NULL;
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   691
	}
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   692
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   693
	// setting the player name
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   694
	if (strcmp(argv[1],"name") == 0) {
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   695
		NetworkClientInfo *ci;
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   696
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   697
		if (!_networking) {
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   698
			IConsolePrintF(_iconsole_color_error,"No network game running");
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   699
			return NULL;
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   700
		}
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   701
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   702
		ci = NetworkFindClientInfoFromIndex(_network_own_client_index);
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   703
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   704
		if (argc == 3 && ci != NULL) {
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   705
			if (!_network_server)
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   706
				SEND_COMMAND(PACKET_CLIENT_SET_NAME)(argv[2]);
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   707
			else {
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   708
				if (NetworkFindName(argv[2])) {
722
f420fa9bd521 (svn r1174) -Fix: [Network] All strings can now be translated (no more hardcoded strings)
truelight
parents: 716
diff changeset
   709
					NetworkTextMessage(NETWORK_ACTION_NAME_CHANGE, 1, false, ci->client_name, argv[2]);
665
e13a14eaf628 (svn r1101) -Fix: [Console] Removed magic numbers
truelight
parents: 664
diff changeset
   710
					ttd_strlcpy(ci->client_name, argv[2], sizeof(ci->client_name));
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   711
					NetworkUpdateClientInfo(NETWORK_SERVER_INDEX);
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   712
				}
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   713
			}
637
d3c50c368bb3 (svn r1068) -Fix: [Console] Let the client remember his own name-change
truelight
parents: 636
diff changeset
   714
			/* Also keep track of the new name on the client itself */
665
e13a14eaf628 (svn r1101) -Fix: [Console] Removed magic numbers
truelight
parents: 664
diff changeset
   715
			ttd_strlcpy(_network_player_name, argv[2], sizeof(_network_player_name));
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   716
		} else {
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   717
			IConsolePrint(_iconsole_color_default, "With 'set name' you can change your network-player name.");
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   718
			IConsolePrint(_iconsole_color_warning, "Usage: set name \"<name>\".");
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   719
		}
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   720
		return NULL;
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   721
	}
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   722
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   723
	// setting the server name
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   724
	if (strcmp(argv[1],"server_name") == 0) {
627
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   725
		if (!_network_server) {
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   726
			IConsolePrintF(_iconsole_color_error, "You are not the server");
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   727
			return NULL;
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   728
		}
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   729
		if (argc == 3) {
693
5b1c1929bb91 (svn r1137) -Fix: [Network] Replaces all strncpy with ttd_strlcpy.. windows really
truelight
parents: 690
diff changeset
   730
			ttd_strlcpy(_network_server_name, argv[2], sizeof(_network_server_name));
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   731
			IConsolePrintF(_iconsole_color_warning, "Server-name changed to '%s'", _network_server_name);
665
e13a14eaf628 (svn r1101) -Fix: [Console] Removed magic numbers
truelight
parents: 664
diff changeset
   732
			ttd_strlcpy(_network_game_info.server_name, _network_server_name, sizeof(_network_game_info.server_name));
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   733
		} else {
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   734
			IConsolePrintF(_iconsole_color_default, "Current server-name is '%s'", _network_server_name);
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   735
			IConsolePrint(_iconsole_color_warning, "Usage: set server_name \"<GameName>\".");
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   736
		}
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   737
		return NULL;
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   738
	}
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   739
629
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   740
	// setting the server port
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   741
	if (strcmp(argv[1],"server_port") == 0) {
627
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   742
		if (argc == 3 && atoi(argv[2]) != 0) {
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   743
			_network_server_port = atoi(argv[2]);
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   744
			IConsolePrintF(_iconsole_color_warning, "Server-port changed to '%d'", _network_server_port);
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   745
			IConsolePrintF(_iconsole_color_warning, "Changes will take effect the next time you start a server.");
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   746
		} else {
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   747
			IConsolePrintF(_iconsole_color_default, "Current server-port is '%d'", _network_server_port);
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   748
			IConsolePrint(_iconsole_color_warning, "Usage: set server_port <port>.");
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   749
		}
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   750
		return NULL;
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   751
	}
5495f77a0e7c (svn r1057) -Add: [Network] 'set port <port>' changes the port of the server (after reboot)
truelight
parents: 625
diff changeset
   752
629
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   753
	// setting the server ip
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   754
	if (strcmp(argv[1],"server_bind_ip") == 0 || strcmp(argv[1],"server_ip_bind") == 0 ||
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   755
			strcmp(argv[1],"server_ip") == 0 || strcmp(argv[1],"server_bind") == 0) {
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   756
		if (argc == 3) {
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   757
			_network_server_bind_ip = inet_addr(argv[2]);
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   758
			snprintf(_network_server_bind_ip_host, sizeof(_network_server_bind_ip_host), "%s", inet_ntoa(*(struct in_addr *)&_network_server_bind_ip));
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   759
			IConsolePrintF(_iconsole_color_warning, "Server-bind-ip changed to '%s'", _network_server_bind_ip_host);
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   760
			IConsolePrintF(_iconsole_color_warning, "Changes will take effect the next time you start a server.");
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   761
		} else {
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   762
			IConsolePrintF(_iconsole_color_default, "Current server-bind-ip is '%s'", _network_server_bind_ip_host);
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   763
			IConsolePrint(_iconsole_color_warning, "Usage: set server_bind_ip <ip>.");
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   764
		}
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   765
		return NULL;
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   766
	}
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   767
678
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   768
	// setting the server advertising on/off
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   769
	if (strcmp(argv[1],"server_advertise") == 0) {
688
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   770
		if (!_network_server) {
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   771
			IConsolePrintF(_iconsole_color_error, "You are not the server");
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   772
			return NULL;
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   773
		}
678
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   774
		if (argc == 3) {
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   775
			if (strcmp(argv[2], "on") == 0 || atoi(argv[2]) == 1)
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   776
				_network_advertise = true;
765
18104986675d (svn r1228) -Add: [Network] When a server normally shuts down, it removed itself
truelight
parents: 722
diff changeset
   777
			else {
18104986675d (svn r1228) -Add: [Network] When a server normally shuts down, it removed itself
truelight
parents: 722
diff changeset
   778
				NetworkUDPRemoveAdvertise();
678
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   779
				_network_advertise = false;
765
18104986675d (svn r1228) -Add: [Network] When a server normally shuts down, it removed itself
truelight
parents: 722
diff changeset
   780
			}
678
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   781
			IConsolePrintF(_iconsole_color_warning, "Server-advertise changed to '%s'", (_network_advertise)?"on":"off");
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   782
		} else {
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   783
			IConsolePrintF(_iconsole_color_default, "Current server-advertise is '%s'", (_network_advertise)?"on":"off");
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   784
			IConsolePrint(_iconsole_color_warning, "Usage: set server_advertise on/off.");
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   785
		}
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   786
		return NULL;
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   787
	}
f62cae2abc0c (svn r1116) -Add: [Console] With 'set server_advertise on/off' you can put server
truelight
parents: 666
diff changeset
   788
690
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   789
	// setting the server autoclean on/off
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   790
	if (strcmp(argv[1],"autoclean_companies") == 0) {
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   791
		if (!_network_server) {
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   792
			IConsolePrintF(_iconsole_color_error, "You are not the server");
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   793
			return NULL;
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   794
		}
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   795
		if (argc == 3) {
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   796
			if (strcmp(argv[2], "on") == 0 || atoi(argv[2]) == 1)
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   797
				_network_autoclean_companies = true;
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   798
			else
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   799
				_network_autoclean_companies = false;
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   800
			IConsolePrintF(_iconsole_color_warning, "Autoclean-companies changed to '%s'", (_network_autoclean_companies)?"on":"off");
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   801
		} else {
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   802
			IConsolePrintF(_iconsole_color_default, "Current autoclean-companies is '%s'", (_network_autoclean_companies)?"on":"off");
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   803
			IConsolePrint(_iconsole_color_warning, "Usage: set autoclean_companies on/off.");
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   804
		}
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   805
		return NULL;
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   806
	}
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   807
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   808
	// setting the server autoclean protected
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   809
	if (strcmp(argv[1],"autoclean_protected") == 0) {
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   810
		if (!_network_server) {
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   811
			IConsolePrintF(_iconsole_color_error, "You are not the server");
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   812
			return NULL;
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   813
		}
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   814
		if (argc == 3) {
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   815
			_network_autoclean_protected = atoi(argv[2]);
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   816
			IConsolePrintF(_iconsole_color_warning, "Autoclean-protected changed to '%d'", _network_autoclean_protected);
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   817
		} else {
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   818
			IConsolePrintF(_iconsole_color_default, "Current autoclean-protected is '%d'", _network_autoclean_protected);
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   819
			IConsolePrint(_iconsole_color_warning, "Usage: set autoclean_protected <months>.");
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   820
		}
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   821
		return NULL;
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   822
	}
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   823
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   824
	// setting the server autoclean protected
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   825
	if (strcmp(argv[1],"autoclean_unprotected") == 0) {
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   826
		if (!_network_server) {
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   827
			IConsolePrintF(_iconsole_color_error, "You are not the server");
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   828
			return NULL;
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   829
		}
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   830
		if (argc == 3) {
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   831
			_network_autoclean_unprotected = atoi(argv[2]);
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   832
			IConsolePrintF(_iconsole_color_warning, "Autoclean-unprotected changed to '%d'", _network_autoclean_unprotected);
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   833
		} else {
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   834
			IConsolePrintF(_iconsole_color_default, "Current autoclean-unprotected is '%d'", _network_autoclean_unprotected);
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   835
			IConsolePrint(_iconsole_color_warning, "Usage: set autoclean_unprotected <months>.");
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   836
		}
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   837
		return NULL;
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   838
	}
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   839
785
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   840
	// setting the server auto restart date
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   841
	if (strcmp(argv[1],"restart_game_date") == 0) {
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   842
		if (!_network_server) {
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   843
			IConsolePrintF(_iconsole_color_error, "You are not the server");
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   844
			return NULL;
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   845
		}
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   846
		if (argc == 3) {
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   847
			_network_restart_game_date = atoi(argv[2]);
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   848
			IConsolePrintF(_iconsole_color_warning, "Restart Game Date changed to '%d'", _network_restart_game_date);
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   849
		} else {
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   850
			IConsolePrintF(_iconsole_color_default, "Current Restart Game Date is '%d'", _network_restart_game_date);
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   851
			IConsolePrint(_iconsole_color_warning, "Usage: set restart_game_date <year>. '0' means disabled.");
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   852
			IConsolePrint(_iconsole_color_warning, " Auto-restart the server when 1 jan of this year is reached (e.g.: 2030).");
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   853
		}
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   854
		return NULL;
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   855
	}
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   856
629
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   857
#endif /* ENABLE_NETWORK */
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   858
625
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   859
	// Patch-options
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   860
	if (strcmp(argv[1],"patch") == 0) {
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   861
		if (_networking && !_network_server) {
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   862
			IConsolePrintF(_iconsole_color_error, "You are not the server");
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   863
			return NULL;
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   864
		}
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   865
		if (argc == 3)
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   866
			ConsoleGetPatchSetting(argv[2]);
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   867
		else if (argc == 4)
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   868
			ConsoleSetPatchSetting(argv[2], argv[3]);
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   869
		else
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   870
			IConsolePrint(_iconsole_color_warning, "Usage: set patch <patch_name> [<value>].");
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   871
		return NULL;
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   872
	}
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   873
40c83b088bb8 (svn r1055) -Add: [Console] Special for dedicated servers:
truelight
parents: 623
diff changeset
   874
629
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   875
	IConsolePrint(_iconsole_color_error, "Unknown setting");
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   876
	IConsolePrint(_iconsole_color_error, "Known settings are:");
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   877
#ifdef ENABLE_NETWORK
690
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   878
	IConsolePrint(_iconsole_color_error, " - autoclean_companies on/off");
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   879
	IConsolePrint(_iconsole_color_error, " - autoclean_protected <months>");
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   880
	IConsolePrint(_iconsole_color_error, " - autoclean_unprotected <months>");
629
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   881
	IConsolePrint(_iconsole_color_error, " - company_pw \"<password>\"");
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   882
	IConsolePrint(_iconsole_color_error, " - name \"<playername>\"");
690
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   883
	IConsolePrint(_iconsole_color_error, " - server_name \"<name>\"");
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   884
	IConsolePrint(_iconsole_color_error, " - server_advertise on/off");
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   885
	IConsolePrint(_iconsole_color_error, " - server_bind_ip <ip>");
629
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   886
	IConsolePrint(_iconsole_color_error, " - server_port <port>");
690
3afcad69d4f7 (svn r1131) -Add: [Network] Autoclean_companies (set it with 'set autoclean_companies on/off').
truelight
parents: 688
diff changeset
   887
	IConsolePrint(_iconsole_color_error, " - server_pw \"<password>\"");
785
bba7b3b35dec (svn r1252) -Add: [Network] With 'set restart_game_date' you can set the date for in
truelight
parents: 784
diff changeset
   888
	IConsolePrint(_iconsole_color_error, " - restart_game_date \"<year>\"");
629
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   889
#endif /* ENABLE_NETWORK */
4bb1f0fb0109 (svn r1059) -Fix: [Console] Renamed 'set port' to 'set server_port'
truelight
parents: 628
diff changeset
   890
	IConsolePrint(_iconsole_color_error, " - patch <patch_name> [<value>]");
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   891
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   892
	return NULL;
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   893
}
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   894
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   895
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   896
#ifdef _DEBUG
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   897
/* ****************************************** */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   898
/*  debug commands and variables */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   899
/* ****************************************** */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   900
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   901
void IConsoleDebugLibRegister()
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   902
{
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   903
	// debugging variables and functions
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   904
	extern bool _stdlib_con_developer; /* XXX extern in .c */
247
1cbc32ff06eb (svn r248) -Feature: console script files "exec myscript.file"
darkvater
parents: 232
diff changeset
   905
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   906
	IConsoleVarRegister("con_developer", &_stdlib_con_developer, ICONSOLE_VAR_BOOLEAN);
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   907
	IConsoleVarMemRegister("temp_string", ICONSOLE_VAR_STRING);
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   908
	IConsoleVarMemRegister("temp_string2", ICONSOLE_VAR_STRING);
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   909
	IConsoleVarMemRegister("temp_bool", ICONSOLE_VAR_BOOLEAN);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   910
	IConsoleVarMemRegister("temp_int16", ICONSOLE_VAR_INT16);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   911
	IConsoleVarMemRegister("temp_int32", ICONSOLE_VAR_INT32);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   912
	IConsoleVarMemRegister("temp_pointer", ICONSOLE_VAR_POINTER);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   913
	IConsoleVarMemRegister("temp_uint16", ICONSOLE_VAR_UINT16);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   914
	IConsoleVarMemRegister("temp_uint16_2", ICONSOLE_VAR_UINT16);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   915
	IConsoleVarMemRegister("temp_uint32", ICONSOLE_VAR_UINT32);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   916
	IConsoleCmdRegister("resettile", ConResetTile);
634
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   917
	IConsoleAliasRegister("dbg_echo","echo %A; echo %B");
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   918
	IConsoleAliasRegister("dbg_echo2","echo %+");
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   919
}
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   920
#endif
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   921
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   922
/* ****************************************** */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   923
/*  console command and variable registration */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   924
/* ****************************************** */
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   925
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   926
void IConsoleStdLibRegister(void)
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   927
{
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   928
	// stdlib
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   929
	extern byte _stdlib_developer; /* XXX extern in .c */
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   930
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   931
	// default variables and functions
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   932
	IConsoleCmdRegister("debug_level",  ConDebugLevel);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   933
	IConsoleCmdRegister("dump_vars",    ConListDumpVariables);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   934
	IConsoleCmdRegister("echo",         ConEcho);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   935
	IConsoleCmdRegister("echoc",        ConEchoC);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   936
	IConsoleCmdRegister("exec",         ConExec);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   937
	IConsoleCmdRegister("exit",         ConExit);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   938
	IConsoleCmdRegister("help",         ConHelp);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   939
	IConsoleCmdRegister("info_cmd",     ConInfoCmd);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   940
	IConsoleCmdRegister("info_var",     ConInfoVar);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   941
	IConsoleCmdRegister("list_cmds",    ConListCommands);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   942
	IConsoleCmdRegister("list_vars",    ConListVariables);
634
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   943
	IConsoleCmdRegister("list_aliases",    ConListAliases);
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   944
	IConsoleCmdRegister("newgame",         ConNewGame);
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   945
	IConsoleCmdRegister("printf",       ConPrintF);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   946
	IConsoleCmdRegister("printfc",      ConPrintFC);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   947
	IConsoleCmdRegister("quit",         ConExit);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   948
	IConsoleCmdRegister("random",       ConRandom);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   949
	IConsoleCmdRegister("resetengines", ConResetEngines);
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   950
	IConsoleCmdRegister("return",     ConReturn);
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   951
	IConsoleCmdRegister("screenshot", ConScreenShot);
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   952
	IConsoleCmdRegister("script",     ConScript);
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   953
	IConsoleCmdRegister("scrollto",   ConScrollToTile);
623
3c50358d5a1b (svn r1053) -Change: [Console] Changed 'setservername', 'setpassword', 'protect' and 'name' in:
truelight
parents: 602
diff changeset
   954
	IConsoleCmdRegister("set",			ConSet);
634
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   955
	IConsoleCmdRegister("alias",		ConAlias);
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   956
	IConsoleAliasRegister("new_game",		"newgame");
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   957
	IConsoleAliasRegister("newmap",		"newgame");
754b2df37bfa (svn r1065) -Add: [Console] Alias support. Type 'list_aliases' to show them all (sign_de)
truelight
parents: 629
diff changeset
   958
	IConsoleAliasRegister("new_map",		"newgame");
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   959
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   960
	IConsoleVarRegister("developer", &_stdlib_developer, ICONSOLE_VAR_BYTE);
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   961
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   962
	// networking variables and functions
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   963
#ifdef ENABLE_NETWORK
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   964
	IConsoleCmdRegister("say",        ConSay);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   965
	IConsoleCmdHook("say", ICONSOLE_HOOK_ACCESS, ConCmdHookNeedNetwork);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   966
	IConsoleCmdRegister("say_player", ConSayPlayer);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   967
	IConsoleCmdHook("say_player", ICONSOLE_HOOK_ACCESS, ConCmdHookNeedNetwork);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   968
	IConsoleCmdRegister("say_client", ConSayClient);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   969
	IConsoleCmdHook("say_client", ICONSOLE_HOOK_ACCESS, ConCmdHookNeedNetwork);
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   970
	IConsoleCmdRegister("kick",         ConKick);
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   971
	IConsoleCmdHook("kick", ICONSOLE_HOOK_ACCESS, ConCmdHookNoNetClient);
688
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   972
	IConsoleCmdRegister("reset_company",         ConResetCompany);
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   973
	IConsoleCmdHook("reset_company", ICONSOLE_HOOK_ACCESS, ConCmdHookNoNetClient);
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   974
	IConsoleCmdRegister("connect", ConNetworkConnect);
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   975
	IConsoleCmdHook("connect", ICONSOLE_HOOK_ACCESS, ConCmdHookNoNetServer);
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   976
	IConsoleCmdRegister("clients", ConNetworkClients);
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   977
	IConsoleCmdRegister("status",   ConStatus);
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   978
	IConsoleCmdHook("status", ICONSOLE_HOOK_ACCESS, ConCmdHookNoNetClient);
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   979
	IConsoleCmdHook("resetengines", ICONSOLE_HOOK_ACCESS, ConCmdHookNoNetwork);
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   980
784
a490f92a33c2 (svn r1251) -Fix: [Console] The alias 'clean_company' is now working correctly
truelight
parents: 783
diff changeset
   981
	IConsoleAliasRegister("clean_company",		"reset_company %A");
688
1bf7db6d29b7 (svn r1129) -Add: [Network] Added 'reset_company <company-id>'. If a company is
truelight
parents: 678
diff changeset
   982
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   983
	IConsoleVarRegister("net_frame_freq", &_network_frame_freq, ICONSOLE_VAR_UINT8);
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   984
	IConsoleVarHook("net_frame_freq", ICONSOLE_HOOK_ACCESS, ConVarHookNoNetClient);
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   985
	IConsoleVarRegister("net_sync_freq", &_network_sync_freq, ICONSOLE_VAR_UINT16);
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   986
	IConsoleVarHook("net_sync_freq", ICONSOLE_HOOK_ACCESS, ConVarHookNoNetClient);
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 301
diff changeset
   987
#endif /* ENABLE_NETWORK */
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   988
554
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   989
	// debugging stuff
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   990
#ifdef _DEBUG
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   991
	IConsoleDebugLibRegister();
a4ba0fbbf018 (svn r954) -Fix: [Console] Hook fixes (sign_de)
truelight
parents: 543
diff changeset
   992
#endif
222
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   993
b88456001397 (svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron for your diligent fixing of warnings (and some possibly bugs) (Tron)
darkvater
parents: 220
diff changeset
   994
}
289
6dd77b0ac456 (svn r295) -Fix: Rewrite and fix of console stuff, including marking (XXX) of areas that require further investigation (Tron)
darkvater
parents: 262
diff changeset
   995
/* -------------------- don't cross this line --------------------- */