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

Тема в разделе "Запросы", создана пользователем Tonki_Ton, 2 июл 2016.

  1. Tonki_Ton

    Tonki_Ton

    Сообщения:
    317
    Симпатии:
    31
    Помогите исправить ошибки компиляции.

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

    Ошибки

    [​IMG]

    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_NOTIFYtrue0.0true1.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(CreditsTimeChange_CreditsTime);
    }

    public 
    void OnMapStart()
    {
        
    TimeAuto CreateTimer(GetConVarFloat(CreditsTime), CheckPlayers_TIMER_REPEAT|TIMER_FLAG_NO_MAPCHANGE);
    }

    public 
    Action CheckPlayers(Handle timer)
    {
        for (
    int i 1<= MaxClientsi++)
        {
            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(clientStore_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(clientGetConVarInt(iGroupID));
    }

    public 
    int SteamWorks_OnClientGroupStatus(int authidint groupAccountIDbool isMemberbool isOfficer)
    {
        
    int client UserAuthGrab(authid);
       
        if (
    client == -1)
        {
            return;
        }
       
        if(
    isMember)
        {
            
    b_IsMember[client] = true;
        }
    }

    public 
    int UserAuthGrab(int authid)
    {
        for (
    int i 1<= MaxClientsi++)
        {
            
    char charauth[64];
            
    GetClientAuthId(iAuthId_Enginecharauthsizeof(charauth));   
            
    char authchar[64];
            
    IntToString(authidauthcharsizeof(authchar));
            if(
    StrContains(charauthauthchar) != -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 clientint 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;
    }
     
  2. Drumanid

    Drumanid Дилетант

    Сообщения:
    568
    Симпатии:
    194
    Компилируй на 1.7...
    Вылезет всего 3 ошибки, но как по мне, они не должны влиять на работу плагина.

    [​IMG]
     
  3. Tonki_Ton

    Tonki_Ton

    Сообщения:
    317
    Симпатии:
    31
    Я копилил на 1.6 и на 1.8, а разве между 1.7 и 1.8 есть разница ?

    Чет только на 5302 скопилило
     
    Последнее редактирование: 2 июл 2016
  4. Drumanid

    Drumanid Дилетант

    Сообщения:
    568
    Симпатии:
    194
    Оффтоп
     
  5. Tonki_Ton

    Tonki_Ton

    Сообщения:
    317
    Симпатии:
    31
    Другой проблемс, а может кто под фрозовский шоп подправить ? а то чет не работает.
     
  6. SlipknotRU

    SlipknotRU

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

    Tonki_Ton

    Сообщения:
    317
    Симпатии:
    31
    Для фрозовского шопа не работает, не зависимо от //
     
  8. SlipknotRU

    SlipknotRU

    Сообщения:
    35
    Симпатии:
    4
    @Tonki_Ton,
    Код:
            int amount = GetConVarInt(CreditsAdder);
            Shop_GiveClientCredits(client, amount, CREDITS_BY_NATIVE);
    Если такой вариант не работает, вернись к старому
    Код:
    Shop_SetClientCredits(client, Shop_GetClientCredits(client) + GetConVarInt(CreditsAdder));
    --- Добавлено позже ---
    Оффтоп
     
    Последнее редактирование: 3 июл 2016
  9. Хан

    Хан

    Сообщения:
    26
    Симпатии:
    16
    Warning всего предупреждение, а не ошибка. Плагин будет работать.
     
  10. Tonki_Ton

    Tonki_Ton

    Сообщения:
    317
    Симпатии:
    31
    Не первом скирне ошибки. Если почитать комментарии, то можно заметить что проблема с компиляцией уже решена.
    [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()

    В логах заметил
     
    Последнее редактирование: 3 июл 2016
  11. SlipknotRU

    SlipknotRU

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

    Tonki_Ton

    Сообщения:
    317
    Симпатии:
    31
    Извеняюсь, сразу эту версию не заметил.
    Попробывал обе версии, в логах теперь ничего но кредиты почему-то все ровно не выдает
    Я же верный ID указываю !? т.к. плагин не генить конфиг, я его прям в исход забиваю
    [​IMG]
     
    Последнее редактирование: 3 июл 2016
  13. SlipknotRU

    SlipknotRU

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

    Tonki_Ton

    Сообщения:
    317
    Симпатии:
    31
    Чет, к сожалению, без толку.
     
  15. SlipknotRU

    SlipknotRU

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

    Tonki_Ton

    Сообщения:
    317
    Симпатии:
    31
    Четко то что должен делать этот плагин(выдача кредитов клиентам вступившим в стим группу с периодичностью в N сек), вот страничка на ам данного плагина, forums.alliedmods.net/showthread.php?t=281865
     
  17. SlipknotRU

    SlipknotRU

    Сообщения:
    35
    Симпатии:
    4
    @Tonki_Ton, ты расширение steamworks установил к себе на сервер? Без него не будет работать.
     
  18. Tonki_Ton

    Tonki_Ton

    Сообщения:
    317
    Симпатии:
    31
    Само собой, я умею читать требования. И плагин и стимворкс были в лоаде
     
  19. SlipknotRU

    SlipknotRU

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

    Оффтоп

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

    Tonki_Ton

    Сообщения:
    317
    Симпатии:
    31
    Походу без толку. пробовал обе версии и с Идентификатором и стимид64, ноль изменений :(