it might be solved using this:
PHP Code:
pf = anglesToForward( driver getPlayerAngles() );
tu = anglesToUp( self.angles );
sr = anglesToRight( tower.angles );
a1 = vectorToAngles( pf - vectorScale( tu , vectorDot( tu , pf ) ) );
a2 = vectorToAngles( sr - vectorScale( tu , vectorDot( tu , sr ) ) );
tower rotateTo( ( a1[0] , a1[1] , a2[0] ) , timeStep , 0 , 0 );