ReHLDS/ReAPI Vip System

Bravo

Пользователь
Регистрация
8 Июн 2017
Сообщения
199
Симпатии
20
Пол
Мужской
#81
Доброе утро, ребята как вам данный плагин ?
 

Coder

Пользователь
Регистрация
10 Июн 2017
Сообщения
185
Симпатии
75
Пол
Мужской
#82
Coder, сделай чтоб на запрещенных картах писала что на этой карте вип меню пользоваться нельзя а то пишет Только VIP-игрок может пользоваться этой командой!
попробуй так, не проверял
C++:
bool:isAllowToUse(id) {
    if(!g_bUserVip[id]) {
        client_print_color(id, print_team_default, "%s Только VIP-игрок может пользоваться этой командой!", PREFIX);
        return false;
    }
    if(!is_user_alive(id)) {
        client_print_color(id, print_team_default, "%s Для использования данной команды вы должны быть живы!", PREFIX);
        return false;
    }
    if(!g_iRoundCount) {
        client_print_color(id, print_team_default, "%s Разминочный раунд. Запрещено пользоваться командой!", PREFIX);
        return false;
    }
    if(g_bUseWeapon[id]) {
        client_print_color(id, print_team_default, "%s Вы уже брали оружие в этом раунде!", PREFIX);
        return false;
    }
    if(g_iRoundCount < VIPROUND) {
        client_print_color(id, print_team_default, "%s Оружия доступны только с ^3%d ^1раунда!", PREFIX, VIPROUND);
        return false;
    }
    return true;
}
заменить на:
C++:
bool:isAllowToUse(id) {
    if(g_bBlockBonus) {
        client_print_color(id, print_team_default, "%s На этой карте VIP не работает!", PREFIX);
        return false;
    }
    if(!g_bUserVip[id]) {
        client_print_color(id, print_team_default, "%s Только VIP-игрок может пользоваться этой командой!", PREFIX);
        return false;
    }
    if(!is_user_alive(id)) {
        client_print_color(id, print_team_default, "%s Для использования данной команды вы должны быть живы!", PREFIX);
        return false;
    }
    if(!g_iRoundCount) {
        client_print_color(id, print_team_default, "%s Разминочный раунд. Запрещено пользоваться командой!", PREFIX);
        return false;
    }
    if(g_bUseWeapon[id]) {
        client_print_color(id, print_team_default, "%s Вы уже брали оружие в этом раунде!", PREFIX);
        return false;
    }
    if(g_iRoundCount < VIPROUND) {
        client_print_color(id, print_team_default, "%s Оружия доступны только с ^3%d ^1раунда!", PREFIX, VIPROUND);
        return false;
    }
    return true;
}
 

hyrik

Постоялец
Регистрация
18 Июл 2017
Сообщения
167
Симпатии
38
Пол
Мужской
#83
Coder, чета ошибка в логах появилось
L 01/20/2018 - 09:51:24: Start of error session.
L 01/20/2018 - 09:51:24: Info (map "de_dust2_2x2_lite2") (file "addons/amxmodx/logs/error_20180120.log")
L 01/20/2018 - 09:51:24: [AMXX] Displaying debug trace (plugin "re_vipka.amxx", version "1.4.0")
L 01/20/2018 - 09:51:24: [AMXX] Run time error 4: index out of bounds
L 01/20/2018 - 09:51:24: [AMXX] [0] re_vipka.sma::CBasePlayer_TakeDamage (line 169)
 

kasperch1k

Пользователь
Регистрация
8 Июн 2017
Сообщения
166
Симпатии
42
Пол
Мужской
#84
hyrik, попробуй так
Код:
#if defined DAMAGER
public CBasePlayer_TakeDamage(victim, inflictor, attacker, Float:damage)
{
    if (!g_izSwitchDmg[attacker])
        return;
        
    if (is_user_connected(attacker) && IsPlayer(attacker) && get_member(victim, m_iTeam) != get_member(attacker, m_iTeam))
    {
        static g_Damage;
        g_Damage = floatround(damage, floatround_floor);
        
        if (g_Damage > 0)
        {           
            if (IsPlayer(attacker) && is_user_connected(attacker) && is_user_vip(attacker))
            {
                static iPos;
                iPos = ++g_iPlayerPos[attacker];
                if (iPos == sizeof(g_flCoords))
                    iPos = g_iPlayerPos[attacker] = 0;
                
                set_hudmessage(0, 100, 200, Float:g_flCoords[iPos][0], Float:g_flCoords[iPos][1], 2, 0.5, 1.5, 0.02, 0.02, -1);
                ShowSyncHudMsg(attacker, g_MsgSyncDmg, "%d^n", g_Damage);
            }
        }
    }
}
#endif
замени на вот так
Код:
#if defined DAMAGER
public CBasePlayer_TakeDamage(victim, inflictor, attacker, Float:damage)
{       
    if (
        is_user_connected(attacker)
        && IsPlayer(attacker)
        && get_member(victim, m_iTeam) != get_member(attacker, m_iTeam)
        && g_izSwitchDmg[attacker]
    ) {
        static g_Damage;
        g_Damage = floatround(damage, floatround_floor);
        
        if (g_Damage > 0)
        {           
            if (IsPlayer(attacker) && is_user_connected(attacker) && is_user_vip(attacker))
            {
                static iPos;
                iPos = ++g_iPlayerPos[attacker];
                if (iPos == sizeof(g_flCoords))
                    iPos = g_iPlayerPos[attacker] = 0;
                
                set_hudmessage(0, 100, 200, Float:g_flCoords[iPos][0], Float:g_flCoords[iPos][1], 2, 0.5, 1.5, 0.02, 0.02, -1);
                ShowSyncHudMsg(attacker, g_MsgSyncDmg, "%d^n", g_Damage);
            }
        }
    }
}
#endif
20 Янв 2018
hyrik, ошибки не будет такой CBasePlayer_TakeDamage
 

