Converge搭載
簡潔に行きます。 ※5keyのみでConvergeを設定できるようにします。 ※他keyでやっても、おにぎり2つ割り当てが出来ないので需要なさそうですし。 まずはスイッチのAS。黄色の部分を追加。
switch(_root.style){ case "Default": _root.style = "Mirror"; break; case "Mirror": _root.style = "Random"; break; case "Random": _root.style = "Random+"; break; case "Random+": _root.style = "S-Random"; break; case "S-Random": _root.style = "S-Random+"; break; case "S-Random+": if(_root.keyLabel==5){ _root.style = "Converge"; }else{ _root.style = "Default"; } break; case "Converge": _root.style = "Default"; } gotoAndPlay("setOption"); } |
//以下S-Random関連処理 if(style=="S-Random" || style=="S-Random+" || style=="Converge"){ if(style=="S-Random" && keyLabel!="7i"){ np = timeline[3]; //おにぎりデータの保存(S-Random時の回避用) fnp = ftimeline[3]; //(フリーズ) } //S-Random処理に使用する配列生成 srtimeline = new Array(); srtimeline2 = new Array(); srtimeline3 = new Array(); fsrtimeline = new Array(); fsrtimeline2 = new Array(); fsrtimeline3 = new Array(); st = new Array(); st2 = new Array(); st3 = new Array(); en = new Array(); en2 = new Array(); en3 = new Array(); //各矢印の並びを1つの変数にまとめる for(j=0;j<3;j++){ //左側矢印 if(j!=1 || ( keyLabel!=5 && keyLabel!=9 && keyLabel!="DP" ) ){ if(isNaN(srtimeline[j][0])){ srtimeline = srtimeline.concat(timeline[j]); } if(ftimeline[j].length > 1){ fsrtimeline = fsrtimeline.concat(ftimeline[j]); } } } if(style!="S-Random" && keyLabel!="7i"){ if(isNaN(srtimeline[3][0])){ srtimeline = srtimeline.concat(timeline[3]); } if(ftimeline[3].length > 1){ fsrtimeline = fsrtimeline.concat(ftimeline[3]); } } |
//"S-Random+"のときは、別変数に格納したものを元に戻す if(style != "S-Random" && ( keyLabel=="DP" || keyLabel==11 || keyLabel…… srtimeline = srtimeline.concat(srtimeline2,srtimeline3); fsrtimeline = fsrtimeline.concat(fsrtimeline2,fsrtimeline3); } |
//フリーズの配置 ・ ・ ・ (中略) ・ ・ ・ }else if(keyLabel==5){ //5key if(style=="S-Random+"){ ・ ・ ・ (中略) ・ ・ ・ }else{ for(k=0;k<fsrtimeline.length;k++){ retrycount = 0; do { fretryflg = false; if(style=="Converge" && retrycount==0){ r = 3; }else{ do { r = Math.floor(Math.random() * 7); } while ( r==1 || r==3 || r==5 ); } for(c=0;c<fuse[r].length;c++){ if(fuse[r][c].s <= fsrtimeline[k].s && …… fretryflg = true; break; } } retrycount++; }while (fretryflg); g = ftimeline[r].push(fsrtimeline[k].s); g = ftimeline[r].push(fsrtimeline[k].e); g = fuse[r].push({ s:fsrtimeline[k].s , e:fsrtimeline[k].e }); } } |
//通常矢印の配置(フリーズをよける) ・ ・ ・ (中略) ・ ・ ・ }else if(keyLabel==5){ //5key if(style=="S-Random+"){ ・ ・ ・ (中略) ・ ・ ・ }else{ for(k=0;k<srtimeline.length;k++){ retrycount = 0; do { fretryflg = false; retryflg = false; if(style=="Converge" && retrycount==0){ r = 3; }else{ do { r = Math.floor(Math.random() * 7); } while ( r==1 || r==3 || r==5 ); } for(c=0;c<fuse[r].length;c++){ if(fuse[r][c].s != undefined && fuse[r][c].s …… fretryflg = true; break; } } if(ouse[r] == srtimeline[k]){ retryflg = true; } retrycount++; }while (fretryflg || retryflg); g = timeline[r].push(srtimeline[k]); if(srtimeline[k] == srtimeline[k+1]){ ouse[r]=srtimeline[k]; } } } |
//1行リザルト用Style省略 if(_root.style=="Mirror"){ st1 = "(鏡)"; }else if(_root.style=="Random"){ st1 = "(乱)"; }else if(_root.style=="Random+"){ st1 = "(乱+)"; }else if(_root.style=="S-Random"){ st1 = "(S乱)"; }else if(_root.style=="S-Random+"){ st1 = "(S乱+)"; }else if(_root.style=="Converge"){ st1 = "(全鬼)"; }else{ st1 = ""; } |
function selectDifficulty(dif,preKey){ // キーラベル( 5key か 7key かなどキー数を決定 ) keyLabel = (keyLabelArr[dif]!=undefined ? keyLabelArr[dif] : "7"); // 11キーであるかどうかのフラグ elvFlg = ((keyLabel=="11" || keyLabel=="11L") ? true : false); // 14iキー、16iキーであるかどうかのフラグ elviFlg = ((keyLabel=="14i" || keyLabel=="16i") ? true : false); //Converge→Default if(keyLabel != 5 && style=="Converge"){ style = "Default"; } // 譜面番号(1譜面目は空にする) diffin = (dif!=0 ? dif+1 : ""); |