したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

【雑談】雑談専用・愚痴歓迎【愚痴】

95DOSD:2004/06/04(金) 01:44
ちょっと気が向いて…ちょっと作ってみたです
シューティングというより…モグラたたき?(w
気が向いたら配列にして敵を1画面にたくさん表示し
(ある程度の戦略性…例えば武器を強くする。例えばボス敵を作る等々…)
をしてみたいなぁ。と…ちょっと思うですが…いつになることやら(笑

'/// マウスでシューティング。サンプル ///
EXMIN%=1: EXMAX%=60 '敵表示のX軸の最小と最大
EYMIN%=1: EYMAX%=20 '適評時のY軸の最小と最大
EMX%=10: EMY%=10 '敵の最初の位置
EMVCASE%=INT(RND(1)*4)+1 '敵の最初の動き方 1は右、2は左、3は下、4は上へ動く
WHILE INKEY$><" "
WAIT 20 ' 1/100sec単位…50なので0.5秒間待つ
GOSUB *EMOVE '敵が動く
IF MOUSE(3,0)>0 THEN 'マウスのボタンを押したとき
' MOUSE (3, ボタン番号)
' 最後にMOUSE関数を実行してから次に実行するまで、
' 指定したマウスボタンが押された回数を返します。
GOSUB *MSHOT
IF EMX%=MSCX% AND EMY%=MSCY% THEN 'マウスの位置が敵と同じなら命中
BEEP:SCC=SCC+1
COLOR 0:LOCATE 2,0:PRINT USING "SCORE:###";SCC
ENDIF
ENDIF
WEND
*PEND
END
:
*EMOVE
'敵が適当に動くための私が思いついた方法
'単純に毎回RND()で動く位置を変えると ガクガク(((( ;゚Д゚))))ブルブル にしか見えないので…
IF RND(1)<.2 THEN EMVCASE%=INT(RND(1)*4)+1
ORGEMX%=EMX% : ORGEMY%=EMY%
'SELECT - CASE 使い方ど忘れした ヽ(*`Д´)ノ ウワーン
IF EMVCASE%=1 THEN '→
EMX%=EMX%+2: IF EMX%>=EXMAX% THEN EMVCASE%=2: EMX%=EXMAX%
ELSE IF EMVCASE%=2 THEN '←
EMX%=EMX%-2: IF EMX%<=EXMIN% THEN EMVCASE%=1: EMX%=EXMIN%
ELSE IF EMVCASE%=3 THEN '↓
EMY%=EMY%+1: IF EMY%>=EYMAX% THEN EMVCASE%=4: EMY%=EYMAX%
ELSE IF EMVCASE%=4 THEN '↑
EMY%=EMY%-1: IF EMY%<=EYMIN% THEN EMVCASE%=3: EMY%=EYMIN%
ENDIF
LOCATE ORGEMX%, ORGEMY%: PRINT SPACE$(2)
COLOR 0
LOCATE EMX%, EMY%: PRINT "■"
RETURN
:
*MSHOT
LOCATE MSCX%,MSCY%:PRINT SPACE$(2)
' MOUSE (4, ボタン番号)
' 指定したマウスボタンが最後に押されたときのマウスカーソルの水平位置を返します。
' MOUSE (5, ボタン番号)
' 指定したマウスボタンが最後に押されたときのマウスカーソルの垂直位置を返します。
MSX%=MOUSE(4,0)
MSY%=MOUSE(5,0)
MSCX%=INT( (MSX%-4)/8 )
MSCY%=INT( (MSY%-9)/18 )
COLOR 2: LOCATE MSCX%,MSCY%:PRINT "□"
RETURN
:


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板