バトルの項目は自分で作ったシステムで選んでいるんだが、 ウディタの「選択肢」をいっそ使うというのはどうだろう…と考えて即行でやめました。 今のところ何とかなってるんだからもういい!何か変えればまた確認作業が増える、触らなくていいところは触らないのが一番!

そういや、今日はワンボーのバトルを作っておりそのための絵を描きました。 数日前にも描いたんだけど、そしてアニメーションも完成していたんだけど、 実際にゲームで表示させるとなんともデカいということに 最初は目をつぶっていたがどうにも違和感…やっぱ描き直すことにしたのでした。

で、小さくしたら割とすぐに描けて立ち絵アニメとダメージ受けている時の画像が完成。 試しに倒してみると…なんだか画面が止まる時がある。モンスターを倒したときのエフェクトを どこか変えてしまっていただろうかと遺跡のザコを倒してみても画面は止まらない。

どうやらこれでも小さくしたんだけどやはり遺跡のザコちゃんたちよりかは ワンボーの画像は大きく、倒したときの塵になるエフェクトのために大量に表示される ピクチャを消去するときにウディタさんの処理が追い付かずに止まってしまっているようだ。

UNDERTALEでもザコさんは粉々になるけどボス系は粉々のパーツが大きめなので、 敵キャラの画像の横サイズに応じて粉々具合を分岐させることにしました。 これでワンボーぐらいの大きな敵の時はちょっと破片を大きくする=ピクチャ数を減らす ことによって処理落ち回避。

あと、敵にダメージを与えた時の横揺れの幅が割と独自のものだったので UNDERTALEぐらいの振れ幅に変更しました。ちゃんと数えたわけじゃないけど 10回ぐらい震えている…だろうか?

次にワンボーの攻撃を二つ作りました。一つは自機狙い、もう一つは円を描く攻撃。 ワンボーの「動くと当たる」系の攻撃は今のところ見送り。 い、いや、諦めたんじゃなくて!逃げたんじゃなくて!名誉ある撤退です。逃げとるやん。

「動くと当たる」青い攻撃と、「動いてないと当たる」オレンジ色の攻撃は…実装できるか今のところ分からん。 十字キーのいずれかを入力していたら「動いている」という判定にするわけにはいかないから困るんだな。 枠の端にいるときに枠の方向へキー入力していたとしたら、ソウルは動かないけど十字キーを入れているので「動いている」ことになってしまう。

「動いていない」、「動いている」を判定するのは…1フレーム前の自機のX座標とY座標を比較するの? それで毎フレーム判定するの?通常攻撃、動くと当たる、動いてないと当たるの3種の攻撃が 混在していた時どうやってダメージ判定すればいいの?自分でお考えなさい。そ、そうですわね…でも無理な気がしてますの…。

ついでに取ると回復する緑の攻撃すら作ってないです。ば、バトルはオマケってことで……。

でも円を描く方法はまあまあ慣れてきた感があります。角度によってcosを求め、半径とcosを掛ければX座標。 角度によってsinを求め、半径とsinを掛ければY座標。慣れてきたってかそれしか分からないだけです。 これで角度を0〜360に変えれば円になるし、半径を変えれば円はでかくなる。cosとsinはウディ子ちゃんがやってくれるので丸投げ子です。

いつか、アズゴアさんのような円を描くような弾幕や円が狭まる弾幕を作れるようになるのか? なるのかなあー?(←あの笑顔で)
2021年6月6日


◆目次に戻る◆






inserted by FC2 system