[FRS] Prime

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
  • Автор ресурса
  • #1
Loco добавил(а) новый ресурс:

[Prime Natives] Custom FakeRank - Кастомные фейк-ранги, которые отображают прайм статус игрока.

Фейк ранги, отображающие прайм статус игрока (есть ли он или нет) в табе.
(Иконки можно менять на свои!)
Посмотреть вложение 44529
Посмотреть вложение 44530

Узнать больше об этом ресурсе...
 

SlavON

Добрая душа
Сообщения
1,582
Реакции
326
Loco а Prime Natives вообще работает? Последние дни перестало пускать уже даже по сроку аккаунта...
 

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
  • Автор ресурса
  • #4
У меня работает, стоит только ядро prime natives и этот модуль к нему.
 

ALSHiN

Участник
Сообщения
222
Реакции
14
Кто-то делал красивые таблички себе наподобие вот этой, только для прайма?
44914

Поделитесь если не сложно )
 

Someone

Участник
Сообщения
1,933
Реакции
1,653
Loco добавил(а) новый ресурс:

[Prime Natives] Custom FakeRank - Кастомные фейк-ранги, которые отображают прайм статус игрока.



Узнать больше об этом ресурсе...
Как по мне - лучше в приватный ранг засовывать картинку с перечеркнутым значком Prime.

44916


44942



У меня работает, стоит только ядро prime natives и этот модуль к нему.
Забавно, что оно еще живо..
 
Последнее редактирование:

over_trax

Участник
Сообщения
1,451
Реакции
488
а иконки будут работать с другими кастомными званиями ?
думаю на многих серверах нужно и статус прайма отображать и звание на сервере
 

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
  • Автор ресурса
  • #8

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
  • Автор ресурса
  • #9

Someone

Участник
Сообщения
1,933
Реакции
1,653
Я может слепой, но...

Это что вообще за ... ?
C++:
public void OnClientPostAdminCheck(int iClient)
{
    CheckClient(iClient);
    return;
}

stock void CheckClient(iClient)
{
    if (CheckCommandAccess(iClient, "BypassPremiumCheck", ADMFLAG_ROOT, true))
    {
        iId[iClient] = c_Prime;
    }
    else iId[iClient] = c_NoPrime;
    
}

Это такая проверка на Prime ?
 

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
  • Автор ресурса
  • #11
Я может слепой, но...

Это что вообще за ... ?
C++:
public void OnClientPostAdminCheck(int iClient)
{
    CheckClient(iClient);
    return;
}

stock void CheckClient(iClient)
{
    if (CheckCommandAccess(iClient, "BypassPremiumCheck", ADMFLAG_ROOT, true))
    {
        iId[iClient] = c_Prime;
    }
    else iId[iClient] = c_NoPrime;
   
}

Это такая проверка на Prime ?
Что-то не устраивает?)

C++:
#pragma semicolon 1

#include <sdktools_stringtables>
#include <SteamWorks>

int c_Prime;
int c_NoPrime;
int iId[MAXPLAYERS +1];

public Plugin myinfo =
{
    name        = "[Prime Natives] Custom FakeRanks",
    version        = "1.0.1",
    description    = "Fake Ranks for Prime status",
    author        = "ღ λŌK0ЌЭŦ ღ ™",
    url            = "https://hlmod.ru/"
}

public APLRes AskPluginLoad2(Handle myself, bool late, char[] error, int err_max)
{
    CreateNative("FRS_Prime_GetId", Native_GetId);
    RegPluginLibrary("FRS_prime");
    return APLRes_Success;
}

public int Native_GetId(Handle plugin, int args)
{
    int iClient = GetNativeCell(1);
    if(iClient < 1 || iClient > MaxClients)
        return ThrowNativeError(SP_ERROR_NATIVE, "Invalid iClient index (%d)", iClient);
    if(!IsClientConnected(iClient))
        return ThrowNativeError(SP_ERROR_NATIVE, "iClient %d is not connected", iClient);

    return (iId[iClient]);
}

public void OnPluginStart()
{
    ConVar cvar;
    (cvar = CreateConVar("sm_prime_natives_fakerank_prime", "60997701", "Id skillgroup*.swg for Prime status")).AddChangeHook(ChangeCvar_Prime);
    c_Prime = cvar.IntValue;

    (cvar = CreateConVar("sm_prime_natives_fakerank_noprime", "60997702", "Id skillgroup*.swg for No Prime status")).AddChangeHook(ChangeCvar_NoPrime);
    c_NoPrime = cvar.IntValue;
    
    char szBuffer[250];
    FormatEx(szBuffer, sizeof(szBuffer), "materials/panorama/images/icons/skillgroups/skillgroup%i.svg", c_NoPrime);
    if(FileExists(szBuffer)) AddFileToDownloadsTable(szBuffer);
    
    FormatEx(szBuffer, sizeof(szBuffer), "materials/panorama/images/icons/skillgroups/skillgroup%i.svg", c_Prime);
    if(FileExists(szBuffer)) AddFileToDownloadsTable(szBuffer);

    AutoExecConfig(true, "FakeRank", "sourcemod/prime_natives");

    for(int i = 1; i <= MaxClients; i++)    if(IsClientInGame(i) && IsClientAuthorized(i))
    {
        OnClientPostAdminCheck(i);
    }
}

