搜索
查看: 2245|回复: 6

【共享】Amx Mod X 1.76a+ (个人修改版)

[复制链接]
发表于 2006-10-3 20:21:40 | 显示全部楼层 |阅读模式 来自 中国–湖北–武汉
[color="blue"]提供一个函数: [color="Magenta"]query_client_cvar_old()

  1. native query_client_cvar_old(id, const cvar[], const resultFunc[], paramlen=0, const params[] = "");
复制代码


当前只有 win32 版本, [color="magenta"]无 linux & amd64 版本。

[color="magenta"]注意:

由于该函数有缺陷,amxx 新版本已经不包含。我编写的该函数:完全按照队列询问客户端的变量;对每一个客户端,是逐个询问。如果上次询问未完成,将往后排队。由于该函数的缺陷, 如果不如此排队,将无法判断客户端返回的数据是你询问的哪一个。

client cs 版本 低于 3382 不返回无效的询问。处理该问题时, 我使用等待客户端在 [color="magenta"]0.6秒 内是否返回。如果不返回,该询问出列,继续后面的询问。 当然该函数只能在高于 3213 中使用。为 3382 版本时,碰到无效变量询问则返回
"Bad CVAR request" 该字符串。

根据上面,在使用该函数时,注意询问的变量在客户端能是否返回。如果不能, 则需要等待 [color="Magenta"]0.6 秒才能对客户端进行队列中下一个询问。 [color="magenta"]这影响 resultFunc[] 的调用时间。

【用法】:
在 amxmodx.inc 添加上面的 native 函数。函数用法跟 query_client_cvar() 一样。

ps: 3382 中请使用 query_client_cvar() 。本人认为 0.6秒 等待客户端返回应该够了, 不知大家观点如何。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注个册吧

×
发表于 2006-10-3 21:09:06 | 显示全部楼层 来自 中国–湖北–襄阳–谷城县

回复: 【共享】Amx Mod X 1.76a+ (个人修改版)

对2834呢......?
回复

使用道具 举报

 楼主| 发表于 2006-10-3 23:38:33 | 显示全部楼层 来自 中国–黑龙江–哈尔滨

回复: 【共享】Amx Mod X 1.76a+ (个人修改版)

Post by 如花
对2834呢......?


对 2834 应该是一样的。 没有返回, 没有调用返回函数。
回复

使用道具 举报

发表于 2006-10-3 23:41:51 | 显示全部楼层 来自 中国–山西–忻州

回复: 【共享】Amx Mod X 1.76a+ (个人修改版)

呵呵.....好.::
回复

使用道具 举报

发表于 2006-10-3 23:51:24 | 显示全部楼层 来自 中国–广东–深圳–罗湖区

回复: 【共享】Amx Mod X 1.76a+ (个人修改版)

强啊。。。。。
运行1.76a一段时间,我的服务器出错频繁了,1.76可能有点问题
回复

使用道具 举报

发表于 2006-10-4 11:42:11 | 显示全部楼层 来自 中国–江苏–无锡

回复: 【共享】Amx Mod X 1.76a+ (个人修改版)

我用1.76a没什么问题,不过还是把这个换上了,先试试看有没有问题。

问题一:用1.76a的时候,Leon008_anticheat 2.2一点用处都没有,换上这个后,能把低于3213版本的用户踢出,能把不是CD4.33.4和CD4.32.0的用户踢出,但是还不能正确检测出客户的CD版本号
回复

使用道具 举报

 楼主| 发表于 2006-10-4 14:22:33 | 显示全部楼层 来自 中国–黑龙江–哈尔滨

回复: 【共享】Amx Mod X 1.76a+ (个人修改版)

Post by dantes001
我用1.76a没什么问题,不过还是把这个换上了,先试试看有没有问题。

问题一:用1.76a的时候,Leon008_anticheat 2.2一点用处都没有,换上这个后,能把低于3213版本的用户踢出,能把不是CD4.33.4和CD4.32.0的用户踢出,但是还不能正确检测出客户的CD版本号


[color="Magenta"] Leon008_anticheat 2.2 的 中又没有使用这个函数。能否取得CD 版本, 与 1.76a \ 1.76a+ 无关。

应该可以取到的。 如果玩家的 ping 太大了,0.6 秒时间不够, 才取不到。
回复

使用道具 举报

游客
回复
您需要登录后才可以回帖 登录 | 注个册吧

快速回复 返回顶部 返回列表