/*

	Coherent (Radio Edit)

		R*3

	MP3 : https://soundcloud.com/nishikushi/coherent-short-edit
	

*/




//
Int Style =1 ;

// 1 : GS用。通常はこちらで。
// 0 : Cubase取り込み用生データ。サクラ→Cubaseに興味ある人向けデータ。






/*
こんにちは。お久しぶりです。もしくは、初めまして。
R*3と申します。

2016年M3春もサクラ勢でコンピを作るので参加しませんか？と騎士王さんからお声掛けを頂いて、書き下ろした曲です。

テキスト音楽サクラを使っての曲作りは久しぶりです。
僕が初めてサクラを使ったのが15年近く前だったと思います。その当時は小学生でした。
冷静に考えて15年って長過ぎて自分でもびっくりしてます。

サクラは、音楽もプログラミングも、何も知らない小学生でも簡単に曲が作れる素晴らしいツールです。こんなにとっかかりが優しい作曲ソフト、ほかにありません。たぶん。
さらには公式サイトに曲掲示板があって、自分の曲を投稿して感想をもらったり、人の曲を見て技術を学んだりも出来ます。

僕はこの曲掲示板がすごく好きだった。
家に帰ったらまずパソコンの電源をつけて、新曲が投稿されてないかとか、自分の曲に感想がついてないかとか、あの頃は毎日のように眺めていました。
僕が掲示板に初めて曲を投稿してから15年経ちましたが、今でも、交流している友人がいます。
今回のCDに僕が参加できたのも、たくさんの友人たちのおかげです。本当にありがとう。感謝しています。

では、また、どこかで。


サクラと、サクラでつながった友人たちと、これからサクラを使う人たちに向けて

R*3




追記：
	僕のソースは好きなだけパクってもらって構いません。
	後ろの方にあるサイドチェインとかタイムキーパーの関数あたりは便利かもしれないので、よかったら使ってください。
	ただ、このメロディを使いたい！とかリミックスしたい！とかはご連絡くださいね。
	
	
追記2（こっそり）：
	最近はNishikushi（西久志 / imis!n）って名義で活動してます。
	トランスとか、UTAUとかやってるのでよろしくね。

*/









/**********************************

	Meta Data

*********************************/
TrackName={"Coherent (Short Edit)"}
Copyright={"R*3"}

KeyFlag+(f)
Tempo=136
Include(delay.h);












/**********************************

	Track Setting

*********************************/

If (Style = 1){	//For GS

TR=1	q80  @39  o6 P=64			V=127	REV=60 p64	r1	//Main PLK
TR=2	q80  @91  o6 P=64			V=110	REV=80 p64	r1	//Main PLK High
TR=3	q99  @39  o6 P.onNote(0,127)	V=117	REV=80 p63	r1	//Main PLK Delay
TR=4	q70  @88  o5 P=64			V=127	REV=80 p64	r1	//Main LD
TR=5	q99  @96  o5 P=0			V=70	REV=60 p62	r1	//PD Main R
TR=6	q99  @96  o5 P=127		V=70	REV=60 p66	r1	//PD Main L
TR=7	q99  @92  o5 P=64			V=70	REV=60 p64	r1	//PD High 
TR=8	q99  @80  o4 P=64			V=70	REV=30 p64	r1	//PD Bass
TR=9	q99  @120 o5 P.onNote(0,127)	V=110	REV=90 p64	r1	//Rvs Cymbal Delay
TR=10	q30  @25  o5 P=64			V=127	REV=5  p64	r1	//Drum
TR=11 q99  @80  o5 P=64			V=127	REV=0  p64	r1	//Kick
TR=12	q70  @91  o3 P=0			V=110	REV=30 p65	r1	//BAS High R
TR=13	q70  @40  o3 P=64			V=127	REV=10 p64	r1	//BAS Low
TR=14 q70  @91  o3 P=127		V=110	REV=30 p63	r1	//BAS High L
TR=15	q99  @120 o5 P=64			V=110	REV=80 p64	r1	//Rvs Cymbal
TR=16	q99  @123 o7 P=64			V=110	REV=80 p64	r1	//Sweepl

}


