Atrinik Server  4.0
config.c
Go to the documentation of this file.
1 /*************************************************************************
2  * Atrinik, a Multiplayer Online Role Playing Game *
3  * *
4  * Copyright (C) 2009-2014 Alex Tokar and Atrinik Development Team *
5  * *
6  * Fork from Crossfire (Multiplayer game for X-windows). *
7  * *
8  * This program is free software; you can redistribute it and/or modify *
9  * it under the terms of the GNU General Public License as published by *
10  * the Free Software Foundation; either version 2 of the License, or *
11  * (at your option) any later version. *
12  * *
13  * This program is distributed in the hope that it will be useful, *
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
16  * GNU General Public License for more details. *
17  * *
18  * You should have received a copy of the GNU General Public License *
19  * along with this program; if not, write to the Free Software *
20  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. *
21  * *
22  * The author can be reached at admin@atrinik.org *
23  ************************************************************************/
24 
32 #include <global.h>
33 #include <player.h>
34 #include <object.h>
35 #include <toolkit/clioptions.h>
36 
38 void
39 command_config (object *op, const char *command, char *params)
40 {
41  if (params == NULL) {
42  draw_info(COLOR_WHITE, op,
43  "Usage: /config <name>, /config <name> = <value>");
44  return;
45  }
46 
47  if (strchr(params, '=') == NULL) {
48  const char *value = clioptions_get(params);
49  if (value == NULL) {
50  draw_info_format(COLOR_WHITE, op,
51  "No such option: %s",
52  params);
53  } else {
54  draw_info_format(COLOR_WHITE, op,
55  "Configuration: %s = %s",
56  params, value);
57  }
58  } else {
59  char *errmsg;
60  if (clioptions_load_str(params, &errmsg)) {
61  draw_info(COLOR_WHITE, op, "Configuration successful.");
62  } else {
63  draw_info_format(COLOR_WHITE, op,
64  "Configuration failed: %s",
65  errmsg != NULL ? errmsg : "<no error message>");
66  if (errmsg != NULL) {
67  efree(errmsg);
68  }
69  }
70  }
71 }
void command_config(object *op, const char *command, char *params)
Definition: config.c:39