Ошибки компиляции.

Tonki_Ton

Script kiddie
Сообщения
614
Реакции
375
Помогите исправить ошибки компиляции.

Пробавал обратится к автору плагина, но как и ожидалось, игнор.

Ошибки

p8DLTsNVAxI.jpg

PHP:
#include <sourcemod>
#include <SteamWorks>
#include <store>
#include <shop>
#include <zephstocks>

ConVar iGroupID;
ConVar CreditsAdder;
ConVar group_adverts;
ConVar CreditsTime;
Handle TimeAuto = null;
bool b_IsMember[MAXPLAYERS+1];
int i_advert[MAXPLAYERS+1];

public Plugin myinfo =
{
    name = "Steam Group Credits",
    author = "Xines",
    description = "Deals x amount of credits per x amount of secounds",
    version = "1.0",
    url = ""
};

public void OnPluginStart()
{
    //Chat print on/off for all players
    group_adverts = CreateConVar("sm_group_enable_adverts", "1", "Enables/Disables notifications for all in chat (1=On/0=Off)", FCVAR_PLUGIN|FCVAR_NOTIFY, true, 0.0, true, 1.0);
   
    //Chat print on/off Client
    RegConsoleCmd("sm_sgc", SgcCmd, "(On/Off) Steam Group Credits, Client Announcements");
   
    //Configs
    iGroupID = CreateConVar("sm_groupid_add", "0000000", "Steam Group ID (Replace with yours)", FCVAR_PLUGIN|FCVAR_NOTIFY);
    CreditsAdder = CreateConVar("sm_group_credits", "5", "Credits to give per X time, if player is in group.", FCVAR_PLUGIN|FCVAR_NOTIFY);
    CreditsTime = CreateConVar("sm_group_credits_time", "60", "Time in seconds to deal credits.", FCVAR_PLUGIN|FCVAR_NOTIFY);
   
    //Don't Touch
    HookConVarChange(CreditsTime, Change_CreditsTime);
}

public void OnMapStart()
{
    TimeAuto = CreateTimer(GetConVarFloat(CreditsTime), CheckPlayers, _, TIMER_REPEAT|TIMER_FLAG_NO_MAPCHANGE);
}

public Action CheckPlayers(Handle timer)
{
    for (int i = 1; i <= MaxClients; i++)
    {
        if(IsClientInGame(i) && !IsFakeClient(i))
        {
            addcredits(i);
        }
    }
   
    return Plugin_Continue;
}

public void addcredits(int client)
{
    if(b_IsMember[client])
    {
        //Shop_SetClientCredits(client, Shop_GetClientCredits(client) + GetConVarInt(CreditsAdder));
        Store_SetClientCredits(client, Store_GetClientCredits(client) + GetConVarInt(CreditsAdder));
        if(GetConVarBool(group_adverts))
        {
            if(!i_advert[client])
                PrintToChat(client, "\x01[SM] You received \x04%i\x01 credits for being member in our \x04steam group!", GetConVarInt(CreditsAdder));
        }
    }
}

public void OnClientPostAdminCheck(int client)
{
    if (IsFakeClient(client))
        return;

    b_IsMember[client] = false;
    SteamWorks_GetUserGroupStatus(client, GetConVarInt(iGroupID));
}

public int SteamWorks_OnClientGroupStatus(int authid, int groupAccountID, bool isMember, bool isOfficer)
{
    int client = UserAuthGrab(authid);
   
    if (client == -1)
    {
        return;
    }
   
    if(isMember)
    {
        b_IsMember[client] = true;
    }
}

public int UserAuthGrab(int authid)
{
    for (int i = 1; i <= MaxClients; i++)
    {
        char charauth[64];
        GetClientAuthId(i, AuthId_Engine, charauth, sizeof(charauth));   
        char authchar[64];
        IntToString(authid, authchar, sizeof(authchar));
        if(StrContains(charauth, authchar) != -1)
        {
            return i;
        }
    }
   
    return -1;
}

