▶ 実 行
▶ 実行
クリア
遊泳金魚 Version2.0
by Fukutaro
終了フラグはオフ。 描画フラグはオン。 実行中フラグはオフ。 # 初期設定 a=0.8。 金魚x0=320。金魚y0=300。金魚vx0=1。金魚vy0=0。金魚dir=1。 金魚x=金魚x0。金魚y=金魚y0。金魚vx=金魚vx0。金魚vy=金魚vy0。 djx=2。djy=0。 jx0=0。jy0=200。 jx=jx0。jy=jy0。 jty=2。ji=0。 jyh=100。 dax=0。day=1。 eax0=308。eay0=24。 eax=eax0。eay=eay0。 ai=0。 dbx=0。dby=3。 ebx0=308+(101の乱数)-50。eby0=24。 ebx=ebx0。eby=eby0。 bi=0。 dcx=0。dcy=0。 ecx0=320。ecy0=404。 ecx=ecx0。ecy=ecy0。 ci=0。 px=248。py=500。 xx=0。yy=0。 餌1x=(600の乱数)+20。餌1y=0。 餌1f=0。餌1v=2。 餌2x=(600の乱数)+20。餌2y=0。 餌2f=0。餌2v=2。 制限秒=60。開始秒=0。現在秒=0。経過秒=0。残り秒=0。 catch=0。 最高記録=10。 もし、「maxrecord」が存在するならば、 「maxrecord」を開いて最高記録に代入。 ここまで。 タイトル画面表示。 px,pyへ操作盤。 描画中キャンバスの「click」に「ゲーム実行」をDOMイベント追加。 DOCUMENTをキー押した時には kk=押されたキー もし、(kk=「_」)かつ(実行中フラグはオフ)ならば、 「maxrecord」をローカルストレージキー削除。 最高記録=10。 タイトル画面表示。 ここまで。 ここまで。 # ------------------------------- ●ゲーム実行とは 描画中キャンバスの「click」から「ゲーム実行」をDOMイベント削除。 実行中フラグはオン。 開始秒は、「00:00:00」と今の秒差 # 画面設定 0に線太設定。「#ccffff」に線色設定。「#ccffff」に塗色設定。 [0,0,640,580]へ四角描画。 0に線太設定。「#770000」に線色設定。「#770000」に塗色設定。 [0,412,640,268]へ四角描画。 白色に塗色設定。 「56px sans-serif」に描画フォント設定。 [25,485]へ「遊 泳」を文字描画。 [60,553]へ「金 魚」を文字描画。 「24px sans-serif」に描画フォント設定。 [225,460]へ「残り時間」を文字描画。 [400,460]へ「秒」を文字描画。 [455,460]へ「ポイント」を文字描画。 [455,520]へ「最高記録」を文字描画。 最高記録SはRIGHT(「00{最高記録}」,3) 「32px sans-serif」に描画フォント設定。 [565,520]へ最高記録Sを文字描画。 「12px sans-serif」に描画フォント設定。 [500,570]へ「Westfarland PC Club」を文字描画。 px,pyへ操作盤。 # キー設定 DOCUMENTをキー押した時には # ブラウザデフォルトの動作をキャンセル 対象イベントのDOMイベント処理停止。 kk=押されたキー もし、(kk=「ArrowRight」)かつ(金魚vx<5)ならば、金魚vx=金魚vx+1。 もし、(kk=「ArrowLeft」)かつ(金魚vx>-5)ならば、金魚vx=金魚vx-1。 もし、(kk=「ArrowDown」)かつ(金魚vy<5)ならば、金魚vy=金魚vy+0.5。 もし、(kk=「ArrowUp」)かつ(金魚vy>-5)ならば、金魚vy=金魚vy-0.5。 もし、金魚vx>0ならば、金魚dir=1。 もし、金魚vx<0ならば、金魚dir=-1。 ここまで。 # マウス設定 描画中キャンバスをマウス押した時には xx=マウスX。yy=マウスY もし、(xx>px+96)かつ(xx<px+144)かつ(yy>py)かつ(yy<py+48)かつ(金魚vx<5)ならば、金魚vx=金魚vx+1。 もし、(xx>px)かつ(xx<px+48)かつ(yy>py)かつ(yy<py+48)かつ(金魚vx>-5)ならば、金魚vx=金魚vx-1。 もし、(xx>px+48)かつ(xx<px+96)かつ(yy>py+24)かつ(yy<py+72)かつ(金魚vy<5)ならば、金魚vy=金魚vy+0.5。 もし、(xx>px+48)かつ(xx<px+96)かつ(yy>py-24)かつ(yy<py+24)かつ(金魚vy>-5)ならば、金魚vy=金魚vy-0.5。 もし、金魚vx>0ならば、金魚dir=1。 もし、金魚vx<0ならば、金魚dir=-1。 ここまで。 「アニメ描画」を画面更新時実行。 ここまで。 ●タイトル画面表示とは 0に線太設定。「#ccffff」に線色設定。「#ccffff」に塗色設定。 [0,0,640,580]へ四角描画。 0に線太設定。「#ffffff」に線色設定。「#770000」に塗色設定。 [0,412,640,268]へ四角描画。 白色に塗色設定。 「12px sans-serif」に描画フォント設定。 [500,570]へ「Westfarland PC Club」を文字描画。 白色に塗色設定。 「50px sans-serif」に描画フォント設定。 [25,88]へ「○o。. 遊泳金魚 .。o○」を文字描画。 青色に塗色設定。 「50px sans-serif」に描画フォント設定。 [22,85]へ「○o。. 遊泳金魚 .。o○」を文字描画。 黒色に塗色設定。 「20px sans-serif」に描画フォント設定。 [50,170]へ「金魚 を画面下の操作ボタンまたは矢印キーで操作して、」を文字描画。 [100,200]へ「制限時間内にたくさんのエサ を集めましょう。」を文字描画。 [295,232]へ「に当たってしまうと」を文字描画。 [150,265]へ「一定時間動けなくなってしまいます。」を文字描画。 [195,295]へ「エサ1個で1ポイントです。」を文字描画。 「#cc0000」に塗色設定。 [140,325]へ「これまでの最高記録は{最高記録}ポイントです。」を文字描画。 白色に塗色設定。 [105,530]へ「操作ボタン ⇒」を文字描画。 [62,448]へ「この画面をクリックすると、ゲームがすぐに始まります。」を文字描画。 96,148へ0.5の金魚左。 0に線太設定。「#aa0000」に線色設定。「#aa0000」に塗色設定。 [369,190,3,4]へ四角描画。 155,207へ0.12の水母。 赤色に塗色設定。 「24px sans-serif」に描画フォント設定。 [201,232]へ「ж」を文字描画。 青色に塗色設定。 「24px sans-serif」に描画フォント設定。 [227,232]へ「☣」を文字描画。 赤色に塗色設定。 「26px sans-serif」に描画フォント設定。 [255,232]へ「🦀」を文字描画。 「32px sans-serif」に描画フォント設定。 [362,406]へ「🦀」を文字描画。 150,350へ0.8の金魚右。 金魚x=金魚x0。金魚y=金魚y0。a=0.8。 ここまで。 ●アニメ描画とは 0に線太設定。「#ccffff」に線色設定。「#ccffff」に塗色設定。 [0,0,640,412]へ四角描画。 水母処理 金魚処理 敵A処理 敵B処理 敵C処理 餌1処理 餌2処理 情報表示 もし、終了フラグがオンならば、 終了処理。 ここまで。 もし、描画フラグがオンならば、 「アニメ描画」を画面更新時実行。 ここまで。 ここまで。 ●金魚処理とは もし、金魚dir=-1ならば、 #1に線太設定。赤色に線色設定。黄色に塗色設定。#当たり判定確認用 #[金魚x,金魚y,58,40]へ四角描画。#当たり判定確認用 金魚x,金魚yへaの金魚左。 違えば、 #1に線太設定。赤色に線色設定。黄色に塗色設定。#当たり判定確認用 #[金魚x-1,金魚y,58,40]へ四角描画。#当たり判定確認用 金魚x,金魚yへaの金魚右。 ここまで。 金魚x=金魚x+金魚vx 金魚y=金魚y+金魚vy もし、(金魚x>580)ならば 金魚x=580 金魚vx=金魚vx*(-1) 金魚dir=-1 ここまで。 もし、(金魚x<3)ならば 金魚x=3 金魚vx=金魚vx*(-1) 金魚dir=1 ここまで。 もし、(金魚y>370)ならば、 金魚y=370。 金魚vy=0。 ここまで。 もし、(金魚y<20)ならば、 金魚y=20。 金魚vy=0。 ここまで。 ここまで。 ●水母処理とは djy=jyh*SIN(ji*2*3.14159/144) jx=jx+djx jy=jy0+djy ji=ji+1。 もし、ji%144=0ならば、 jyh=50+(50の乱数)。 djx=(-2+(7の乱数))/3。 ここまで。 もし、ji>144ならば、ji=0。 jy=jy+jty もし(jx>592)ならば djx=-2 ここまで。 もし、(jx<6)ならば、 djx=2 ここまで。 jx,jyへ0.15の水母。 もし、(jx+23>金魚x)かつ(jx+23<金魚x+58)かつ(jy+26>金魚y)かつ(jy+26<金魚y+40)ならば、 金魚vx=0。 金魚vy=0。 ここまで。 ここまで。 ●敵A処理とは dax=308*SIN(ai*2*3.14159/360) eax=eax0+dax eay=eay+day+(3の乱数)-1 ai=ai+1。 もし、ai>359ならば、ai=0。 もし(eay>360)ならば、day=-1。 もし(eay<eay0)ならば、day=1。 もし、(eax>616)ならば、eax=616。 もし、(eax<0)ならば、eax=0。 赤色に塗色設定。 「24px sans-serif」に描画フォント設定。 [eax,eay]へ「ж」を文字描画。 もし、(eax+9>金魚x)かつ(eax+9<金魚x+58)かつ(eay-8>金魚y)かつ(eay-8<金魚y+40)ならば、 金魚vx=0。 金魚vy=0。 ここまで。 ここまで。 ●敵B処理とは dbx=-50*SIN(bi*2*3.14159/120) ebx=ebx0+dbx eby=eby+dby+(3の乱数)-1 bi=bi+1。 もし、bi>119ならば、bi=0。 もし(eby>360)ならば、dby=-0.8。 もし(eby<eby0)ならば、dby=0.8。 もし、(ebx>616)ならば、ebx=616。 もし、(ebx<0)ならば、ebx=0。 もし、((120の乱数)=0)ならば、 ebx0=ebx。 bi=60。 ここまで。 青色に塗色設定。 「24px sans-serif」に描画フォント設定。 [ebx,eby]へ「☣」を文字描画。 もし、(ebx+10>金魚x)かつ(ebx+10<金魚x+58)かつ(eby-8>金魚y)かつ(eby-8<金魚y+40)ならば、 金魚vx=0。 金魚vy=0。 ここまで。 ここまで。 ●敵C処理とは もし、ci=0ならば、dcx=((7の乱数)-3)/5。 ecx=ecx+dcx もし、(ecx>599)ならば、 ecx=599。 dcx=-1。 ここまで。 もし、(ecx<-3)ならば、 ecx=-3。 dcx=1。 ここまで。 もし、(ci%5=0)ならば、ecy=ecy0+dcy-(2の乱数)。 もし、(dcx=0)ならば、ecy=ecy0。 ci=ci+1。 もし、ci>100ならば、ci=0。 #0に線太設定。赤色に線色設定。黄色に塗色設定。 #[ecx+4,ecy-28,36,36]へ四角描画。 赤色に塗色設定。 「32px sans-serif」に描画フォント設定。 [ecx,ecy]へ「🦀」を文字描画。 もし、(ecx+20>金魚x)かつ(ecx+20<金魚x+58)かつ(ecy-15>金魚y)かつ(ecy-15<金魚y+40)ならば、 金魚vx=0。 金魚vy=0。 ここまで。 ここまで。 ●餌1処理とは 0に線太設定。「#AA0000」に線色設定。「#AA0000」に塗色設定。 もし、餌1f=1ならば、 [餌1x,餌1y,3,4]へ四角描画。 もし、(餌1x+1>金魚x)かつ(餌1x+1<金魚x+58)かつ(餌1y+2>金魚y)かつ(餌1y+2<金魚y+40)ならば、 catch=catch+1。 餌1x=(600の乱数)+20。 餌1y=0。 餌1f=0。 違えば、 餌1x=餌1x+(5の乱数)-2。 餌1y=餌1y+餌1v+(3の乱数)-1。 もし、餌1y>410ならば、 餌1x=(600の乱数)+20。 餌1y=0。 餌1f=0。 ここまで。 ここまで。 違えば 餌1f=(100の乱数) ここまで。 ここまで。 ●餌2処理とは 0に線太設定。「#AA0000」に線色設定。「#AA0000」に塗色設定。 もし、餌2f=1ならば、 [餌2x,餌2y,3,4]へ四角描画。 もし、(餌2x+1>金魚x)かつ(餌2x+1<金魚x+58)かつ(餌2y+2>金魚y)かつ(餌2y+2<金魚y+40)ならば、 catch=catch+1。 餌2x=(600の乱数)+20。 餌2y=0。 餌2f=0。 違えば、 餌2x=餌2x+(5の乱数)-2。 餌2y=餌2y+餌2v+(3の乱数)-1。 もし、餌2y>410ならば、 餌2x=(600の乱数)+20。 餌2y=0。 餌2f=0。 ここまで。 ここまで。 違えば 餌2f=(100の乱数) ここまで。 ここまで。 ●情報表示とは 現在秒は、「00:00:00」と今の秒差。 経過秒=現在秒-開始秒。 残り秒=制限秒-経過秒。 0に線太設定。「#770000」に線色設定。「#770000」に塗色設定。 [325,420,70,54]へ四角描画。 [560,420,70,54]へ四角描画。 残り時間はRIGHT(「00{残り秒}」,3) もし、(残り秒=0)ならば、 終了フラグはオン。 ここまで。 捕食数はRIGHT(「00{catch}」,3) 「32px sans-serif」に描画フォント設定。 白色に塗色設定。 [332,460]へ残り時間を文字描画。 [565,460]へ捕食数を文字描画。 ここまで。 ●終了処理とは 描画フラグはオフ。 DOCUMENTをキー押した時には、 ここまで。 黒色に線色設定。 赤色に塗り色設定。 2に線太さ設定。 「40px sans- serif」に描画フォント設定。 [220,120]に「時間切れ !!」を文字描画。 もし、(catch>最高記録)ならば、 [90,180]へ「あなたの記録:{catch}ポイント」を文字描画。 [90,240]へ「新記録です。おめでとう!」を文字描画。 最高記録=catch。 最高記録を「maxrecord」に保存。 違えば、 [90,210]へ「あなたの記録:{catch}ポイント」を文字描画。 ここまで。 「24px sans- serif」に描画フォント設定。 [100,300]に「ブラウザの再読み込みボタンをクリック」を文字描画。 ここまで ●(x,yへaの)金魚右とは 1に線太設定。灰色に線色設定。「rgb(200,55,55)」に塗り色設定。 [[x,y+5*a],[x,y+45*a],[x+25*a,y+25*a]]で多角形描画。 [x+45*a,y+25*a]へ25*aの円描画。 [[x+38*a,y+25*a],[x+38*a,y+32*a][x+44*a,y+29*a]]で多角形描画。 白色に塗り色設定。 [x+55*a,y+20*a]へ4*aの円描画。 ここまで。 ●(x,yへaの)金魚左とは 1に線太設定。灰色に線色設定。「rgb(200,55,55)」に塗り色設定。 [[x+72*a,y+5*a],[x+72*a,y+45*a],[x+72*a-25*a,y+25*a]]で多角形描画。 [x+72*a-45*a,y+25*a]へ25*aの円描画。 [[x+72*a-38*a,y+25*a],[x+72*a-38*a,y+32*a][x+72*a-44*a,y+29*a]]で多角形描画。 白色に塗り色設定。 [x+72*a-55*a,y+20*a]へ4*aの円描画。 ここまで。 ●(x,yへaの)水母とは #1--------------------- 「rgb(255,255,255)」に線色設定。「rgb(180,181,205)」に塗り色設定。 [x+150*a,y+170*a,150*a,100*a,0,0,360をラジアン変換,いいえ]の楕円描画。 「#ccffff」に線色設定。「#ccffff」に塗り色設定。 [x+150*a,y+225*a,100*a,50*a,0,0,360をラジアン変換,いいえ]の楕円描画。 #2--------------------- 「rgb(255,255,255)」に線色設定。「rgb(180,181,205)」に塗色設定。 [x+150*a,y+170*a]へ80*aの円描画。 「#ccffff」に線色設定。「#ccffff」に塗色設定。 [x+150*a,y+225*a]へ30*aの円描画。 #3--------------------- 「rgb(255,255,255)」に線色設定。「rgb(180,181,205)」に塗り色設定。 [x+150*a,y+100*a,150*a,100*a,0,0,360をラジアン変換,いいえ]の楕円描画。 「rgb(255,255,255)」に線色設定。「rgb(180,181,205)」に塗色設定。 [x+150*a,y+70*a]へ30*aの円描画。 「rgb(255,255,255)」に線色設定。「rgb(180,181,205)」に塗色設定。 [x+150*a,y+150*a]へ30*aの円描画。 「rgb(255,255,255)」に線色設定。「rgb(180,181,205)」に塗色設定。 [x+80*a,y+110*a]へ30*aの円描画。 「rgb(255,255,255)」に線色設定。「rgb(180,181,205)」に塗色設定。 [x+220*a,y+110*a]へ30*aの円描画。 #4--------------------- 6*aに線太設定。「rgb(255,255,255)」に線色設定 「rgb(180,181,205)」に塗色設定。 [x+150*a,y+70*a]へ30*aの円描画。 6*aに線太設定。「rgb(255,255,255)」に線色設定。「rgb(180,181,205)」に塗色設定。 [x+150*a,y+150*a]へ30*aの円描画。 6*aに線太設定。「rgb(255,255,255)」に線色設定。「rgb(180,181,205)」に塗色設定。 [x+80*a,y+110*a]へ30*aの円描画。 6*aに線太設定。「rgb(255,255,255)」に線色設定。「rgb(180,181,205)」に塗色設定。 [x+220*a,y+110*a]へ30*aの円描画。 #5--------------------- 2*aに線太設定。「rgb(255,255,255)」に線色設定。「rgb(180,181,205)」に塗色設定。 [x+240*a,y+50*a]へ20*aの円描画。 2*aに線太設定。「rgb(255,255,255)」に線色設定。「rgb(180,181,205)」に塗色設定。 [x+60*a,y+50*a]へ20*aの円描画。 ここまで。 ●(x,yへ)操作盤とは 2に線太設定。「#8888bb」に線色設定。「#555588」に塗色設定。 [x,y,48,48]へ四角描画。 #左へ加速 [x+48,y-24,48,48]へ四角描画。 #上へ加速 [x+48,y+24,48,48]へ四角描画。 #下へ加速 [x+96,y,48,48]へ四角描画。 #右へ加速 「#ffffff」に線色設定。「#ffffff」に塗色設定。 [[x+15,y+24],[x+30,y+16],[x+30,y+32]]で多角形描画。 [[x+72,y-8],[x+64,y+7],[x+80,y+7]]で多角形描画。 [[x+72,y+56],[x+64,y+41],[x+80,y+41]]で多角形描画。 [[x+128,y+24],[x+113,y+16],[x+113,y+32]]で多角形描画。 ここまで。
cc631d51bb307a207d06993db659c5a3
2882