-
Автор темы
- #1
Код:
static const auto flame_polygon = [] {
std::array<vec3_t, 3> points;
for (std::size_t i = 0; i < points.size(); ++i) {
points[i] = vec3_t{ 60.0f * std::cos(DEG2RAD(i * (360.0f / points.size()))),
60.0f * std::sin(DEG2RAD(i * (360.0f / points.size()))),
0.0f };
}
return points;
}();
std::vector<vec3_t> points;
for (int i = 0; i <= entity->fire_count(); i++)
points.push_back(entity->origin() + vec3_t(entity->fire_x_delta()[i], entity->fire_y_delta()[i], entity->fire_z_delta()[i]));
std::vector<ImVec2> screen_points;
for (const auto& pos : points) {
for (const auto& point : flame_polygon) {
ImVec2 screen;
if (math::world_to_screen(pos + point, screen))
screen_points.push_back(screen);
}
}
if (!screen_points.empty())
render::polygon_filled(convex_hull(screen_points), ImColor(255, 0, 0, 150));
Код:
auto& fire_x_delta()
{
return netvar_manager::get_netvar< int[] >("DT_Inferno", "m_fireXDelta", this);
}
auto& fire_y_delta()
{
return netvar_manager::get_netvar< int[] >("DT_Inferno", "m_fireYDelta", this);
}
auto& fire_z_delta()
{
return netvar_manager::get_netvar< int[] >("DT_Inferno", "m_fireZDelta", this);
}
auto& fire_count()
{
return netvar_manager::get_netvar< int >("DT_Inferno", "m_fireCount", this);
}
ну и что бы вы смогли использовать код вам нужен будет правильный
Пожалуйста, авторизуйтесь для просмотра ссылки.
, его я вам не дам, сами сделаете