//皐月祭翔愛祭 神経衰弱用テンプレート // // //----------------------- // はじめに //----------------------- // 先頭が // で始まる行はコメントです。 // スクリプトを実行する上では、コメントは無視されます。 // // 「■■ 編集ここから ■■」〜「■■ 編集ここまで ■■」 // の間だけを書き換えてください。 // 「★★置換:」〜「:ここまで☆☆」は、 // ★★から☆☆まで(★や☆を含みます)を、指定した内容で // 置き換えてください。 // // // //----------------------- // スクリプト情報メモ //----------------------- //ゲームクエストコード[]   //ゲームスクリプト番号[]   // // クエストコードは、普通は使用しません。 // ゲームスクリプト番号は、編集室のガイドタブに書かれている // スクリプト編集の[]の中身です。 // 後々必要になる場合がありますので、コメントとして記述しておくと // 良いかと思います。 //----------------------- // 変数の使いみち //----------------------- //たとえばlf[15]が何に使われているかをメモしておくと、 //後で見直す際に便利です。特に、他人の作ったスクリプトを見る時には //このような記述があると便利なので書いています。 //3ヶ月後の自分は「他人」です。 //lf[0]〜lf[9]は、一時領域として使用し、重要な値を保存しないこと //としておくと後々便利。 //lf[0]:臨時、一時利用 //lf[1]:臨時、一時利用 //lf[2]:臨時、一時利用 //lf[3]:臨時、一時利用 //lf[5]:臨時、一時利用 //lf[6]:臨時、一時利用 //lf[7]:臨時、一時利用 //lf[8]:臨時、一時利用 //lf[9]:臨時、一時利用 //lf[14]:コンボ最大数 //lf[15]:問題数 //lf[16]:正解した回数 //lf[37]:コンボ回数 //lf[17]:面の中でミスした回数 //lf[18]:面をミスした回数 //lf[20]:めくった枚数 //lf[21]:1枚目の画像番号 //lf[22]:2枚目の画像番号 //lf[23]:0:合致 それ以外:不一致 //lf[27]:表示x座標 //lf[28]:表示y座標 //lf[29]:表示画像番号 //lf[32]:表示用位置 //lf[33]:x印表示用x座標 //lf[34]:x印表示用y座標 //lf[48]: //lf[50]:各パネルの画像番号 //lf[51]:各パネルの画像番号 //lf[52]:各パネルの画像番号 //lf[53]:各パネルの画像番号 //lf[54]:各パネルの画像番号 //lf[55]:各パネルの画像番号 //lf[56]:各パネルの画像番号 //lf[57]:各パネルの画像番号 //lf[58]:各パネルの画像番号 //lf[59]:各パネルの画像番号 //lf[60]:各パネルの画像番号 //lf[61]:各パネルの画像番号 //〜[61]:正:裏、0:マッチ済み、負:いま表になっている //lf[80]:パネル入れ替え用のシード値 //lf[82]:正解数 //lf[ ]: //lf[ ]: Level:0 //---------------------------------------------------------------- //マップロック:場所や時期による、スクリプトを実行してよいかの制限 //---------------------------------------------------------------- Segment:40 //編集室かどうかをチェック //編集室ならSegment:60に移動する(シーズンロックも飛ばしてプレイ可能にする) lf[0]=Avatar.checkMap:E_ ->Segment:60;(lf[0]==1) //自団体の出展用多目的教室かどうかチェック //■■ 編集ココから: 「X02_123-01234.1」は、自団体の出展用ブース  ■■ //■■ 多目的教室をあらわす番号です。マップコードと呼びます。    ■■ //■■ 自団体の出展用ブースのマップコードに書き換えてください。   ■■ //■■ 判らなければ生徒会に問い合わせるか編集をお願いしてください。 ■■ lf[0]=Avatar.checkMap:X02_123-01234.1 //■■ 編集ココまで ■■ //自団体の出展用ブースならSegment:50に移動する //(皐月祭翔愛祭の時期かチェックする) ->Segment:50;(lf[0]==1) //自団体の出展用ブース以外でチケットを使用した場合に表示されるメッセージです。 //「決められた場所で使ってね」だと、どのブースに行けばよいか判らないので //自団体の名前、出展名などを表示したほうが親切です。 //■■ 「」の中に公式部/同好会の名前を記入してください。      ■■ //■■ 書いたメッセージの次に、必ず空行を入れてください。      ■■ Message: 「★★置換:公式部/同好会の名前:ここまで☆☆」の多目的教室で使ってね ->exit //------------------------------------------------------------------ //シーズンロック: //  ミニゲームは皐月祭、翔愛祭、アンコールイベント中しか遊べません //------------------------------------------------------------------ Segment:50 //翔愛祭(準備)期間中か否かチェック //翔愛祭(準備)期間中であればミニゲームで遊べる lf[0]=getEnv:AUTUMNFES ->Segment:60;(lf[0]>=1) //皐月祭(準備)期間中か否かチェック //皐月祭(準備)期間中であればミニゲームで遊べる lf[0]=getEnv:SPRINGFES ->Segment:60;(lf[0]>=1) //ユーザーのアンコールイベント中か否かチェック //ユーザーのアンコールイベント中であればミニゲームで遊べる //lf[0]=getEnv:USEREVENT //->Segment:60;(lf[0]==1) Message: このチケットはイベント期間専用です ->exit //---------------- //ミニゲーム開始 //---------------- Segment:60 //------------------------------------------- //共通メニュー //------------------------------------------- Segment:104 //ゲームメニュー Avatar.scriptMode Avatar.CancelJoin BG:black Avatar.Menu: ゲームをしようかな・・・ <神経衰弱で遊ぶ> ->Segment:300 <しない> ->Segment:110 <ルールの説明をみる> ->Segment:200 Segment:110 //やらない EV:Blank BG:BLANK Avatar: 今はやめておこう… ->Segment:19000 //---------------------- // ヘルプ //---------------------- Segment:200 Avatar.scriptMode ls[0]=Avatar.myCall ls[1]=Avatar.callName1 ls[2]=Avatar.callName2 ls[3]=Avatar.callName3 Speech[神経衰弱]: 神経衰弱です。クリックして選んだ2枚の絵柄が異なっていればミスです。5回ミスする前にすべてのカードを開いてください。 anim.del:1 anim.del:2 anim.del:3 anim.del:4 anim.del:5 anim.del:6 anim.del:7 anim.del:8 anim.del:9 anim.del:10 anim.del:11 anim.del:12 anim.del:13 anim.del:14 anim.del:15 anim.del:16 anim.del:17 anim.del:18 anim.del:19 //----------------- //ヘルプ ここまで //----------------- ->Segment:100 Segment:280 //本編スタート(冒頭イベント) Avatar.scriptMode ls[0]=Avatar.myCall ls[1]=Avatar.callName1 ls[2]=Avatar.callName2 ls[3]=Avatar.callName3 //----------------- //冒頭イベント ここまで //----------------- ->Segment:100 //****************************************************************** //  神経衰弱 //****************************************************************** Segment:300 //----------------- //する選択 //----------------- Segment:350 //ゲーム開始・スタート部分 //占有モード設定、アバター名称の共通取得 Avatar.scriptMode ls[0]=Avatar.myCall ls[1]=Avatar.callName1 ls[2]=Avatar.callName2 ls[3]=Avatar.callName3 //チケットの消費 World.useCallItem //Speech[debug]: //チケットの消費OK // //背景にゲームボードを表示します。 // BG:user/2-03089/template_sinkei Segment:360 //変数の初期化 Game.resetScore Game.setScore:0 Game.showScore Game.resetNPCScore Game.setNPCScore:0 Game.showNPCScore //問題フラグ lf[12]=0 lf[13]=0 lf[14]=0 lf[15]=0 lf[16]=0 lf[37]=0 lf[18]=0 lf[19]=0 lf[23]=0 lf[24]=0 lf[25]=0 lf[26]=0 lf[27]=0 lf[28]=0 lf[31]=0 lf[32]=0 //面数 lf[45]=0 //めくった枚数 lf[20]=0 //1枚目と2枚目の番号 lf[21]=0 lf[22]=0 //面ごとの初期設定 Segment:380 //その面でのクリック回数 lf[46]=0 //各ボタンの2次選択不可能フラグ //0:初期 1〜18:パネル番号 lf[50]=0 lf[51]=0 lf[52]=0 lf[53]=0 lf[54]=0 lf[55]=0 lf[56]=0 lf[57]=0 lf[58]=0 lf[59]=0 lf[60]=0 lf[61]=0 lf[62]=0 anim.del:1 anim.del:2 anim.del:3 anim.del:4 anim.del:5 anim.del:6 anim.del:7 anim.del:8 anim.del:9 anim.del:10 anim.del:11 anim.del:12 anim.del:13 anim.del:14 anim.del:15 anim.del:16 anim.del:17 anim.del:18 //Speech[debug]: //アニメ削除OK //ちょっとした説明 Segment:390 //いきなり始まるとうっかりクリックするから Game.stopScore menu: 神経衰弱を・・・ <始める> ->Segment:400 <ギブアップ> ->Segment:110 Segment:400 //1000ミリ秒ごとに1点加算される得点を表示する //ミリ秒、加算量 Game.startScore:1000,1 //画像をランダムに並べるための初期設定 randmenu: 画像の枚数(9枚)と互いに素である数字を選ぶ <10> ->Segment:410 <10> ->Segment:415 <10> ->Segment:420 <10> ->Segment:425 <10> ->Segment:430 Segment:410 lf[80]=1 ->Segment:440 //----- Segment:415 lf[80]=2 ->Segment:440 //----- Segment:420 lf[80]=4 ->Segment:440 //----- Segment:425 lf[80]=5 ->Segment:440 //----- Segment:430 lf[80]=7 ->Segment:440 //----- //---------------------------------- //カードのランダム生成 //---------------------------------- Segment:440 //十二分に大きい範囲の乱数(たとえば288)に lf[50]=World.rand:1000 //先ほど決定した数字(たとえば5)を順次加えた lf[51]=flagAdd:lf[50],lf[80] lf[52]=flagAdd:lf[51],lf[80] lf[53]=flagAdd:lf[52],lf[80] lf[54]=flagAdd:lf[53],lf[80] lf[55]=flagAdd:lf[54],lf[80] //288,293,298,303,308,313,318,323について //9で割ったあまりを取ると lf[50]=flagmod:lf[50],9 lf[51]=flagmod:lf[51],9 lf[52]=flagmod:lf[52],9 lf[53]=flagmod:lf[53],9 lf[54]=flagmod:lf[54],9 lf[55]=flagmod:lf[55],9 //0,5,1,6,2,7 (続きは3,8,4,0...)となるので //0〜8を重複しないようにランダムにセットした //ことになり //1を加えて1〜9の数字にして lf[50]=flagAdd:lf[50],1 lf[51]=flagAdd:lf[51],1 lf[52]=flagAdd:lf[52],1 lf[53]=flagAdd:lf[53],1 lf[54]=flagAdd:lf[54],1 lf[55]=flagAdd:lf[55],1 //それぞれに9を加えて、組になる10〜18を生成する lf[56]=flagAdd:lf[50],9 lf[57]=flagAdd:lf[51],9 lf[58]=flagAdd:lf[52],9 lf[59]=flagAdd:lf[53],9 lf[60]=flagAdd:lf[54],9 lf[61]=flagAdd:lf[55],9 Segment:480 //シャッフル回数 lf[1]=20 //------------------------------ //ステージごとの初期設定 //------------------------------ //-------------- //シャッフル //-------------- Segment:500 lf[1]=flagSub:lf[1],1 ->segment:600;(lf[1]<0) randmenu: シャッフル開始〜 <1> ->segment:510 <1> ->segment:511 <1> ->segment:512 <1> ->segment:513 <1> ->segment:514 <1> ->segment:515 <1> ->segment:516 <1> ->segment:517 <1> ->segment:518 <1> ->segment:519 //適当にとり上げたカードがあった場所に //別のカードを移動させて、空いた場所に //また別のカードを移動させて //最初にとり上げたカードを空いた場所に //もどす Segment:510 lf[10]=flagAdd:lf[50],0 lf[50]=flagAdd:lf[51],0 lf[51]=flagAdd:lf[52],0 lf[52]=flagAdd:lf[53],0 lf[53]=flagAdd:lf[54],0 lf[54]=flagAdd:lf[55],0 lf[55]=flagAdd:lf[56],0 lf[56]=flagAdd:lf[57],0 lf[57]=flagAdd:lf[58],0 lf[58]=flagAdd:lf[59],0 lf[59]=flagAdd:lf[60],0 lf[60]=flagAdd:lf[61],0 lf[61]=flagAdd:lf[10],0 ->Segment:500 //----------------- Segment:511 lf[10]=flagAdd:lf[55],0 lf[55]=flagAdd:lf[54],0 lf[54]=flagAdd:lf[50],0 lf[50]=flagAdd:lf[57],0 lf[57]=flagAdd:lf[52],0 lf[52]=flagAdd:lf[53],0 lf[53]=flagAdd:lf[58],0 lf[58]=flagAdd:lf[59],0 lf[59]=flagAdd:lf[61],0 lf[61]=flagAdd:lf[56],0 lf[56]=flagAdd:lf[60],0 lf[60]=flagAdd:lf[51],0 lf[51]=flagAdd:lf[10],0 ->Segment:500 //----------------- Segment:512 lf[10]=flagAdd:lf[61],0 lf[61]=flagAdd:lf[50],0 lf[50]=flagAdd:lf[58],0 lf[58]=flagAdd:lf[51],0 lf[51]=flagAdd:lf[54],0 lf[54]=flagAdd:lf[57],0 lf[57]=flagAdd:lf[60],0 lf[60]=flagAdd:lf[56],0 lf[56]=flagAdd:lf[53],0 lf[53]=flagAdd:lf[55],0 lf[55]=flagAdd:lf[52],0 lf[52]=flagAdd:lf[59],0 lf[59]=flagAdd:lf[10],0 ->Segment:500 //----------------- Segment:513 lf[10]=flagAdd:lf[51],0 lf[51]=flagAdd:lf[56],0 lf[56]=flagAdd:lf[57],0 lf[57]=flagAdd:lf[53],0 lf[53]=flagAdd:lf[55],0 lf[55]=flagAdd:lf[60],0 lf[60]=flagAdd:lf[61],0 lf[61]=flagAdd:lf[59],0 lf[59]=flagAdd:lf[50],0 lf[50]=flagAdd:lf[54],0 lf[54]=flagAdd:lf[58],0 lf[58]=flagAdd:lf[52],0 lf[52]=flagAdd:lf[10],0 ->Segment:500 //----------------- Segment:514 lf[10]=flagAdd:lf[51],0 lf[51]=flagAdd:lf[60],0 lf[60]=flagAdd:lf[59],0 lf[59]=flagAdd:lf[61],0 lf[61]=flagAdd:lf[54],0 lf[54]=flagAdd:lf[57],0 lf[57]=flagAdd:lf[53],0 lf[53]=flagAdd:lf[58],0 lf[58]=flagAdd:lf[50],0 lf[50]=flagAdd:lf[55],0 lf[55]=flagAdd:lf[56],0 lf[56]=flagAdd:lf[52],0 lf[52]=flagAdd:lf[10],0 ->Segment:500 //----------------- Segment:515 lf[10]=flagAdd:lf[55],0 lf[55]=flagAdd:lf[57],0 lf[57]=flagAdd:lf[60],0 lf[60]=flagAdd:lf[59],0 lf[59]=flagAdd:lf[56],0 lf[56]=flagAdd:lf[51],0 lf[51]=flagAdd:lf[53],0 lf[53]=flagAdd:lf[50],0 lf[50]=flagAdd:lf[61],0 lf[61]=flagAdd:lf[52],0 lf[52]=flagAdd:lf[58],0 lf[58]=flagAdd:lf[54],0 lf[54]=flagAdd:lf[10],0 ->Segment:500 //----------------- Segment:516 lf[10]=flagAdd:lf[54],0 lf[54]=flagAdd:lf[58],0 lf[58]=flagAdd:lf[61],0 lf[61]=flagAdd:lf[55],0 lf[55]=flagAdd:lf[50],0 lf[50]=flagAdd:lf[53],0 lf[53]=flagAdd:lf[57],0 lf[57]=flagAdd:lf[51],0 lf[51]=flagAdd:lf[52],0 lf[52]=flagAdd:lf[59],0 lf[59]=flagAdd:lf[60],0 lf[60]=flagAdd:lf[56],0 lf[56]=flagAdd:lf[10],0 ->Segment:500 //----------------- Segment:517 lf[10]=flagAdd:lf[52],0 lf[52]=flagAdd:lf[51],0 lf[51]=flagAdd:lf[54],0 lf[54]=flagAdd:lf[50],0 lf[50]=flagAdd:lf[57],0 lf[57]=flagAdd:lf[60],0 lf[60]=flagAdd:lf[58],0 lf[58]=flagAdd:lf[59],0 lf[59]=flagAdd:lf[61],0 lf[61]=flagAdd:lf[56],0 lf[56]=flagAdd:lf[53],0 lf[53]=flagAdd:lf[55],0 lf[55]=flagAdd:lf[10],0 ->Segment:500 //----------------- Segment:518 lf[10]=flagAdd:lf[54],0 lf[54]=flagAdd:lf[57],0 lf[57]=flagAdd:lf[50],0 lf[50]=flagAdd:lf[51],0 lf[51]=flagAdd:lf[56],0 lf[56]=flagAdd:lf[52],0 lf[52]=flagAdd:lf[58],0 lf[58]=flagAdd:lf[60],0 lf[60]=flagAdd:lf[53],0 lf[53]=flagAdd:lf[55],0 lf[55]=flagAdd:lf[59],0 lf[59]=flagAdd:lf[61],0 lf[61]=flagAdd:lf[10],0 ->Segment:500 //----------------- Segment:519 lf[10]=flagAdd:lf[61],0 lf[61]=flagAdd:lf[57],0 lf[57]=flagAdd:lf[56],0 lf[56]=flagAdd:lf[58],0 lf[58]=flagAdd:lf[59],0 lf[59]=flagAdd:lf[55],0 lf[55]=flagAdd:lf[52],0 lf[52]=flagAdd:lf[51],0 lf[51]=flagAdd:lf[50],0 lf[50]=flagAdd:lf[54],0 lf[54]=flagAdd:lf[53],0 lf[53]=flagAdd:lf[60],0 lf[60]=flagAdd:lf[10],0 ->Segment:500 //----------------- //---------------------------------- //シャッフル おしまい //---------------------------------- segment:600 //---------------------------------- //揃ったか外れたあとの処理 //---------------------------------- Segment:1300 //めくった枚数リセット lf[20]=0 //めくった画像番号をリセット lf[21]=0 lf[22]=0 Segment:1500 //------------------------------ //クリックメニュー //------------------------------ Segment:1520 //場所選択 //条件式は、「カードが裏向きになっている」を意味する map.menu: どれを開く? <34,5,95,95>;(lf[50]>0) ->Segment:1530 <34,111,95,95>;(lf[51]>0) ->Segment:1540 <34,216,95,95>;(lf[52]>0) ->Segment:1550 <138,5,95,95>;(lf[53]>0) ->Segment:1560 <138,111,95,95>;(lf[54]>0) ->Segment:1570 <138,216,95,95>;(lf[55]>0) ->Segment:1580 <243,5,95,95>;(lf[56]>0) ->Segment:1590 <243,111,95,95>;(lf[57]>0) ->Segment:1600 <243,216,95,95>;(lf[58]>0) ->Segment:1610 <349,5,95,95>;(lf[59]>0) ->Segment:1620 <349,111,95,95>;(lf[60]>0) ->Segment:1630 <349,216,95,95>;(lf[61]>0) ->Segment:1640 //---------------------------------- //画面にカードを表示する //---------------------------------- Segment:1530 //No.0の画像表示位置 lf[32]=1 //めくった画像番号を保存 lf[29]=flagAdd:lf[50],0 //このカードはめくられた lf[50]=flagMult:lf[50],-1 ->Segment:11700 //--------------------------------- Segment:1540 //No.1の画像表示位置 lf[32]=2 //めくった画像番号を保存 lf[29]=flagAdd:lf[51],0 //このカードはめくられた lf[51]=flagMult:lf[51],-1 ->Segment:11700 //--------------------------------- Segment:1550 //No.2の画像表示位置 lf[32]=3 //めくった画像番号を保存 lf[29]=flagAdd:lf[52],0 //このカードはめくられた lf[52]=flagMult:lf[52],-1 ->Segment:11700 //--------------------------------- Segment:1560 //No.3の画像表示位置 lf[32]=4 //めくった画像番号を保存 lf[29]=flagAdd:lf[53],0 //このカードはめくられた lf[53]=flagMult:lf[53],-1 ->Segment:11700 //--------------------------------- Segment:1570 //No.4の画像表示位置 lf[32]=5 //めくった画像番号を保存 lf[29]=flagAdd:lf[54],0 //このカードはめくられた lf[54]=flagMult:lf[54],-1 ->Segment:11700 //--------------------------------- Segment:1580 //No.5の画像表示位置 lf[32]=6 //めくった画像番号を保存 lf[29]=flagAdd:lf[55],0 //このカードはめくられた lf[55]=flagMult:lf[55],-1 ->Segment:11700 //--------------------------------- Segment:1590 //No.6の画像表示位置 lf[32]=7 //めくった画像番号を保存 lf[29]=flagAdd:lf[56],0 //このカードはめくられた lf[56]=flagMult:lf[56],-1 ->Segment:11700 //--------------------------------- Segment:1600 //No.7の画像表示位置 lf[32]=8 //めくった画像番号を保存 lf[29]=flagAdd:lf[57],0 //このカードはめくられた lf[57]=flagMult:lf[57],-1 ->Segment:11700 //--------------------------------- Segment:1610 //No.8の画像表示位置 lf[32]=9 //めくった画像番号を保存 lf[29]=flagAdd:lf[58],0 //このカードはめくられた lf[58]=flagMult:lf[58],-1 ->Segment:11700 //--------------------------------- Segment:1620 //No.9の画像表示位置 lf[32]=10 //めくった画像番号を保存 lf[29]=flagAdd:lf[59],0 //このカードはめくられた lf[59]=flagMult:lf[59],-1 ->Segment:11700 //--------------------------------- Segment:1630 //No.10画像表示位置 lf[32]=11 //めくった画像番号を保存 lf[29]=flagAdd:lf[60],0 //このカードはめくられた lf[60]=flagMult:lf[60],-1 ->Segment:11700 //--------------------------------- Segment:1640 //No.11画像表示位置 lf[32]=12 //めくった画像番号を保存 lf[29]=flagAdd:lf[61],0 //このカードはめくられた lf[61]=flagMult:lf[61],-1 ->Segment:11700 //--------------------------------- //--------------------------------- Segment:11700 // //画像を表示 //lf[27]:表示x座標 //lf[28]:表示y座標 //lf[29]:画像番号11-44 //lf[32]:表示用位置 //(ありえないはずだが) //カードがすでにめくられていた場合には無視する ->Segment:13900;(lf[29]<=0) //実際のマス目への表示 ->Segment:11740;(lf[32]==1) ->Segment:11750;(lf[32]==2) ->Segment:11760;(lf[32]==3) ->Segment:11770;(lf[32]==4) ->Segment:11780;(lf[32]==5) ->Segment:11790;(lf[32]==6) ->Segment:11800;(lf[32]==7) ->Segment:11810;(lf[32]==8) ->Segment:11820;(lf[32]==9) ->Segment:11830;(lf[32]==10) ->Segment:11840;(lf[32]==11) ->Segment:11850;(lf[32]==12) //時間切れ ->Segment:11900;(lf[32]==99) //表示位置に対するxy座標を計算 //----- Segment:11740 lf[27]=84 lf[28]=55 ->Segment:12000 //----- Segment:11750 lf[27]=84 lf[28]=161 ->Segment:12000 //----- Segment:11760 lf[27]=84 lf[28]=266 ->Segment:12000 //----- Segment:11770 lf[27]=188 lf[28]=55 ->Segment:12000 //----- Segment:11780 lf[27]=188 lf[28]=161 ->Segment:12000 //----- Segment:11790 lf[27]=188 lf[28]=266 ->Segment:12000 //----- Segment:11800 lf[27]=293 lf[28]=55 ->Segment:12000 //----- Segment:11810 lf[27]=293 lf[28]=161 ->Segment:12000 //----- Segment:11820 lf[27]=293 lf[28]=266 ->Segment:12000 //----- Segment:11830 lf[27]=399 lf[28]=55 ->Segment:12000 //----- Segment:11840 lf[27]=399 lf[28]=161 ->Segment:12000 //----- Segment:11850 lf[27]=399 lf[28]=266 ->Segment:12000 //----- Segment:11900 lf[27]=0 lf[28]=0 ->Segment:12000 //----- Segment:12000 //---------------------------- //めくった画像番号を退避 //---------------------------- Segment:12200 //めくった枚数+1 lf[20]=flagAdd:lf[20],1 // ->Segment:12220;(lf[20]==1) //こっちが2枚目 Segment:12210 lf[21]=flagAdd:lf[29],0 ->Segment:12280 //------- //こっちが1枚目 Segment:12220 lf[22]=flagAdd:lf[29],0 ->Segment:12280 Segment:12280 Segment:12300 //------------------------------ //画像を表示 //------------------------------ //lf[27]:表示x座標 //lf[28]:表示y座標 //lf[29]:画像番号1-18 //lf[32]:表示用位置 ->Segment:12310;(lf[29]==1) ->Segment:12320;(lf[29]==2) ->Segment:12330;(lf[29]==3) ->Segment:12340;(lf[29]==4) ->Segment:12350;(lf[29]==5) ->Segment:12360;(lf[29]==6) ->Segment:12370;(lf[29]==7) ->Segment:12380;(lf[29]==8) ->Segment:12390;(lf[29]==9) ->Segment:12400;(lf[29]==10) ->Segment:12410;(lf[29]==11) ->Segment:12420;(lf[29]==12) ->Segment:12430;(lf[29]==13) ->Segment:12440;(lf[29]==14) ->Segment:12450;(lf[29]==15) ->Segment:12460;(lf[29]==16) ->Segment:12470;(lf[29]==17) ->Segment:12480;(lf[29]==18) // ->Segment:13900 //anim:[index],[ファイル],[w],[h],[count],[wait],[loop_f],[sx],[sy],[tx],[ty],[time],[linia_f],[delete=1] //----- Segment:12310 anim.async:1,user/2-03089/template_b_item01.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //--- Segment:12320 anim.async:2,user/2-03089/template_b_item02.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //--- Segment:12330 anim.async:3,user/2-03089/template_b_item03.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //--- Segment:12340 anim.async:4,user/2-03089/template_b_item04.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12350 anim.async:5,user/2-03089/template_b_item05.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12360 anim.async:6,user/2-03089/template_b_item06.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12370 anim.async:7,user/2-03089/template_b_item07.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12380 anim.async:8,user/2-03089/template_b_item08.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12390 anim.async:9,user/2-03089/template_b_item09.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12400 anim.async:10,user/2-03089/template_b_item01.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12410 anim.async:11,user/2-03089/template_b_item02.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12420 anim.async:12,user/2-03089/template_b_item03.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12430 anim.async:13,user/2-03089/template_b_item04.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12440 anim.async:14,user/2-03089/template_b_item05.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12450 anim.async:15,user/2-03089/template_b_item06.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12460 anim.async:16,user/2-03089/template_b_item07.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12470 anim.async:17,user/2-03089/template_b_item08.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12480 anim.async:18,user/2-03089/template_b_item09.png,100,100,1,10000,0,lf[27],lf[28],lf[27],lf[28],500,0,0,1 ->Segment:12500 //----- Segment:12500 //------------------------------------- //画像表示完了、一致チェック開始 //------------------------------------- Segment:13000 SE:pera.mp3 wait:500 //1枚しかめくっていないなら絵柄が同じかチェックできない ->Segment:1500;(lf[20]<2) //画像番号を、画像の種類数(9)で割った //あまりが同じなら、画像も同じ lf[3]=flagMod:lf[21],9 lf[4]=flagMod:lf[22],9 lf[1]=flagSub:lf[3],lf[4] //同じ絵柄じゃ無い? ->Segment:13120;(lf[1]!=0) //同じなら使用済みにするために0を掛ける Segment:13100 lf[23]=0 //画像は消さない ->Segment:13700 //------------- //違ったらマイナスを掛けて元に戻す Segment:13120 lf[23]=-1 wait:1500 ->Segment:13150 Segment:13150 //------------------------- //今回表示した画像を削除1 //------------------------- Segment:13200 //------------------ Segment:13210 ->Segment:13220;(lf[21]!=1) anim.del:1 //------------------ Segment:13220 ->Segment:13230;(lf[21]!=2) anim.del:2 //------------------ Segment:13230 ->Segment:13240;(lf[21]!=3) anim.del:3 //------------------ Segment:13240 ->Segment:13250;(lf[21]!=4) anim.del:4 //------------------ Segment:13250 ->Segment:13260;(lf[21]!=5) anim.del:5 //------------------ Segment:13260 ->Segment:13270;(lf[21]!=6) anim.del:6 //------------------ Segment:13270 ->Segment:13280;(lf[21]!=7) anim.del:7 //------------------ Segment:13280 ->Segment:13290;(lf[21]!=8) anim.del:8 //------------------ Segment:13290 ->Segment:13300;(lf[21]!=9) anim.del:9 //------------------ Segment:13300 ->Segment:13310;(lf[21]!=10) anim.del:10 //------------------ Segment:13310 ->Segment:13320;(lf[21]!=11) anim.del:11 //------------------ Segment:13320 ->Segment:13330;(lf[21]!=12) anim.del:12 //------------------ Segment:13330 ->Segment:13340;(lf[21]!=13) anim.del:13 //------------------ Segment:13340 ->Segment:13350;(lf[21]!=14) anim.del:14 //------------------ Segment:13350 ->Segment:13360;(lf[21]!=15) anim.del:15 //------------------ Segment:13360 ->Segment:13370;(lf[21]!=16) anim.del:16 //------------------ Segment:13370 ->Segment:13380;(lf[21]!=17) anim.del:17 //------------------ Segment:13380 ->Segment:13390;(lf[21]!=18) anim.del:18 //------------------ Segment:13390 //------------------------- //今回表示した画像を削除2 //------------------------- Segment:13400 //------------------ Segment:13410 ->Segment:13420;(lf[22]!=1) anim.del:1 //------------------ Segment:13420 ->Segment:13430;(lf[22]!=2) anim.del:2 //------------------ Segment:13430 ->Segment:13440;(lf[22]!=3) anim.del:3 //------------------ Segment:13440 ->Segment:13450;(lf[22]!=4) anim.del:4 //------------------ Segment:13450 ->Segment:13460;(lf[22]!=5) anim.del:5 //------------------ Segment:13460 ->Segment:13470;(lf[22]!=6) anim.del:6 //------------------ Segment:13470 ->Segment:13480;(lf[22]!=7) anim.del:7 //------------------ Segment:13480 ->Segment:13490;(lf[22]!=8) anim.del:8 //------------------ Segment:13490 ->Segment:13500;(lf[22]!=9) anim.del:9 //------------------ Segment:13500 ->Segment:13510;(lf[22]!=10) anim.del:10 //------------------ Segment:13510 ->Segment:13520;(lf[22]!=11) anim.del:11 //------------------ Segment:13520 ->Segment:13530;(lf[22]!=12) anim.del:12 //------------------ Segment:13530 ->Segment:13540;(lf[22]!=13) anim.del:13 //------------------ Segment:13540 ->Segment:13550;(lf[22]!=14) anim.del:14 //------------------ Segment:13550 ->Segment:13560;(lf[22]!=15) anim.del:15 //------------------ Segment:13560 ->Segment:13570;(lf[22]!=16) anim.del:16 //------------------ Segment:13570 ->Segment:13580;(lf[22]!=17) anim.del:17 //------------------ Segment:13580 ->Segment:13590;(lf[22]!=18) anim.del:18 //------------------ Segment:13590 //---------------------------------------------------------------- //めくった絵柄が合う:0 合わない:元のプラス値に フラグを戻す //---------------------------------------------------------------- //プラスなら裏になっているのだから変更しない //0だったら既に合っている画像だから変更しない Segment:13700 //------------------ Segment:13710 ->Segment:13720;(lf[50]>=0) lf[50]=flagMult:lf[50],lf[23] //------------------ Segment:13720 ->Segment:13730;(lf[51]>=0) lf[51]=flagMult:lf[51],lf[23] //------------------ Segment:13730 ->Segment:13740;(lf[52]>=0) lf[52]=flagMult:lf[52],lf[23] //------------------ Segment:13740 ->Segment:13750;(lf[53]>=0) lf[53]=flagMult:lf[53],lf[23] //------------------ Segment:13750 ->Segment:13760;(lf[54]>=0) lf[54]=flagMult:lf[54],lf[23] //------------------ Segment:13760 ->Segment:13770;(lf[55]>=0) lf[55]=flagMult:lf[55],lf[23] //------------------ Segment:13770 ->Segment:13780;(lf[56]>=0) lf[56]=flagMult:lf[56],lf[23] //------------------ Segment:13780 ->Segment:13790;(lf[57]>=0) lf[57]=flagMult:lf[57],lf[23] //------------------ Segment:13790 ->Segment:13800;(lf[58]>=0) lf[58]=flagMult:lf[58],lf[23] //------------------ Segment:13800 ->Segment:13810;(lf[59]>=0) lf[59]=flagMult:lf[59],lf[23] //------------------ Segment:13810 ->Segment:13820;(lf[60]>=0) lf[60]=flagMult:lf[60],lf[23] //------------------ Segment:13820 ->Segment:13830;(lf[61]>=0) lf[61]=flagMult:lf[61],lf[23] //------------------ Segment:13830 Segment:13900 //---------------------------------------- //正解/間違いのカウントと呼び出し元に戻る //---------------------------------------- Segment:14000 //ミス? ->Segment:14100;(lf[23]!=0) //正解数 lf[82]=flagAdd:lf[82],1 //6組開いたらおしまい ->Segment:14800;(lf[82]>=6) ->Segment:1300 Segment:14100 //ミスした回数 lf[18]=flagAdd:lf[18],1 Game.setNPCScore:lf[18] // //5回ミスしたらおしまい ->Segment:16000;(lf[18]>=5) ->Segment:1300 //------------------------------------- Segment:14800 //xxミリ秒待機 Wait:1500 EV:Blank //ステージクリア SE:fanfare02.mp3 ->Segment:15000 //------------------------------------------- //クリア Segment:15000 Avatar.scriptMode anim.del:1 anim.del:2 anim.del:3 anim.del:4 anim.del:5 anim.del:6 anim.del:7 anim.del:8 anim.del:9 anim.del:10 anim.del:11 anim.del:12 anim.del:13 anim.del:14 anim.del:15 anim.del:16 anim.del:17 anim.del:18 anim.del:19 Game.stopScore lf[83]=Game.getScore ls[5]=ゲーム終了です!あなたの所要時間は、 ls[5]=flagadd:ls[5],lf[83] ls[5]=flagadd:ls[5],秒でした。ミス ls[5]=flagadd:ls[5],lf[18] ls[5]=flagadd:ls[5],回分のペナルティタイムを加えて、最終結果は lf[84]=flagMult:lf[18],10 lf[84]=flagAdd:lf[84],lf[83] ls[5]=flagadd:ls[5],lf[84] ls[5]=flagadd:ls[5],秒になります。 ls[7]=  ls[7]=flagAdd:ls[7],lf[84] ls[7]=flagAdd:ls[7],秒 //Avatar.resultLog:団体No,ゲームNo,スコア,コメント //Avatar.resultLog:123456,3,lf[84],ls[7] World.chatMessage:;ls[7];でクリアしました。 Speech[システム]: ;ls[5]; //アイテム配布&終了処理へ ->Segment:18000 //------------------------------------------- //時間切れ Segment:16000 //ノークリアキャラ6 Avatar.scriptMode anim.del:1 anim.del:2 anim.del:3 anim.del:4 anim.del:5 anim.del:6 anim.del:7 anim.del:8 anim.del:9 anim.del:10 anim.del:11 anim.del:12 anim.del:13 anim.del:14 anim.del:15 World.chatMessage:神経衰弱:クリア失敗 //終了時の共通処理 ->Segment:19000 //-------------------- //クレジット //-------------------- Segment:18000 Game.stopScore Game.stopNPCScore Game.hideLife Game.hideScore Game.hideNPCScore Game.hideTime //ここでアイテムを配布 //-------------------- //終了時の共通処理 //-------------------- Segment:19000 anim.del:1 anim.del:2 anim.del:3 anim.del:4 anim.del:5 anim.del:6 anim.del:7 anim.del:8 anim.del:9 anim.del:10 anim.del:11 anim.del:12 anim.del:13 anim.del:14 anim.del:15 anim.del:16 anim.del:17 anim.del:18 anim.del:19 BG:BLANK EV:BLANK //終了処理 Segment:19900 Message: また遊んでね //体力メーターとスコアの消去 Game.stopScore Game.hideLife Game.hideScore Game.hideTime Game.hideNPCLife Game.hideNPCScore Game.hideNPCTime Segment:19990 BG:BLANK EV:BLANK ->exit