
	let CardDeckSetting=[];
	let SubCardDeckSetting=[];

	loop(256)
	{
		CardDeckSetting=CardDeckSetting~[0];
		SubCardDeckSetting=SubCardDeckSetting~[0];
	}

	let MagicAbsorbShortRange=60;
	let MagicAbsorbLongRange=150;

	let AutoReCharge=0.625;
	let GrazeRadius=0;
	let AutoItemCollectLine=176;
	let BurstErazeCircleRangeRate=2.2;

	let LightMode=0;

	let opX=[0,1,2,3];	//IvVXW
	let opY=[0,1,2,3];	//IvVYW
	let OpAngle=0;
	let csd = GetCurrentScriptDirectory();
	let img = csd~"img\STG_Player11.png";
	let THimg=csd~"img\pl01.png";
	let imgShot3 = csd~"img\Reimu_shots.png";
	let imgMarisaShot = csd~"img\Marisa_shots.png";
	let imgBorderLine = csd~"img\SampleEC01a.png";
	let imgWhite = csd~"img\White.png";
	let imgBer = csd~"img\ber.png";
	let imgNebura = csd~"img\nebura.png";
	let imgNumber = csd~"img\Number.png";
	let imgAtari = csd~"img\Atari.png";
	let imgThunder = csd~"img\Thunder.png";
	let imgBreakCircleEffect=csd ~ "..\img/circle.png";

	let imgIneDeltaLine=csd ~ "img/IneDeltaLine.png";

	let shotCount = -1;
	let ShotCountIncrease=0;

	let RaiseAutoBomb=false;

	let MagicOpAnglePlus=0;

	let miss=0;

	let ColorRed=255;
	let ColorGreen=0;
	let ColorBlue=0;

	let PlayerRectLeft=10;
	let PlayerRectUp=38;
	let PlayerRectRight=2;
	let PlayerRectDown=48;

let CharaDrawCount=0;
let DrawFrame=6;
let CharaLeftMoveDrawCount=0;
let CharaRightMoveDrawCount=0;

let UseAutoBombCount=0;

let MissTime=0;

let OnShot=1;
let OnSlow=1;

let OnOpShot=[0,0,0,0];

let CardPower=0;
let CardPowerReCharge=0;
let SpeedStatus=1;
let ShotLevel=0;
let GrazeLevel=0;
let BorderLevel=0;
let ItemCollectLevel=0;
let SpeedLevel=0;;
let LifeRecoverLevel=0;
let CardEffectLevel=0;

let CardDeck=[];
let SubCardDeck=[];

let CoolTime=0;
let CoolTimeMax=600;
let StopWatchEffect=false;
let DoubleStopWatch=false;
let PennySaved=0;
let AutoBomb=false;
let DoubleAutoBomb=false;
let HakurouEffect=false;
let DoubleHakurouEffect=false;
let HigasaEffect=false;
let OrrerysSunEffect=false;
let BitShotFlag=false;
let PhantomFlag=false;
let DoublePhantomFlag=false;
let PhantomX=0;
let PhantomY=0;
let RealX=0;
let RealY=0;
let DragonStarEffect=false;
let DoubleDragonStarEffect=false;
let HeavenlyDropsCount=0;
let OnMissAttack=false;
let OnBlazingStar=false;

