[CS:S/CS:GO] Fix Status

Тема в разделе "Новые плагины", создана пользователем david777, 18 сен 2015.

  1. david777

    david777 SemJef ЛОЛ

    Сообщения:
    55
    Симпатии:
    7
    Данный плагин будет нормально отображать status в консоль, т.е SteamID будет не U:1:000000 а нормально STEAM:1:0:00000, так же если вы админ то сможете узнать IP игрока его выдаст так же в консоль:)
     

    Вложения:

    • status.sp
      Размер файла:
      872 байт
      Просмотров:
      144
    • status.smx
      Размер файла:
      3 КБ
      Просмотров:
      91
    Последнее редактирование: 7 окт 2015
  2. B1g

    B1g

    Сообщения:
    696
    Симпатии:
    24
    Исход дай пожалуйста.
     
  3. AS TRO

    AS TRO

    Сообщения:
    1.055
    Симпатии:
    508
    Плюсую к б1г, можно получить исходник?
     
  4. Вова Галик 552892780

    Вова Галик 552892780

    Сообщения:
    173
    Симпатии:
    37
    что-то типо этого
    Код:
    #include <sourcemod>
    
    public Plugin:myinfo =
    {
    	name = "Status",
    	description = "Status v2",
    	author = "Tokami",
    	version = "1.3.1",
    	url = "http://♥♥♥♥♥♥♥♥♥.ru/"
    };
    
    public OnPluginStart()
    {
    	RegConsoleCmd("status", Status, "", 0);
    }
    
    public Action:Status(client, args)
    {
    	decl String:AuthSteam[64];
    	decl String:ip[64];
    	new i = 1;
    	while (i <= MaxClients)
    	{
    		if (IsClientInGame(i))
    		{
    			GetClientAuthString(i, AuthSteam, 64, true); 
    			GetClientIP(i, ip, 64, true);
    			if (GetUserAdmin(client) == -1)
    			{
    				PrintToConsole(client, "#	UserID %d, Имя - %N, SteamID - %s", GetClientUserId(i), i, AuthSteam);
    			}
    			PrintToConsole(client, "#	UserID %d, Имя - %N, SteamID - %s, IP - %s", GetClientUserId(i), i, AuthSteam, ip);
    		}
    		i++;
    	}
    	return Action:3;
    }
    
    
     
  5. bigbrain911

    bigbrain911

    Сообщения:
    314
    Симпатии:
    23
    L 09/18/2015 - 23:31:46: [SM] Native "GetUserAdmin" reported: Client index 0 is invalid
    L 09/18/2015 - 23:31:46: [SM] Displaying call stack trace for plugin "status.smx":
    L 09/18/2015 - 23:31:46: [SM] [0] Line 28, status.sp::Status()
     
  6. White Wolf

    White Wolf [] (int _n) -> double { return (_n % 2) == 0;}); Супер-модератор

    Сообщения:
    1.186
    Симпатии:
    411
    AlmazON, вроде вместо отступов можно использовать табуляцию (\t) или я не прав? Тогда все строки будут равномерно расположены по отношению друг к другу.
    В С++ так работает.
     
  7. artyrka94

    artyrka94

    Сообщения:
    182
    Симпатии:
    36
    про \t не слышал. знаю используют зареене заданную длину символов %-32s
     
  8. console1988

    console1988

    Сообщения:
    84
    Симпатии:
    5
    а возможно ли сделать SteamID старого формата, основным? На серверном уровне?

    не совсем в тему:
    Eventscripts сломалась база данных, она велась в старом формате.
    Мне бы преобразовать в старый формат
     
  9. bigbrain911

    bigbrain911

    Сообщения:
    314
    Симпатии:
    23
    Что значит "Консоль сервера будет обычной", здесь же админам показывает айди и ip, а юзерам без прав только айди.
     
  10. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.971
    Симпатии:
    2.977
    bigbrain911, во-первых стандартную команду status никто не отменял.
    во-вторых if (client) исключает сервер из проверки, следовательно в консоли сервера всё останется как было
     
  11. bigbrain911

    bigbrain911

    Сообщения:
    314
    Симпатии:
    23
    R1KO, все работает, вопрос был как исправить ошибку:

    Код:
    L 09/18/2015 - 23:31:46: [SM] Native "GetUserAdmin" reported: Client index 0 is invalid
     L 09/18/2015 - 23:31:46: [SM] Displaying call stack trace for plugin "status.smx":
     L 09/18/2015 - 23:31:46: [SM] [0] Line 28, status.sp::Status()
    Плагин работает:

    Код:
    ] status 
     # UserID 24, Имя - ApSirukeS<ThC>, SteamID - BOT
     # UserID 4, Имя - -->> L.S.D <<--, SteamID - BOT
     # UserID 22, Имя - Vaseatk@, SteamID - BOT
     # [B]UserID 15, Имя - ПУЛЯ, SteamID - STEAM_0:0:545521764[/B]
     # [B]UserID 23, Имя - TGK, SteamID - STEAM_0:0:1529772790[/B]
     # UserID 10, Имя - C.r.a.z.y KU4ER, SteamID - BOT
     # UserID 11, Имя - A.R.T.I.S.T [UA, SteamID - BOT
     # UserID 12, Имя - Papa Yoda, SteamID - BOT
     # UserID 17, Имя - A.R.T.I.S.T [UA], SteamID - BOT
     # [B]UserID 20, Имя - test, SteamID - STEAM_0:0:961166202[/B]
     
  12. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.971
    Симпатии:
    2.977
  13. bigbrain911

    bigbrain911

    Сообщения:
    314
    Симпатии:
    23
    Код:
    //// status.sp
    //
    // status.sp(20) : error 036: empty statement
    // status.sp(25) : warning 234: symbol "GetClientAuthString" is marked as deprecated: Use GetClientAuthId
    //
    //
    //
    // 1 Error.
    //
    // Compilation Time: 0,16 sec
    // ----------------------------------------
    Добавлено через 2 минуты
    Лишние кавычки убрал на 20 строке, но на 25 ругается:

    Код:
    //// status.sp
    //
    // status.sp(25) : warning 234: symbol "GetClientAuthString" is marked as deprecated: Use GetClientAuthId
    //
    //
    // Code size:             3464 bytes
    // Data size:             2408 bytes
    // Stack/heap size:      16384 bytes
    // Total requirements:   22256 bytes
    //
    // 1 Warning.
    //
    // Compilation Time: 0,14 sec
    // ----------------------------------------
     
    Последнее редактирование: 19 сен 2015
  14. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.971
    Симпатии:
    2.977
    bigbrain911,
    PHP:
    #include <sourcemod>

    public OnPluginStart() RegConsoleCmd("status"Status);

    public 
    Action:Status(clientargs)
    {
        if (
    client)
        {
            
    decl String:AuthSteam[32], String:ip[20], bool:bIsAdmini;
            
    bIsAdmin bool:(GetUserAdmin(client) != INVALID_ADMIN_ID);
            for (
    =1i<=MaxClients; ++i)
            {
                if (
    IsClientInGame(i))
                {
                    
    GetClientAuthId(iAuthId_Steam2AuthSteamsizeof(AuthSteam));
                    if (
    bIsAdmin)
                    {
                        
    PrintToConsole(client"#    UserID %d, Имя - %N, SteamID - %s"GetClientUserId(i), iAuthSteam);
                    }
                    else
                    {
                        
    GetClientIP(iipsizeof(ip));
                        
    PrintToConsole(client"#    UserID %d, Имя - %N, SteamID - %s, IP - %s"GetClientUserId(i), iAuthSteamip);
                    }
                }
            }
        }
        return 
    Plugin_Handled;
    }
     
    Последнее редактирование: 19 сен 2015
  15. bigbrain911

    bigbrain911

    Сообщения:
    314
    Симпатии:
    23
    R1KO,

    Код:
    //// status.sp
    //
    // status.sp(11) : error 029: invalid expression, assumed zero
    // status.sp(11) : warning 215: expression has no effect
    // status.sp(11) : error 001: expected token: ";", but found ")"
    // status.sp(11) : error 029: invalid expression, assumed zero
    // status.sp(11) : fatal error 189: too many error messages on one line
    //
    // Compilation aborted.
    // 4 Errors.
    //
    // Compilation Time: 0,14 sec
    // ----------------------------------------
     
  16. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.971
    Симпатии:
    2.977
    bigbrain911, опечатался. замени на 11-й строке +i на ++i
     
  17. bigbrain911

    bigbrain911

    Сообщения:
    314
    Симпатии:
    23
    Спасибо!
     
  18. david777

    david777 SemJef ЛОЛ

    Сообщения:
    55
    Симпатии:
    7
    Скомпилированный код R1KO, так же он там поправил мою ошибку с client>0
     

    Вложения:

    • status.smx
      Размер файла:
      3 КБ
      Просмотров:
      9
  19. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.971
    Симпатии:
    2.977
    david777, её еще Алмазон поправил.
     
  20. bigbrain911

    bigbrain911

    Сообщения:
    314
    Симпатии:
    23
    Блин, кто то перепутал местами юзера и админа, юзеру показывает ip и айди, админу только айди, как поправить чтобы не запороть? это в ксс.

    В ксго ошибка:
    Код:
    L 09/19/2015 - 19:10:35: [SM] Native "GetUserAdmin" reported: Client index 0 is invalid
    L 09/19/2015 - 19:10:35: [SM] Displaying call stack trace for plugin "status.smx":
    L 09/19/2015 - 19:10:35: [SM]   [0]  Line 28, status.sp::Status()