Вывод SteamID в чат игроку

MizzZer

Где Крузя. Крузи нет.
Сообщения
216
Реакции
103
Толком нигде не увидел вывода steamID по команде
Вот решил скинуть, но как обычно толком не понимаю как сделать чтобы выводило текст после команды, а не до команды
Должно быть:
!steamid
текст

А выводит

Текст
!steamid

C-подобный:
#pragma semicolon 1
#include <sourcemod>
#include <csgo_colors>

#define VER "v1.3"

public Plugin myinfo = {
    name = "Steamid",
    author = "MizzZer",
    description = "",
    version = VER,
    url = "https://klub-cs.ru"
};

public void OnPluginStart()
{
    RegConsoleCmd("sm_steamid", steam_id);
    RegConsoleCmd("sm_status", steam_id);
}

public Action steam_id(int client, int args)
{
    char steamid[32];
    GetClientAuthId(client, AuthId_Steam2, steamid, sizeof(steamid));
    CGOPrintToChat(client, "================================================================\n{GRAY}[{GREEN}Klub-cs.ru{GRAY}] {DEFAULT}Вот твой ID - {RED}%s {DEFAULT} \n {LIME}Можно было бы и status в консолке прописать -_- \n================================================================", steamid);
    return Plugin_Handled;
}
Как мне сказал @R1KO
делай не
RegConsoleCmd

а через
OnClientSayCommand
или
OnClientSayCommand_Post
Но я так и не понял как их юзать
 
Решение
Толком нигде не увидел вывода steamID по команде
Вот решил скинуть, но как обычно толком не понимаю как сделать чтобы выводило текст после команды, а не до команды
Должно быть:
!steamid
текст

А выводит

Текст
!steamid

C-подобный:
#pragma semicolon 1
#include <sourcemod>
#include <csgo_colors>

#define VER "v1.3"

public Plugin myinfo = {
    name = "Steamid",
    author = "MizzZer",
    description = "",
    version = VER,
    url = "https://klub-cs.ru"
};

public void OnPluginStart()
{
    RegConsoleCmd("sm_steamid", steam_id);
    RegConsoleCmd("sm_status", steam_id);
}

public Action steam_id(int client, int args)
{
    char steamid[32];
    GetClientAuthId(client, AuthId_Steam2, steamid, sizeof(steamid));
    CGOPrintToChat(client...

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
Толком нигде не увидел вывода steamID по команде
Вот решил скинуть, но как обычно толком не понимаю как сделать чтобы выводило текст после команды, а не до команды
Должно быть:
!steamid
текст

А выводит

Текст
!steamid

C-подобный:
#pragma semicolon 1
#include <sourcemod>
#include <csgo_colors>

#define VER "v1.3"

public Plugin myinfo = {
    name = "Steamid",
    author = "MizzZer",
    description = "",
    version = VER,
    url = "https://klub-cs.ru"
};

public void OnPluginStart()
{
    RegConsoleCmd("sm_steamid", steam_id);
    RegConsoleCmd("sm_status", steam_id);
}

public Action steam_id(int client, int args)
{
    char steamid[32];
    GetClientAuthId(client, AuthId_Steam2, steamid, sizeof(steamid));
    CGOPrintToChat(client, "================================================================\n{GRAY}[{GREEN}Klub-cs.ru{GRAY}] {DEFAULT}Вот твой ID - {RED}%s {DEFAULT} \n {LIME}Можно было бы и status в консолке прописать -_- \n================================================================", steamid);
    return Plugin_Handled;
}
Как мне сказал @R1KO

Но я так и не понял как их юзать
C++:
public void OnClientSayCommand_Post(int client, const char[] command, const char[] sArgs)
{
    if(!client || client > MaxClients)
        return;

    if(strcmp(sArgs, "steam") != 0 || strcmp(sArgs, "status") != 0)
        return;

    char buffer[64];
    CGOPrintToChat(client, "===================================");
    GetClientAuthId(client, AuthId_Steam2, buffer, sizeof(buffer));
    CGOPrintToChat(client, "Ваш SteamID: %s", buffer);
    CGOPrintToChat(client, "===================================");
}
Сообщения автоматически склеены:

C++:
public void OnPluginStart()
{
    RegConsoleCmd("sm_steamid", CMD_PrintData);
    RegConsoleCmd("sm_status", CMD_PrintData);
}

public Action CMD_PrintData(int client, int args)
{
    if(client && client < MaxClients)
        CreateTimer(0.1, Timer_DelayPrint, GetClientUserId(client));
}

public Action Timer_DelayPrint(Handle timer, int client)
{
    client = GetClientOfUserId(client);
    char buffer[64];

    CGOPrintToChat(client, "===================================");
    GetClientAuthId(client, AuthId_Steam2, buffer, sizeof(buffer));
    CGOPrintToChat(client, "Ваш SteamID: %s", buffer);
    CGOPrintToChat(client, "===================================");
}
 
Последнее редактирование:
Решение

kilroy

:clown:
Сообщения
1,065
Реакции
606
  • Команда форума
  • #4
Толком нигде не увидел вывода steamID по команде
Нужно всего-то немного поискать 🙂
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,520
Реакции
4,979
Толком нигде не увидел вывода steamID по команде
Раз сто выкладывали код, чтобы это было.
Просто загуглить нужно было

Сообщения автоматически склеены:

CGOPrintToChat(client, "===================================");
А почему не просто PrintToChat(), раз уж цвета вообще не используются?
не понимаю как сделать чтобы выводило текст после команды, а не до команды
На сервере стоит чатпроцессор и плагины для добавления тегов, что ли?
 
Последнее редактирование:

MizzZer

Где Крузя. Крузи нет.
Сообщения
216
Реакции
103
На сервере стоит чатпроцессор и плагины для добавления тегов, что ли?
Да именно

А почему не просто PrintToChat(), раз уж цвета вообще не используются?
Будут
Поиск по форуму мне ничего не дал ))

@iLoco Спасибо
 
Сверху Снизу