replaces the default motd window

This commit is contained in:
Felix Geyer 2004-02-17 17:17:10 +00:00
parent 5b7c7c5e6e
commit adb39b9ab1

View File

@ -9,6 +9,8 @@
#include <amxmod> #include <amxmod>
#include <amxmisc> #include <amxmisc>
#define MOTD_LENGTH 1024
// Settings (comment unwanted options) // Settings (comment unwanted options)
#define SHOW_MODS #define SHOW_MODS
#define READ_FROM_FILE #define READ_FROM_FILE
@ -29,10 +31,20 @@ public plugin_init()
#endif #endif
} }
new g_Bar[] = "==============" public plugin_cfg()
{
set_cvar_string("motdfile","")
}
public client_connect(id) { public client_putinserver(id) {
new name[32], hostname[64], nextmap[32], mapname[32] new param[1]
param[0] = id
set_task(2.5,"alt_motd",0,param,1)
}
public alt_motd(param[]) {
new id = param[0]
new motdBody[MOTD_LENGTH], name[32], hostname[64], nextmap[32], mapname[32]
get_cvar_string("hostname",hostname,63) get_cvar_string("hostname",hostname,63)
get_user_name(id,name,31) get_user_name(id,name,31)
@ -40,83 +52,84 @@ public client_connect(id) {
get_mapname(mapname,31) get_mapname(mapname,31)
get_cvar_string("amx_nextmap",nextmap,31) get_cvar_string("amx_nextmap",nextmap,31)
client_cmd(id, "echo ;echo %s%s%s%s",g_Bar,g_Bar,g_Bar,g_Bar) new len = copy(motdBody,MOTD_LENGTH,"<html><head><style type=^"text/css^">body{background:#000000;color:#FFB000;margin-left:8px;margin-top:8px;}")
client_cmd(id, "echo ^" Hello %s, welcome to %s^"",name,hostname) len += copy(motdBody[len],MOTD_LENGTH,"hr{color:#FFB000;border:0px;}ul{margin-top:2px;margin-bottom:2px;}hr{margin-top:8px;margin-bottom:8px;}</style></head><body>")
len += format(motdBody[len],MOTD_LENGTH-len,"Hello %s, welcome to %s<ul>",name,hostname)
#if defined SHOW_TIME_AND_IP #if defined SHOW_TIME_AND_IP
new stime[64],ip[32] new stime[64],ip[32]
get_time("%A %B %d, %Y - %H:%M:%S",stime,63) get_time("%A %B %d, %Y - %H:%M:%S",stime,63)
get_user_ip(id,ip,31) get_user_ip(id,ip,31)
client_cmd(id, "echo ^" Today is %s^"",stime) len += format(motdBody[len],MOTD_LENGTH-len,"<li>Today is %s</li>",stime)
client_cmd(id, "echo ^" You are playing from: %s^"",ip) len += format(motdBody[len],MOTD_LENGTH-len,"<li>You are playing from: %s</li>",ip)
#endif #endif
new maxplayers = get_cvar_num("sv_visiblemaxplayers") new maxplayers = get_cvar_num("sv_visiblemaxplayers")
if ( maxplayers < 0 ) maxplayers = get_maxplayers() if ( maxplayers < 0 ) maxplayers = get_maxplayers()
client_cmd(id, "echo ^" Players on server: %d/%d^"",get_playersnum(),maxplayers) len += format(motdBody[len],MOTD_LENGTH-len,"<li>Players on server: %d/%d</li>",get_playersnum(),maxplayers)
client_cmd(id, "echo ^" Current map: %s, Next map: %s^"",mapname,nextmap) len += format(motdBody[len],MOTD_LENGTH-len,"<li>Current map: %s, Next map: %s</li>",mapname,nextmap)
// Time limit and time remaining // Time limit and time remaining
new Float:mp_timelimit = get_cvar_float("mp_timelimit") new Float:mp_timelimit = get_cvar_float("mp_timelimit")
if (mp_timelimit){ if (mp_timelimit){
new timeleft = get_timeleft() new timeleft = get_timeleft()
if (timeleft > 0) if (timeleft > 0)
client_cmd(id, "echo ^" Time Left: %d:%02d of %.0f minutes^"", timeleft / 60, timeleft % 60, mp_timelimit ) len += format(motdBody[len],MOTD_LENGTH-len,"<li>Time Left: %d:%02d of %.0f minutes</li>",timeleft / 60, timeleft % 60, mp_timelimit)
} }
else{ else{
client_cmd(id, "echo ^" No time limit^"") len += copy(motdBody[len],MOTD_LENGTH-len,"<li>No time limit</li>")
} }
// C4 and FF // C4 and FF
if ( g_cstrikeRunning ){ if ( g_cstrikeRunning ){
client_cmd(id, "echo ^" Friendly fire is %s^"", get_cvar_float("mp_friendlyfire") ? "ON" : "OFF") len += format(motdBody[len],MOTD_LENGTH-len,"<li>Friendly fire is %s</li>",get_cvar_num("mp_friendlyfire") ? "ON" : "OFF")
client_cmd(id, "echo ^" C4 timer is set to %.0f sec.^"",get_cvar_float("mp_c4timer")) len += format(motdBody[len],MOTD_LENGTH-len,"<li>C4 timer is set to %.0f sec.</li>",get_cvar_float("mp_c4timer"))
} }
len += copy(motdBody[len],MOTD_LENGTH-len,"</ul>")
// Server Mods // Server Mods
#if defined SHOW_MODS #if defined SHOW_MODS
new mod_ver[32] new mod_ver[32]
client_cmd(id, "echo ;echo ^" Server mods:^"") len += copy(motdBody[len],MOTD_LENGTH-len,"<br>Server mods:<ul>")
get_cvar_string("amx_version",mod_ver,31) get_cvar_string("amx_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^" o AMX Mod %s^"",mod_ver) if (mod_ver[0]) len += format(motdBody[len],MOTD_LENGTH-len,"<li>AMX Mod %s</li>",mod_ver)
get_cvar_string("statsme_version",mod_ver,31) get_cvar_string("statsme_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^" o StatsMe %s^"",mod_ver) if (mod_ver[0]) len += format(motdBody[len],MOTD_LENGTH-len,"<li>StatsMe %s</li>",mod_ver)
get_cvar_string("clanmod_version",mod_ver,31) get_cvar_string("clanmod_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^" o ClanMod %s^"",mod_ver) if (mod_ver[0]) len += format(motdBody[len],MOTD_LENGTH-len,"<li>ClanMod %s</li>",mod_ver)
get_cvar_string("admin_mod_version",mod_ver,31) get_cvar_string("admin_mod_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^" o AdminMod %s^"",mod_ver) if (mod_ver[0]) len += format(motdBody[len],MOTD_LENGTH-len,"<li>AdminMod %s</li>",mod_ver)
get_cvar_string("chicken_version",mod_ver,31) get_cvar_string("chicken_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^" o Chicken %s^"",mod_ver) if (mod_ver[0]) len += format(motdBody[len],MOTD_LENGTH-len,"<li>Chicken %s</li>",mod_ver)
get_cvar_string("csguard_version",mod_ver,31) get_cvar_string("csguard_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^" o CSGuard %s^"",mod_ver) if (mod_ver[0]) len += format(motdBody[len],MOTD_LENGTH-len,"<li>CSGuard %s</li>",mod_ver)
get_cvar_string("hlguard_version",mod_ver,31) get_cvar_string("hlguard_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^" o HLGuard %s^"",mod_ver) if (mod_ver[0]) len += format(motdBody[len],MOTD_LENGTH-len,"<li>HLGuard %s</li>",mod_ver)
get_cvar_string("plbot_version",mod_ver,31) get_cvar_string("plbot_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^" o PLBot %s^"",mod_ver) if (mod_ver[0]) len += format(motdBody[len],MOTD_LENGTH-len,"<li>PLBot %s</li>",mod_ver)
get_cvar_string("booster_version",mod_ver,31) get_cvar_string("booster_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^" o HL-Booster %s^"",mod_ver) if (mod_ver[0]) len += format(motdBody[len],MOTD_LENGTH-len,"<li>HL-Booster %s</li>",mod_ver)
get_cvar_string("axn_version",mod_ver,31) get_cvar_string("axn_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^" o AXN %s^"",mod_ver) if (mod_ver[0]) len += format(motdBody[len],MOTD_LENGTH-len,"<li>AXN %s</li>",mod_ver)
get_cvar_string("bmx_version",mod_ver,31) get_cvar_string("bmx_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^" o BMX %s^"",mod_ver) if (mod_ver[0]) len += format(motdBody[len],MOTD_LENGTH-len,"<li>BMX %s</li>",mod_ver)
get_cvar_string("cdversion",mod_ver,31) get_cvar_string("cdversion",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^" o Cheating-Death %s in %s Mode^"", if (mod_ver[0]) len += format(motdBody[len],MOTD_LENGTH-len,"<li>Cheating-Death %s in %s Mode</li>",
mod_ver, get_cvar_num("cdrequired") ? "Required" : "Optional" ) mod_ver, get_cvar_num("cdrequired") ? "Required" : "Optional" )
get_cvar_string("atac_version",mod_ver,31) get_cvar_string("atac_version",mod_ver,31)
if (mod_ver[0]) client_cmd(id, "echo ^" o ATAC %s%s^"" , mod_ver , get_cvar_num("atac_status") if (mod_ver[0]) len += format(motdBody[len],MOTD_LENGTH-len,"<li>ATAC %s</li>",mod_ver)
? " (setinfo atac_status_off 1 disables Live Status)" : "" ) len += copy(motdBody[len],MOTD_LENGTH-len,"</ul>")
#endif #endif
// Info. from custom file // Info. from custom file
#if defined READ_FROM_FILE #if defined READ_FROM_FILE
if (file_exists(g_motdFile)) { if (file_exists(g_motdFile)) {
new message[192], len, line = 0 new message[192], len2, line = 0
client_cmd(id, "echo %s%s%s%s",g_Bar,g_Bar,g_Bar,g_Bar) len += format(motdBody[len],MOTD_LENGTH-len,"<hr noshade>")
while(read_file(g_motdFile,line++,message,191,len)) while(read_file(g_motdFile,line++,message,191,len2))
client_cmd(id,"echo ^"%s^"",message) len += copy(motdBody[len],MOTD_LENGTH-len,message)
} }
#endif #endif
len += copy(motdBody[len],MOTD_LENGTH-len,"</body></html>")
client_cmd(id, "echo %s%s%s%s",g_Bar,g_Bar,g_Bar,g_Bar) show_motd(id,motdBody)
} }