|
发表于 2007-12-11 22:55:47
|
显示全部楼层
来自 中国–广东–惠州–惠城区
回复: 求禁外网指定ID
以下代码没测试过,理论上应该可以,自己测试下,先在configs文件夹建立一个player.ini文件,在这个文件里写上你想要限制的ID,一行一个,默认局域网IP为192.168段
[php]
#include <amxmodx>
#include <amxmisc>
#define PLUGIN_NAME "New Plug-In"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "zwfgdlc"
new player[512]
new configsDir[64]
public plugin_init()
{
register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR);
get_configsdir(configsDir, 63)
format(configsDir, 63, "%s/player.ini", configsDir)
loadSettings(configsDir)
register_cvar("amx_netbarip","192.168")
}
loadSettings(szFilename[])
{
if (!file_exists(szFilename))
return 0
new len, pos = 0,temp[32]
while (read_file(szFilename,pos++,temp,31,len) )
{
if(temp[0]==';'||len==0)
continue
format(player,511,"%s %s",player,temp)
}
return 1
}
public client_connect(id)
{
new netbarip[16]
get_cvar_string("amx_netbarip",netbarip,15)
new name[32],ip[16]
get_user_name(id,name,31)
get_user_ip(id,ip,1)
if(containi(ip,netbarip)==-1 && containi(player,name)!=-1)
{
server_cmd("kick #%d ^"%s^"",get_user_userid(id),"对不起,此ID禁止在外网登陆")
}
}
[/php] |
|