-
Автор темы
- #1
Продолжаем, пока-что пройдёмся по лайту. Сегодня расчет дистанции до противника
Для этого нам нужно:
Ну ёмаё, во первых - класс 3д вектора с функцией расчета дистанции в 3д пространстве:
Далее - актуальные позиции локального игрока и вашего енеми, надеюсь вы успели спастить getboneposition с асфиксии:
Кстати индекс костей можете найти тут
Подготовьте ваши извилины, потому что далее будут махинации, но не пугайтесь, это не на долго:
Кстати, я Русский
Для этого нам нужно:
Ну ёмаё, во первых - класс 3д вектора с функцией расчета дистанции в 3д пространстве:
C++:
struct vec3 {
float x, y, z;
vec3() : x(0), y(0), z(0) {};
vec3(float _x, float _y, float _z) : x(_x), y(_y), z(_z) {};
float distance(vec3 Pos) {
return sqrtf(powf(Pos.x - x, 2) + powf(Pos.y - y, 2) + powf(Pos.z - z, 2));
}
};
Далее - актуальные позиции локального игрока и вашего енеми, надеюсь вы успели спастить getboneposition с асфиксии:
Кстати индекс костей можете найти тут
C++:
vec3 local_pos = local.pawn.get_bone_position(BONE_HEAD);
vec3 player_pos = player.pawn.get_bone_position(BONE_HEAD);
Подготовьте ваши извилины, потому что далее будут махинации, но не пугайтесь, это не на долго:
C++:
float distance = local_pos.distance(player_pos); //Расчитываем расстояние в 3д пространстве
distance = distance / 100.f; //А тут вы можете ахуеть, но еденицы измерения
// что делают ваши вот эти каэсы не совпадает с тем чем вы меряете свой член