Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

2 страниц V   1 2

Вопрос по плагину: srv_info.amxx

Статус пользователя drag26
сообщение 14.10.2011, 15:03
Сообщение #1
Стаж: 14 лет

Сообщений: 28
Благодарностей: 1
Полезность: 28

Доброго вечера, форумчане! Хотел бы спросить у вас, как сделать так, что бы показывало сколько админов на сервере? Т.е в плагине srv_info есть такая строчка, но если на сервере больше 1 админа, он все ровно показывает, что админов онлайн: 1.

Вот код фрагмента:


set_hudmessage(red,green,blue,get_pcvar_float(hud_x),get_pcvar_float(hud_y),get_
pcvar_num(hud_effects),6.0,1.0)
ShowSyncHudMsg(id,hudsync,"Ваш IP: %s ^nДо конца: %d:%02d | Время: %s^nFPS: %.1f^nУбийств: %i | Смертей: %i | Админов: %i | Раунд %d",ip,timeleft / 60, timeleft % 60,timestring,Fps,get_user_frags(id),get_user_deaths(id),admins,g_round)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
FixX
сообщение 14.10.2011, 15:05
Сообщение #2
Стаж: 15 лет

Сообщений: 2200
Благодарностей: 526
Полезность: 0

весь код дай, а то пятница, экстрасенсы в запой ушли
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя drag26
сообщение 14.10.2011, 15:47
Сообщение #3
Стаж: 14 лет

Сообщений: 28
Благодарностей: 1
Полезность: 28

/* This plugin is made by xakintosh with Amxmodx Studio 1.4.3 (final) */
// Thanks to @He3aBucuM
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

new gMaxPlayers,hudsync;
new hud_rgb, hud_x, hud_y, hud_effects;
new g_round = 1;

