Why do you check if(splash.alpha=100)? Normally, splash.alpha will mostly never be exactly 100 after the first for loop, more like 100.3, 100.07 or something like that. Then there is missing a second "=", so you don't compare the values, but you assign 100 to splash.alpha. Then you've got the for loops messed up a little, it should be:
for (splash.alpha=0; splash.alpha<100; splash.alpha+=time_step) wait(1);
instead of
for (splash.alpha=0; splash.alpha+=5*time_step; splash.alpha<100) wait(5);