If (Style = 0){	//For Cubase

TR=1	q100  o6 r1	//Main PLK
TR=2	q100  o6 r1	//Main PLK High
TR=3	q100  o5 r1 
TR=4	q100  o5 r1	//Main LD
TR=5	q100  o5 r1 
TR=6	q100  o5 r1	//PD Main 
TR=7	q100  o5 r1	//PD High 
TR=8	q100  o4 r1	//PD Bass
TR=9	q100  o5 r1
TR=10	q100  o5 r1	//Drum
TR=11 q100  o5 r1 
TR=12	q100  o3 r1	//BAS High 
TR=13	q100  o3 r1	//BAS Low
TR=14 q100  o5 r1
TR=15	q100  o5 r1	//Rvs Cymbal
TR=16	q100  o7 r1	//Sweep

}









/**********************************

	Scores

*********************************/


//******	R	******//
Str R4={	[4 r1]	}
Str R8={	[8 r1]	}
Str R16={	[16r1]	}











//******	PLK	******//
//Main
Str PLK_M1={	l16	
	"br""e   fr""e   fr""e   gr""e   g""ea""e		`dr""g  `dr""g   gr""g   gr""g   f""gd""g
	"br""c   fr""c   fr""c   gr""c   g""ca""c		`dr""c  `dr""c   gr""c  `gr""c  `f""c`d""c
	
	"br""e   fr""e   fr""e   gr""e   g""ea""e		`dr""d  `dr""d   gr""d   gr""d   f""dd""d
	 dr""c   fr""c   fr""c   gr""c   g""ca""c		`dr""c  `dr""c   gr""c  `gr""c  `a""c`d""c	
	 
	"br""e   fr""e   fr""e   gr""e   g""ea""e		`dr""g  `dr""g   gr""g   gr""g   f""gd""g
	"br""c   fr""c   fr""c   gr""c   g""ca""c		`dr""c  `dr""c   gr""c  `gr""c  `f""c`d""c
	
	"br"""a   fr"""a   fr"""a   gr"""a   g"""aa"""a		`dr"""b  `dr"""b   gr"""b   gr"""b   f"""bd"""b
	 dr""c   fr""c   fr""c   gr""c   g""ca""c		`dr""c  `dr""c   gr""c  `gr""d  `a""d`d""d	
}



//High
Str PLK_H1H={	l16	
	"br""e   fr""e   fr""e   gr""e   g""ea""e		`dr""g  `dr""g   gr""g   gr""g   f""gd""g
	"br""c   fr""c   fr""c   gr""c   g""ca""c		`dr""c  `dr""c   gr""c  `gr""c  `f""c`d""c
	
	"br"""a   fr"""a   fr"""a   gr"""a   g"""aa"""a		`dr"""b  `dr"""b   gr"""b   gr"""b   f"""bd"""b
	 dr""c   fr""c   fr""c   gr""c   g""ca""c		`dr""c  `dr""c   gr""c  `gr""d  `a""d`d""d	
}


//Delay
Str PLK_M1D={	l16	MidiDelay({PLK_M1},8,!8) }






//******	PD	******//

//Main
Str PD_M1={ l2
	S{ > g^"f^	e^^^	g^a^	e^^^		g^"f^	e^^^	g^a^	e^^^	}
	S{   d^^^	c^"a^	d^^^	c^"a^		d^^^	c^"a^	d^^^	c^"a^	}
	S{ < b^^^	g^^^	b^^^	g^^^		b^^^	g^^^	b^^^	g^^^	}
	S{ < e^g^	c^^^	e^d^	c^^^		e^g^	c^^^	e^d^	c^^^}
	   < e^g^	c^^^	e^d^	c^^^		e^g^	c^^^	e^d^	c^^^ >>
}

Str PD_M2={ l2
	S{ > g^"f^	e^^^	g^a^	e^^^		g^"f^	e^^^	g^a^	e^^^	}
	S{   d^^^	c^"a^	d^^^	c^"a^		d^^^	c^"a^	d^^^	c^"a^	}
	S{ < b^^^	g^^^	b^^^	g^^^		b^^^	g^^^	b^^^	g^^^	}
	S{ < e^g^	c^^^	e^d^	c^^^		e^g^	c^^^	a^b^	c^^d}
	   < e^g^	c^^^	e^d^	c^^^		e^g^	c^^^	a^b^	c^^d >>
}

Str PD_ME={ l2
	   < e^^^ >
}


