Подведи собственные итоги года совместно с YOUGAME и забери ценные призы! Перейти

Что не так с триггерботом?

  • Автор темы Автор темы 4byv4ne
  • Дата начала Дата начала
Забаненный
Забаненный
Статус
Оффлайн
Регистрация
26 Июл 2019
Сообщения
413
Реакции
136
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Вот есть проблемка. Написал я простой триггер. И он работает нормально, если бы не но: он стреляет по курицам и заложникам. Где я ошибся? Вот код триггера:

C++:
Expand Collapse Copy
void legitbot::trigger(c_usercmd* cmd)
{
    if (!interfaces::engine->is_connected() && !interfaces::engine->is_in_game())
        return;

    if (!variables::trigger /*&& !GetAsyncKeyState(variables::trigger_key)*/)
        return;

    auto local_player = reinterpret_cast<player_t*>(interfaces::entity_list->get_client_entity(interfaces::engine->get_local_player()));
    if (!local_player && !local_player->is_alive())
        return;

    if (local_player->is_flashed())
        return;

    auto weapon = local_player->active_weapon();
    if (!weapon || !weapon->clip1_count())
        return;

    auto weapon_data = weapon->get_weapon_data();
    if (!weapon_data)
        return;

    auto weapon_type = weapon_data->weapon_type;

    if (weapon_type == WEAPONTYPE_C4 || weapon_type == WEAPONTYPE_GRENADE)
        return;

    vec3_t src, dst, forward, crosshair_forward;
    trace_t tr;
    ray_t ray;
    trace_filter filter;

    math::angle_vectors(cmd->viewangles, forward);

    forward *= weapon_data->weapon_range;
    filter.skip = local_player;
    src = local_player->get_eye_pos();
    dst = src + forward;
    ray.initialize(src, dst);

    interfaces::trace_ray->trace_ray(ray, MASK_SHOT, &filter, &tr);
    math::angle_vectors(cmd->viewangles, crosshair_forward);
    crosshair_forward *= 8000.f;

    if (tr.did_hit_world() || !tr.did_hit_non_world_entity())
        return;

    if (!tr.entity->is_player())
        return;

    if (local_player->team() == tr.entity->team())
        return;

    int hitgroup = tr.hitGroup;
    if (hitgroup == HITGROUP_HEAD || hitgroup == HITGROUP_CHEST || hitgroup == HITGROUP_STOMACH || hitgroup == HITGROUP_LEFTARM || hitgroup == HITGROUP_RIGHTARM || hitgroup == HITGROUP_LEFTLEG || hitgroup == HITGROUP_RIGHTLEG)
    {

        if (weapon->next_primary_attack() > interfaces::globals->cur_time)
            cmd->buttons &= ~in_attack;
        else
            cmd->buttons |= in_attack;
    }
}

Огромное спасибо человеку под ником @rraggerr )
 
Последнее редактирование:
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
nu esli bi ti ne bil ebannim pasterom i imel hotya bi maleyshoe ponimaine togo shto ti delaesh ti bi spokoino dogodalsya bi sdelat 1 proverku 0_______0
p.s.
ladno pomogu pasteru
if (!player->is_enemy)
return;
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
nu esli bi ti ne bil ebannim pasterom i imel hotya bi maleyshoe ponimaine togo shto ti delaesh ti bi spokoino dogodalsya bi sdelat 1 proverku 0_______0
В отличие от тебя я ушёл из мира пастинга. И код был написан без использования других сурсов. Просто что туплю иногда
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
В отличие от тебя я ушёл из мира пастинга. И код был написан без использования других сурсов. Просто что туплю иногда
da da da, tolko drujochek kogda ti sam pishesh code, ti ochen legko ponimaesh v chem problema, a v tvoem sluchae ti spastil code i ne ponimaesh shto delat 0_____0
 
nu esli bi ti ne bil ebannim pasterom i imel hotya bi maleyshoe ponimaine togo shto ti delaesh ti bi spokoino dogodalsya bi sdelat 1 proverku 0_______0
p.s.
ladno pomogu pasteru
if (!player->is_enemy)
return;
мистер величайший кодер, если вы не заметили, то у него данная проверка стоит, советую хотя бы немного ознакомится с содержимым темы прежде чем выебыватся
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
мистер величайший кодер, если вы не заметили, то у него данная проверка стоит, советую хотя бы немного ознакомится с содержимым темы прежде чем выебыватся
hahaha nu i gde je ona u nego stoit drujochek, nu raz ya ee propustil, znachit kak ti skazal proverka na is_player wtf
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
мистер величайший кодер, если вы не заметили, то у него данная проверка стоит, советую хотя бы немного ознакомится с содержимым темы прежде чем выебыватся
Оставь в покое пастера на Линее, он и сам иногда не понимает, что говорит.
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Всё, /del тему. @rraggerr спасибо за помощь:kissingheart:
 
Назад
Сверху Снизу