Controlling a menu from another menu?

JordonBeal
JordonBeal Member Posts: 11 Member

I am working on a drum instrument, and I have multiple kit piece options for each part of the drum kit (i.e. 4 kicks, 4 snares, 4 sets of toms, etc). I have menus to select the pieces working quite nicely, but I'd also like to have another menu so that I can have a few kit presets to flip through.

Is there a way to create a new menu "Kit Presets," and have it control the other menus so that I don't have to write a ton of code for each specific preset? I've got one preset working, but it's a bit of a nightmare. Here's a snippet of the code that I have working.

I don't mind going about it this way if I must, but I figure there's probably a more elegant solution.

	on ui_control (mnu_KitPresets)
		select (mnu_KitPresets)
			case 0 {*NO KIT*}
				fade_out(ALL_EVENTS, 10000, 1)
				purge_group(ALL_GROUPS, 0)
				call Clear_Kit


			case 1
				fade_out(ALL_EVENTS, 10000, 1)
				purge_group(ALL_GROUPS, 0)
				$i := 0
				while ($i <= 7) {Load Kick}
					purge_group($i, 1)
					inc ($i)
				end while


				$i := 39
				while ($i <= 45) {Load Snare}
					purge_group($i, 1)
					inc ($i)
				end while	


				$i := 79
				while ($i <= 85) {Load Snare CS}
					purge_group($i, 1)
					inc ($i)
				end while					


				$i := 87
				while ($i <= 106) {Load Toms}
					purge_group($i, 1)
					inc ($i)
				end while					


				$i := 201
				while ($i <= 283) {Load Hats}
					purge_group($i, 1)
					inc ($i)
				end while	


				$i := 285
				while ($i <= 311) {Load Splashes}
					purge_group($i, 1)
					inc ($i)
				end while	


				$i := 341
				while ($i <= 346) {Load Stack}
					purge_group($i, 1)
					inc ($i)
				end while	


				$i := 362
				while ($i <= 374) {Load China}
					purge_group($i, 1)
					inc ($i)
				end while	




				$i := 376
				while ($i <= 459) {Load Ride and Crashes}
					purge_group($i, 1)
					inc ($i)
				end while	
				purge_group(find_group("KIKSHOT1"), 1)
				purge_group(find_group("SNRSHOT3"), 1)
				purge_group(find_group("SNR-AMB+LO"), 1)				


				call PDP_Kit


			case 2
				fade_out(ALL_EVENTS, 10000, 1)
				purge_group(ALL_GROUPS, 0)
				$i := 0
				while ($i <= 7) {Load Kick}
					purge_group($i, 1)
					inc ($i)
				end while


				$i := 39
				while ($i <= 45) {Load Snare}
					purge_group($i, 1)
					inc ($i)
				end while	


				$i := 79
				while ($i <= 85) {Load Snare CS}
					purge_group($i, 1)
					inc ($i)
				end while					


				$i := 87
				while ($i <= 106) {Load Toms}
					purge_group($i, 1)
					inc ($i)
				end while					


				$i := 201
				while ($i <= 283) {Load Hats}
					purge_group($i, 1)
					inc ($i)
				end while	


				$i := 285
				while ($i <= 311) {Load Splashes}
					purge_group($i, 1)
					inc ($i)
				end while	


				$i := 341
				while ($i <= 346) {Load Stack}
					purge_group($i, 1)
					inc ($i)
				end while	


				$i := 362
				while ($i <= 374) {Load China}
					purge_group($i, 1)
					inc ($i)
				end while	




				$i := 376
				while ($i <= 459) {Load Ride and Crashes}
					purge_group($i, 1)
					inc ($i)
				end while	
				purge_group(find_group("KIKSHOT1"), 1)
				purge_group(find_group("SNRSHOT3"), 1)
				purge_group(find_group("SNR-AMB+LO"), 1)
					
				call Tama_Kit


		end select
	end on	

Answers

Back To Top