//High
Str PD_H1={ l2
	S{ > g^"f^	e^^^	g^a^	e^^^		g^"f^	e^^^	g^a^	e^^^	}
	S{   d^^^	c^"a^	d^^^	c^"a^		d^^^	c^"a^	d^^^	c^"a^	}
	S{   b^^^	g^^^	b^^^	g^^^		b^^^	g^^^	b^^^	g^^^	}
	  << e^g^	c^^^	e^d^	c^^^		e^g^	c^^^	e^d^	c^^^>
}


//Bass
Str PD_B1={ l2
	< e^g^	c^^^	e^d^	c^^^		e^g^	c^^^	e^d^	c^^^ >
}

Str PD_B2={ l2
	< e^g^	c^^^	e^d^	c^^^		e^g^	c^^^	a^b^	c^^d  >
}



//******	Main LD	******//
//Main
Str LD_M1={ l8 
	rrgrgrfd	rrrrrrrr	rrgrgrad	rrrrrrrr
	rrgrgrfd	rrrrrr"br	rrgrgra`d	rrrrrrrr
	rrgrgrfd	rrrrrrrr	rrgrgrad	rrrrrrrr
	rrgrgrfd	rrrrrr"br	rrcrdrfg	rrrrr`drr
}


Str LD_ME={ l8 	rrgrgrfd	rrrrrrrr	}



Str LD_M1H={ l8 
	[8r1]
	rrgrgrfd	rrrrrrrr	rrgrgrad	rrrrrrrr
	rrgrgrfd	rrrrrr"br	rrcrdrfg	rrrrr`drr
	
}

Str LD_M1D ={ l8 MidiDelay({LD_M1},6,!4);}
Str LD_MED ={ l8 MidiDelay({LD_ME},6,!4);}
Str LD_M1HD={ l8 MidiDelay({LD_M1H},6,!4);}


//******	DRM	******//

Str DRM_BIn={ 
	R8
	S{ v40 l16 [7 [2 n38v-20n38n38v+20  n38v-20n38n38v+20  n38v-20n38v+20] v+10 ] l32 v120 [32 n38 v-3] } //Snare
	S{ v10 l8  [6 [8 n36 v+2] ]	l16 [16 n36 v+1]  n36 n36 n36 n36 v-10n36 v+10 n36 v-70n36 v+25n36 v+25n36 v+25 n36 }	//Kick
	R8
}


Str DRM_M1={ v127 l16
	S{ v127 l4  n49 }	//Cymbal
	S{ v127 l4  [15 [4 n36 ] ] n36}	//Kick
	S{ v127 l4  [15 [2  r  n39 ] ] }	//Clap
	S{ v100 l16 [16  [4 n42 v-20n42v+20 n42v-30 n42v+30 ] ] }	//Hat Cl1
	S{ v80  l16 [16  rrrn44 rn44rn44 rrrn44 rn44n44n44 ] }	//Hat Cl2
	S{ v127 l16 [16  [4rrn46r] ] }	//Hat Op1
	S{ v127 l16 [8   [4 rrn82v-30n82v+30]] }	//Hat Op2
	
	R16
}


Str DRM_M2={ v127 l16
	S{ v127 l4  n49 }	//Cymbal
	S{ v127 l4  [12 [4 n36 ] ] n36}	//Kick
	S{ v127 l4  [16 [2  r  n39 ] ] }	//Clap
	S{ v100 l16 [16  [4 n42 v-20n42v+20 n42v-30 n42v+30 ] ] }	//Hat Cl1
	S{ v80  l16 [16  rrrn44 rn44rn44 rrrn44 rn44n44n44 ] }	//Hat Cl2
	S{ v127 l16 [16  [4rrn46r] ] }	//Hat Op1
	S{ v127 l16 [8   [4 rrn82v-30n82v+30]] }	//Hat Op2
	
	//Fill
	S{ R8 R4 v40 l16 [4 [2 n38v-20n38n38v+20  n38v-20n38n38v+20  n38v-20n38v+20] v+20 ] } //Snare
	S{ R8 R4 r1+1 v40 l8 [8 n36 v+8]	l16 [8n36v+2] n36n36n36n36rn36  } //Kick
	
	R16
}

