Нужен VIP плагин

Сообщения
144
Реакции
8
Всем привет )
Нужен плагин ( простой ) что бы при спауне выдавало VIP игрокам :

  • Все гранаты
  • Дигл
  • Шипци ( КТ )

Без всяких там оружеек и т.д

На данный момент установил определенное значение в файле game.cfg что бы выдавало всем игрокам .

Но так как на карте $2000$ полный дурдом ...

Вот по этому нужен плагин .
7 Окт 2022
Добавлю так же пробивал отключать определенное оружие на карте $2000 путем создания доп файла с меткой cfg
в нем вписывал restmenu.amxx on he granade ну ничего не получилось . Сильно много непонятной инфы в просторах интернета !
 
Последнее редактирование модератором:
Сообщения
101
Реакции
-11
Помог
2 раз(а)
Пишите в личку с полным описанием, будет время помогу
 
  • Не нравится
Реакции: Just
Сообщения
144
Реакции
8
Nemec, Этот пользователь ограничил доступ к своему профилю.
 
Последнее редактирование модератором:
Сообщения
552
Реакции
49
Предупреждения
2
Помог
4 раз(а)
Nemec,
а я вот не пойму, какого лешева ты ему диз влепил? ну ты закрыл доступ к профилю, так открой его, как он тебе напишет? или хотя бы свой вк дай.
 
Сообщения
75
Реакции
82
Помог
6 раз(а)
Код:
#include < amxmodx >
#include < reapi >

#define VIP_FLAGS    "t"

public plugin_init()    {
    RegisterHookChain(RG_CBasePlayer_OnSpawnEquip, "CBasePlayer_OnSpawnEquip", true);
}

public CBasePlayer_OnSpawnEquip(const pPlayer)    {
    if(!is_user_connected(pPlayer) || is_user_bot(pPlayer))
        return;
    
    if (get_user_flags(pPlayer) & read_flags(VIP_FLAGS))
    {
        UTIL_GiveWeapon(pPlayer, "weapon_hegrenade", 1);
        UTIL_GiveWeapon(pPlayer, "weapon_flashbang", 2);
        UTIL_GiveWeapon(pPlayer, "weapon_smokegrenade", 1);
        
        UTIL_GiveWeapon(pPlayer, "weapon_deagle", 35);
        
        if (get_member(pPlayer, m_iTeam) == TEAM_CT)    {
            rg_give_defusekit(pPlayer);
        }
    }
}

stock bool: UTIL_GiveWeapon(const pPlayer, const szWeaponReference[ ], const iDefaultAmmo)
{
    new pItem = rg_give_item(pPlayer, szWeaponReference, GT_DROP_AND_REPLACE);
    if (is_nullent( pItem))
        return false;

    if (iDefaultAmmo)
    {
        new iAmmoType = get_member(pItem, m_Weapon_iPrimaryAmmoType);
        if (get_member(pPlayer, m_rgAmmo, iAmmoType) < iDefaultAmmo)
            set_member(pPlayer, m_rgAmmo, iDefaultAmmo, iAmmoType);
    }

    return true;
}
 
Сообщения
144
Реакции
8
Flymic24 ,Большое спасибо добрый человек )
 
Последнее редактирование модератором:
Сообщения
101
Реакции
-11
Помог
2 раз(а)
А как же карта $2000$?
 
  • Не нравится
Реакции: Just
Сообщения
144
Реакции
8
Nemec, нашел карту без зоны закупки и гранат .
 
Последнее редактирование модератором:
Сообщения
101
Реакции
-11
Помог
2 раз(а)
На других картах грены тоже не уместны, проще блочить плагин, чем искать карты и если нет таких, выдерать везде зоны закупок. Ну это дело твое друг
 
  • Не нравится
Реакции: Just
Сообщения
101
Реакции
-11
Помог
2 раз(а)
Artemich,
Nemec,
а я вот не пойму, какого лешева ты ему диз влепил? ну ты закрыл доступ к профилю, так открой его, как он тебе напишет? или хотя бы свой вк дай.
Насчет игнорирования, я никого не и игнорил, думал может не поосторожности и проверил, в списках никого нет.
 
Сообщения
101
Реакции
-11
Помог
2 раз(а)
Код:
#include <amxmodx>
#include <reapi>                      
                                       
#define REGISTRATION "TEST", "rz 0.2", "TEST"

#define VIP_FLAGS "t"
#define BLOCKING_MAP "$2000$" /*закоментируй, если не нужна сверка на карту*/                     
                                   