public plugin_init() {
register_plugin("Server Side Info","1.3","xakintosh")
hud_rgb = register_cvar( "srv_hud_rgb", "0 255 0" );
hud_x = register_cvar( "srv_hud_x", "0.11" );
hud_y = register_cvar( "srv_hud_y", "0.01" );
hud_effects = register_cvar( "srv_hud_effects", "0" );
gMaxPlayers = get_maxplayers();
hudsync = CreateHudSyncObj()
set_task(0.1, "Fwd_StartFrame", 1, "", 0, "b");
register_forward(FM_StartFrame, "Fwd_StartFrame");
register_event("HLTV", "event_newround", "a", "1=0", "2=0");
}
public event_newround() {
g_round++
}
public Fwd_StartFrame(id) {
new timestring[31]
get_time("%H:%M:%S",timestring,8)
static Float:GameTime, Float:FramesPer = 0.0;
static Float:Fps;
GameTime = get_gametime();
if(FramesPer >= GameTime)
Fps += 1.0;
else {
FramesPer = FramesPer + 1.0;
for( new id = 1; id <= gMaxPlayers; id++ ) {
if(is_user_alive(id) ) {
new admins = 0;
if(is_user_admin(id))
admins++;
new ip[32], red, green, blue
get_user_ip(id, ip, 16, 1)
get_hud_color(red, green, blue)
new timeleft = get_timeleft()
set_hudmessage(red,green,blue,get_pcvar_float(hud_x),get_pcvar_float(hud_y),get_
pcvar_num(hud_effects),6.0,1.0)
ShowSyncHudMsg(id,hudsync,"Ваш IP: %s ^nДо конца: %d:%02d | Время: %s^nFPS: %.1f^nУбийств: %i | Смертей: %i | Админов: %i | Раунд %d",ip,timeleft / 60, timeleft % 60,timestring,Fps,get_user_frags(id),get_user_deaths(id),admins,g_round)
}
}
Fps = 0.0;
}
}
get_hud_color(&r, &g, &b) {
new color[20]
static red[5], green[5], blue[5]
get_pcvar_string(hud_rgb, color, charsmax(color))
parse(color, red, charsmax(red), green, charsmax(green), blue, charsmax(blue))

r = str_to_num(red)
g = str_to_num(green)
b = str_to_num(blue)
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AndrewZ
сообщение 14.10.2011, 15:53
Сообщение #4


Иконка группы

Стаж: 18 лет
Город: Санкт-Петербург


Сообщений: 4700
Благодарностей: 2452
Полезность: 1018

Не доделан плагин вроде как

А номер раунда показывает?

upd. А не, я как-то не полностью скопировал.


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
FixX
сообщение 14.10.2011, 15:54
Сообщение #5
Стаж: 15 лет

Сообщений: 2200
Благодарностей: 526
Полезность: 0

new admins = 0;
if(is_user_admin(id))
admins++;
должно быть всё ок
как вариант
if(is_user_admin(id))
{
admins++;
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя drag26
сообщение 14.10.2011, 16:03
Сообщение #6
Стаж: 14 лет

Сообщений: 28
Благодарностей: 1
Полезность: 28

| Админов: %i | вот эта строчка отвечает за кол-во админов? или куда прописать?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
FixX
сообщение 14.10.2011, 16:04
Сообщение #7
Стаж: 15 лет

Сообщений: 2200
Благодарностей: 526
Полезность: 0

Код
if(is_user_admin(id))
admins++;

замени на
Код
if(is_user_admin(id))
{
admins++;
}


Отредактировал: FixX, - 14.10.2011, 16:05
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя drag26
сообщение 14.10.2011, 16:56
Сообщение #8
Стаж: 14 лет

Сообщений: 28
Благодарностей: 1
Полезность: 28

Так же показывает, что админов:1
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
FixX
сообщение 14.10.2011, 16:57
Сообщение #9
Стаж: 15 лет

Сообщений: 2200
Благодарностей: 526
Полезность: 0

Цитата(drag26 @ 14.10.2011, 17:56) *
Так же показывает, что админов:1

права у всех одинаковые?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя drag26
сообщение 14.10.2011, 17:04
Сообщение #10
Стаж: 14 лет

Сообщений: 28
Благодарностей: 1
Полезность: 28

да
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Flash
сообщение 14.10.2011, 18:24
Сообщение #11
Стаж: 16 лет

Сообщений: 793
Благодарности: выкл.

Код
stock get_admins_num()
{
    new num;
    
    for ( new i = 1; i <= get_maxplayers(); i++ )
    {
        if ( !is_user_connected( i ) ) continue;
        if ( is_user_admin( i ) ) num++;
    }
    
    return num;
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя drag26
сообщение 14.10.2011, 19:23
Сообщение #12
Стаж: 14 лет

Сообщений: 28
Благодарностей: 1
Полезность: 28

Заменил: if(is_user_admin(id))
admins++;


на:

{
new num;

for ( new i = 1; i <= get_maxplayers(); i++ )
{
if ( !is_user_connected( i ) ) continue;
if ( is_user_admin( i ) ) num++;
}

return num;
}


Выдаёт 2 ошибки при компиляции.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
FixX
сообщение 14.10.2011, 19:37
Сообщение #13
Стаж: 15 лет

Сообщений: 2200
Благодарностей: 526
Полезность: 0

Цитата(drag26 @ 14.10.2011, 20:23) *
Заменил: if(is_user_admin(id))
admins++;


на:

{
new num;

for ( new i = 1; i <= get_maxplayers(); i++ )
{
if ( !is_user_connected( i ) ) continue;
if ( is_user_admin( i ) ) num++;
}

return num;
}


Выдаёт 2 ошибки при компиляции.

не надо ничего заменять, добавь просто в самый конец
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя drag26
сообщение 15.10.2011, 11:01
Сообщение #14
Стаж: 14 лет

Сообщений: 28
Благодарностей: 1
Полезность: 28

srv_info.sma(10) : error 054: unmatched closing brace

не компилирует.

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

new gMaxPlayers,hudsync;
new hud_rgb, hud_x, hud_y, hud_effects;
new g_round = 1;

}
public event_newround() {
g_round++
}
public Fwd_StartFrame(id) {
new timestring[31]
get_time("%H:%M:%S",timestring,8)
static Float:GameTime, Float:FramesPer = 0.0;
static Float:Fps;
GameTime = get_gametime();
if(FramesPer >= GameTime)
Fps += 1.0;
else {
FramesPer = FramesPer + 1.0;
for( new id = 1; id <= gMaxPlayers; id++ ) {
if(is_user_alive(id) ) {
new admins = 0;
if(is_user_admin(id))
admins++;
new ip[32], red, green, blue
get_user_ip(id, ip, 16, 1)
get_hud_color(red, green, blue)
new timeleft = get_timeleft()
set_hudmessage(red,green,blue,get_pcvar_float(hud_x),get_pcvar_float(hud_y),get_
pcvar_num(hud_effects),6.0,1.0)
ShowSyncHudMsg(id,hudsync,"Ваш IP: %s ^nДо конца: %d:%02d | Время: %s^nFPS: %.1f^nУбийств: %i | Смертей: %i | Админов: %i | Раунд: %d",ip,timeleft / 60, timeleft % 60,timestring,Fps,get_user_frags(id),get_user_deaths(id),admins,g_round)
}
}
Fps = 0.0;
}
}
get_hud_color(&r, &g, &b) {
new color[20]
static red[5], green[5], blue[5]
get_pcvar_string(hud_rgb, color, charsmax(color))
parse(color, red, charsmax(red), green, charsmax(green), blue, charsmax(blue))

r = str_to_num(red)
g = str_to_num(green)
b = str_to_num(blue)
}
stock get_admins_num()
{
new num;

for ( new i = 1; i <= get_maxplayers(); i++ )
{
if ( !is_user_connected( i ) ) continue;
if ( is_user_admin( i ) ) num++;
}

return num;
}


Отредактировал: drag26, - 15.10.2011, 11:02
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
cs-portal
сообщение 15.10.2011, 14:36
Сообщение #15
Стаж: 16 лет

Сообщений: 8181
Благодарностей: 2709
Полезность: 0

lol ну добавил ты сток но им то ты не пользуешся

замени admins ( при показе хада ) на get_user_admin или что там в стоке
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя drag26
сообщение 15.10.2011, 15:23
Сообщение #16
Стаж: 14 лет

Сообщений: 28
Благодарностей: 1
Полезность: 28

Цитата(cs-portal @ 15.10.2011, 15:36) *
lol ну добавил ты сток но им то ты не пользуешся

замени admins ( при показе хада ) на get_user_admin или что там в стоке


lol
srv_info.sma(46) : error 017: undefined symbol "get_user_admin"
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AndrewZ
сообщение 15.10.2011, 15:29
Сообщение #17


Иконка группы

Стаж: 18 лет
Город: Санкт-Петербург


Сообщений: 4700
Благодарностей: 2452
Полезность: 1018

drag26,

Цитата
замени admins на get_user_admin

v
Цитата
или что там в стоке

v
Цитата
stock get_admins_num()


Отредактировал: ZZZombiE, - 15.10.2011, 15:30


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя drag26
сообщение 15.10.2011, 19:16
Сообщение #18
Стаж: 14 лет

Сообщений: 28
Благодарностей: 1
Полезность: 28

srv_info.sma(46) : error 029: invalid expression, assumed zero
srv_info.sma(46) : error 017: undefined symbol "get_admins_num"
srv_info.sma(46) : error 029: invalid expression, assumed zero
srv_info.sma(46) : fatal error 107: too many error messages on one line

Compilation aborted.
4 Errors.
Done.

Хм, м.б тогда уже кто-то сделает и скомпилирует?! Ибо не какой способ - не работает.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя H@ROS
сообщение 16.10.2011, 6:54
Сообщение #19


Стаж: 14 лет

Сообщений: 102
Благодарностей: 17
Полезность: 134

Руки выпрямлять за тебя никто тебе не будет…
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Flash
сообщение 16.10.2011, 11:06
Сообщение #20
Стаж: 16 лет

Сообщений: 793
Благодарности: выкл.

проще переписать плагин чем этот говнокод латать.

я так вижу ты совсем не шаришь, бери у кого ни будь под заказ или сам учись

p.s
исходники будь добр под тег [code] загоняй

Отредактировал: xxxFlasHxxx, - 16.10.2011, 11:09
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
2 страниц V   1 2
 
Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: