SIMISA@@@@@@@@@@JINX0x1t______


Tr_SMS (
	
	Skip (********* XDieseleceng.SMS V 3.0     Copyright Belphegor 2002 **********)
	Skip (********* all right reserved / Copying and duplication   ***************)
	Skip (********* on commercial support are strictly forbidden   ***************)

	ScalabiltyGroup( 5
		Activation (			ExternalCam ()			Distance    	(1000)		)
		Deactivation (		CabCam			()			PassengerCam	()			Distance    	(1000)		)
		Streams ( 8
			
			Stream (
				Priority ( 6 )
				Triggers ( 5
					Initial_Trigger  ( StartLoop   ( 1 File ( "XXRal-0.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
					Variable_Trigger ( Variable2_Inc_Past 0.050 ReleaseLoopRelease () )
					Variable_Trigger ( Variable2_Inc_Past 0.050 StartLoop   ( 1 File ( "XXM+.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
					Variable_Trigger ( Variable2_Dec_Past 0.150 ReleaseLoopRelease () )
					Variable_Trigger ( Variable2_Dec_Past 0.150 StartLoop   ( 1 File ( "XXRal-0.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )

				)
				FrequencyCurve(
					Variable2Controlled
					CurvePoints ( 4
						0.000		12025
						0.150		12025
						0.950		20000
						1.000		20200
					)
					Granularity ( 25 )
				)
				VolumeCurve(
					Variable2Controlled
					CurvePoints ( 12
						 0.000		1.4
						 0.010		1.4
						 0.050		1.4
						 0.150		1.4
						 0.250		1.4
						 0.350		1.4
						 0.450		1.4
						 0.550		1.4
						 0.650		1.4
						 0.750		1.4
						 0.850		1.4
						 1.000		1.4
					)
					Granularity ( 0.05 )
				)				
			)
			
			Skip (*************************************************************************************************)			

			Stream (
				Priority ( 6 )
				Triggers ( 1
				Initial_Trigger  ( StartLoop   ( 1 File ( "XXMT+.wav" -1 )   SelectionMethod ( SequentialSelection )  ) )	
				)
				
				FrequencyCurve(
					SpeedControlled
					CurvePoints ( 3
						-100.000	170000
						0.000		6000
						100.000	170000
					)
					Granularity ( 25 )		
				)
				VolumeCurve(
					SpeedControlled
					CurvePoints ( 13
						 
						 -100.0		0.6	
						 -70.00		0.6
						 -45.00		0.6
						 -25.00		0.5
						 -20.00		0.4
						 -0.50		0.4			
						 0.000		0.0
						 0.50             0.4
						 20.00 		0.5						 
						 25.0 		0.5
						 45.0 		0.6
						 70.0             0.6
						 100.0            0.6
					)
					Granularity ( 0.05 )					
				)				
			
			
			)
			
			Skip(*********************************************************************************************)
			
			Stream (
				Skip ( **** This stream allows the horn to be played at the same time  	**** )
				Priority ( 6 )
				Triggers ( 2
					Discrete_Trigger ( 8	StartLoopRelease ( 1	File ( "x2t.wav" -1 )	SelectionMethod ( SequentialSelection )	)	)
					Discrete_Trigger ( 9	ReleaseLoopReleaseWithJump ()	)
				)
			)
			Stream (
				Skip ( **** This stream allows the horn to be played at the same time  	**** )
				Priority ( 6 )
				Triggers ( 2
					Discrete_Trigger ( 10	StartLoopRelease ( 1	File ( "x_gp_bell1.wav" -1 )	SelectionMethod ( SequentialSelection )	)	)
					Discrete_Trigger ( 11 ReleaseLoopReleaseWithJump ()	)
				)
			)
			Stream (
				Skip ( **** This stream allows the sander to be played at the same time  	**** )				
				Priority ( 5 )			
				Triggers ( 2				
					Discrete_Trigger (  4	StartLoopRelease ( 1	File ( "../../dash9/sound/x_d9_sand.wav" -1 )	SelectionMethod ( SequentialSelection ) ) )
					Discrete_Trigger (  5	ReleaseLoopRelease () )	
				)
			)
			Stream (
				Skip ( **** This stream allows the Compressor to be played at the same time  	**** )				
				Priority ( 6 )			
				Triggers ( 2				
					Discrete_Trigger (  12	StartLoopRelease ( 1	File ( "../../dash9/sound/x_d9_compressor.wav" -1 )	SelectionMethod ( SequentialSelection ) ) )
					Discrete_Trigger (  13	ReleaseLoopRelease () )	
				)
			)
			Stream (
				Skip ( **** This stream allows the Train Brake & Independant Brakes to be played at the same time  	**** )
				Priority ( 5 )
				Triggers ( 5
					Skip ( **** NOTE: Need to check if correct waves used for apply/release  	**** )
					Skip ( ****       Assumes 3 = Release, 1 & 2 = Apply  	                  **** )
				  
				  Skip ( **** Tbrake 	**** )
				  Skip ( **** Release 	**** )
					Discrete_Trigger ( 14 	PlayOneShot ( 1 File ( "../../dash9/sound/x_d9_airb_auto3.wav" -1 ) SelectionMethod ( SequentialSelection ) ) )
				  Skip ( **** Apply {normal & emergency}	**** )
					Discrete_Trigger ( 53  	PlayOneShot ( 2 File ( "../../dash9/sound/x_d9_airb_auto1.wav" -1 ) File ( "../../dash9/sound/x_d9_airb_auto2.wav" -1 ) SelectionMethod ( RandomSelection ) ) )
					Discrete_Trigger ( 54 	PlayOneShot ( 2 File ( "../../dash9/sound/x_d9_airb_auto1.wav" -1 ) File ( "../../dash9/sound/x_d9_airb_auto2.wav" -1 ) SelectionMethod ( RandomSelection ) ) )
					
				  Skip ( **** Ibrake 	**** )
				  Skip ( **** Release 	**** )
					Discrete_Trigger ( 21 	PlayOneShot ( 1 File ( "../../dash9/sound/x_d9_airb_ind3.wav" -1 ) SelectionMethod ( SequentialSelection ) ) )
				  Skip ( **** Apply	**** )
					Discrete_Trigger ( 22  	PlayOneShot ( 2 File ( "../../dash9/sound/x_d9_airb_ind1.wav" -1 ) File ( "../../gp38/sound/x_gp_airb_ind2.wav" -1 ) SelectionMethod ( RandomSelection ) ) )
				)
			)	
			Stream (
				Priority ( 5 )
				Triggers ( 6
					Discrete_Trigger ( 58 PlayOneShot ( 1 	File ( "x_couple_auto1.wav" -1 ) SelectionMethod (SequentialSelection) ) ) 
					Discrete_Trigger ( 59 PlayOneShot ( 1 	File ( "x_couple_auto2.wav" -1 ) SelectionMethod (SequentialSelection) ) ) 
					Discrete_Trigger ( 60 PlayOneShot ( 1 	File ( "x_couple_auto3.wav" -1 ) SelectionMethod (SequentialSelection) ) ) 
					Discrete_Trigger ( 61 PlayOneShot ( 1 	File ( "x_uncouple_auto1.wav" -1 ) SelectionMethod (SequentialSelection) ) ) 
					Discrete_Trigger ( 62 PlayOneShot ( 1 	File ( "x_uncouple_auto2.wav" -1 ) SelectionMethod (SequentialSelection) ) ) 
					Discrete_Trigger ( 63 PlayOneShot ( 1 	File ( "x_uncouple_auto3.wav" -1 ) SelectionMethod (SequentialSelection) ) ) 
				)
			)
		)
	)

	Skip ( ** SL 3 sounds - Two looping audio stream, idle wave and 3 moving waves - pitch shifted & Xfaded by rpm               ** )
	Skip ( **             - One Horn audio stream				                                								                         ** )
	Skip ( **             - One Bell audio stream				                                								                         ** )
	Skip ( **             - One Sander audio stream				                                            	                         ** )
	Skip ( **             - One Compressor audio stream				                                        	                         ** )
	Skip ( **             - One TBrake & IBrake audio stream {as only one shots for apply and off - unkilely to be at same time} ** )
	Skip ( **             - One DBrake audio stream				                                            	                         ** )
	ScalabiltyGroup( 3
		Activation (			ExternalCam ()			Distance    	(1000)		)
		Deactivation (		CabCam			()			PassengerCam	()			Distance    	(1000)		)
		Streams ( 7
			Stream (
				Priority ( 6 )
				Triggers ( 7
					Skip( **** The engine/current related sounds - Stream 1 {Xfade}         **** )
					Initial_Trigger  ( 							            StartLoop   ( 1 File ( "XXDieselec1.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
					Variable_Trigger ( Variable2_Inc_Past 0.010 ReleaseLoopRelease () )
					Variable_Trigger ( Variable2_Inc_Past 0.300 StartLoop   ( 1 File ( "XXDieselec3.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
					Variable_Trigger ( Variable2_Inc_Past 0.700 ReleaseLoopRelease () )
					Variable_Trigger ( Variable2_Dec_Past 0.700 StartLoop   ( 1 File ( "XXDieselec3.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
					Variable_Trigger ( Variable2_Dec_Past 0.300 ReleaseLoopRelease () )					
					Variable_Trigger ( Variable2_Dec_Past 0.010 StartLoop   ( 1 File ( "XXDieselec1.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
				)
				FrequencyCurve(
					Variable2Controlled
					CurvePoints ( 3
						0.000		12025
						0.300		12025
						0.700		15000
					)
					Granularity ( 100 )
				)
				VolumeCurve(
					Variable2Controlled
					CurvePoints ( 8
						 0.000		1.0
						 0.010		1.0
						 0.011		0.0
						 0.300		0.0
						 0.350		1.0
						 0.650		1.0
						 0.700		0.0
						 1.000		0.0
					)
					Granularity ( 0.05 )
				)				
			)
			Stream (
				Priority ( 6 )
				Triggers ( 6
					Skip( **** The engine/current related sounds - Stream 2 {Xfade}         **** )
					Variable_Trigger ( Variable2_Inc_Past 0.004 StartLoop   ( 1 File ( "XXDieselec1.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
					Variable_Trigger ( Variable2_Inc_Past 0.350 ReleaseLoopRelease () )					
					Variable_Trigger ( Variable2_Inc_Past 0.650 StartLoop   ( 1 File ( "XXDieselec5.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
					Variable_Trigger ( Variable2_Dec_Past 0.650 ReleaseLoopRelease () )					
					Variable_Trigger ( Variable2_Dec_Past 0.350 StartLoop   ( 1 File ( "XXDieselec1.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
					Variable_Trigger ( Variable2_Dec_Past 0.004 ReleaseLoopRelease () )					
				)
				FrequencyCurve(
					Variable2Controlled
					CurvePoints ( 6
						0.000		12025
						0.005		12025
						0.350		15000
						0.400		15000
						0.650		12025
						1.000		15000
					)
					Granularity ( 100 )
				)
				VolumeCurve(
					Variable2Controlled
					CurvePoints ( 8
						 0.000		0.0
						 0.005		0.0
						 0.055		1.0
						 0.300		1.0
						 0.350		0.0
						 0.600		0.0
						 0.680		0.6
						 1.000		1.0
					)
					Granularity ( 0.05 )
				)				
			)
			Stream (
				Skip ( **** This stream allows the horn to be played at the same time  	**** )
				Priority ( 6 )
				Triggers ( 2
					Discrete_Trigger ( 8	StartLoopRelease ( 1	File ( "x2t.wav" -1 )	SelectionMethod ( SequentialSelection )	)	)
					Discrete_Trigger ( 9	ReleaseLoopReleaseWithJump ()	)
				)
			)
			Stream (
				Skip ( **** This stream allows the bell to be played at the same time  	**** )
				Priority ( 6 )
				Volume (0.25)
				Triggers ( 2
					Discrete_Trigger ( 10	StartLoopRelease ( 1	File ( "x_gp_bell1.wav" -1 )	SelectionMethod ( SequentialSelection )	)	)
					Discrete_Trigger ( 11 ReleaseLoopReleaseWithJump ()	)
				)
			)
			Stream (
				Skip ( **** This stream allows the sander to be played at the same time  	**** )				
				Priority ( 5 )			
				Triggers ( 2				
					Discrete_Trigger (  4	StartLoopRelease ( 1	File ( "../../dash9/sound/x_d9_sand.wav" -1 )	SelectionMethod ( SequentialSelection ) ) )
					Discrete_Trigger (  5	ReleaseLoopRelease () )	
				)
			)
			Stream (
				Skip ( **** This stream allows the Compressor to be played at the same time  	**** )				
				Priority ( 6 )			
				Triggers ( 2				
					Discrete_Trigger (  12	StartLoopRelease ( 1	File ( "../../dash9/sound/x_d9_compressor.wav" -1 )	SelectionMethod ( SequentialSelection ) ) )
					Discrete_Trigger (  13	ReleaseLoopRelease () )	
				)
			)
			Stream (
				Skip ( **** This stream allows the Train Brake & Independant Brakes to be played at the same time  	**** )
				Priority ( 5 )
				Triggers ( 5
					Skip ( **** NOTE: Need to check if correct waves used for apply/release  	**** )
					Skip ( ****       Assumes 3 = Release, 1 & 2 = Apply  	                  **** )
				  
				  Skip ( **** Tbrake 	**** )
				  Skip ( **** Release 	**** )
					Discrete_Trigger ( 14 	PlayOneShot ( 1 File ( "../../dash9/sound/x_d9_airb_auto3.wav" -1 ) SelectionMethod ( SequentialSelection ) ) )
				  Skip ( **** Apply {normal & emergency}	**** )
					Discrete_Trigger ( 53  	PlayOneShot ( 2 File ( "../../dash9/sound/x_d9_airb_auto1.wav" -1 ) File ( "x_gp_airb_auto2.wav" -1 ) SelectionMethod ( RandomSelection ) ) )
					Discrete_Trigger ( 54 	PlayOneShot ( 2 File ( "../../dash9/sound/x_d9_airb_auto1.wav" -1 ) File ( "x_gp_airb_auto2.wav" -1 ) SelectionMethod ( RandomSelection ) ) )
					
				  Skip ( **** Ibrake 	**** )
				  Skip ( **** Release 	**** )
					Discrete_Trigger ( 21 	PlayOneShot ( 1 File ( "../../dash9/sound/x_d9_airb_ind3.wav" -1 ) SelectionMethod ( SequentialSelection ) ) )
				  Skip ( **** Apply	**** )
					Discrete_Trigger ( 22  	PlayOneShot ( 2 File ( "../../dash9/sound/x_d9_airb_ind1.wav" -1 ) File ( "x_gp_airb_ind2.wav" -1 ) SelectionMethod ( RandomSelection ) ) )
				)
			)	
		)
	)

	Skip ( ** SL 1 sounds - One looping audio stream, idle wave and moving - pitch shifted by rpm     ** )
	Skip ( **             - One Horn audio stream				                                              ** )
	ScalabiltyGroup( 1
		Activation (			ExternalCam ()			Distance    	(1000)		)
		Deactivation (		CabCam			()			PassengerCam	()			Distance    	(1000)		)
		Streams ( 2
			Stream (
				Priority ( 6 )
				Triggers ( 5
					Skip( **** The engine/current related sounds **** )
					Initial_Trigger  ( 							           StartLoop   ( 1 File ( "XXDieselec1.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
					Variable_Trigger ( Variable2_Inc_Past  0.01 ReleaseLoopRelease () )
					Variable_Trigger ( Variable2_Inc_Past  0.01 StartLoop   ( 1 File ( "XXDieselec4.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
					Variable_Trigger ( Variable2_Dec_Past  0.01 ReleaseLoopRelease () )					
					Variable_Trigger ( Variable2_Dec_Past  0.01 StartLoop   ( 1 File ( "XXDieselec1.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
				)
				FrequencyCurve(
					Variable2Controlled
					CurvePoints ( 3
						0.000		10000
						0.010		10000
						1.000		12500
					)
					Granularity ( 100 )
				)
				VolumeCurve(
					Variable2Controlled
					CurvePoints ( 3
						 0.000		0.5
						 0.100		1.0
						 1.000		1.0
					)
					Granularity ( 0.05 )
				)				
			)
			Stream (
				Skip ( **** This stream allows the horn to be played at the same time  	**** )
				Priority ( 6 )
				Triggers ( 2
					Discrete_Trigger ( 8	StartLoopRelease ( 1	File ( "x2t.wav" -1 )	SelectionMethod ( SequentialSelection )	)	)
					Discrete_Trigger ( 9	ReleaseLoopReleaseWithJump ()	)
				)
			)
		)
	)

	Skip( **** ******************************************* **** )
	Skip( **** Copy of Generic Diesel SMS Used for SL 0    **** )
	Skip( **** ******************************************* **** )

	ScalabiltyGroup( 0
		Activation (	ExternalCam ()	Distance    	(500)	)
		Deactivation (CabCam	()			PassengerCam	()	Distance    	(500)	)
		Streams ( 1
			Stream (
				Priority ( 4 )
				Triggers ( 6
					Variable_Trigger ( Speed_Inc_Past   1.0 StartLoop   ( 1 File ( "a_d_comp1.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
					Variable_Trigger ( Speed_Inc_Past  50.0 StartLoop   ( 1 File ( "a_d_comp2.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
					Variable_Trigger ( Speed_Inc_Past  50.0 ReleaseLoopRelease () )					
					Variable_Trigger ( Speed_Dec_Past  49.0 StartLoop   ( 1 File ( "a_d_comp1.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
					Variable_Trigger ( Speed_Dec_Past  49.0 ReleaseLoopRelease () )					
					Variable_Trigger ( Speed_Dec_Past   1.0 ReleaseLoopRelease () )					
				)
				VolumeCurve(
					SpeedControlled
					CurvePoints ( 3
					 	  0.0		0.0
						 10.0		1.0
						100.0		1.0
					)
					Granularity ( 0.05 )
				)				
			)
		)
	)
)

