You should be able to use the following quick fix to reduce the size of the plugin a bit more. No reason to have two seperate routines that are exactly the same.
Code:
public client_putinserver(id)
{
if(!get_pcvar_num(p_connect) || (access(id,ADMIN) && !get_pcvar_num(p_admins)) || (is_user_bot(id) && !get_pcvar_num(p_bots)) || (!is_user_bot(id) && !access(id,ADMIN) && !get_pcvar_num(p_users)))
return PLUGIN_CONTINUE
new msg[128]
get_pcvar_string(p_msg,msg,127)
new name[32]
get_user_name(id,name,31)
replace(msg,127,"$name",name)
new country[46]
if(is_user_bot(id))
{
get_pcvar_string(p_default,country,45)
}
else
{
new ip[17]
get_user_ip(id,ip,16,1)
geoip_country(ip,country,45)
if(equali(country,"error"))
formatex(country,45,"Unknown")
}
replace(msg,127,"$country",country)
switch(get_pcvar_num(p_msgmode))
{
case 1: client_print(0,print_chat,"%s",msg)
case 2: {
new color[3]
color[0] = get_pcvar_num(p_red)
color[1] = get_pcvar_num(p_green)
color[2] = get_pcvar_num(p_blue)
switch(get_pcvar_num(p_position))
{
case 1: set_hudmessage(color[0],color[1],color[2], -1.0, 0.25, 0, 4.0, 4.0, 0.5, 0.3, 4)
case 2: set_hudmessage(color[0],color[1],color[2], 0.05, 0.67, 0, 4.0, 4.0, 0.5, 0.3, 4)
case 3: set_hudmessage(color[0],color[1],color[2], -1.0, 0.82, 0, 4.0, 4.0, 0.5, 0.3, 4)
case 4: set_hudmessage(color[0],color[1],color[2], get_pcvar_float(p_position_x), get_pcvar_float(p_position_y), 0, 4.0, 4.0, 0.5, 0.3, 4)
}
show_hudmessage(0,"%s",msg)
}
}
return PLUGIN_CONTINUE
}