task CardSettingTask
{
if(length(CardDeck))
{
	loop(length(CardDeck))
	{
		CardDeck=erase(CardDeck,0);
	}
}

#include_script".\DeckSetting.txt"

ascent(i in 0..21)
{
if(CardDeckSetting[i]!=0)
{
	loop(CardDeckSetting[i])
	{
		CardDeck=CardDeck~[i];
	}
}
}

ascent(i in 200..220)
{
if(CardDeckSetting[i]!=0)
{
	loop(CardDeckSetting[i])
	{
		CardDeck=CardDeck~[i];
	}
}
}

let TempCardDeck=[];
let ArrayNum=length(CardDeck);
ascent(i in 0..ArrayNum)
{
let num=rand_int(0,ArrayNum-i-1);
TempCardDeck=TempCardDeck~[CardDeck[num]];
CardDeck=erase(CardDeck,num);
}
CardDeck=TempCardDeck;


ascent(i in 0..21)
{
if(SubCardDeckSetting[i]!=0)
{
	loop(SubCardDeckSetting[i])
	{
		SubCardDeck=SubCardDeck~[i];
	}
}
}

ascent(i in 200..220)
{
if(SubCardDeckSetting[i]!=0)
{
	loop(SubCardDeckSetting[i])
	{
		SubCardDeck=SubCardDeck~[i];
	}
}
}

if(length(CardDeck)<20)
{
	RaiseError("CfbL̖ȂłB"~NumToStringNoComplete(length(CardDeck))~"ɂȂĂ܂","@̃fbLݒ܂傤");
}

if(length(CardDeck)>20)
{
	RaiseError("CfbL̖łB"~NumToStringNoComplete(length(CardDeck))~"ɂȂĂ܂","@̃fbLݒ܂傤");
}

yield;

if(length(SubCardDeck))
{
	loop(length(SubCardDeck))
	{
		SubCardDeck=erase(SubCardDeck,0);
	}
}

#include_script".\SubDeckSetting.txt"

ascent(i in 0..21)
{
if(SubCardDeckSetting[i]!=0)
{
	loop(SubCardDeckSetting[i])
	{
		SubCardDeck=SubCardDeck~[i];
	}
}
}

ascent(i in 200..220)
{
if(SubCardDeckSetting[i]!=0)
{
	loop(SubCardDeckSetting[i])
	{
		SubCardDeck=SubCardDeck~[i];
	}
}
}

let SubTempCardDeck=[];
let SubArrayNum=length(SubCardDeck);
ascent(i in 0..SubArrayNum)
{
let num=rand_int(0,SubArrayNum-i-1);
SubTempCardDeck=SubTempCardDeck~[SubCardDeck[num]];
SubCardDeck=erase(SubCardDeck,num);
}
SubCardDeck=SubTempCardDeck;

let SubFlag=false;
ascent(i in 0..20)
{
	if(CardDeck[i]==8)
	{
		SubFlag=true;
	}
}

if(SubFlag)
{
if(length(SubCardDeck)<10)
{
	RaiseError("TufbL̖ȂłB"~NumToStringNoComplete(length(SubCardDeck))~"ɂȂĂ܂","@̃fbLݒ܂傤");
}

if(length(SubCardDeck)>10)
{
	RaiseError("TufbL̖łB"~NumToStringNoComplete(length(SubCardDeck))~"ɂȂĂ܂","@̃fbLݒ܂傤");
}
}

ascent(i in 0..21)
{
	let card=0;
	ascent(j in 0..length(CardDeck))
	{
		if(CardDeck[j]==i)
		{
			card+=1;
		}
	}
	ascent(j in 0..length(SubCardDeck))
	{
		if(SubCardDeck[j]==i)
		{
			card+=1;
		}
	}
	if(card>4)
	{
		RaiseError("5ȏ̃J[h܂","@̃fbLݒ܂傤");
	}
}

ascent(i in 200..220)
{
	let card=0;
	ascent(j in 0..length(CardDeck))
	{
		if(CardDeck[j]==i)
		{
			card+=1;
		}
	}
	ascent(j in 0..length(SubCardDeck))
	{
		if(SubCardDeck[j]==i)
		{
			card+=1;
		}
	}
	if(card>4)
	{
		RaiseError("5ȏ̃J[h܂","@̃fbLݒ܂傤");
	}
}


}

sub IntializeTask
{
	SetAutoEffect(false);
	if(THdot)
	{
	SetPlayerLifeImage(THimg,0,0,32,48);
	}
	else
	{
	SetPlayerLifeImage(img,0,0,48,48);
	}

	SetInitialBombCount(2);
	LoadPlayerShotData(csd~"txt\ShotData.txt");
}

sub IntializeLoading
{
	CreateCommonDataArea("Hi_Marisa");

		LoadGraphic(img);
		LoadGraphic(THimg);
		LoadGraphic(imgShot3);
		LoadGraphic(imgMarisaShot);
		LoadGraphic(imgBorderLine);
		LoadGraphic(imgBer);
		LoadGraphic(imgNebura);
		LoadGraphic(imgNumber);
		LoadGraphic(imgAtari);
		LoadGraphic(imgThunder);
		LoadGraphic(imgWhite);
		LoadGraphic(imgBreakCircleEffect);
		LoadGraphic(imgIneDeltaLine);

		LoadGraphic(csd~"img\SquareLine.png");

		LoadGraphic(csd~"img\Onmyou.png");

		LoadGraphic(csd~"img\Spark.png");

		LoadGraphic(csd ~ "img/CircleEffect.png");

		LoadGraphic(csd~"img/Explode.png");


		LoadGraphic(csd~"img\Ice.png");

		LoadGraphic(csd~"img\Earth.png");

		LoadGraphic(csd~"img\Level.png");

		LoadGraphic(csd~"img\StarEffect.png");

		ascent(i in 0..10)
		{
		LoadGraphic(csd~"img\card00"~NumToStringNoComplete(i)~".png");
		}
		ascent(i in 10..21)
		{
		LoadGraphic(csd~"img\card0"~NumToStringNoComplete(i)~".png");
		}
		ascent(i in 200..220)
		{
		LoadGraphic(csd~"img\card"~NumToStringNoComplete(i)~".png");
		}
}

sub IntializeTmain
{
		PlayerRect;//vC[͈ؔ͌^XN
		optionmove;//IvVʒu^XN
		HueDifine;//O[oFω^XN
		DrawOption;
		PlayerDrawCount;
		NormalShadow;
		MissJudg;//~XGtFNg̃^XN
		CardSettingTask;
		wait(3);
		Shot;//CVbg̃^XN
		SubShot;//TuVbg̃^XN
		INEffect;

		UseCard;
		DisplayCardTask;
		StatusSetTask;
		Powor;//p[ϓ^XN
		GrazeCheck;
		EnemyCheck;

		CoolTimeDraw;
}

sub MainLoopTask
{
	if(PhantomFlag)
	{
	SetIntersectionCircle(RealX, RealY, 0);//@̓蔻
	}
	else
	{
	SetIntersectionCircle(GetPlayerX, GetPlayerY, 0);//@̓蔻
	}
	yield;
	if(OnMissed && !OnBorderOfLife){SetCommonDataEx("Hi_Marisa","PlayerMiss",true);}
	else{SetCommonDataEx("Hi_Marisa","PlayerMiss",false);}
	//if(GetKeyState(VK_SHOT)==KEY_PUSH){ShootDownPlayer;}
}

sub MissLoopTask
{
	MainLoop;
	if(GetPlayerBomb>=1 && AutoBomb)
	{
		RaiseAutoBomb=true;
		CallSpellCard;
	}
	if(OnBorderOfLife)
	{
	ObjPlayerDraw;
	}
	else if(OnMissAttack==false && PennySaved>0)
	{
	OnMissAttack=true;
	UseSpellCard("MissAttack", PennySaved);
	}
}

sub SpellCardTask
{
if(!OnBorderOfLife)
{
	UseSpellCard("NeburaReverie", 0);
}
else
{
	if(BorderLevel>0){BorderLevel-=1;}
	UseSpellCard("NeburaReverie", 0);
}

}

task SpeedChange(time,rate)
{
	loop(time)
	{
		if(OnMissed && !OnBorderOfLife){break;}
		SpeedStatus=rate;
		yield;
	}
	SpeedStatus=1;
}

task StatusSetTask
{
let ItemCollectLineArray=[128,160,192,224,256];
let GrazeCircleArray=[30,40,50,60,70];
let BorderArray=[10,15,25,40,60];
let HiSpeedArray=[4.5,5.0,5.3,5.6,6.0];
let LowSpeedArray=[1.6,2.0,2.1,2.3,2.5];

let ExtendNecessary=10;

let pscnum=0;

let Rframe=0;
loop
{
	Rframe=BorderArray[BorderLevel]-ShotLevel*8;
	if(Rframe<1){Rframe=1;}
	if(PhantomFlag)
	{
		SetItemCollectLine(0);
	}
	else
	{
		SetItemCollectLine(ItemCollectLineArray[ItemCollectLevel]);
	}
	SetGrazeCircle(GrazeCircleArray[GrazeLevel]-ShotLevel*5);
	SetRebirthFrame(Rframe);
	if(HakurouEffect==false)
	{
	SetSpeed(HiSpeedArray[SpeedLevel]*SpeedStatus,LowSpeedArray[SpeedLevel]*SpeedStatus);
	}

	if(LifeRecoverLevel>=ExtendNecessary)
	{
		ExtendPlayer(1);
		LifeRecoverLevel-=ExtendNecessary;
		ExtendNecessary+=5;
	}

	pscnum=0;
	ascent(i in 0..5)
	{
		if(length(CardDeck)>i)
		{
			if(CardDeck[i]==12 && CardPower>=(i+1)*1000)
			{
				pscnum+=1;
			}
		}
	}
	PennySaved=pscnum;
yield;
}
}