Str DRM_M3={ v127 l16
	S{ v127 l4  n49 }	//Cymbal
	S{ v127 l4  [7 [4 n36 ] ] n36 n36 r l16 v40[4n36 v+20]}	//Kick
	S{ v127 l4  [8 [2  r  n39 ] ] }	//Clap
	S{ v100 l16 [8  [4 n42 v-20n42v+20 n42v-30 n42v+30 ] ] }	//Hat Cl1
	S{ v80  l16 [8  rrrn44 rn44rn44 rrrn44 rn44n44n44 ] }	//Hat Cl2
	S{ v127 l16 [8  [4rrn46r] ] }	//Hat Op1
	S{ v127 l16 [8   [4 rrn82v-30n82v+30]] }	//Hat Op2
	
	R8
}


Str DRM_MO={ v127 l16
	S{ v127 l4  n49 }	//Cymbal
	S{ v100 l16 [8  [4 n42 v-20n42v+20 n42v-30 n42v+30 ] ] }	//Hat Cl1
	S{ v80  l16 [8  rrrn44 rn44rn44 rrrn44 rn44n44n44 ] }	//Hat Cl2
	S{ v127 l16 [8  [4rrn46r] ] }	//Hat Op1
	S{ v127 l16 [8   [4 rrn82v-30n82v+30]] }	//Hat Op2
	
	R8
}






//******	BAS	******//

//High
Str BAS_HBIn={ v127 l16
	[4 ee`e`e] [4 gg`g`g] [8 cc`c`c]	[4 ee`e`e] [4 dd`d`d] [8 cc`c`c]
	[4 ee`e`e] [4 gg`g`g] [8 cc`c`c]	[4 aa`a`a] [4 bb`b`b] [6 cc`c`c] [2 r4 ]
	
}

Str BAS_H1={ v127 l16
	[4 ee`e`e] [4 gg`g`g] [8 cc`c`c]	[4 ee`e`e] [4 dd`d`d] [8 cc`c`c]
	[4 ee`e`e] [4 gg`g`g] [8 cc`c`c]	[4 aa`a`a] [4 bb`b`b] [6 cc`c`c] [2 dd`d`d]
}



//Low
Str BAS_LBIn={
	R16
}


Str BAS_L1={ l16
	[ v20 e r v60 e v127 e	rv40ev127e^	] [ v20 g r v60 g v127 g	rv40gv127g^	]	 [4 v20 c r v60 c v127 c	rv40cv127c^	] 
	[ v20 e r v60 e v127 e	rv40ev127e^	] [ v20 d r v60 d v127 d	rv40dv127d^	]	 [4 v20 c r v60 c v127 c	rv40cv127c^	] 
	
	[ v20 e r v60 e v127 e	rv40ev127e^	] [ v20 g r v60 g v127 g	rv40gv127g^	]	 [4 v20 c r v60 c v127 c	rv40cv127c^	] 
	[ v20 a r v60 a v127 a	rv40av127a^	] [ v20 b r v60 b v127 b	rv40bv127b^	]	 [3 v20 c r v60 c v127 c	rv40cv127c^	] v20 d r v60 d v127 d	rv40dv127d^ 
}







//******	SFX	******//
Str RS8={ l1
	[7 r1 ] c1
}


Str RS8D={ l1 S{ MidiDelay({RS8},4,!4) } R8 }

Str SwpDown16={ l1 BR=12 p64
	p.T(64,0,!1+1+1+1)c1+1+1+1 [12 r1 ]
}






//******	Side Chain Switch ******//
Function SC(i){	//	SC()のかっこの中に、1を書くとサイドチェインコンプをオン、0を書くとオフ
	If(i==0){EP=127;}
	If(i==1){EP.WR(0,100,!16,100,127,!16,127,127,!8)}
}

Function SCL(i){	//	SC()のかっこの中に、1を書くと軽めのサイドチェインコンプをオン、0を書くとオフ
	If(i==0){EP=127;}
	If(i==1){EP.WR(80,110,!16,110,127,!16,127,127,!8)}
}






//******	Time Keeper ******//
Function TK(i){	//	TK()のかっこの中に1とか2とか書くとコメントを残してくれる。
	If(i==1){ MetaText={"Break"} r }
	If(i==2){ MetaText={"Lead In"}r }
	If(i==3){ MetaText={"Bass In"}r }
	If(i==4){ MetaText={"Main 1"} r}
	If(i==5){ MetaText={"Main 2"} r}
	If(i==6){ MetaText={"Main 3"} r}
	If(i==7){ MetaText={"Main Out"}r }
	If(i==8){ MetaText={"End"} r}
}

/**********************************

	Kousei

*********************************/

