kira yoshikage
-
Автор темы
- #1
спастил резольвер для хуо [пастил где -то мин 20:D]
Код:
//by EneOpler
bool Lastmovelby[65];
bool lby_updated;
static float oldlby[65];
float NormalizeYaw180(float yaw)
{
if (yaw > 180)
yaw -= (round(yaw / 360) * 360.f);
else if (yaw < -180)
yaw += (round(yaw / 360) * -360.f);
return yaw;
}
static auto last_delta = 0.f;
static auto last_angle = 0.f;
int delta, yaw, pitch;
static int r_yaw, r_pitch;
static bool r_e;
void fix_p(int p, int fake_p, int r_pitch)
{
p = pitch;
r_pitch = r_yaw - p;
fake_p = p - r_pitch;
p = r_pitch + fake_p;
}
void fix_y(int y, int fake_y, int r_yaw)
{
y = yaw;
r_yaw = r_pitch - y;
fake_y = y - r_yaw;
y = fake_y + r_yaw;
}
void fix_delta(int p, int y, int d)
{
p = pitch;
y = yaw;
d = delta;
d = p - y;
}
void resolve(bool r)
{
r = r_e;
if (r)
{
if (delta == 30 || delta == 60 || delta == 180)
{
fix_p(90, 30, 5); fix_y(30, 15, 5); r = false;
}
else { fix_p(0, 0, 10); fix_y(90, 45, 0); r = true; }
}
}
int resolve_type[65];
bool using_fake_angles[65];
bool UseFreestandAngle[65];
float FreestandAngle[65];
bool has_been_initialized = false;
static float nextlbyupdate[65];
pEntity->GetEyeAngles().y = pEntity->GetLBY();
float ApproachAngle(float target, float value, float speed)
{
target = flAngleMod(target);
value = flAngleMod(value);
float delta = target - value;
if (speed < 0)
speed = -speed;
if (delta < -180)
delta += 360;
else if (delta > 180)
delta -= 360;
if (delta > speed)
value += speed;
else if (delta < -speed)
value -= speed;
else
value = target;
return value;
}
Последнее редактирование: