//====================================-
//プレイヤースクリプト用ライブラリPLIBA
//エフェクト用拡張関数
//
//====================================




//残像追尾オブジェクト
//エフェクトオブジェクトを作ってから渡すこと

//obj:操作オブジェクトID
//obj_master:追いかけるオブジェクトのID
//id:複数の残像を作成する場合の通し番号、0から開始
//num_max:作成する残像の総数
//skip:残像の動く間隔。１だと毎フレーム残像が移動
//alpha_max:アルファ最大値。一番近い時点でのアルファ値。遠くなると薄くなる
//red,green,bleu:RGB値

//オブジェクトを追いかけるオブジェクトです
//画像の角度設定にGetAngle()を使用しているので、元のobj_masterでもSetAngle()を使用する必要があります

task PRIBA_TaskSetTraceObject(let obj, let obj_master, let id, let num_max, let skip, let alpha_max, let red, let green, let blue){

	if(skip <= 1){ skip=1; }
	loop((id+1) * skip){yield;}

	while(!Obj_BeDeleted(obj_master)){

		Obj_SetPosition(obj, Obj_GetX(obj_master), Obj_GetY(obj_master) );
		ObjEffect_SetAngle(obj, 0,0, Obj_GetAngle(obj_master));
		descent(i in 0..num_max){
			let alpha = alpha_max * (i/num_max);
			PRIBA_SetObjectColorSquare(obj, alpha, red, green, blue);
			loop(skip){yield; }
		}
	}
	Obj_Delete(obj);
	return;

}//end task