Coder

Пользователь
Регистрация
10 Июн 2017
Сообщения
185
Симпатии
75
Пол
Мужской
#85
Coder, чета ошибка в логах появилось
L 01/20/2018 - 09:51:24: Start of error session.
L 01/20/2018 - 09:51:24: Info (map "de_dust2_2x2_lite2") (file "addons/amxmodx/logs/error_20180120.log")
L 01/20/2018 - 09:51:24: [AMXX] Displaying debug trace (plugin "re_vipka.amxx", version "1.4.0")
L 01/20/2018 - 09:51:24: [AMXX] Run time error 4: index out of bounds
L 01/20/2018 - 09:51:24: [AMXX] [0] re_vipka.sma::CBasePlayer_TakeDamage (line 169)
с этим кодом проверь, если не будет ошибок обновлю 1-й пост:
C++:
public CBasePlayer_TakeDamage(pevVictim, inflictor, pevAttacker, Float:damage) {
    if(!g_isSwitchDmg[pevAttacker] || !isUserVip(pevAttacker) || pevVictim == pevAttacker || get_member(pevVictim, m_iTeam) == get_member(pevAttacker, m_iTeam)) {
        return HC_CONTINUE;
    }
    if(IsPlayer(pevAttacker) && rg_is_player_can_takedamage(pevVictim, pevAttacker)) {
        static g_iDamage;
        g_iDamage = floatround(damage, floatround_floor);
        if(g_iDamage > 0) {
            static iPos;
            iPos = ++g_iPlayerPos[pevAttacker];
            if(iPos == sizeof(g_fCoords)) {
                iPos = g_iPlayerPos[pevAttacker] = 0;
            }
            set_hudmessage(0, 100, 200, Float:g_fCoords[iPos][0], Float:g_fCoords[iPos][1], 2, 0.5, 1.5, 0.02, 0.02, -1);
            ShowSyncHudMsg(pevAttacker, g_iSyncMsgDmg, "%d^n", g_iDamage);
        }
    }
    return HC_CONTINUE;
}
 

hyrik

Постоялец
Регистрация
18 Июл 2017
Сообщения
167
Симпатии
38
Пол
Мужской
#86
Coder, проверил вроде ошибок пока нет работает и сообщения На этой карте VIP не работает!
 

hyrik

Постоялец
Регистрация
18 Июл 2017
Сообщения
167
Симпатии
38
Пол
Мужской
#88
я не так написал я хотел сказать что сообщения на определенных картах работает На этой карте VIP не работает!
 

Fnatiki

Пользователь
Регистрация
13 Янв 2018
Сообщения
29
Симпатии
2
#89
Ошибка при компиляции:

//// re_vipka.sma
// C:\Users\1234\Desktop\scripting\re_vipka.sma(146) : error 017: undefined symbol "PREFIX"
// C:\Users\1234\Desktop\scripting\re_vipka.sma(146) : warning 215: expression has no effect
// C:\Users\1234\Desktop\scripting\re_vipka.sma(146) : error 001: expected token: ";", but found ")"
// C:\Users\1234\Desktop\scripting\re_vipka.sma(146) : error 029: invalid expression, assumed zero
// C:\Users\1234\Desktop\scripting\re_vipka.sma(146) : fatal error 107: too many error messages on one line
//
// Compilation aborted.
 

fallen14

Пользователь
Регистрация
11 Мар 2018
Сообщения
10
Симпатии
0
Пол
Мужской
#90
Что я не так делаю, плагин почему то не работает?

Скачал файл .sma,
скомпилировал его
файл .sma закинул в .scripting
файл .amxx закинул в .plugins
прописал re_vipka.amxx в plugins.ini
 

fallen14

Пользователь
Регистрация
11 Мар 2018
Сообщения
10
Симпатии
0
Пол
Мужской
#91
Что я не так делаю, плагин почему то не работает?

Скачал файл .sma,
скомпилировал его
файл .sma закинул в .scripting
файл .amxx закинул в .plugins
прописал re_vipka.amxx в plugins.ini

Все, заработало.
 

Gash1sh

Пользователь
Регистрация
19 Янв 2018
Сообщения
253
Симпатии
77
Пол
Мужской
#94
Coder, Неплохо бы было добавить отключение на картах $
 

d4nt3

Пользователь
Регистрация
13 Май 2018
Сообщения
33
Симпатии
3
Пол
Мужской
#96
Кастомизация оружия для випов можно сделать? Голд и т.д.
 

johnx12

Пользователь
Регистрация
7 Июл 2018
Сообщения
4
Симпатии
0
#97
don't know if you understand me but,

can you add cvar to the plugin to close/disable the vipmenu after player leaves the buyzone ?
because like this vipmenu stays on all the time and a player can just use all ammo of his gun and quickly take another gun from the vip menu giving him 60 bullets without reload ...
 

johnx12

Пользователь
Регистрация
7 Июл 2018
Сообщения
4
Симпатии
0
#98
btw i forgot to mention on fy_ awp_ aim_ maps while most of the vip functions are disabled you can still heal :) i don't know if this was intended or is a bug just wanted to point it out
 

Swan

Пользователь
Регистрация
7 Июл 2017
Сообщения
28
Симпатии
1
Пол
Мужской
Coder, каст оружие, добавлять планируете?