All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Namespaces | Macros | Functions | Variables
client_management.hpp File Reference
#include <enet/enet.h>
#include <limits.h>
#include <algorithm>
#include "inexor/fpsgame/fpsstate.hpp"
#include "inexor/network/SharedVar.hpp"
#include "inexor/network/legacy/administration.hpp"
#include "inexor/shared/cube_loops.hpp"
#include "inexor/shared/cube_types.hpp"
#include "inexor/shared/cube_vector.hpp"
#include "inexor/shared/ents.hpp"
#include "inexor/shared/geom.hpp"
#include "inexor/util/legacy_time.hpp"

Go to the source code of this file.


struct  server::client
 server side version of "dynent" type More...
struct  server::projectilestate< N >
struct  server::gamestate
 server specialisation of the fpsstate (?) More...
struct  server::gameevent
struct  server::timedevent
struct  server::hitinfo
struct  server::shotevent
struct  server::explodeevent
struct  server::suicideevent
struct  server::pickupevent
struct  server::clientinfo




#define MM_MODE   0xF
#define MM_AUTOAPPROVE   0x1000
#define MM_PUBSERV   ((1<<MM_OPEN) | (1<<MM_VETO))


ENetPeer * server::getclientpeer (int i)
uint server::getclientip (int n)
int server::reserveclients ()
 The amount of people who can connect more than the actual specified max clients limit. More...
client & server::add_client_connection (ENetPeer *peer)
void server::check_clients_timed_out ()
 After some period of time without response we disconnect a client. More...
void server::disconnect_client (int n, int reason)
bool server::has_clients ()
int server::get_num_clients ()
int server::numclients (int exclude=-1, bool nospec=true, bool noai=true, bool priv=false)
 List all connected clients (game players) More...
const char * server::colorname (clientinfo *ci, const char *name=nullptr)
 colorful version of the clients name (if two people share the same name or ci is a bot) More...
bool server::player_connected (clientinfo *ci, const char *password, const char *mapwish, int modewish)
clientinfo * server::get_client_info (int n, bool findbots)
void server::resetdisconnectedplayerscores ()
 New map: we throw away the scores of disconnected players. More...
void server::aiman::removeai (clientinfo *ci)
void server::aiman::clearai ()
void server::aiman::checkai ()
void server::aiman::reqadd (clientinfo *ci, int skill)
void server::aiman::reqdel (clientinfo *ci)
void server::aiman::setbotlimit (clientinfo *ci, int limit)
void server::aiman::setbotbalance (clientinfo *ci, bool balance)
void server::aiman::changemap ()
void server::aiman::addclient (clientinfo *ci)
void server::aiman::changeteam (clientinfo *ci)
int server::get_mastermode_int ()
bool server::setmaster (clientinfo *ci, bool val, const char *pass, bool force, bool trial)
void server::change_mastermode (int mm, int sendernum, clientinfo *actor)
void server::addban (uint ip, int expire)
void server::clearbans (clientinfo *actor)
void server::check_bans_expired ()
bool server::trykick (clientinfo *ci, int victim, const char *reason, bool trial)
void server::kickclients (uint ip, clientinfo *actor=nullptr, int priv=PRIV_NONE)
 Kick all clients with this IP (including bots and people in the same LAN) More...


SharedVar< int > server::maxclients
SharedVar< int > server::maxdupclients
static constexpr int server::DEATHMILLIS = 300

Class Documentation

struct server::client

server side version of "dynent" type

Class Members
bool connected
string hostname
void * info
int num
ENetPeer * peer
struct server::hitinfo
Class Members
vec dir
float dist
int lifesequence
int rays
int target

Macro Definition Documentation

#define MM_AUTOAPPROVE   0x1000
#define MM_MODE   0xF
#define MM_PUBSERV   ((1<<MM_OPEN) | (1<<MM_VETO))