HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2011
0524
まにまるhgimg3でのHPバー表示4解決


まにまる

リンク

2011/5/24(Tue) 20:56:45|NO.39373

最近、hgimg3を使い始めたんですが、2DスプライトでHPバー(メーター)的なものを
表示させる方法はないでしょうか?
直接描画命令でスプライトを拡縮させてバーを作ろうとしたのですが、
img3は拡縮の中心が画像の中心点になっているために上手くいきません。
何かいい方法があれば教えて下さい。



この記事に返信する


ORZ

リンク

2011/5/24(Tue) 21:16:38|NO.39375

縮小した分だけ左右にずらすってのは駄目なん?



mirage17

リンク

2011/5/24(Tue) 21:55:42|NO.39376

「HSP3でつくる簡単3Dゲーム」という本 工学社の中の、サンプルで、
手裏剣NINJA 対 炎のゴーレム軍団の中で、HPのバーみたいなのを表示
しています。参考にしては、どうでしょうか?2DスプライトでHPバー(メーター)
的なものを表示させる方法のソースと、プログラムが、載っています。

「HSP3でつくる簡単3Dゲーム」
http://www.kohgakusha.co.jp/books/detail/978-4-7775-1521-9

上記ソースより、HPのバーにかかわる部分を抜粋

setfont 16,16,16,1 ; フォントサイズ設定 texload "font.bmp" ; フォント登録 hp=100 ; 自キャラの耐久力 sdim hs,10 ; 耐久力ゲージ表示用の文字列変数 repeat 10 :poke hs,cnt,16 :loop ; hp=hp-4 :poke hs,(hp+9)/10,17 ; 耐久力を減らす      fprt "HP"+hs,8,8 ; 耐久力ゲージ表示

フォント画像の中に、HPのバーの画像をつくり、表示命令で、表示しています。
この本、持っていたら、意味ない返信ですが。画像を拡大、縮小させてまで、
表示する方法は、ピンとまではきませんが。



ひらまる

リンク

2011/5/24(Tue) 22:00:03|NO.39377

自分も縮小した分だけ左右にずらすという方法を使っていて問題ありませんでした。
拡大の支点が画像の中心になっているのなら、
1ドット縮小したら1ドット左にずらせば左から生えているような感じに見えますよ



まにまる

リンク

2011/5/24(Tue) 22:49:55|NO.39381

なるほど。
縮小した時点の大きさが分かっているなら、縮小前との差分だけ
ずらせばいいわけですね?
皆さん、ありがとうございました。やってみます。

>>フォント画像の中に、HPのバーの画像をつくり、表示命令で、表示しています。

フォントを使うのもおもしろそうですね。
描画負荷も低いし。



ONION software Copyright 1997-2023(c) All rights reserved.