回复: 【原创】内网玩家登录自动踢外网Ping高者插件(AMX and AMXX Ⅱ版)
这个功能的插件在amxmod.net里面n年前就有了我都用了差不多2年了,大家何必花钱???大家找插件为什么不先去amxmod.net,和amxx的老家?
其中amxmod.net中最多,而且大多都能使用!!
这个插件在amxmod中叫slots_reservation_by_ip,这是源码,大家初略看看就晓得咋个用了!
/* AMX Mod script.
*
* Slots reservation by IP (reserveslotsip.sma)
*
* (c) Copyright 2002, SYZo
* This file is provided as is (no warranties).
-
* Slots reservation by IP (reserveslotsip.amx) working only with Slots reservation (adminslots.amx)
*
* Usage
* Create file cstrike/addons/amx/ips.ini
*这个路径可以在源码中改成了addons/amx/config/ips.ini
在编译!
* ips.ini file format:
* xxx.xxx.xxx.xxx/yyy.yyy.yyy.yyy
* where xxx.xxx.xxx.xxx - The address of the network
* yyy.yyy.yyy.yyy - Mask of a subnet
* For example:
* 192.168.224.0/255.255.224.0
* 192.168.176.0/255.255.240.0
* 192.168.76.97/255.255.255.255
* WARNING:
* Correct plugin.ini
* insert "reserveslotsip.amx" before adminslots.amx
* For example:
* welcome.amx
* admin.amx
* adminslay2.amx
* reserveslotsip.amx
* adminslots.amx
*注意这里的顺序!!
* adminvote.amx
* amx_atac.amx
*
*/
#include <amxmod>
#include <string>
ip_to_number(userip)
{
new ipb1
new ipb2
new ipb3
new ipb4
new ip
new nipb1
new nipb2
new nipb3
new nipb4
new uip
copy(uip, 16, userip)
while(replace(uip, 16, ".", " ")){}
parse(uip, ipb1, 12, ipb2, 12, ipb3, 12, ipb4, 12)
nipb1 = strtonum(ipb1)
nipb2 = strtonum(ipb2)
nipb3 = strtonum(ipb3)
nipb4 = strtonum(ipb4)
ip = ((((nipb1 * 256) + nipb2) * 256) + nipb3) + ((((((nipb1 * 256) + nipb2) * 256) + nipb3) * 255) + nipb4)
return ip
}
net_hi_num(addr, mask)
{
return addr+4294967296-mask
}
net_belongs(ipaddr, ipmask, ipaddrin, ipmaskin)
{
if (ipaddr >= ipaddrin && net_hi_num(ipaddr, ipmask) <= net_hi_num(ipaddrin, ipmaskin)){
return 1
}
return 0
}
public client_connect(id){
if (file_exists("addons\amx\ips.ini")) {
new readdata
new sipaddr
new sipmask
new len
new userip
get_user_ip(id,userip,16,1)
for(new i=0; i < 100 && read_file("addons\amx\ips.ini",i,readdata,50,len) != 0; i += 1) {
read_file("addons\amx\ips.ini",i,readdata,50,len)
replace(readdata, 50, "/", " ")
parse(readdata, sipaddr, 16, sipmask, 16)
if (net_belongs(ip_to_number(userip), ip_to_number("255.255.255.255"), ip_to_number(sipaddr), ip_to_number(sipmask)) == 1) {
set_user_flags(id,read_flags("b"))
}
}
}
return PLUGIN_CONTINUE
}
public plugin_init() {
register_plugin("Slots reservation by IP","0.1","SYZo")
return PLUGIN_CONTINUE
}
很简单的!也很有效1.5/1.6amx amxx通用!!!
回复: 【原创】内网玩家登录自动踢外网Ping高者插件(AMX and AMXX Ⅱ版)
Post by nihuahome这个功能的插件在amxmod.net里面n年前就有了我都用了差不多2年了,大家何必花钱???
大家找插件为什么不先去amxmod.net,和amxx的老家?
其中amxmod.net中最多,而且大多都能使用!!
这个插件在amxmod中叫slots_reservation_by_ip,这是源码,大家初略看看就晓得咋个用了!
/* AMX Mod script.
*
* Slots reservation by...
通过源码大家可以看到他的踢出方式和保留通道功能并不是这个插件提供的,而是由adminslots.amx提供的,所以你首先得保证你得adminslots.amx插件得设置正常.
这个插件只是根据判断客户端IP 是否符合 IPS.ini 的ip规则如果符合就将客户设置为adminslots.amx的B权限,然后剩下的就交给adminslots.amx插件来处理了!!!
回复: 【原创】内网玩家登录自动踢外网Ping高者插件(AMX and AMXX Ⅱ版)
Post by yanexp可以在amx.cfg或amxx.cfg里配置内部IP前面相同段
如
amx_netbarip "192.168"
改为其它的也行,不过要求长度相等,即7位包括点
喂,老大,我的IP是172.16的怎么办啊?????是不是172.016啊
回复: 【原创】内网玩家登录自动踢外网Ping高者插件(AMX and AMXX Ⅱ版)
点通CS1.5 Final Ultra+回复: 【原创】内网玩家登录自动踢外网Ping高者插件(AMX and AMXX Ⅱ版)
Post by wnn500喂,老大,我的IP是172.16的怎么办啊?????是不是172.016啊
不是已经回复了吗
在amxx.cfg 里添加
amx_netbarip "172.16."
reload即可