/* * Kick a user off of the server */ void SV_Kick_f(void) { if (!svs.initialized) { Com_Printf("No server running.\n"); return; } if (Cmd_Argc() != 2) { Com_Printf("Usage: kick <userid>\n"); return; } if (!SV_SetPlayer()) { return; } if ((sv_client->state == cs_spawned) && *sv_client->name) { SV_BroadcastPrintf(PRINT_HIGH, "%s was kicked\n", sv_client->name); } /* print directly, because the dropped client won't get the SV_BroadcastPrintf message */ SV_ClientPrintf(sv_client, PRINT_HIGH, "You were kicked from the game\n"); SV_DropClient(sv_client); sv_client->lastmessage = svs.realtime; /* min case there is a funny zombie */ }
/* ================== SV_Kick_f Kick a user off of the server ================== */ void SV_Kick_f( void ) { if( Cmd_Argc() != 2 ) { Msg( "Usage: kick <userid> | <name>\n" ); return; } if( !SV_SetPlayer( )) return; if( NET_IsLocalAddress( svs.currentPlayer->netchan.remote_address )) { Msg( "The local player cannot be kicked!\n" ); return; } SV_BroadcastPrintf( PRINT_HIGH, "%s was kicked\n", svs.currentPlayer->name ); SV_ClientPrintf( svs.currentPlayer, PRINT_HIGH, "You were kicked from the game\n" ); SV_DropClient( svs.currentPlayer ); Log_Printf( "Kick: \"%s<%i><%s><>\" was kicked by \"Console\"\n", svs.currentPlayer->name, svs.currentPlayer->userid, SV_GetClientIDString ( svs.currentPlayer ) ); // min case there is a funny zombie svs.currentPlayer->lastmessage = host.realtime; }
/* ================== SV_Kick_f Kick a user off of the server ================== */ static void SV_Kick_f (void) { if (!svs.initialized) { Com_Printf ("No server running.\n"); return; } if (Cmd_Argc() != 2) { Com_Printf ("Usage: kick <userid>\n"); return; } if (!SV_SetPlayer ()) return; //r1: ignore kick message on connecting players (and those with no name) if (sv_client->state == cs_spawned && sv_client->name[0]) SV_BroadcastPrintf (PRINT_HIGH, "%s was kicked\n", sv_client->name); // print directly, because the dropped client won't get the // SV_BroadcastPrintf message SV_ClientPrintf (sv_client, PRINT_HIGH, "You were kicked from the game\n"); SV_DropClient (sv_client); sv_client->lastmessage = svs.realtime; // min case there is a funny zombie }
//Examine a users info strings void SV_User_f (void) { if (Cmd_Argc() != 2) { Com_Printf ("Usage: %s <userid>\n", Cmd_Argv(0)); return; } if (!SV_SetPlayer ()) return; Info_Print (sv_client->userinfo); }
void SV_User_f (void) { if (Cmd_Argc() != 2) { Con_Printf ("Usage: info <userid>\n"); return; } if (!SV_SetPlayer ()) return; Info_Print (host_client->userinfo); }
void SV_Info_f( void ) { if (Cmd_Argc() != 2) { Con_Printf ("Usage: info <userid>\n"); return; } if ( !SV_SetPlayer(atoi(Cmd_Argv(1))) ) // sets the host_client return; Info_Print( host_client->userinfo ); }
/* =========== SV_ClientInfo_f Examine all a users info strings =========== */ void SV_ClientInfo_f( void ) { if( Cmd_Argc() != 2 ) { Msg( "Usage: clientinfo <userid>\n" ); return; } if( !SV_SetPlayer( )) return; Msg( "userinfo\n" ); Msg( "--------\n" ); Info_Print( svs.currentPlayer->userinfo ); }
/* * =========== SV_DumpUser_f * * Examine all a users info strings =========== */ void SV_DumpUser_f(void) { if (Cmd_Argc() != 2) { Com_Printf("Usage: info <userid>\n"); return; } if (!SV_SetPlayer()) return; Com_Printf("userinfo\n"); Com_Printf("--------\n"); Info_Print(sv_client->userinfo); }
/* ================== SV_Kill_f ================== */ void SV_Kill_f( void ) { if( !SV_SetPlayer() || sv.background ) return; if( !svs.currentPlayer || !SV_IsValidEdict( svs.currentPlayer->edict )) return; if( svs.currentPlayer->edict->v.health <= 0.0f ) { SV_ClientPrintf( svs.currentPlayer, PRINT_HIGH, "Can't suicide -- allready dead!\n"); return; } svgame.dllFuncs.pfnClientKill( svs.currentPlayer->edict ); }
static void SV_Give_f (void) { const char *t; int v; if (!sv_allow_cheats) { SV_Printf ("You must run the server with -cheats to enable this command.\n"); return; } if (!SV_SetPlayer ()) return; t = Cmd_Argv (2); v = atoi (Cmd_Argv (3)); switch (t[0]) { case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': SVfloat (sv_player, items) = (int) SVfloat (sv_player, items) | IT_SHOTGUN << (t[0] - '2'); break; case 's': SVfloat (sv_player, ammo_shells) = v; break; case 'n': SVfloat (sv_player, ammo_nails) = v; break; case 'r': SVfloat (sv_player, ammo_rockets) = v; break; case 'h': SVfloat (sv_player, health) = v; break; case 'c': SVfloat (sv_player, ammo_cells) = v; break; } }
void SV_Give_f (void) { char *t; int v; if (!sv_allow_cheats) { Con_Printf ("You must run the server with -cheats to enable this command.\n"); return; } if (!SV_SetPlayer ()) return; t = Cmd_Argv(2); v = atoi (Cmd_Argv(3)); switch (t[0]) { case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': sv_player->v.items = (int)sv_player->v.items | IT_SHOTGUN<< (t[0] - '2'); break; case 's': sv_player->v.ammo_shells = v; break; case 'n': sv_player->v.ammo_nails = v; break; case 'r': sv_player->v.ammo_rockets = v; break; case 'h': sv_player->v.health = v; break; case 'c': sv_player->v.ammo_cells = v; break; } }
void SV_God_f (void) { if (!sv_allow_cheats) { Con_Printf ("You must run the server with -cheats to enable this command.\n"); return; } if (!SV_SetPlayer ()) return; sv_player->v.flags = (int)sv_player->v.flags ^ FL_GODMODE; if (!((int)sv_player->v.flags & FL_GODMODE) ) SV_ClientPrintf (host_client, PRINT_HIGH, "godmode OFF\n"); else SV_ClientPrintf (host_client, PRINT_HIGH, "godmode ON\n"); }
/* SV_God_f Sets client to godmode */ static void SV_God_f (void) { if (!sv_allow_cheats) { SV_Printf ("You must run the server with -cheats to enable this command.\n"); return; } if (!SV_SetPlayer ()) return; SVfloat (sv_player, flags) = (int) SVfloat (sv_player, flags) ^ FL_GODMODE; if (!((int) SVfloat (sv_player, flags) & FL_GODMODE)) SV_ClientPrintf (1, host_client, PRINT_HIGH, "godmode OFF\n"); else SV_ClientPrintf (1, host_client, PRINT_HIGH, "godmode ON\n"); }
static void SV_Noclip_f (void) { if (!sv_allow_cheats) { SV_Printf ("You must run the server with -cheats to enable this command.\n"); return; } if (!SV_SetPlayer ()) return; if (SVfloat (sv_player, movetype) != MOVETYPE_NOCLIP) { SVfloat (sv_player, movetype) = MOVETYPE_NOCLIP; SV_ClientPrintf (1, host_client, PRINT_HIGH, "noclip ON\n"); } else { SVfloat (sv_player, movetype) = MOVETYPE_WALK; SV_ClientPrintf (1, host_client, PRINT_HIGH, "noclip OFF\n"); } }
void SV_Noclip_f (void) { if (!sv_allow_cheats) { Con_Printf ("You must run the server with -cheats to enable this command.\n"); return; } if (!SV_SetPlayer ()) return; if (sv_player->v.movetype != MOVETYPE_NOCLIP) { sv_player->v.movetype = MOVETYPE_NOCLIP; SV_ClientPrintf (host_client, PRINT_HIGH, "noclip ON\n"); } else { sv_player->v.movetype = MOVETYPE_WALK; SV_ClientPrintf (host_client, PRINT_HIGH, "noclip OFF\n"); } }
/* =========== SV_DumpUser_f Examine all a users info strings FIXME: move to game =========== */ static void SV_DumpUser_f( void ) { client_t *cl; // make sure server is running if ( !com_sv_running->integer ) { Com_Printf( "Server is not running.\n" ); return; } if ( Cmd_Argc() != 2 ) { Com_Printf ("Usage: info <userid>\n"); return; } cl = SV_SetPlayer(); if ( !cl ) { return; } Com_Printf( "userinfo\n" ); Com_Printf( "--------\n" ); Info_Print( cl->userinfo ); }
/* ================== SV_Kick_f Kick a user off of the server ================== */ void SV_Kick_f( void ) { if( Cmd_Argc() != 2 ) { Msg( "Usage: kick <userid>\n" ); return; } if( !svs.clients || sv.background ) { Msg( "^3no server running.\n" ); return; } if( !SV_SetPlayer( )) return; SV_BroadcastPrintf( PRINT_HIGH, "%s was kicked\n", svs.currentPlayer->name ); SV_ClientPrintf( svs.currentPlayer, PRINT_HIGH, "You were kicked from the game\n" ); SV_DropClient( svs.currentPlayer ); // min case there is a funny zombie svs.currentPlayer->lastmessage = host.realtime; }
/* * Examine all a users info strings */ void SV_DumpUser_f(void) { if (!svs.initialized) { Com_Printf("No server running.\n"); return; } if (Cmd_Argc() != 2) { Com_Printf("Usage: info <userid>\n"); return; } if (!SV_SetPlayer()) { return; } Com_Printf("userinfo\n"); Com_Printf("--------\n"); Info_Print(sv_client->userinfo); }