// ショット等に関するその他のインクルード専用スクリプトです
// 汎用関数などがここに格納されます

//---------------------------------------------------------------------------------

//汎用関数 -trueを返す確率-
//   @prob		: trueが出る確率
//   @return		: 確率によりtrueが出たかfalseが出たか 
function fPer(let prob){
	if(rand(0,100) < prob){
		return true;
	}else{
		return false;
	}
}

//汎用関数 -壁に当たっているかの判定-
//   @nX,nY		: 判定する座標
//   @rad		: 判定の範囲内とする半径
//   @return		: どの壁と反射しているか [1]=>左 [2]=>上 [3]=>右 [4]=>下 [0]=>どの壁にも当たっていない (ただし優先度順)
function IsStageClip(let nX,let nY,let rad){
	//左端かどうか
	if(nX-rad < GetClipMinX){
		return 1;
	}
	//上端かどうか
	if(nY-rad < GetClipMinY){
		return 2;
	}
	//右端かどうか
	if(nX+rad > GetClipMaxX){
		return 3;
	}
	//下端かどうか
	if(nY+rad > GetClipMaxY){
		return 4;
	}else{
		return 0;
	}
}

//汎用関数 -速度と角度からＸ速度を求める-
//   @speed		: 速度
//   @angle		: 角度
function SAtoS_X(let speed,let angle){
	return cos(angle)*speed;
}

//汎用関数 -速度と角度からＹ速度を求める-
//   @speed		: 速度
//   @angle		: 角度
function SAtoS_Y(let speed,let angle){
	return sin(angle)*speed;
}

//汎用関数 -フラグを反転させる関数-
//   @flag		: trueまたはfalse
function Toggle(let flag){
	//それだったら単純に!で否定しちゃえばいいじゃない・・・
	//って気付いたのはこの関数を作った後。これはひどい。
	return !flag;
}
