i figured something out after trying with every possible way.. and frames skipped happen because i'm not stop the thread completely (i guess? correct me if this wrong) so i will add return; to stop the thread like this :
...
if(loading_count >= 170){
StartMainMenu();
return;
}
...
and now the transition animation are working without skipping any frames.. sorry for asking stupid question and posting stupid answer.