static void Evolve(CNetObj_Character *pCharacter, int Tick) { CWorldCore TempWorld; CCharacterCore TempCore; mem_zero(&TempCore, sizeof(TempCore)); TempCore.Init(&TempWorld, g_GameClient.Collision()); TempCore.Read(pCharacter); while(pCharacter->m_Tick < Tick) { pCharacter->m_Tick++; TempCore.Tick(false); TempCore.Move(); TempCore.Quantize(); } TempCore.Write(pCharacter); }
static void Evolve(CNetObj_Character *pCharacter, int Tick, bool PredictFreeze) { CWorldCore TempWorld; CCharacterCore TempCore; CTeamsCore TempTeams; mem_zero(&TempCore, sizeof(TempCore)); mem_zero(&TempTeams, sizeof(TempTeams)); TempCore.Init(&TempWorld, g_GameClient.Collision(), &TempTeams); TempCore.Read(pCharacter); while(pCharacter->m_Tick < Tick) { pCharacter->m_Tick++; TempCore.Tick(false, false, PredictFreeze); TempCore.Move(); TempCore.Quantize(); } TempCore.Write(pCharacter); }