Не работает проверка на основное оружие

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
2
Реакции
0
Привет. Написал небольшой плагин который должен выдавать оружие только в том случае если нет основного, что бы не заменял например AWP. Работает не корректно, выдает оружие даже если есть основное. Что я сделал не так?
Код:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>

public plugin_init()
{
    register_plugin("Your Plugin Name", "1.0", "Your Name");
    RegisterHam(Ham_Spawn, "player", "OnPlayerSpawn_Post", 1);
}

public OnPlayerSpawn_Post(id)
{
    if (!is_user_alive(id)) // если игрок мертв, не выполняем код ниже
        return HAM_IGNORED;

    strip_user_weapons(id);
    give_item(id, "weapon_knife");
    give_item(id, "weapon_deagle");
    cs_set_user_bpammo(id, CSW_DEAGLE, 35);
    give_item(id, "weapon_hegrenade");
    give_item(id, "weapon_flashbang");
    cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
    cs_set_user_armor(id, 100, CS_ARMOR_VESTHELM);

    if (!cs_get_user_hasprim(id) && !is_weapon_primary(get_user_weapon(id)))
    {
        if (cs_get_user_team(id) == CS_TEAM_T)
        {
            give_item(id, "weapon_ak47"); // Выдаем AK-47 террористам
            cs_set_user_bpammo(id, CSW_AK47, 90); // Выдача патронов для AK-47
        }
        else if (cs_get_user_team(id) == CS_TEAM_CT)
        {
            give_item(id, "weapon_m4a1"); // Выдаем M4A1 спецназу
            cs_set_user_bpammo(id, CSW_M4A1, 90); // Выдача патронов для M4A1
            cs_set_user_defuse(id, 1); // Выдаем дефузер
        }
    }

    give_item(id, "weapon_smokegrenade"); // Выдаем дымовую гранату всем игрокам

    return HAM_IGNORED;
}

public is_weapon_primary(weaponid)
{
    switch(weaponid)
    {
        case CSW_AK47, CSW_M4A1, CSW_SG552, CSW_AUG, CSW_SCOUT, CSW_AWP, CSW_G3SG1, CSW_SG550, CSW_GALIL, CSW_FAMAS, CSW_M249, CSW_P90:
        {
            return true;
        }
    }
    return false;
}
 
Сообщения
206
Реакции
21
Помог
6 раз(а)
возможно это вам подойдет, для T и CT
 
Сообщения
3,593
Реакции
1,576
Помог
141 раз(а)
poroxprod, так ты отнимаешь всё оружие перед выдачей. strip_user_weapons. Логично, что проверка на наличие основного оружия не срабатывает.
 
Статус
В этой теме нельзя размещать новые ответы.

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

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