+ // TODO: slots should be available for contrib maps
+ worldmap.loadgame(user_dir + "/save/" + subset.name + "-slot1.stsg");
+
+ worldmap.display(); // run the map
+
+ Menu::set_current(main_menu);
+ resume_demo();
+ } else if (current_subset != index) {
+ current_subset = index;
+ // FIXME: This shouln't be busy looping
+ LevelSubset& subset = * (contrib_subsets[index]);
+
+ current_contrib_subset = ⊂
+
+ contrib_subset_menu->clear();
+
+ contrib_subset_menu->add_label(subset.title);
+ contrib_subset_menu->add_hl();
+
+ for (int i = 0; i < subset.get_num_levels(); ++i)
+ {
+ /** get level's title */
+ std::string filename = subset.get_level_filename(i);
+ std::string title = get_level_name(filename);
+ contrib_subset_menu->add_entry(i, title);