0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
bool NextLBYUpdate()
{
int tick = *(int*)((DWORD)G::LocalPlayer + Offsets.m_nTickBase);
float flServerTime = (float)(tick * I::Globals->interval_per_tick);
if (_DEBUGMODE_)
{
printf("%f\n", G::LocalPlayer->GetLowerBodyYaw());
}
if (OldLBY != G::LocalPlayer->GetLowerBodyYaw())
{
LBYBreakerTimer++;
OldLBY = G::LocalPlayer->GetLowerBodyYaw();
bSwitch = !bSwitch;
LastLBYUpdateTime = flServerTime;
}
if (CurrentVelocity(G::LocalPlayer) > 0.5)
{
LastLBYUpdateTime = flServerTime;
return false;
}
if ((LastLBYUpdateTime + 1 - (GetLatency() * 2) < flServerTime) && (G::LocalPlayer->GetFlags() & FL_ONGROUND))
{
if (LastLBYUpdateTime + 1.1 - (GetLatency() * 2) < flServerTime)
{
LastLBYUpdateTime += 1.1;
}
return true;
}
return false;
}
float GetLatency()
{
INetChannelInfo *nci = I::Engine->GetNetChannelInfo();
if (nci)
{
float Latency = nci->GetAvgLatency(FLOW_OUTGOING) + nci->GetAvgLatency(FLOW_INCOMING);
return Latency;
}
else
{
return 0.0f;
}
}
float GetOutgoingLatency()
{
INetChannelInfo *nci = I::Engine->GetNetChannelInfo();
if (nci)
{
float OutgoingLatency = nci->GetAvgLatency(FLOW_OUTGOING);
return OutgoingLatency;
}
else
{
return 0.0f;
}
}
float GetIncomingLatency()
{
INetChannelInfo *nci = I::Engine->GetNetChannelInfo();
if (nci)
{
float IncomingLatency = nci->GetAvgLatency(FLOW_INCOMING);
return IncomingLatency;
}
else
{
return 0.0f;
}
}
https://yougame.biz/threads/19903/
Запостил:
somerholder1337 ,
25.07.2017 (Updated 31.03.2018 )
Комментарии (0) RSS