public void Change_CreditsTime(Handle cvar, const char[] oldVal, const char[] newVal)
{
    if (TimeAuto != null)
    {
        KillTimer(TimeAuto);
        TimeAuto = null;
    }

    TimeAuto = CreateTimer(GetConVarFloat(CreditsTime), CheckPlayers, _, TIMER_REPEAT|TIMER_FLAG_NO_MAPCHANGE);
}

public Action SgcCmd(int client, int args)
{
    if (!GetConVarBool(group_adverts))
    {
        return Plugin_Continue;
    }
   
    switch (i_advert[client])
    {
        case 0:
        {
            i_advert[client] = 1;
            PrintToChat(client, "\x04[\x01Steam Group Credits\x04] \x01Announcements \x04[OFF]");
        }
        default:
        {
            i_advert[client] = 0;
            PrintToChat(client, "\x04[\x01Steam Group Credits\x04] \x01Announcements \x04[ON]");
        }
    }
   
    return Plugin_Handled;
}
 

Drumanid

Нестандартное звание
Сообщения
1,862
Реакции
1,748
Компилируй на 1.7...
Вылезет всего 3 ошибки, но как по мне, они не должны влиять на работу плагина.

C8sip1g.png
 

Tonki_Ton

Script kiddie
Сообщения
614
Реакции
375
Компилируй на 1.7...
Вылезет всего 3 ошибки, но как по мне, они не должны влиять на работу плагина.

C8sip1g.png
Я копилил на 1.6 и на 1.8, а разве между 1.7 и 1.8 есть разница ?

Чет только на 5302 скопилило
 
Последнее редактирование:

Tonki_Ton

Script kiddie
Сообщения
614
Реакции
375
Другой проблемс, а может кто под фрозовский шоп подправить ? а то чет не работает.
 

SlipknotRU

Участник
Сообщения
35
Реакции
14
@Tonki_Ton, [C++] Steam Group Credits - Pastebin.com. Раскоментишь 61-62 строку, смотря для какого SHOP тебе нужно.
Компилировать исключительно на sourcemod 1.7.0 и выше. (Так как здесь используется новый синтаксис)
 

Tonki_Ton

Script kiddie
Сообщения
614
Реакции
375
@Tonki_Ton, [C++] Steam Group Credits - Pastebin.com. Раскоментишь 61-62 строку, смотря для какого SHOP тебе нужно.
Компилировать исключительно на sourcemod 1.7.0 и выше. (Так как здесь используется новый синтаксис)
Для фрозовского шопа не работает, не зависимо от //
 

SlipknotRU

Участник
Сообщения
35
Реакции
14
@Tonki_Ton,
C-подобный:
        int amount = GetConVarInt(CreditsAdder);
        Shop_GiveClientCredits(client, amount, CREDITS_BY_NATIVE);
Если такой вариант не работает, вернись к старому
C-подобный:
Shop_SetClientCredits(client, Shop_GetClientCredits(client) + GetConVarInt(CreditsAdder));
--- Добавлено позже ---
Оффтоп
 
Последнее редактирование:

Хан

Участник
Сообщения
310
Реакции
99
Warning всего предупреждение, а не ошибка. Плагин будет работать.
 

Tonki_Ton

Script kiddie
Сообщения
614
Реакции
375
Warning всего предупреждение, а не ошибка. Плагин будет работать.
Не первом скирне ошибки. Если почитать комментарии, то можно заметить что проблема с компиляцией уже решена.
@Tonki_Ton,
C-подобный:
        int amount = GetConVarInt(CreditsAdder);
        Shop_GiveClientCredits(client, amount, CREDITS_BY_NATIVE);