sub DrawLoopTask
{
if(MissTime==0)
{
	SetTexture(img);
	if(THdot)
	{
		SetTexture(THimg);
	}
	SetGraphicRect(PlayerRectLeft,PlayerRectUp, PlayerRectRight, PlayerRectDown);

	if(OnBomb)
	{
		SetColor(150,150,255);
	}
	else
	{
		SetColor(255,255,255);
	}

	if(PhantomFlag)
	{
	SetAlpha(150);
	DrawGraphic(PhantomX,PhantomY);//@̕`
	SetAlpha(255);
	DrawGraphic(RealX,RealY);//@̕`
	}
	else if(OnBlazingStar==false)
	{
	DrawGraphic(GetPlayerX(), GetPlayerY());//@̕`
	}
	//DrawText(length(SubCardDeck),120,382,12,255);//NԂ̕\
	//DrawText(aaa,120,362,12,255);//NԂ̕\

	atari;
}
}
let aaa=0;
task DisplayCardTask
{
loop
{
DisplayCard(0);
DisplayCard(1);
DisplayCard(2);
DisplayCard(3);
DisplayCard(4);
yield;
}
}

task DisplayCard(num)
{
		let Alpha=255;
		if((GetPlayerY>GetClipMaxY-150))
		{
			Alpha=255+300*(-GetPlayerY+(GetClipMaxY-150))/(GetClipMaxY-150);
		}
		let x=GetClipMinX+25;
		let y=GetClipMaxY-30;
		let scx=1.0;
		let scy=1.0;
		alternative(num)
		case(0)
		{
			scx=1.0;
			scy=1.0;
		}
		case(1)
		{
			x+=27;
			y+=9;
			scx=0.5;
			scy=0.5;
		}
		case(2)
		{
			x+=45;
			y+=11;
			scx=0.5;
			scy=0.5;
		}
		case(3)
		{
			x+=63;
			y+=13;
			scx=0.5;
			scy=0.5;
		}
		case(4)
		{
			x+=81;
			y+=15;
			scx=0.5;
			scy=0.5;
		}
		if(length(CardDeck)>num)
		{
		DrawCardBack(num,x,y,scx,scy);
		}

		let obj0 = Obj_Create(OBJ_EFFECT);

		if(length(CardDeck)>num)
		{

		if(CardDeck[num]<=9)
		{
		ObjEffect_SetTexture(obj0,csd~"img\card00"~NumToStringNoComplete(CardDeck[num])~".png");
		}
		else if(CardDeck[num]<=20)
		{
		ObjEffect_SetTexture(obj0,csd~"img\card0"~NumToStringNoComplete(CardDeck[num])~".png");
		}
		else if(CardDeck[num]<=220)
		{
		ObjEffect_SetTexture(obj0,csd~"img\card"~NumToStringNoComplete(CardDeck[num])~".png");
		}
		if(CardPower<num*1000+1000)
		{
Alpha=0;
	//	ObjEffect_SetTexture(obj0,imgWhite);
	//	ObjEffect_SetRenderState(obj0, SUBTRACT);
		}
		}
		else if(length(CardDeck)<=num)
		{
			Alpha=0;
		}
		ObjEffect_SetPrimitiveType(obj0, PRIMITIVE_TRIANGLEFAN);
	//	ObjEffect_SetRenderState(obj0, ADD); 
		ObjEffect_CreateVertex(obj0, 4);
		ObjEffect_SetVertexXY(obj0, 0, -16, -24*1);
		ObjEffect_SetVertexXY(obj0, 1, 16,  -24*1);
		ObjEffect_SetVertexXY(obj0, 2, 16, 24*1);
		ObjEffect_SetVertexXY(obj0, 3,  -16,  24*1);
		
		ObjEffect_SetVertexUV(obj0, 0,  0,  0);
		ObjEffect_SetVertexUV(obj0, 1,  41, 0);
		ObjEffect_SetVertexUV(obj0, 2, 41,  65);
		ObjEffect_SetVertexUV(obj0, 3, 0, 65);


		ascent(i in 0..4)
		{
			ObjEffect_SetVertexColor(obj0, i, Alpha, 255, 255, 255);
		}
		if(CardPower<num*1000+1000 && CardPower>=num*1000)
		{
			DrawCardGauge(x,y,scx,scy);
		}

		let CardCost=1;
		if(length(CardDeck)>0)
		{
		alternative(CardDeck[0])
		case(200){CardCost=3;}
		case(202){CardCost=5;}
		case(203){CardCost=5;}
		case(204){CardCost=4;}
		case(205){CardCost=2;}
		case(206){CardCost=3;}
		case(207){CardCost=5;}
		case(208){CardCost=1;}
		case(209){CardCost=3;}
		case(211){CardCost=2;}
		case(212){CardCost=3;}
		case(214){CardCost=4;}
		case(215){CardCost=2;}
		case(219){CardCost=5;}
		}
		if(CardCost*1000<=CardPower)
		{
			if(num==0 && CardPower>=1000)
			{
				DrawCardFrame(x,y,scx,scy);
			}
			ascent(i in 1..5)
			{
				if(num==i && CardPower>=(i+1)*1000 && CardCost>=i+1)
				{
					DrawCardFrame(x,y,scx,scy);
				}
			}
		}

		ObjEffect_SetScale(obj0, scx,scy);
		Obj_SetPosition(obj0,x,y);
		ObjEffect_SetLayer(obj0,3);

		wait(1);
		Obj_Delete(obj0);
}


