すみません。
使ったことがない者が言うのはなんなのですが、この質問の前に、別の投稿で、BGGETの返値を詳しく教えて欲しいと言うのがありました。
なのでヘルプを見て説明してみたのですが…。
BGGETの返値は、キャラクタ番号+属性の16bitの値なのではないでしょうか?
0~11bitがキャラクタ番号で
12~15は縦、横、回転の3つの属性だったと思います。
IF (BGGET(…) AND 4095) == 64 THEN
が正しいと思いますが、当方の認識誤りでしょうか?
お二方ともマスクせず返値を比較しているので気になった次第です。
使った事ないので良く解りませんがヘルプの通りでは?
返値は16bit分の値。
abccdddddddddddd
aの1bitの値は、縦に反転しているか? (返値>>15 AND 1)→0 or 1
bの1bitの値は、横に反転しているか? (返値>>14 AND 1)→0 or 1
ccの2bitは、回転。&B00なら0度、&B01なら90度、&B10なら180度、&B11なら270度。(返値>>12 AND 3)→0~3
ddddddddddddの12bitは、キャラクタの値。(返値 AND 4095)→0~4095。