HSPで作成したウィンドウの種類(screenやbuffer)などを取得するには?

菊岡万次郎        2013/6/22(Sat) 20:30:58|NO.55161

こんにちわ。
HSPのウィンドウにはscreenやbuffer、bgscrなどがありますよね。
それらをウィンドウIDから取得するにはどうしたらいいでしょうか?

一応自分で調べたつもりですが、見当たらなかったので質問させていただきます。
よろしくお願いします。


kanahiron        2013/6/22(Sat) 20:47:01|NO.55162

mrefでBMSCR構造体を取得して、BMSCR構造体の18番目の配列が質問の答えになっています


screen 0 buffer 1 screen 2 bgscr 3 gsel 0,1 repeat 4 ID = cnt mref bmscr,96+ID ; bmscr.17 = 1がsbuffer 2がscreen 3がbgscr if bmscr.17 = 1:mes "windowID:"+ID+" はbufferです" if bmscr.17 = 2:mes "windowID:"+ID+" はscreenです" if bmscr.17 = 3:mes "windowID:"+ID+" はbgscrです" loop


暇人        2013/6/22(Sat) 20:47:45|NO.55163

BMSCR 構造体(HSP3)
http://dream.freespace.jp/puma/iroiro/struct/bmscr3.htm
17 type 画面の属性(1:buffer 2:screen 3:bgscr)


buffer 1 mref BMSCR_ID1,67 bgscr 2 mref BMSCR_ID2,67 screen 0 mref BMSCR_ID0,67 type="","buffer","screen","bgscr" mes "ID0 type "+BMSCR_ID0(17)+":"+type(BMSCR_ID0(17)) mes "ID1 type "+BMSCR_ID1(17)+":"+type(BMSCR_ID1(17)) mes "ID2 type "+BMSCR_ID2(17)+":"+type(BMSCR_ID2(17))


菊岡万次郎        2013/6/22(Sat) 21:44:20|NO.55169

BMSCR構造体っていうのはC++の構造体のことなんでしょうかね?
なにはともあれ、お二人のスクリプトを参考にやってみます。
ありがとうございます!