The game is driven by the Quake2 engine. Every 100ms it calls a RunFrame function of the game DLL, which in turn calls a tree of functions for animating all the items in the world. This is called a server frame.
Every 50ms or so the Quake2 engine calls a function named ClientThink in the game DLL. Actions taken by the player is introduced into the game at that point.