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


HSPTV!掲示板


未解決 解決 停止 削除要請

2009
1022
kaz(HGIMG3)キャラクタなどにパラメタを持たせる方法について2解決


kaz

リンク

2009/10/22(Thu) 01:25:21|NO.28481

HGIMG3でゲームを作ろうとしているのですが、regobjで作成した表示物と、それに持たせておきたいパラメタを関連付ける方法がわからなくて悩んでいます。

regobj player,pModel

で作成したplayerにたとえばライフの値として

life = 100

のようなパラメタを持たせたい場合、HGIMG3ではどのような考え方をすればいいのでしょうか?

(C++がわかる人用の説明になってしまいますが、クラスだったら.lifeというメンバを増やせばいいだけなんだけど、HGIMG3では自分でメンバをつくれないよどうしよう(泣)ということです。)

基本的な考え方だけでも伝授していただけたらと思います。
よろしくお願いします。



この記事に返信する


いなえ

リンク

2009/10/22(Thu) 09:12:46|NO.28489

HGIMG3.2では「オブジェクト汎用ユーザー情報」というものが存在します。
あまり使いやすいものではありませんが、
1つのオブジェクトにつき3つまでのの整数値を固有に持たせることが可能です。
詳しくはリファレンスマニュアルをご覧下さい。

また、通常の配列を利用する方法もあります。
登録されたオブジェクトのオブジェクトID(上のスクリプトでは変数playerに代入される数)は、
0以上の整数値であり他の登録されたオブジェクトのIDと重なることはありません。
そこで、オブジェクトIDを配列の添え字に使ってしまえば、
案外簡単にオブジェクトとパラメータを関連付けて扱うことができます。

例)

regobj player,pModel life(player) = 100

なお整数型配列なら特に必要はないのですが、
配列変数はオブジェクトの最大数だけ事前に作成しておくのが無難です。



kaz

リンク

2009/10/22(Thu) 09:50:33|NO.28490

いなえさん、回答ありがとうございます!
教えていただいた方法でやってみます
いなえさんのHPのサンプルもとても勉強になります。
本当にありがとうございました。



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