Code:
/* AMXX Mod script.
*
*
* Join_IP 1.1 created by jsauce
*
*
* Okay so this plugin gets a user's info when they are authorized, then
* it displays it to everyone when they join and leave. If you are an admin you
* get to see the user's ip address and steamid. All other user's just get to see
* the player's name!
*
*
*
*
* 1.1 Changed access() to get_user_flags() seems to work better for everyone.
* Also changed how the rank shows, and changed default show level to ADMIN_LEVEL_A
* 1.0 initial release // rank idea from Kindzhon's enter/leave plugin.
*
*/
#include <amxmodx>
#include <geoip>
//#define CSSTATS // If you want to show the user's rank on join and on leave.
// You must be using the csstats module and have stats plugins loaded.
// Comment it out if you don't want to use it.
#if defined CSSTATS
#include <csstats>
#endif
#define ADMIN ADMIN_ALL // Change to something else if you like.
public plugin_init()
register_plugin("Join IP","1.1","jsauce")
public client_authorized(id) {
new authid[21],user[32],ip[16],players[32],inum,Country[46], bool:show_rank, iRankPos, strRankPos[7]
get_user_name(id,user,31)
get_user_ip(id,ip,15,1)
get_user_authid(id,authid,20)
get_players(players,inum, "c")
geoip_country(ip,Country, 45)
#if defined CSSTATS
new izStats[8], izBody[8]
iRankPos = get_user_stats(id,izStats,izBody)
show_rank = true
num_to_str(iRankPos, strRankPos, 6)
#endif
for (new i = 0; i < inum; ++i)
client_print(players[i],print_chat,"%s%s%s (^x04%s^x01) (%s) is connecting to server (^x04%s^x01).", show_rank? "#" : "", show_rank? strRankPos : "", user,ip,authid,Country)
}
public client_putinserver(id) {
new authid[21],user[32],ip[16],players[32],inum,Country[46], bool:show_rank, iRankPos, strRankPos[7]
get_user_name(id,user,31)
get_user_ip(id,ip,15,1)
get_user_authid(id,authid,20)
get_players(players,inum, "c")
geoip_country(ip,Country, 45)
#if defined CSSTATS
new izStats[8], izBody[8]
iRankPos = get_user_stats(id,izStats,izBody)
show_rank = true
num_to_str(iRankPos, strRankPos, 6)
#endif
for (new i = 0; i < inum; ++i) {
client_print(players[i],print_chat,"%s%s%s (^x04%s^x01) (%s) Joined (^x04%s^x01).", show_rank? "#" : "", show_rank? strRankPos : "",user,ip,authid,Country)
client_cmd(players[i],"hud_saytext_time 10")
client_cmd(players[i],"hud_deathnotice_time 10")
}
}
public client_disconnect(id) {
new authid[21],user[32],ip[16],players[32],inum,Country[46], bool:show_rank, iRankPos, strRankPos[7]
get_user_name(id,user,31)
get_user_ip(id,ip,15,1)
get_user_authid(id,authid,20)
get_players(players,inum, "c")
geoip_country(ip,Country, 45)
#if defined CSSTATS
new izStats[8], izBody[8]
iRankPos = get_user_stats(id,izStats,izBody)
show_rank = true
num_to_str(iRankPos, strRankPos, 6)
#endif
for (new i = 0; i < inum; ++i)
client_print(players[i],print_chat,"%s%s%s (^x04%s^x01) (%s) has disconnected (^x04%s^x01).", show_rank? "#" : "", show_rank? strRankPos : "",user,ip,authid,Country)
}