task DrawCardGauge(x,y,scx,scy)
{
		y+=24*scy;
		let Alpha=150;
		if((GetPlayerY>GetClipMaxY-150))
		{
			Alpha=(255+300*(-GetPlayerY+(GetClipMaxY-150))/(GetClipMaxY-150))*0.6;
		}
		let obj0 = Obj_Create(OBJ_EFFECT);

		ObjEffect_SetTexture(obj0,imgWhite);

		ObjEffect_SetPrimitiveType(obj0, PRIMITIVE_TRIANGLEFAN);
		ObjEffect_SetRenderState(obj0, ADD); 
		ObjEffect_CreateVertex(obj0, 4);
		ObjEffect_SetVertexXY(obj0, 0, -16, -24*0);
		ObjEffect_SetVertexXY(obj0, 1, 16,  -24*0);
		ObjEffect_SetVertexXY(obj0, 2, 16, -24*2);
		ObjEffect_SetVertexXY(obj0, 3,  -16,  -24*2);
		
		ObjEffect_SetVertexUV(obj0, 0,  0,  0);
		ObjEffect_SetVertexUV(obj0, 1,  32, 0);
		ObjEffect_SetVertexUV(obj0, 2, 32,  48);
		ObjEffect_SetVertexUV(obj0, 3, 0, 48);

		ascent(i in 0..4)
		{
			ObjEffect_SetVertexColor(obj0, i, Alpha, 255, 0, 0);
		}

		scy=scy*(CardPower%1000)/1000;
		ObjEffect_SetScale(obj0, scx,scy);
		Obj_SetPosition(obj0,x,y);
		ObjEffect_SetLayer(obj0,2);

		wait(1);
		Obj_Delete(obj0);
}


task DrawCardFrame(x,y,scx,scy)
{
		let Alpha=255;
		if((GetPlayerY>GetClipMaxY-150))
		{
			Alpha=255+300*(-GetPlayerY+(GetClipMaxY-150))/(GetClipMaxY-150);
		}
		let obj0 = Obj_Create(OBJ_EFFECT);

		ObjEffect_SetTexture(obj0,csd~"img\SquareLine.png");

		ObjEffect_SetPrimitiveType(obj0, PRIMITIVE_TRIANGLEFAN);
		ObjEffect_SetRenderState(obj0, ADD); 
		ObjEffect_CreateVertex(obj0, 4);
		ObjEffect_SetVertexXY(obj0, 0, -16, -24);
		ObjEffect_SetVertexXY(obj0, 1, 16,  -24);
		ObjEffect_SetVertexXY(obj0, 2, 16, 24);
		ObjEffect_SetVertexXY(obj0, 3,  -16,  24);
		
		ObjEffect_SetVertexUV(obj0, 0,  0,  0);
		ObjEffect_SetVertexUV(obj0, 1,  32, 0);
		ObjEffect_SetVertexUV(obj0, 2, 32,  48);
		ObjEffect_SetVertexUV(obj0, 3, 0, 48);

		ascent(i in 0..4)
		{
			ObjEffect_SetVertexColor(obj0, i, Alpha, 255, 255, 0);
		}

		ObjEffect_SetScale(obj0, scx,scy);
		Obj_SetPosition(obj0,x,y);
		ObjEffect_SetLayer(obj0,3);

		wait(1);
		Obj_Delete(obj0);
}