public void ChangeCvar_Prime(ConVar cvar, char[] oldValue, char[] newValue)
{   
    c_Prime = cvar.IntValue;
}

public void ChangeCvar_NoPrime(ConVar cvar, char[] oldValue, char[] newValue)
{   
    c_NoPrime = cvar.IntValue;
}

public void OnClientPostAdminCheck(int iClient)
{
    if (CheckCommandAccess(iClient, "BypassPremiumCheck", ADMFLAG_ROOT, true))
    {
        iId[iClient] = c_Prime;
    }
    else iId[iClient] = c_NoPrime;
    return;
}
 

Someone

Участник
Сообщения
1,933
Реакции
1,653
Что-то не устраивает?)

C++:
#pragma semicolon 1

#include <sdktools_stringtables>
#include <SteamWorks>

int c_Prime;
int c_NoPrime;
int iId[MAXPLAYERS +1];

public Plugin myinfo =
{
    name        = "[Prime Natives] Custom FakeRanks",
    version        = "1.0.1",
    description    = "Fake Ranks for Prime status",
    author        = "ღ λŌK0ЌЭŦ ღ ™",
    url            = "https://hlmod.ru/"
}

public APLRes AskPluginLoad2(Handle myself, bool late, char[] error, int err_max)
{
    CreateNative("FRS_Prime_GetId", Native_GetId);
    RegPluginLibrary("FRS_prime");
    return APLRes_Success;
}

public int Native_GetId(Handle plugin, int args)
{
    int iClient = GetNativeCell(1);
    if(iClient < 1 || iClient > MaxClients)
        return ThrowNativeError(SP_ERROR_NATIVE, "Invalid iClient index (%d)", iClient);
    if(!IsClientConnected(iClient))
        return ThrowNativeError(SP_ERROR_NATIVE, "iClient %d is not connected", iClient);

    return (iId[iClient]);
}

public void OnPluginStart()
{
    ConVar cvar;
    (cvar = CreateConVar("sm_prime_natives_fakerank_prime", "60997701", "Id skillgroup*.swg for Prime status")).AddChangeHook(ChangeCvar_Prime);
    c_Prime = cvar.IntValue;

    (cvar = CreateConVar("sm_prime_natives_fakerank_noprime", "60997702", "Id skillgroup*.swg for No Prime status")).AddChangeHook(ChangeCvar_NoPrime);
    c_NoPrime = cvar.IntValue;
   
    char szBuffer[250];
    FormatEx(szBuffer, sizeof(szBuffer), "materials/panorama/images/icons/skillgroups/skillgroup%i.svg", c_NoPrime);
    if(FileExists(szBuffer)) AddFileToDownloadsTable(szBuffer);
   
    FormatEx(szBuffer, sizeof(szBuffer), "materials/panorama/images/icons/skillgroups/skillgroup%i.svg", c_Prime);
    if(FileExists(szBuffer)) AddFileToDownloadsTable(szBuffer);

    AutoExecConfig(true, "FakeRank", "sourcemod/prime_natives");

    for(int i = 1; i <= MaxClients; i++)    if(IsClientInGame(i) && IsClientAuthorized(i))
    {
        OnClientPostAdminCheck(i);
    }
}

public void ChangeCvar_Prime(ConVar cvar, char[] oldValue, char[] newValue)
{  
    c_Prime = cvar.IntValue;
}

public void ChangeCvar_NoPrime(ConVar cvar, char[] oldValue, char[] newValue)
{  
    c_NoPrime = cvar.IntValue;
}

public void OnClientPostAdminCheck(int iClient)
{
    if (CheckCommandAccess(iClient, "BypassPremiumCheck", ADMFLAG_ROOT, true))
    {
        iId[iClient] = c_Prime;
    }
    else iId[iClient] = c_NoPrime;
    return;
}

Т.е. тебя не смущает не наличие проверки на Prime ?
 

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
  • Автор ресурса
  • #13
Т.е. тебя не смущает не наличие проверки на Prime ?
То-есть нету проверки является ли игрок не праймом?

Тогда должно быть так:
C++:
public void OnClientPostAdminCheck(int iClient)
{
    if (CheckCommandAccess(iClient, "BypassPremiumCheck", ADMFLAG_ROOT, true))
    {
        iId[iClient] = c_Prime;
        return;
    }

    if (k_EUserHasLicenseResultDoesNotHaveLicense == SteamWorks_HasLicenseForApp(client, 624820))
    {
        iId[iClient] = c_NoPrime;
        return;
    }
    return;
}
 

Someone

Участник
Сообщения
1,933
Реакции
1,653
То-есть нету проверки является ли игрок не праймом?

Тогда должно быть так:
C++:
public void OnClientPostAdminCheck(int iClient)
{
    if (CheckCommandAccess(iClient, "BypassPremiumCheck", ADMFLAG_ROOT, true))
    {
        iId[iClient] = c_Prime;
        return;
    }

    if (k_EUserHasLicenseResultDoesNotHaveLicense == SteamWorks_HasLicenseForApp(client, 624820))
    {
        iId[iClient] = c_NoPrime;
        return;
    }
    return;
}
Другое дело.
 

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
  • Автор ресурса
  • #16

Palonez

бб братки
Сообщения
3,035
Реакции
1,837
Как сделать так что бы ранги с level rank и с этим плагином не менялись через определенное время
 
Сверху Снизу