飘风 发表于 2003-7-27 18:42:42

好东西!屏蔽玩家的amx_who

身为op,你是否经常被玩家骚扰,呵呵!!我有办法屏蔽掉它.首先打开admincmd.sma,编辑public admin_who部分,用下面的代替它
public admin_who(id,level,cid){
if(!cmd_access(id, level, cid, 1))
   return PLUGIN_HANDLED
new players, inum, authid,name, flags, sflags
get_players(players,inum)
console_print(id,"^nClients on server:^n #%-32.31s %-12s %-8s %-4.3s %-4.3s %s",
    "nick","authid","userid","imm","res","access")
for(new a = 0; a < inum; ++a) {
      get_user_authid(players,authid,15)
      get_user_name(players,name,31)
      flags = get_user_flags(players)
      get_flags(flags,sflags,31)
      console_print(id,"%2d%-32.31s %-12s %-8d %-4.3s %-4.3s %s", players,name,authid,
      get_user_userid(players),(flags&ADMIN_IMMUNITY)?"yes":"no",
      (flags&ADMIN_RESERVATION)?"yes":"no",sflags)
}
console_print(id,"Total %d",inum)
get_user_authid(id,authid,15)
get_user_name(id,name,31)
log_to_file(logfilename,"Cmd: ^"%s<%d><%s><>^" ask for players list",name,get_user_userid(id),authid)
return PLUGIN_HANDLED
}
然后,在admincmd.sma最下面有register_concmd("amx_who","admin_who",0,"- displays who is on server"),改为register_concmd("amx_who","admin_who",ADMIN_KICK,"- displays who is on server"),既把0改为ADMIN_KICK 或 ADMIN_LEVEL_H,最后用sc编译成amx形式,替代原admincmd.sma即可.没有一定的权限是无法使用amx_who的。还不明白可参见原文
http://amxmod.net/forums/viewtopic.php?t=18494
以下是我修改后的插件

fyerit 发表于 2003-7-28 10:44:08

呵呵,不错
鼓励一下,请查收银行

飘风 发表于 2003-7-28 15:03:15

谢谢斑竹的奖励!!

其实我大部分的amx知识都是从点通学到的,这还有赖于高手的指教。个人感觉这是国内最好的cs技术论坛,斑竹的奖励使我对自己更有信心了。谢谢fyerit!!谢谢论坛里所有的人对我的支持!!

ymsche 发表于 2003-8-22 23:20:18

是啊,点通是CS的学堂。

samdiy 发表于 2003-8-23 08:27:23

我想知道怎么样用和有什么用?!!!!

Tidus 发表于 2003-8-23 08:36:06

谁骚扰我我BAN谁.

马桶里的c4 发表于 2003-8-23 10:08:59

狠老!!!!
独裁!!!!
哈哈!!!!

happyland 发表于 2003-8-23 13:22:59

fyerit 好有钱啊什么时候也给点钱我用用?? 呵呵

sdjh 发表于 2003-10-25 21:18:04

没看懂,骚扰就t出去呗!

ykc007 发表于 2003-10-26 13:37:17

做OP好麻烦呀
不过我们不怕......
页: [1] 2
查看完整版本: 好东西!屏蔽玩家的amx_who