|
这两天开始试着自己编amxx插件,想做一个在名字前增加userid的插件,
本来以为很快就弄完了的,谁知道,前天编完,开始测试,昨天,今天一直在不断的测试修改, :too_sad:
现在的问题很奇怪,在client_connect 中,有2处change_name,有一处居然不能实现change_name,专门增加显示数值来测试了的,无论是 set_user_info 还是 client_cmd(id, "name ^"%s^"",name) 都无法改名(另外,似乎发现set。。。用来处理bot,client才能用来处理人),下面的那部分却可以用来改名,不知道是为什么。。。另外编的一个onename插件也卡在这儿了。
代码:
public client_connect(id)
{
if ( !get_cvar_num("amx_idname") )
return PLUGIN_HANDLED
if( !is_user_bot(id) )
{
get_user_ip ( id, ip_str, 15, 1 )
for(new x=0 ;x<50;x++)
{
if( equali(ip[x],ip_str) )
{
uid=get_user_userid ( id )
format(name, 31, "#%i %s", uid,ip_name[x])
client_cmd(id, "name ^"%s^"",name) //**********问题所在
return PLUGIN_HANDLED
}
}
get_user_info(id,"name",oldname,31)
copy(ip_name[id],32,oldname)
copy(ip[id],15,ip_str)
}
if( !is_user_admin(id) )
{
uid=get_user_userid ( id )
format(name, 31, "#%i %s", uid,oldname)
if( is_user_bot(id) )
{
set_user_info(id, "name", name)
}
else client_cmd(id, "name ^"%s^"", name)
}
return PLUGIN_HANDLED
} |
|