Исключить из условия weapon_c4

Zakhar Revin

Участник
Сообщения
218
Реакции
28
Добрый день, может ли кто-нибудь подправить код, чтобы с земли удалялись все пушки, кроме С4? Заранее спасибо!

Кусочек кода плагина:
C-подобный:
// Updated by LumiStance 2010 - 06/26
// By Kigen (c) 2008 - Please give me credit. :)
// And Weapon Restrict Plugin - Dr!fter
stock StripGroundWeapons()
{
    new MaxEntities = GetMaxEntities();
    static iOwnerEntity;
    if (!iOwnerEntity)
        iOwnerEntity = FindSendPropInfo("CBaseCombatWeapon", "m_hOwnerEntity");
    decl String:name[64];

    for (new index = MaxClients+1; index < MaxEntities; index++)
    {
        if (IsValidEdict(index))
        {
            GetEdictClassname(index, name, sizeof(name));
            if ( StrEqual(name, "item_defuser") || (!strncmp(name, "weapon_", 7, false) || !strncmp(name, "item_", 5, false)) && GetEntDataEnt2(index, iOwnerEntity) == -1)
                RemoveEdict(index);
        }
    }
}
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,606
Реакции
5,096
думаю вот так:
if ( StrEqual(name, "item_defuser") || (!strncmp(name, "weapon_", 7, false) || !strncmp(name, "item_", 5, false)) && GetEntDataEnt2(index, iOwnerEntity) == -1)
==>
if ( StrEqual(name, "item_defuser") || ((!strncmp(name, "weapon_c4", 7, false) && strncmp(name[7], "c4", 2, false)) || !strncmp(name, "item_", 5, false)) && GetEntDataEnt2(index, iOwnerEntity) == -1)
 

Zakhar Revin

Участник
Сообщения
218
Реакции
28
думаю вот так:
if ( StrEqual(name, "item_defuser") || (!strncmp(name, "weapon_", 7, false) || !strncmp(name, "item_", 5, false)) && GetEntDataEnt2(index, iOwnerEntity) == -1)
==>
if ( StrEqual(name, "item_defuser") || ((!strncmp(name, "weapon_c4", 7, false) && strncmp(name[7], "c4", 2, false)) || !strncmp(name, "item_", 5, false)) && GetEntDataEnt2(index, iOwnerEntity) == -1)
И не сомневался, кто ответит xD. Спасибо!

Вроде заработало :)
 
Сверху Снизу