忍者ブログ
まったくのプログラミング素人の筆者がC++/HSPを使用してSTG(シューティングゲーム)を作っていく過程を書くブログでしたが最近は脱線気味。プログラミング以外にも、ゲーム関連の記事、日々の戯言など。
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

ステージ1の後半を作製しています。
後半は地球上空で艦隊を潜り抜けていくようなイメージで作っています↓
2007_6_27.jpg
画面の奥の方に、戦艦の小さい画像を表示させているのですが
戦艦のスプライトを縮小して表示させているので、他のキャラと色が
かぶってしまって、画面が見にくいような気がするので
ちょっと暗くして表示させたいんですが、新しくキャラを作った方が良いのか
プログラム的に何とか出来るのか考え中です^^;
PR
中ボスの早回しを追加しました。
弱点を作って、そこを突くと早く倒せるのですが、その為には難易度が上がるようにしてみました。
で、早く倒すと点稼ぎキャラが登場するようにしています。
2007_6_251.jpg

その後、地球?に到着するのですがコロニーから地球への切り替え方法をどうするか
悩んだのですが、コロニーの下から戦艦が出てきてその戦艦にコロニーを破壊される
という設定にしてみました。
そうすれば、コロニーが破壊される時に画面を真っ白にすれば、コロニーを消せるので
上手く繋がるかなぁ?と思いまして。
2007_6_252.jpg
で、後半は艦隊の中を潜り抜けて行くような感じにしたいなぁ、と思ってます。

そう言えば、ゲーム作成を始める前はストーリーなんて無くてもエエやろーと
思っていたのですがストーリーがあった方が、ステージ構成なんかが
考えやすくて良いと言う事に作り始めてから気づきました^^;
と言っても私の場合は絵が書けないので、ストーリーを考えた所で
イメージ通りのステージを作成する事が出来ないんですけどね(汗)
とりあえず中ボスが完成しました。
2007_6_20.jpg
ダメージフラッシュも入れたのですが、アニメさせながらだとコマ数分だけ
ダメージフラッシュも用意しなければならず大変です^^;
ちゅうか、繰り替えしのアニメーションならes_link命令でOKなのですが
この弾の時はこのアニメ・・・みたいな使い方だと良い方法が思いつかず
今のところ、敵の生成時間で表示する画像を切り替えているのですが
いっぱいスクリプトを書かなければならないので、良い方法が無いか考え中です。

中ボスに関しては、後は弱点と早回しの部分を作成すれば終わりなのですが
弱点をどうするか悩んでるんですよね^^;
*6/20 追記
下記の問題はhspdxfixの作者であるSinagawaさんにより修正されています。
最新のDLLはDivide by 0よりダウンロード出来ます。

**********************************************************************
前々から気になっていた事があります。
es_window命令についてなのですが、この命令のヘルプには
「この命令により、スプライトを画面内の限られた範囲内にのみ表示することが
可能です。指定した範囲内がスプライトの表示エリアになります。」
とあります。

ヘルプを読む限りでは、指定した範囲のみスプライトが描画されるような命令に思います。
ですが私が初めて使用した時は、指定した範囲を超えてもスプライトが表示されていました。
なので、こんなもんなんかな?と思ってハミ出した所はes_fill命令で塗り潰していたのですが
先日、マクセル手動ブログさんの6/15のエントリーを読んでいると
「es_windowが効かず、スプライト描画範囲をはみ出してても描画されてしまうというエラーに遭遇。
しかたなくes_fillで画面左右を塗りつぶして対処したマクセルであった。」
と書いてありました。

という事は、やはりes_windowは私の思っていたように描画範囲を指定すれば
指定した部分以外では描画されない命令って事になります。
でも、私のスクリプトでも実際にはハミ出して描画されていました。
で、簡単なスクリプトを作って検証してみました↓
es_window検証スクリプト
十字キーで自機移動、Zキーで弾発射です。

このスクリプトを実行すると↓のように真ん中の青い部分がes_windowで指定した
スプライト描画範囲なのですが、その範囲を超えて弾を表示してしまいます。
2007_6_17.jpg

で、試しにこのスクリプトの10行目の「es_window 150,0,490,480」の第4パラメータ
を「es_window 150,0,490,479」と480から479に変更してみると・・・↓
2007_6_171.jpg
ちゃんと描画されるようになりました!

色々と検証見てみた所、どうもes_screenとの兼ね合いでおかしくなるようで
es_screenで指定した解像度よりも、es_windowで指定した範囲のx軸もしくは
y軸のどちらかが(第3、第4パラメータ側)、同じかそれ以上になると、ハミ出して描画される模様。

このスクリプトで言うと
es_window 150,0,490,480 :NG
es_window 150,0,490,479 :OK
es_window 150,1,490,480 :NG
es_window 151,0,490,480 :NG
と言った感じでした。

これは、DLLの不具合なのかな?それとも私の使い方がおかしい???
よくわからないのですが、es_window 150,0,490,479とすれば
画面一番下の1ドットのみ表示されませんが、プレイには支障ありませんし
なにより、今まで行っていた画面右側を塗りつぶす命令(es_fill命令)を
行わなくて良いので、スクリプト自体も軽くなりますし、良い発見でした^^
中ボス作成に向けて、とりあえず敵キャラを作成しました↓
16.GIF
今回はロボットにしてみました。で、このキャラをライバル機?のような位置付けにし
中ボス戦では、このキャラのバージョン違いなんかを登場させて行こうかと考えています。
武者アレスタやんって気もしますが、きにしないきにしない^^;

しかし、今までのキャラだと真上から見た視点でキャラを作成していたのですが
それだとZ軸の事を考えなくて良いので、アニメーションさせるのも楽なのですが
今回は真上から見た視点だと、ちょっとおかしいので少し斜め上からの視点で
キャラを作成したのですが、そうするとアニメーションさせるのがとても大変です・・・
上に載せているアニメーションだけでも、6パターンしか画像はないのですが
パーツを一個づつ動かしていって、作成していったのですが
メチャクチャ時間掛かりました・・・
Twitter
カレンダー
04 2025/05 06
S M T W T F S
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
最新コメント
[04/20 kt.]
[04/19 うぇむ]
[11/24 kt.]
[11/21 NONAME]
[11/24 kt.]
プロフィール
HN:
kt.
性別:
男性
自己紹介:
プログラミング経験は昔ファミリーベーシックでちょっとさわったくらい。
好きなSTGは、怒首領蜂大往生、エスプガルーダ(2)等の弾幕STGやら雷電シリーズなんかの非弾幕、バトルガレッガ、グラディウスシリーズ、R-TYPE等、STGなら何でも好きです。
音楽がカッコイイSTGが特に好きで、並木学氏は最高!
ブログ内検索
忍者ブログ [PR]