TrackName = {"月の交差"}; Copyright = {"S.Zayo"}; /* SGM-V2.01 KDrums */ Int Repeat = 2; // 繰り返し回数を設定できます //-----------------------------variables--------------------------------- Int In = 4;//イントロからメロディースタートまでの時間 Int Ltime = 24;//1ループの時間 Int Out = Ltime*Repeat+In+1;//フェードアウト開始時間 Int Fade = 8;//フェードアウトにかかる時間 Int Tmp = 120;//テンポ Int Sig = 4; Int SigBase = 4; Int Ptime = (In+Ltime*Repeat+Fade)*Sig*240/(Tmp*SigBase); //---------------------------functions--------------------------------- Function Repstr(Str MML,Int Tim,Int Rep,Int Beg=0)//MML繰り返し処理関数 { Int I; For(I=0;I<Rep-Beg;I++){ Time((I+Beg)*Tim+In+1:1:0) MML; } } Function PrintPlayTime(Int Tim) { Int Minute = Tim/60; Int Second = Tim%60; If(Tim<60){ Print({"演奏時間:"}+Second+{"秒"}); } Else{Print({"演奏時間:"}+Minute+{"分"}+Second+{"秒"}); } } Function FadeoutVol(Int Mes,Int Prev)// Prev:pre-volume フェードアウト前のメインボリューム { Str I = {!1}; While(Mes>1){I = I+{^1}; Mes--;} Str CMD = {V.onTime(Prev,0,LEN)}; CMD.s({LEN},I); CMD; } Function FadeoutAll(Int Mes,Array X) { Int T = Time; For(Int J=1;J<=16;J++){ TR(J); CH(J); Time(T); FadeoutVol(Mes,X(J-1)); } } //------------------------------system setting--------------------------------- TimeBase(96);System.MeasureShift(1); Time(0:1:0) Tempo(Tmp);TimeSignature(Sig,SigBase);TrackSync;PrintPlayTime(Ptime); //----------------------------------strings----------------------------------- Str TR1In = {}; Str TR1 = {y73(32) y71(127) l4 [[4rafg drrr][4r1]]}; Str TR1Out = {y73(32) y71(127) l4 [4rafg drrr]}; Str TR8In = {l24 y71(32) [d4rrrrrcdrrd^^r4 g4rrrrrf:g^rg^fg^a^^^]g^r"g^"a-"a^"b-"b^c}; Str TR8 = { l24 y71(32) [5[d4rrrrrcdrrd^^r4 g4rrrrrf:g^rg^fg^a^^^]g^r"g^"a-"a^"b-"b^c][b-4rrrrrb-b-8b-8r4 g4rrrrrg:g^rg^"g"g^"a"b-^"b]g^rg^ra^ra^r }; Str TR8Out = {[[d4rrrrrcdrrd^^r4 g4rrrrrf:g^rg^fg^a^^^]g^r"g^"a-"a^"b-"b^c]}; Str TR10In = {l16 y32(16) [4 Sub{[16n69]} 'n35n27'rn37r'n44n28n30n32'rn37r'n35n27'r'n35n37'r'n44n28'rn37r]}; Str TR10 = {l16 y32(16) [24 Sub{[16n69]} 'n35n27'rn37r'n44n28n30n32'rn37r'n35n27'r'n35n37'r'n44n28'rn37r]}; Str TR10Out = {[8 Sub{[16n69]} 'n35n27'rn37r'n44n28n30n32'rn37r'n35n27'r'n35n37'r'n44n28'rn37r]}; Str TR11In = {}; Str TR11 = {[8r1] l1 q100 [EP.onTime((80,127,!1),(127,40,!1))'df`c''dgb'][8r1][EP.onTime((80,127,!1),(127,40,!1))'dfb-''"b-dg'] }; Str TR11Out = {}; Str TR13In = {}; Str TR13 = {[8r1] y71(127) v80 l24 [[a^gd^ga^^]a^df^a[g^fd^fg^^]g^fd^g][8r1][[d^"b-d^fb-^^]d^"b-d^b-["b-^"g"b-^dg^^]:g^"gd^g]}; Str TR13Out = {}; //-----------------------------------Tracks-------------------------------------- /* Track 001,002,003,004,005,006,007,008,009,010,011,012,013,014,015,016 */ Array Vols = (100,070,100,100,100,100,100,100,100,100,100,100,060,040,100,100);//各トラックのメインボリューム FOR(Int A=1;A<=16;A++){CH(A); V(Vols(A-1));} #Scr = {Time(1:1:0) #?1In; Repstr(#?1,Ltime,Repeat); Time(Out:1:0) #?1Out;} TR(1) CH(1) Voice(89) M(20) REV(20) CHO(0) P(88) o6 #Scr(TR1) TR(2) CH(2) Voice(89) M(20) REV(20) CHO(0) P(56) o6 t16 #Scr(TR1) TR(8) CH(8) Voice(34) M(0) REV(0) CHO(0) P(64) o3 #Scr(TR8) TR(10) CH(10) REV(0) CHO(0) P(64) #Scr(TR10) TR(11) CH(11) Voice(96) M(0) REV(20) CHO(0) P(72) o5 #Scr(TR11) TR(13) CH(13) Voice(76) M(0) REV(30) CHO(30) P(90) o7 #Scr(TR13) TR(14) CH(14) Voice(76) M(0) REV(30) CHO(30) P(32) o7 t16 #Scr(TR13) //-------------------------------others---------------------------------- Time(Out:1:0) FadeoutAll(Fade,Vols);