「HPバーを作成してHPと同期する」の編集履歴(バックアップ)一覧はこちら
HPバーを作成してHPと同期する - (2018/05/28 (月) 04:05:00) の1つ前との変更点
追加された行は緑色になります。
削除された行は赤色になります。
アクエディ4のHP表示は画面上部で棒グラフのようになっていますが、
見た目がちょっと自分のゲームとそぐわない、もしくは自分のUIをつくったので
そちらで棒型のHP表示をしたい、という方も多いのではないでしょうか。
今回は、ピクチャー表示機能を使ってそんなHP表示をつくってみましょう。
まず、HPバーの画像を用意します。
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/85/hpbar.bmp)
大きさなどは自由ですが、規格上横幅が4の倍数のものである必要と、
できればできるだけ割るのに便利な数であると望ましいです。
今回は100×15のサイズのものを用意します。
この画像はbmp形式なのでダウンロードして実際に使っていただいてかまいません。
用意した画像をbmpフォルダの中にあるpictureフォルダに入れます。
まず、HPバーを入れる枠の画像を用意します。
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/86/HPbarframe.bmp)
これはさっきの枠が収納できるようであれば横幅が4の倍数なら何でもいいです。
今回は130×23のサイズのものを用意します。
この画像はbmp形式なのでダウンロードして実際に使っていただいてかまいません。
次に、エディターをひらいて2つのピクチャーの登録をします。
この辺は自作HPの章を参照してください。
これができたら、追加キャラクターにピクチャーを表示させるフローをつくります。
キャラパレットのプレイヤーキャラ(ヤシーユ)を開き、以下のようなフローを追加します。
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/80/1.png)
ピクチャーの表示後そのフローを削除するコマンドを入れるのを忘れずに。
HPフレームの表示位置は 「画面座標」に画面座標はXを0,yを0にします。ピクチャ番号は指定しなくてもいいです。
HPバーの表示位置は 「画面座標」に画面座標はXを0,yを4にします。ピクチャ番号は0に。
表示時間「ステージ終了まで」にチェックを入れます。
こうすることで、実行条件に合わなくなった(HPが1以上ではなくなった)時に瞬時にピクチャーが消えるようになります。
「一時停止」のチェックは外しておきましょう。ピクチャーが表示されているあいだ操作が効かなくなってしまうと
HPは常に表示されているピクチャーなので、常に操作が効かなくなってしまうことになってしまいます。
また、画面がスクロールするステージにする場合は「画面に追従する」にチェックを入れておいてください。
(画面がスクロールしないステージで使用すると、ガタガタが無くなるので、ガタガタが苦手な方はチェック推奨)
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/87/HPzissou.png)
とりあえず表示されましたね。
次はダメージを受けたときのHPをずらす処理です。
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/81/2.png)
自分(主人公)のHPを、コモン変数3(全体であっていれば変数番号は何でもいいです)に代入します。
この変数は「主人公HPずれ」と名付けておきましょう。
次に コモン変数3を100倍します。
そしてコモン変数3を次分の最大HPで割ります。
そしてコモン変数3から100引きます。
これは最大HPとのズレを100分率で表したものです。
この一連の流れはコードの実行を使うと簡単に代用できます。 が、今回は省略。
そしてアレンジします。
アレンジの対象をピクチャー、Xのズレをコモン変数3に。
そして先程のフローで使ったHPバーの文を貼り付けます。完成。
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/82/3.png)
これを死亡したときにもつけましょう。
回復したときも、以下のようなフローを使って発動できます。回復するときに変数2を1にして、
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/83/4.png)
だいたいこんな感じです。応用すれば敵にもHP表示させることができます。
更に応用すればこんな
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/88/eruri.png)
ステータスを作ったり
こんな
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/89/SCO.png)
ステータスを作ったりも。夢が膨らみますね!
アクエディ4のHP表示は画面上部で棒グラフのようになっていますが、
見た目がちょっと自分のゲームとそぐわない、もしくは自分のUIをつくったので
そちらで棒型のHP表示をしたい、という方も多いのではないでしょうか。
今回は、ピクチャー表示機能を使ってそんなHP表示をつくってみましょう。
まず、HPバーの画像を用意します。
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/85/hpbar.bmp)
大きさなどは自由ですが、規格上横幅が4の倍数のものである必要と、
できればできるだけ割るのに便利な数であると望ましいです。
今回は100×15のサイズのものを用意します。
この画像はbmp形式なのでダウンロードして実際に使っていただいてかまいません。
用意した画像をbmpフォルダの中にあるpictureフォルダに入れます。
まず、HPバーを入れる枠の画像を用意します。
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/86/HPbarframe.bmp)
これはさっきの枠が収納できるようであれば横幅が4の倍数なら何でもいいです。
今回は130×23のサイズのものを用意します。
この画像はbmp形式なのでダウンロードして実際に使っていただいてかまいません。
次に、エディターをひらいて2つのピクチャーの登録をします。
この辺は自作HPの章を参照してください。
これができたら、追加キャラクターにピクチャーを表示させるフローをつくります。
キャラパレットのプレイヤーキャラ(ヤシーユ)を開き、以下のようなフローを追加します。
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/80/1.png)
ピクチャーの表示後そのフローを削除するコマンドを入れるのを忘れずに。
HPフレームの表示位置は 「画面座標」に画面座標はXを0,yを0にします。ピクチャ番号は指定しなくてもいいです。
HPバーの表示位置は 「画面座標」に画面座標はXを0,yを4にします。ピクチャ番号は0に。
表示時間「ステージ終了まで」にチェックを入れます。
こうすることで、実行条件に合わなくなった(HPが1以上ではなくなった)時に瞬時にピクチャーが消えるようになります。
「一時停止」のチェックは外しておきましょう。ピクチャーが表示されているあいだ操作が効かなくなってしまうと
HPは常に表示されているピクチャーなので、常に操作が効かなくなってしまうことになってしまいます。
また、画面がスクロールするステージにする場合は「画面に追従する」にチェックを入れておいてください。
(画面がスクロールしないステージで使用すると、ガタガタが無くなるので、ガタガタが苦手な方はチェック推奨)
ついでに、ステータスバーはもう要らなくなるのでステージの設定からチェックを外しておきましょう。
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/90/t.png)
これで最初の分は完成です。
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/87/HPzissou.png)
とりあえず表示されましたね。
次はダメージを受けたときのHPをずらす処理です。
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/81/2.png)
自分(主人公)のHPを、コモン変数3(全体であっていれば変数番号は何でもいいです)に代入します。
この変数は「主人公HPずれ」と名付けておきましょう。
次に コモン変数3を100倍します。
そしてコモン変数3を次分の最大HPで割ります。
そしてコモン変数3から100引きます。
これは最大HPとのズレを100分率で表したものです。
この一連の流れはコードの実行を使うと簡単に代用できます。 が、今回は省略。
そしてアレンジします。
アレンジの対象をピクチャー、Xのズレをコモン変数3に。
そして先程のフローで使ったHPバーの文を貼り付けます。完成。
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/82/3.png)
これを死亡したときにもつけましょう。
回復したときも、以下のようなフローを使って発動できます。回復するときに変数2を1にして、
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/83/4.png)
だいたいこんな感じです。応用すれば敵にもHP表示させることができます。
更に応用すればこんな
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/88/eruri.png)
ステータスを作ったり
こんな
#image(https://img.atwikiimg.com/www47.atwiki.jp/acedi4wiki/attach/110/89/SCO.png)
ステータスを作ったりも。夢が膨らみますね!