Пользователи, просматривающие тему (Пользователей: 0, Гостей: 0)

  1. ThePhoenix

    Регистрация:
    08.03.15
    Сообщения:
    1.524
    Симпатии:
    151
    Пол:
    Мужской
    Telegram:
    ThePhoenix2017
    Skype:
    the.phoenix666
    L 01/24/2016 - 13:35:24: Start of error session.
    L 01/24/2016 - 13:35:24: Info (map "css_india2") (file "addons/amxmodx/logs/error_20160124.log")
    L 01/24/2016 - 13:35:24: [CSTRIKE] Player out of range (0)
    L 01/24/2016 - 13:35:24: [AMXX] Displaying debug trace (plugin "FirstBlood.amxx")
    L 01/24/2016 - 13:35:24: [AMXX] Run time error 10: native error (native "cs_get_user_money")
    L 01/24/2016 - 13:35:24: [AMXX] [0] FirstBlood.sma::client_death (line 32)
    Код:
    #include <amxmodx>
    #include <cstrike>
    
    #define GIVE_MONEY_FIRSTKILLER 100 // Кол-во денег которое получит первый убийца.
    //#define ONLY_FIRSTKILLER_BONUS // Выдавать за первое убийство только наш бонус (без стандартного начисления в 300$).
    
    static FirstKiller;
    
    public plugin_init()
    {
        register_plugin("First Killer Round", "1.1", "Factor");
       
        new szMapName[32], i, szBadMaps[][] = {"35hp_", "1hp_", "awp_", "fy_"}; get_mapname(szMapName, sizeof(szMapName));
        for(i = 0; i < sizeof(szBadMaps); i++) if(containi(szMapName, szBadMaps[i]) != -1) pause("ad");
       
        register_event("HLTV", "RoundNew", "a", "1=0", "2=0");
    }
    
    public RoundNew() FirstKiller = 0;
    
    public client_death(attacker, victim, wpnindex, hitplace, TK)
    {
        if(!FirstKiller && !is_user_alive(victim) && victim != attacker)
        {
            FirstKiller = attacker;
           
            static g_MoneyBonus, szFirstKillerName[16];
            g_MoneyBonus = GIVE_MONEY_FIRSTKILLER;
            get_user_name(FirstKiller, szFirstKillerName, charsmax(szFirstKillerName));
           
            // Визуально мы видим ровное начисление. P.s: заморочился... :)
            cs_set_user_money(FirstKiller, cs_get_user_money(FirstKiller) - 300, 0);
            #if defined ONLY_FIRSTKILLER_BONUS
                cs_set_user_money(FirstKiller, cs_get_user_money(FirstKiller) + g_MoneyBonus, 1);
            #else
                cs_set_user_money(FirstKiller, cs_get_user_money(FirstKiller) + g_MoneyBonus + 300, 1);
            #endif
           
            switch(random_num(1, 2))
            {
                case 1: ChatColor("^1[^4Highway To Hell^1]^3%s^1, получил^4 400$^1 за первую кровь.", szFirstKillerName);
                case 2: ChatColor("^1[^4Highway To Hell^1]^3%s^1, получил^4 400$^1 за первое убийство.", szFirstKillerName);
            }
        }
    }
    
    stock ChatColor(const szMessage[], any:...)
    {
        static pnum, players[32], szMsg[190], IdMsg;
        vformat(szMsg, charsmax(szMsg), szMessage, 2);
       
        if(!IdMsg) IdMsg = get_user_msgid("SayText");
        get_players(players, pnum, "c");
       
        for(new i; i < pnum; i++)
        {
            message_begin(MSG_ONE_UNRELIABLE, IdMsg, .player = players[i]);
            write_byte(players[i]);
            write_string(szMsg);
            message_end();
        }
    }