If (Style = 1){	//For GS
//	 Break1_16		LDIn_16		BASSIn_16		Main1_16		Main2_16		Main3_8		MainOut_8		End_8	
TR=0	 TK(1)	R16	TK(2)	R16		TK(3)	R16		TK(4)	R16		TK(5)	R16		TK(6)	R8		TK(7)	R8		TK(8)	//TimeKeeper
TR=1	 R16			PLK_M1		PLK_M1		SCL(1);PLK_M1	PLK_M1		PLK_M1						//Main PLK
TR=2	 R16			R8	PLK_H1H	PLK_M1		SCL(1);PLK_M1	PLK_M1		PLK_M1						//Main PLK High
TR=3	 R16			PLK_M1D		PLK_M1D		PLK_M1D		PLK_M1D		PLK_M1D						//Main PLK Delay
TR=4	 LD_M1HD		R16			LD_M1D		R16			SCL(1);LD_M1D	LD_M1D					LD_MED//Main LD
TR=5	 SC(0);PD_M1	PD_M2			SCL(1);PD_M2	SC(1);PD_M2		PD_M2			PD_M2			SCL(1);		PD_ME //PD Main L	
TR=6	 SC(0);PD_M1	PD_M2			SCL(1);PD_M2	SC(1);PD_M2		PD_M2			PD_M2			SCL(1);		PD_ME //PD Main R
TR=7	 SCL(0);PD_H1	PD_H1			PD_H1			PD_H1			PD_H1			PD_H1							//PD High
TR=8	 PD_B1		PD_B2																			//PD Bass
TR=9	 RS8 RS8D		R8	RS8D		R8	RS8D		R16			R8	RS8D		R8			RS8D				//Rvs Cym
TR=10	 R16			R16			DRM_BIn		DRM_M1		DRM_M2		DRM_M3		DRM_MO			//Drums
TR=11	 R16			
TR=12	 SC(1);R16		R16			BAS_HBIn		BAS_H1		BAS_H1		BAS_H1						//BAS High R
TR=13	 SC(1);R16		R16			BAS_LBIn		BAS_L1		BAS_L1		BAS_L1						//BAS Low
TR=14	 SC(1);R16		R16			BAS_HBIn		BAS_H1		BAS_H1		BAS_H1						//BAS High L
TR=15	 RS8 RS8		R8	RS8		R8	RS8		R16			R8	RS8		R8			RS8				//Rvs Cym
TR=16	 R16			SC(1);SwpDown16	R16			R16			R16			R8			SwpDown16			//Sweep

}



If (Style = 0){	//For Cubase
//	 Break1_16		LDIn_16		BASSIn_16		Main1_16		Main2_16		Main3_8		MainOut_8		End_8	
TR=0	 TK(1)	R16	TK(2)	R16		TK(3)	R16		TK(4)	R16		TK(5)	R16		TK(6)	R8		TK(7)	R8		TK(8)	//TimeKeeper
TR=1	 R16			PLK_M1		PLK_M1		PLK_M1		PLK_M1		PLK_M1						//Main PLK
TR=2	 R16			R8	PLK_H1H	PLK_M1		PLK_M1		PLK_M1		PLK_M1						
TR=3	 R16			
TR=4	 LD_M1H		R16			LD_M1			R16			LD_M1			LD_M1						LD_ME
TR=5	 R16			
TR=6	 PD_M1		PD_M2			PD_M2			PD_M2			PD_M2			PD_M2						PD_ME	//PD Main
TR=7	 PD_H1		PD_H1			PD_H1			PD_H1			PD_H1			PD_H1							//PD High
TR=8	 PD_B1		PD_B2																			//PD Bass
TR=9	 R16			
TR=10	 R16			R16			DRM_BIn		DRM_M1		DRM_M2		DRM_M3		DRM_MO			//Drums
TR=11	 R16			
TR=12	 R16			R16			BAS_HBIn		BAS_H1		BAS_H1		BAS_H1						//BAS High
TR=13	 R16			R16			BAS_LBIn		BAS_L1		BAS_L1		BAS_L1						//BAS Low
TR=14	 R16			
TR=15	 RS8 RS8		R8	RS8		R8	RS8		R16			R8	RS8		R8			RS8				//Rvs Cym
TR=16	 R16			SwpDown16		R16			R16			R16			R8			SwpDown16			//Sweep

}