AE86 发表于 2005-11-20 01:45:11

麻烦谁帮我修改下显示在线管理员插件

我做了个简单的修改,但是有管理员在线的时候就会显示“目前在线管理XXX”然后接着全部显示VIP用户;管理员不时在就显示全部VIP用户。
谁能告诉我去掉哪部分就不会显示VIP用户吗? :dribble:
附上我改动过的源码:

#include <amxmodx>
#include <amxmisc>

#define MAX_MESSAGES6
#define X_POS         -1.0
#define Y_POS         -3.0
#define HOLD_TIME   8.0
#define RANDOM_COL

new g_Values
new g_Messages
new g_MessagesNum
new g_Current
new g_players
new num


public plugin_init() {
register_plugin("Info. Messages",AMXX_VERSION_STR,"AMXX Dev Team")
register_dictionary("imessage.txt")
register_dictionary("common.txt")
register_srvcmd("amx_adminonline","setMessage")
register_cvar("amx_freq_adminonline","10")
new lastinfo
get_localinfo("lastinfomsg",lastinfo,7)
g_Current = str_to_num(lastinfo)
set_localinfo("lastinfomsg","")
}

public infoMessage() {
new admin,vip,temp
new ad_vip,p_num,ad_num,v_num,name
new apos = 0
new vpos = 0

if (g_Current >= g_MessagesNum)
    g_Current = 0

get_players(ad_vip,p_num,"c")
apos += format(admin,127-apos,"【当前在线管理员】^n__________________________________________^n")
for (new i=0; i<p_num; i++) {
    if(access(ad_vip,ADMIN_IMMUNITY)){
      ad_num++
      get_user_name(ad_vip,name,31)
      apos += format(admin,127-apos,"%s ",name)
    }
    if(access(ad_vip,ADMIN_RESERVATION) && !access(ad_vip,ADMIN_IMMUNITY)){
      v_num++
      get_user_name(ad_vip,name,31)
      vpos += format(vip,127-vpos,"%s ",name)
    }
}
if (ad_num == 0)
    format(admin,127,"【欢迎来到XXX1.6服务器】^n__________________________________________^n目前没有OP在线")
format(temp,767,"%s^n%s%s",g_Messages,admin,vip)
#if defined RANDOM_COL
set_hudmessage(random_num(25,100), random_num(25,100), random_num(25,1000),
    X_POS, Y_POS, 2, 0.5, HOLD_TIME , 2.0, 2.0, 1)
#else
set_hudmessage(g_Values, g_Values, g_Values,
    X_POS, Y_POS, 2, 0.5, HOLD_TIME , 2.0, 2.0, 1)
#endif
get_players(g_players,num,"bc")
for (new i=0; i<num; i++){
    show_hudmessage(g_players,temp)
    client_print(g_players,print_console,temp)
}
++g_Current
new Float:freq_im = get_cvar_float("amx_freq_adminonline")
if ( freq_im > 0.0 ) set_task( freq_im ,"infoMessage",12345)
}

public setMessage() {
if (g_MessagesNum >= MAX_MESSAGES) {
    server_print("%L",LANG_SERVER,"INF_REACH")
    return PLUGIN_HANDLED
}
remove_task(12345)
read_argv(1,g_Messages,380)
new hostname
get_cvar_string("hostname",hostname,63)
replace(g_Messages,380,"%hostname%",hostname)
while(replace(g_Messages,380,"\n","^n")){}
new mycol
read_argv(2,mycol,11) // RRRGGGBBB
g_Values = str_to_num(mycol)
mycol = 0
g_Values = str_to_num(mycol)
mycol = 0
g_Values = str_to_num(mycol)
g_MessagesNum++
new Float:freq_im = get_cvar_float("amx_freq_adminonline")
if ( freq_im > 0.0 ) set_task( freq_im ,"infoMessage",12345)
return PLUGIN_HANDLED
}

public plugin_end() {
new lastinfo
num_to_str(g_Current,lastinfo,7)
set_localinfo("lastinfomsg",lastinfo)
}

麻烦各位了~~~

cityhonghu 发表于 2005-11-20 06:13:15

回复: 麻烦谁帮我修改下显示在线管理员插件

这里好像不允许发布此类帖子了。应该发到一般问题区?

金闪闪 发表于 2005-11-20 09:10:41

回复: 麻烦谁帮我修改下显示在线管理员插件

你先显示VIP再显示OP不就可以了。
或则在OP的判断再添加个识别语句。 :D

AE86 发表于 2005-11-21 03:10:04

回复: 麻烦谁帮我修改下显示在线管理员插件

VIP太多了,现在就只想让他显示在线管理员。平时白天32人都是VIP……那要显示到何年何月哦。
我把VIP段源码去掉,编译的时候会出错说什么 “compile遇到异常错误,会被WINDOWS关闭”
麻烦各位了:burn:

金闪闪 发表于 2005-11-21 08:47:11

回复: 麻烦谁帮我修改下显示在线管理员插件

那你把VIP的标示码改了。:D
例如 OP为 O,VIP没有O。 :byebye:

AE86 发表于 2005-11-21 10:42:56

回复: 麻烦谁帮我修改下显示在线管理员插件

Post by 金闪闪
那你把VIP的标示码改了。:D
例如 OP为 O,VIP没有O。 :byebye:
闪闪~~~
说到底还是不帮我:qqb019:

金闪闪 发表于 2005-11-21 11:23:33

回复: 麻烦谁帮我修改下显示在线管理员插件

Post by AE86
闪闪~~~
说到底还是不帮我:qqb019:
帮什么?不是给你建议了么?:D

你还是老老实实地看users.ini的中文注释。
你完全可以 custom level VIP的。
:eek:

AE86 发表于 2005-11-21 23:29:29

回复: 麻烦谁帮我修改下显示在线管理员插件

:brick:
闪闪,偶像的是不是该给粉丝一点贡献啊 :boss:

金闪闪 发表于 2005-11-22 09:11:55

回复: 麻烦谁帮我修改下显示在线管理员插件

我都说了这么白了,你还不了解么?
只好再说一次了。
users.ini的中m,n,o,p,q,r,s,t是custom level(自定义级别)。
如果有:
"CHM"        "admin"        "abcdefghijklmnopqrstu"        "a" ;这是OP了。
"VIP"        "vip"        "abcdefghijklmnopqrsu"        "a" ;这是VIP了,为何?少了t了。
那么你的sma中的access()是否能改改呢?

:D

继续努力,你快成大师了。

AE86 发表于 2005-11-23 05:22:32

回复: 麻烦谁帮我修改下显示在线管理员插件

Post by 金闪闪
继续努力,你快成大师了。
大师?
有点看不懂~~~ :p
页: [1] 2
查看完整版本: 麻烦谁帮我修改下显示在线管理员插件