public plugin_init() {
    register_plugin(REGISTRATION);
#if defined BLOCKING_MAP    
    new szCurentMap[32];              
    rh_get_mapname(szCurentMap, charsmax(szCurentMap), MNT_SET);

    if(contain(szCurentMap, BLOCKING_MAP) != INVALID_HANDLE) {            
        pause("a");              
        return;
    }            
#endif
    RegisterHookChain(RG_CBasePlayer_OnSpawnEquip, "CBasePlayer_OnSpawnEquip", 1);
}

public CBasePlayer_OnSpawnEquip(const pPlayer) {
    if(!is_user_connected(pPlayer) || is_user_bot(pPlayer) || !(get_user_flags(pPlayer) & read_flags(VIP_FLAGS)))
        return HC_CONTINUE;

    UTIL_GiveWeapon(pPlayer, "weapon_hegrenade", 1);
    UTIL_GiveWeapon(pPlayer, "weapon_flashbang", 2);
    UTIL_GiveWeapon(pPlayer, "weapon_smokegrenade", 1);
 
    UTIL_GiveWeapon(pPlayer, "weapon_deagle", 35);
 
    if(get_member(pPlayer, m_iTeam) == TEAM_CT)
        rg_give_defusekit(pPlayer);                        

    return HC_CONTINUE;                                                
}
                   
stock bool: UTIL_GiveWeapon(const pPlayer, const szWeaponReference[], const iDefaultAmmo) {
    new pItem = rg_give_item(pPlayer, szWeaponReference, GT_REPLACE);

    if(is_nullent(pItem))
        return false;

    if(iDefaultAmmo) {
        new iAmmoType = get_member(pItem, m_Weapon_iPrimaryAmmoType);
        if(get_member(pPlayer, m_rgAmmo, iAmmoType) < iDefaultAmmo)
            set_member(pPlayer, m_rgAmmo, iDefaultAmmo, iAmmoType);
    }

    return true;
}
 
Последнее редактирование:
Сообщения
144
Реакции
8
Nemec, спасибо , забрал )
 
Последнее редактирование модератором:
Сообщения
49
Реакции
32
Nemec, можно заблокировать сразу пачку карт

Код:
    new iMap_Name[32], iMap_Prefix[][] = { "35hp", "aim_", "awp_", "css_", "$" };
    get_mapname(iMap_Name, charsmax(iMap_Name))
    for(new i; i < sizeof iMap_Prefix; i++){
        if(containi(iMap_Name, iMap_Prefix[i]) != -1){
            pause("a");
            return;
        }
    }
 
Последнее редактирование:
Сообщения
101
Реакции
-11
Помог
2 раз(а)
Речь была только 2000, а так я вкурсе,как это делать.
И прошу заметить вот это
!= -1, разработчик не зря придумывал константы!!
И второй вопрос про читабильности, когда вы уже научитесь, если строка - то sz_
 
Последнее редактирование:
Сообщения
49
Реакции
32
Nemec, этот код я взял из какой-то випки, которая лежит в интернете, по тем соображениям, что он точно работает. И человек, судя по всему, который пытается разбираться в скриптинге, точно не столкнется с проблемами. У меня не стояло задачи переименовывать переменные.
!= -1, разработчик не зря придумывал константы!!

И второй вопрос про читабильности, когда вы уже научитесь, если строка - то sz_
Я понимаю, что это удобно, когда у тебя плагин на тысячу строк, чтобы не запутаться - обозначать глобальные переменные "g_", булевые "b", целочисленные "i" и так далее, но когда у тебя плагин на 50 строк кода, то какая разница как я назову переменную - MapName, map_name, szMapName, читаемость от этого не потеряется.

И еще - добрее надо быть.
 
Сообщения
101
Реакции
-11
Помог
2 раз(а)
Я и не злой друг, тебе показалось, я просто к тому, что разницы нет 10 строк или 1000. Уважай других пользователей. Я про читабельность
На счет этого я ошибся, учили так, вот и отложилось не так, если я не ошибаюсь, даже с уст этого сриптера я услышал это,
Subb98
 
Последнее редактирование:
Сообщения
101
Реакции
-11
Помог
2 раз(а)
@Javekson,Скажу так, я не ради репутации тут, я не понимаю одного, куда смотрят администраторы и основатели данного проекта, я бы на их месте выдавал предупреждения или банил, за то что некоторые пользователи дают плохие примеры. Здесь не помойка, а образцовый форум
Тут нет стандарта написания кода, работает и ладно
А это уже говнокодинг.
P.S. Я больше слова не скажу, по таким вопросам, есть голова у всех
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу