ac477507d847dd442f1059e47a7c02eac81bde7e
[NeonServV5.git] / src / cmd_neonserv_god.c
1 /* cmd_neonserv_god.c - NeonServ v5.1
2  * Copyright (C) 2011  Philipp Kreil (pk910)
3  * 
4  * This program is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation, either version 3 of the License, or
7  * (at your option) any later version.
8  * 
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  * 
14  * You should have received a copy of the GNU General Public License 
15  * along with this program. If not, see <http://www.gnu.org/licenses/>. 
16  */
17
18 #include "cmd_neonserv.h"
19
20 /*
21 * argv[0]    (optional) on/off
22 */
23
24 CMD_BIND(neonserv_cmd_god) {
25     if(argc > 0) {
26         if(!strcmp(argv[0], "0") || !stricmp(argv[0], "off") || !stricmp(argv[0], get_language_string(user, "NS_SET_OFF"))) {
27             if(isGodMode(user)) {
28                 printf_mysql_query("UPDATE `users` SET `user_god` = '0' WHERE `user_user` = '%s'", escape_string(user->auth));
29                 user->flags &= ~USERFLAG_GOD_MODE;
30             }
31             reply(getTextBot(), user, "NS_GOD_OFF");
32         } else if(!strcmp(argv[0], "1") || !stricmp(argv[0], "on") || !stricmp(argv[0], get_language_string(user, "NS_SET_ON"))) {
33             if(!isGodMode(user)) {
34                 printf_mysql_query("UPDATE `users` SET `user_god` = '1' WHERE `user_user` = '%s'", escape_string(user->auth));
35                 user->flags |= USERFLAG_GOD_MODE;
36             }
37             reply(getTextBot(), user, "NS_GOD_ON");
38         } else {
39             reply(getTextBot(), user, "NS_SET_INVALID_BOOLEAN", argv[0]);
40             return;
41         }
42     } else {
43         if(isGodMode(user)) {
44             printf_mysql_query("UPDATE `users` SET `user_god` = '0' WHERE `user_user` = '%s'", escape_string(user->auth));
45             user->flags &= ~USERFLAG_GOD_MODE;
46             reply(getTextBot(), user, "NS_GOD_OFF");
47         } else {
48             printf_mysql_query("UPDATE `users` SET `user_god` = '1' WHERE `user_user` = '%s'", escape_string(user->auth));
49             user->flags |= USERFLAG_GOD_MODE;
50             reply(getTextBot(), user, "NS_GOD_ON");
51         }
52     }
53 }