Re: 弾幕風バグ・要望スレ (ph)4スレ目 ( No.72 )
日時: 2013/08/15 23:18
名前: Unknown User

ObjEnemy_GetInfo関数でINFO_SHOT_HIT_COUNTを使用した際に不具合であると思われるものを発見しました。

INFO_SHOT_HIT_COUNTは前フレームの自機弾ヒット回数を取得するものですが、自機が敵の自機弾に対する当たり判定内に入った際、自機も弾として数えているようです。

これは、以下のスクリプトにて再現されます。
@MainLoop{
let ex=ObjMove_GetX(objEnemy);
let ey=ObjMove_GetY(objEnemy);
ObjEnemy_SetIntersectionCircleToShot(objEnemy,ex,ey,48); //1.敵の自機弾に対する当たり判定を設定し、
ObjEnemy_SetIntersectionCircleToPlayer(objEnemy,ex,ey,24);
//↓2.自機が弾を出していない状態で上記の当たり判定内に入るとINFO_SHOT_HIT_COUNTが0から1になります。
if(ObjEnemy_GetInfo(objEnemy,INFO_SHOT_HIT_COUNT)!=0){RaiseError("不具合発生!");}

if(ObjEnemy_GetInfo(objEnemy,INFO_LIFE)<=0){
Obj_Delete(objEnemy);
CloseScript(GetOwnScriptID());
return;
}
}