▶ 実 行
▶ 実行
クリア
スゴロクその3(共通テスト2021年情報関係基礎)
by Hanako.S
全描画クリア。 {"声高":1.5, "速度":1.8}に話者詳細設定。 dcx=-30。dcy=-30。辺長=60。マス=辺長/4。目半径=辺長/10。 目位置=[[4],[0,8],[0,4,8],[0,2,6,8],[0,2,4,6,8],[0,2,3,5,6,8]] 出目=0。 マス種類=[「スタート」,「道」,「崖」,「穴」,「沼」,「ゴール」] マス表記=[「S」,「 」,「崖」,「穴」,「沼」,「G」] マス係数=[1,1,-1,0,0.5,1] 地図=[0,0,1,4,2,1,1,1,1,1,1,4,1,2,3,5] Masu=[] iiを1から15まで繰り返す Masu@ii=マス係数@地図@ii ここまで。 Koma=[[],[],[]] Saikoro=[[],[],[]] 遊手=[「 」,「A」,「B」] 勝者=「」。 owari=0 kx=0。ky=0。 obake=6。a=0。 r=0。i=1。 Koma@1,0=1。Koma@2,0=1。 msgx=0。msgy=0。 捕獲フラグはオフ。 0に線太設定。「#000077」に線色設定。「#000077」に塗色設定。 [0,0,800,600]へ四角描画。 「32px sans-serif」に描画フォント設定。 0に線太設定。灰色に線色設定。白色に塗色設定。 [20,48]へ「スゴロク(共通テスト2021年)」を文字描画。 「24px sans-serif」に描画フォント設定。 [480,48]へ「オバケありバージョン」を文字描画。 iiを1から15まで繰り返す x=-25+50*ii。y=100。z=地図@ii。 x,yへzのマス描画。 「16px sans-serif」に描画フォント設定。 0に線太設定。灰色に線色設定。白色に塗色設定。 マス番号=「 {ii}」で2文字右部分。 [x+13,y-6]へマス番号を文字描画。 ここまで。 0に線太設定。白色に線色設定。白色に塗色設定。 「24px sans-serif」に描画フォント設定。 kx=50*(obake)-18。ky=181。 [kx,ky]へ「👻」を文字描画。 kx=50*(Koma@1,0)-15。ky=212。 [kx,ky]へ「A」を文字描画。 kx=50*(Koma@2,0)-15。ky=242。 [kx,ky]へ「B」を文字描画。 [20,300]へ「Aさん(先攻)とBさん(後攻)のふたりで遊ぶスゴロクです。」を文字描画。 [20,340]へ「スタート(S)と道(空白)にいる時は、サイコロの目だけ進みます。」を文字描画。 [20,380]へ「沼にいる時は、サイコロの目の半分(切り捨て)だけ進みます。」を文字描画。 [20,420]へ「崖にいる時は、サイコロの目だけ戻ります。」を文字描画。 [20,460]へ「穴にいる時は、サイコロの目が3以下の時はその場にとどまります。」を文字描画。 [20,500]へ「オバケ👻をゴールの向きに追い越そうとすると、捕まります。」を文字描画。 0に線太設定。白色に線色設定。黄色に塗色設定。 [175,560]へ「画面をクリックすると、ゲーム開始です。」を文字描画。 描画中キャンバスの「click」に「スゴロク実行」をDOMイベント追加。 #------------------------------- ●スゴロク実行とは 描画中キャンバスの「click」から「スゴロク実行」をDOMイベント削除。 0に線太設定。「#000077」に線色設定。「#000077」に塗色設定。 [0,270,800,310]へ四角描画。 owari=0。 r=1。i=1。a=0。 0に線太さ設定。「#666666」に線色設定。「#000077」に塗り色設定。 [320,320,160,160]へ四角描画。 dcx=370。 dcy=370。 1のサイコロ描画。 msgx=10。msgy=350。 「18px sans-serif」に描画フォント設定。 0に線太設定。灰色に線色設定。黄色に塗色設定。 [msgx,msgy]へ「Aさんの番です。」を文字描画。 [msgx,msgy+30]へ「サイコロをクリックしてください。」を文字描画。 「Aさんのばんです。」と話す。 描画中キャンバスをマウス押した時には mx=マウスX。my=マウスY。 もし、(my>350)かつ(my<450)かつ(mx>350)かつ(mx<450)ならば、 もし、owari=0ならば、 #「r={r} i={i} a={a}」を言う。 サイコロ振り。 コマ移動。 勝敗判定。 もし、owari=1ならば、 終了処理。 違えば、 もし、i=2ならば、オバケ移動。 i=i+1。 もし、i>2ならば、 r=r+1。 i=1。 ここまで。 iの情報消去。 msgx=10+490*(i-1)。msgy=350。 「18px sans-serif」に描画フォント設定。 0に線太設定。灰色に線色設定。黄色に塗色設定。 [msgx,msgy]へ「{遊手@i}さんの番です。」を文字描画。 [msgx,msgy+30]へ「サイコロをクリックしてください。」を文字描画。 「{遊手@i}さんのばんです。」と話す。 ここまで。 ここまで。 ここまで。 ここまで。 ここまで。 ●コマ移動とは Saikoro@i,r=出目。 k=Koma@i,(r-1) bairitu=Masu@k もし、(bairitu=0)かつ(Saikoro@i,r>=4)ならば、 bairitu=1 ここまで。 idou=(Saikoro@i,r*bairitu)の整数部分 Koma@i,r=k+idou もし、(Koma@i,(r-1)<obake)かつ(Koma@i,r>obake)ならば、 Koma@i,r=obake 捕獲フラグはオン。 ここまで。 もし、Koma@i,r<1ならば、Koma@i,r=1 もし、Koma@i,r>=15ならば、Koma@i,r=15 iのコマ消去。 0に線太設定。白色に線色設定。白色に塗色設定。 「24px sans-serif」に描画フォント設定。 kx=50*(Koma@i,r)-15。ky=182+i*30。 [kx,ky]へ遊手@iを文字描画。 iの情報消去。 msgx=10+490*(i-1)。msgy=350。 「18px sans-serif」に描画フォント設定。 0に線太設定。灰色に線色設定。白色に塗色設定。 [msgx,msgy]へ「[{出目}]が出ました。」を文字描画。 もし、捕獲フラグがオンならば、 [msgx,msgy+30]へ「マス{Koma@i,r}でオバケに捕まりました。」を文字描画。 違えば、 [msgx,msgy+30]へ「マス{Koma@i,r}へ着きました。」を文字描画。 ここまで。 [msgx,msgy+60]へ「マス{Koma@i,r}は、{マス種類@地図@(Koma@i,r)}です。」を文字描画。 1秒待つ。 捕獲フラグはオフ。 ここまで。 ●(zの)コマ消去とは 0に線太設定。「#000077」に線色設定。「#000077」に塗色設定。 [21,158+z*30,750,30]へ四角描画。 ここまで。 ●(zの)情報消去とは 0に線太設定。「#000077」に線色設定。「#000077」に塗色設定。 [10+490*(z-1),320,290,200]へ四角描画。 ここまで。 ●オバケ移動とは a=(r-1)%4 もし、a<2ならば、 obake=obake+1 違えば、 obake=obake-1 ここまで。 0のコマ消去。 0に線太設定。白色に線色設定。白色に塗色設定。 「24px sans-serif」に描画フォント設定。 kx=50*(obake)-18。ky=181。 [kx,ky]へ「👻」を文字描画。 0.5秒待つ。 ここまで。 ●(x,yへzの)マス描画とは 2に線太設定。「#aaaaaa」に線色設定。白色に塗色設定。 もし、z=2ならば、「#cc9900」に塗色設定。 もし、z=3ならば、「#cccccc」に塗色設定。 もし、z=4ならば、「#ccdd99」に塗色設定。 [x,y,46,46]へ四角描画。 0に線太設定。灰色に線色設定。黒色に塗色設定。 「36px sans-serif」に描画フォント設定。 [x+5,y+37]へマス表記@zを文字描画。 ここまで。 ●サイコロ振りとは 回転数=(6の乱数)+7 ii=0 (ii<回転数)の間 0に線太さ設定。「#666666」に線色設定。「#000077」に塗り色設定。 [320,320,160,160]へ四角描画。 dcx=(19の乱数)-39 dcy=(19の乱数)-39 キャンバス状態保存 [400,400]に描画起点設定。 (180の乱数)に描画回転。 出目=((6の乱数)+1)。 出目のサイコロ描画。 キャンバス状態復元 ii=ii+1。 0.05秒待つ。 ここまで。 ここまで。 ●(数の)サイコロ描画とは 黒色に線色設定。白色に塗り色設定。2に線太さ設定。 [dcx,dcy,辺長,辺長]へ四角描画。 もし、数が1ならば、目色は赤色。 違えば、目色は黒色。 目色に線色設定。目色に塗り色設定。1に線太さ設定。 (数)回 目x=1+目位置[数-1][回数-1]%3。 目y=1+目位置[数-1][回数-1]/3を整数変換。 [dcx+マス*目x,dcy+マス*目y]に目半径の円描画。 ここまで。 ここまで。 ●勝敗判定とは もし、Koma@1,r=15ならば、 owari=1。 勝者=「A」 ここまで。 もし、Koma@2,r=15ならば、 owari=1。 勝者=「B」 ここまで。 ここまで。 ●終了処理とは 描画中キャンバスをマウス押した時には ここまで。 「24px sans-serif」に描画フォント設定。 0に線太設定。灰色に線色設定。白色に塗色設定。 [320,300]へ「{勝者}さんの勝ち!」を文字描画。 「{勝者}さんの勝ちです。」と話す。 0に線太設定。灰色に線色設定。黄色に塗色設定。 [175,560]へ「ブラウザの再読み込みボタンをクリック」を文字描画。 ここまで。
1030710cd607cbb421ffef9f4816b01c
2838