Atrinik Server  4.0
arrest.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 
37 void command_arrest(object *op, const char *command, char *params)
38 {
39  player *pl;
40 
41  if (!params) {
42  draw_info(COLOR_WHITE, op, "Usage: /arrest <player>");
43  return;
44  }
45 
46  pl = find_player(params);
47 
48  if (!pl) {
49  draw_info(COLOR_WHITE, op, "No such player.");
50  return;
51  }
52 
53  if (!region_enter_jail(pl->ob)) {
54  /* We have nowhere to send the prisoner....*/
55  draw_info(COLOR_RED, op, "Can't jail player, there is no map to hold them.");
56  return;
57  }
58 
59  draw_info_format(COLOR_GREEN, op, "Jailed %s.", pl->ob->name);
60  LOG(CHAT, "[ARREST] Player %s arrested by %s.", pl->ob->name, op->name);
61 }
void command_arrest(object *op, const char *command, char *params)
Definition: arrest.c:37
player * find_player(const char *plname)
Definition: player.c:96
object * ob
Definition: player.h:185
const char * name
Definition: object.h:168
int region_enter_jail(object *op)
Definition: region.c:350