ReHLDS/ReAPI Vip System

Bravo

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

Coder

Пользователь
Регистрация
10 Июн 2017
Сообщения
207
Симпатии
81
Пол
Мужской
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
Сообщения
165
Симпатии
41
Пол
Мужской
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
Сообщения
161
Симпатии
47
Пол
Мужской
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
[DOUBLEPOST=1516451421][/DOUBLEPOST]hyrik, ошибки не будет такой CBasePlayer_TakeDamage
 

Coder

Пользователь
Регистрация
10 Июн 2017
Сообщения
207
Симпатии
81
Пол
Мужской
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
Сообщения
165
Симпатии
41
Пол
Мужской
Coder, проверил вроде ошибок пока нет работает и сообщения На этой карте VIP не работает!
 

hyrik

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

Fnatiki

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

//// 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
Пол
Мужской
Что я не так делаю, плагин почему то не работает?

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

fallen14

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

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

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

kasperch1k

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

Coder

Пользователь
Регистрация
10 Июн 2017
Сообщения
207
Симпатии
81
Пол
Мужской
обновил 1й пост, изменена функция дамагера, я уже и забыл про эту тему)
 

Gash1sh

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

d4nt3

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

johnx12

Пользователь
Регистрация
7 Июл 2018
Сообщения
3
Симпатии
0
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
Сообщения
3
Симпатии
0
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
 

besthera

Пользователь
Регистрация
3 Авг 2018
Сообщения
10
Симпатии
0
Предупреждения
30
там есть buy time?
 

Swan

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