Если такой вариант не работает, вернись к старому
C-подобный:
Shop_SetClientCredits(client, Shop_GetClientCredits(client) + GetConVarInt(CreditsAdder));
--- Добавлено позже ---
Оффтоп
[SM] Native "GetClientAuthId" reported: Client 7 is not connected
[SM] Displaying call stack trace for plugin "steam_group_credits (2).smx":
[SM] [0] Line 100, C:\Users\Vladm\Desktop\ (4)\addons\sourcemod\scripting\steam_group_credits (2).sp::UserAuthGrab()
[SM] [1] Line 82, C:\Users\Vladm\Desktop\ (4)\addons\sourcemod\scripting\steam_group_credits (2).sp::SteamWorks_OnClientGroupStatus()

В логах заметил
 
Последнее редактирование:

Tonki_Ton

Script kiddie
Сообщения
614
Реакции
375
@Tonki_Ton, [C++] Steam Group Credits - Pastebin.com
Возможно стоит 86 строчку заменить на это. Менять не обязательно.
C-подобный:
GetClientAuthId(i, AuthId_Steam2, charauth, sizeof(charauth));
или
GetClientAuthId(i, AuthId_Steam3, charauth, sizeof(charauth));

Извеняюсь, сразу эту версию не заметил.
Попробывал обе версии, в логах теперь ничего но кредиты почему-то все ровно не выдает
Я же верный ID указываю !? т.к. плагин не генить конфиг, я его прям в исход забиваю
883e9ZRLkVA.jpg
 
Последнее редактирование:

SlipknotRU

Участник
Сообщения
35
Реакции
14
@Tonki_Ton, Непонятно реализован плагин. Писал подобный на заказ, ID получал с:
C-подобный:
http://steamcommunity.com/groups/{YOUR_GROUP_NAME}/memberslistxml/?xml=1
<groupID64>тут ID группы.</groupID64>
86 строчку замени на GetClientAuthId(i, AuthId_Steam3, charauth, sizeof(charauth));
 

Tonki_Ton

Script kiddie
Сообщения
614
Реакции
375
@Tonki_Ton, Непонятно реализован плагин. Писал подобный на заказ, ID получал с:
C-подобный:
http://steamcommunity.com/groups/{YOUR_GROUP_NAME}/memberslistxml/?xml=1
<groupID64>тут ID группы.</groupID64>
86 строчку замени на GetClientAuthId(i, AuthId_Steam3, charauth, sizeof(charauth));
Чет, к сожалению, без толку.
 

SlipknotRU

Участник
Сообщения
35
Реакции
14
@Tonki_Ton, что должен делать скрипт который тебе нужен? Четкое ТЗ составь.
 

Tonki_Ton

Script kiddie
Сообщения
614
Реакции
375
@Tonki_Ton, что должен делать скрипт который тебе нужен? Четкое ТЗ составь.
Четко то что должен делать этот плагин(выдача кредитов клиентам вступившим в стим группу с периодичностью в N сек), вот страничка на ам данного плагина, forums.alliedmods.net/showthread.php?t=281865
 

SlipknotRU

Участник
Сообщения
35
Реакции
14
@Tonki_Ton, ты расширение steamworks установил к себе на сервер? Без него не будет работать.
 

SlipknotRU

Участник
Сообщения
35
Реакции
14
@Tonki_Ton, Не люблю писать порой так плагины, но ты протестируй. [C++] Steam Group Credits - Pastebin.com

Оффтоп

Вторая версия с глобальным таймером. [C++] Steam Group Credits - Pastebin.com
зы. возможно нужен не steamid64, а Идентификатор стим группы. Вообщем, я когда писал скрипт на заказ steamid64 использовал.
 
Последнее редактирование:

Tonki_Ton

Script kiddie
Сообщения
614
Реакции
375
@Tonki_Ton, Не люблю писать порой так плагины, но ты протестируй. [C++] Steam Group Credits - Pastebin.com

Оффтоп

Вторая версия с глобальным таймером. [C++] Steam Group Credits - Pastebin.com
зы. возможно нужен не steamid64, а Идентификатор стим группы. Вообщем, я когда писал скрипт на заказ steamid64 использовал.
Походу без толку. пробовал обе версии и с Идентификатором и стимид64, ноль изменений :(
 
Сверху Снизу