| ||||||||||||||
|
配置オブジェクトの総数を取得
| ||||||||||||||
現在配置されているオブジェクトの数を知る必要がある場合もありますが、取得する命令は用意されてません。 HSP2はBMSCR構造体、HSP3はHSPOBJINFO構造体にオブジェクト情報が入っているので、 コレを元にすれば、オブジェクトの総数を取得することができきます。 具体的に、HSP2はBMSCR構造体の164バイト(配列要素41)からのオブジェクトハンドルhCld、 HSP3はBMSCR構造体284バイト(配列要素71)にあるHSPOBJINFO構造体の先頭アドレス、 288バイト(配列要素72)から4バイト分のHSPOBJINFO構造体の連続する総数objmaxを取得し、 HSPOBJINFO構造体8バイト目のオブジェクトハンドルが使えるかをチェックしています。 HSP3はHSPOBJINFO構造体を見なくても連続する総数objmaxだけでイケそうですが、 現時点の最新HSP3.1では、バグなのか仕様なのか、オブジェクトをclrobj命令でクリアしたりすると この数が現在の配置総数と一致しなくなるようなので、残念ながら使えません。 | ||||||||||||||
![]() | ||||||||||||||
| ||||||||||||||
![]() | ||||||||||||||
| ||||||||||||||