task DrawCardBack(num,x,y,scx,scy)
{
		let Alpha=200;
		if((GetPlayerY>GetClipMaxY-150))
		{
			Alpha=(255+300*(-GetPlayerY+(GetClipMaxY-150))/(GetClipMaxY-150))*0.8;
		}
		if(CardPower<num*1000+1000)
		{
			Alpha=150;
			if((GetPlayerY>GetClipMaxY-150))
			{
			Alpha=(255+300*(-GetPlayerY+(GetClipMaxY-150))/(GetClipMaxY-150))*0.6;
			}
		}
		let obj0 = Obj_Create(OBJ_EFFECT);

		ObjEffect_SetTexture(obj0,imgWhite);

		ObjEffect_SetPrimitiveType(obj0, PRIMITIVE_TRIANGLEFAN);
		ObjEffect_SetRenderState(obj0, SUBTRACT); 
		ObjEffect_CreateVertex(obj0, 4);
		ObjEffect_SetVertexXY(obj0, 0, -16, -24);
		ObjEffect_SetVertexXY(obj0, 1, 16,  -24);
		ObjEffect_SetVertexXY(obj0, 2, 16, 24);
		ObjEffect_SetVertexXY(obj0, 3,  -16,  24);
		
		ObjEffect_SetVertexUV(obj0, 0,  0,  0);
		ObjEffect_SetVertexUV(obj0, 1,  32, 0);
		ObjEffect_SetVertexUV(obj0, 2, 32,  48);
		ObjEffect_SetVertexUV(obj0, 3, 0, 48);

		ascent(i in 0..4)
		{
			ObjEffect_SetVertexColor(obj0, i, Alpha, 255, 255, 255);
		}

		ObjEffect_SetScale(obj0, scx,scy);
		Obj_SetPosition(obj0,x,y);
		ObjEffect_SetLayer(obj0,2);

		wait(1);
		Obj_Delete(obj0);
}

task LevelDraw(Level)
{
		let R=255;let G=255;let B=255;
		alternative(Level)
		case(0){R=0;G=0;B=255;}
		case(1){R=0;G=255;B=0;}
		case(2){R=255;G=255;B=0;}
		case(3){R=255;G=0;B=0;}
		let Alpha=200;
		let obj0 = Obj_Create(OBJ_EFFECT);

		ObjEffect_SetTexture(obj0,csd~"img\Level.png");

		ObjEffect_SetPrimitiveType(obj0, PRIMITIVE_TRIANGLEFAN);
		//ObjEffect_SetRenderState(obj0, ADD); 
		ObjEffect_CreateVertex(obj0, 4);
		ObjEffect_SetVertexXY(obj0, 0, -128, -18);
		ObjEffect_SetVertexXY(obj0, 1, 128,  -18);
		ObjEffect_SetVertexXY(obj0, 2, 128, 18);
		ObjEffect_SetVertexXY(obj0, 3,  -128,  18);
		
		ObjEffect_SetVertexUV(obj0, 0,  0,  12+57*Level);
		ObjEffect_SetVertexUV(obj0, 1,  256, 12+57*Level);
		ObjEffect_SetVertexUV(obj0, 2, 256,  48+57*Level);
		ObjEffect_SetVertexUV(obj0, 3, 0, 48+57*Level);

		ascent(i in 0..4)
		{
			ObjEffect_SetVertexColor(obj0, i, Alpha, R, G, B);
		}
		let scx=0.5;
		let scy=0.5;
		ObjEffect_SetScale(obj0, scx,scy);
		Obj_SetPosition(obj0,GetPlayerX,GetPlayerY+10);
		ObjEffect_SetLayer(obj0,3);
		let speed=3;
		Obj_SetSpeed(obj0,speed);
		Obj_SetAngle(obj0,270);

		loop(30)
		{
			speed-=2.5/30;
			Obj_SetSpeed(obj0,speed);
			yield;
		}
		loop(30)
		{
		ascent(i in 0..4)
		{
			ObjEffect_SetVertexColor(obj0, i, Alpha, R, G, B);
		}
		Alpha-=200/30;
			yield;
		}
		Obj_Delete(obj0);
}

	function NumToStringNoComplete(let num)
	{
		if(num==0)
		{
			num=0.1;
		}
		let leng = trunc(log10(num))+1;//̌߂
		let string = ToString(num);//𕶎ɕς
		return string[0..leng];//XCVOĕԂ
	}