「神経衰弱用テンプレート」
で使用されているスクリプトコードです。
ダウンロードはこちらから
- //皐月祭翔愛祭 神経衰弱用テンプレート
- //
- //
- //———————–
- // はじめに
- //———————–
- // 先頭が // で始まる行はコメントです。
- // スクリプトを実行する上では、コメントは無視されます。
- //
- // 「■■ 編集ここから ■■」~「■■ 編集ここまで ■■」
- // の間だけを書き換えてください。
- // 「★★置換:」~「:ここまで☆☆」は、
- // ★★から☆☆まで(★や☆を含みます)を、指定した内容で
- // 置き換えてください。
- //
- //
- //
- //———————–
- // スクリプト情報メモ
- //———————–
- //ゲームクエストコード[]
- //ゲームスクリプト番号[]
- //
- // クエストコードは、普通は使用しません。
- // ゲームスクリプト番号は、編集室のガイドタブに書かれている
- // スクリプト編集の[]の中身です。
- // 後々必要になる場合がありますので、コメントとして記述しておくと
- // 良いかと思います。
- //———————–
- // 変数の使いみち
- //———————–
- //たとえば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:
- どれを開く?
- ;(lf[50]>0)
- ->Segment:1530
- ;(lf[51]>0)
- ->Segment:1540
- ;(lf[52]>0)
- ->Segment:1550
- ;(lf[53]>0)
- ->Segment:1560
- ;(lf[54]>0)
- ->Segment:1570
- ;(lf[55]>0)
- ->Segment:1580
- ;(lf[56]>0)
- ->Segment:1590
- ;(lf[57]>0)
- ->Segment:1600
- ;(lf[58]>0)
- ->Segment:1610
- ;(lf[59]>0)
- ->Segment:1620
- ;(lf[60]>0)
- ->Segment:1630
- ;(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
ピンバック: スクリプト研究所 記事一覧(目次) | スクリプト研究所
ピンバック: 2015翔愛祭 スライド・ミニゲーム製作者向けまとめ | スクリプト研究所