【VBA】またまたゲーム作ってみた

目次

ガンシューティングゲーム作ってみた

どうも✋やっと、TVドラマ『ハケンの品格が始まって、週1の楽しみが増えたjimです。

最近、相変わらず金欠でね、、

今回は、クレー射撃風の『ガンシューティング』を作ってみました🎮

相変わらず、グラフィックが低クォリティですが😞

ガンシューティング(ツイッターup動画)

シューティングゲームといえば、『座標』と『当たり判定』なんですが、、、

今回は、当たり判定なし!

画像用意して、

『さあ、コーディング始めるぞ!って思った時に気付きました😨

ラベルに、クレーの画像を仕込んでた時のこと、

そういえば、マウスダウンとかクリックイベントあるじゃん。これ使えば簡単じゃね?ってなった😓

要するに、

ラベルの大きさ=当たり判定

ってこと。。。

 

座標

スト2ターボなんて、操作する人間が付いていけないよね。

ザヒョー!

ストリートファイターのバルログ・・・

知らんかヽ(・ω・)/ズコー

でね、今回は座標がメインのゲーム。

このゲームだと、クレーの動きが一番大事かな。

↓動作はこんな感じ(本当はもっと細かい)

クレーの動作

1、クレーの画像を表示

2、クレーのx軸とy軸の座標を変更

3、画面の更新

4、クレーの画像を非表示

この動作の『2~3』を繰り返し処理にするんだよね。

そうすっと、クレーのアニメーションができるわけ。

簡単だけど、色んな演出付けると、まあまあムズくなる。

以下、長々と演出のこと😊

まず、クレーが何処から発射されるか、そのクレーは何処に向かって行くか、この二つの座標を決めるのに乱数使いました。

あと、Selectキー押した後からクレーが発射されるまでの待機時間にも使ったわ。

だから、意外と難しいゲームになってるんだよ~

始めと終わりのy軸の差が大きいと、クレーの移動速度は速く、逆に小さいと遅い。

というのも、速度が一定だとy軸の差によっては、激ムズだったり簡単だったりするからね。

そこはね、、優しさ😝

あと、y軸が一定に達すると速度が遅くなって、クレーの画像も小さくなります。

要するに、クレーが遠くに行ったっていう演出を付けました🔭

 

当たり判定

冒頭に書いた通り、今回は『当たり判定』は無し!

ラベルの『MouseDown』イベント使いました

↓当たり判定(これも本当はもっと細かい)

なんちゃって当たり判定

1、Label上でクリック

2、Labelの『MouseDown』イベント

3、クリックされた座標でクレーの壊れる画像表示

クレーをクリック出来なかったときは、UserFormの『MouseDown』イベントが発生します。(取得した座標にハズレた画像を表示させます)

あとは、当たったら『〇』で、ハズレたら『X』を表示して次のループへ。といった感じ。

 

まとめ

どうでしたか?

大まかな流れは『座標』と『当たり判定』に書いた感じです。

『当たり判定』がないので、結構簡単に作れます♩

行数も150行程度で作れますよ👍

といっても、

中級者なら(* ̄- ̄)ふ~ん

初心者だと( ゚д゚)ポカーン

かな?

どうしたらいいのかわからないよね?

次回は『ユーザーフォーム上でオブジェクトを動かす』みたいな、ゲームに関する少し突っ込んだ記事を書いてみます。

 

 

はい、そんなわけで、またまたゲーム作ってみた。って記事でした😊

座標』が仕事で使えるか?って言ったら、あんま使えないんだよね…

でも使ったことはある。

機能の中の一つに、ウィンドウを定位置に並べて見やすくする。って言うのを入れた。そのくらいかな😅

んじゃ、またねぇ✋