i think the level_load command destroys first the level (and your string1 too) and then loads the level. But at this time your string1 is = NULL so the engine loads an empty level.
Try this:

STRING* dummy = "#32";

...

str_cpy(dummy,my.string1);
level_load(dummy);


Shitlord by trade and passion. Graphics programmer at Laminar Research.
I write blog posts at feresignum.com