#e[Stage]
#Title[ExRumiaXe[W]
#Text[ExRumiaXe[W]
#Image[.\img\ExRumia(u~bhiCg@Gv).png]
#BackGround[Default]
#Player[FREE]
#ScriptVersion[2]

script_stage_main
{
/*	ϐ錾ɒǉs@	*/

	let title=true;//^CgȂtrue
	let musicroom=false;//~[WbN[ɋ鎞true
	let testbgm1="bgm\Regular\stage\̓no[hE͓.MP3";//ĐȂP
	let testbgm2="bgm\Regular\boss\{XƂ̐킢.MP3";//ĐȂQ
	let titleimg=GetCurrentScriptDirectory~".\img\ExRumiaBack.png";//^Cgʒɕ\摜
	let cursol=1;//J[\̏ʒuPɂ
	let form=1;//݈ʒu1ԂƂ

/*	ϐ錾ɒǉs@܂	*/

	let cx=GetCenterX();//STGV[̒SxW擾
	let imgEnemy=GetCurrentScriptDirectory~"img\Enemy.png";//Enemy.pngւ̃pX
	@Initialize()
	{
		LoadGraphic(imgEnemy);//G摜ǂ݂
/*	@Initializeɒǉs@	*/

		LoadGraphic(titleimg);//^Cgʒɕ\摜ǂݍ
		MainTask;//C^XNN

/*	@Initializeɒǉs@܂	*/

	}
	
	@MainLoop()
	{
/*	@MainLoopɒǉs@	*/

		if(title==true)//^Cgʒׂ
		{//^Cgʒ
			ForbidShot(true);//Vbg֎~
			ForbidBomb(true);//{֎~
			SetPlayerX(GetCenterX);//vC[XʒuŒ
			SetPlayerY(GetClipMaxY/3+GetCenterY);//vC[YʒuŒ
		}
		else//^Cgʒł͖ꍇ
		{
			ForbidShot(false);//Vbggp
			ForbidBomb(false);//{gp
		}

/*	@MainLoopɒǉs@܂	*/

		yield;//t[^XNA
	}

/*	@DrawTopObject@ǉs@	*/
	@DrawTopObject
	{
		if(title==true)//^Cgʒׂ
		{
			SetTexture(titleimg);//^Cgʂ̉摜Zbg
			SetGraphicRect(0,0,384,448);//摜̐؂o͈͂w@Z`͎R
			DrawGraphic(GetCenterX,GetCenterY);//ɕ`@CӂłC
			DrawText("",50,40*cursol,18,255);//J[\ʒuɁ˂`
			if(form==1)
			{//^Cgʎ
				DrawText("Q[X^[g",100,40,18,255);//Pڕ`
				DrawText("TEheXg",100,80,18,255);//Qڕ`
				DrawText("ϋA",100,120,18,255);//Rڕ`
			}
			else if(form==21)
			{//tH[21@~[WbN[
				DrawText("eXgBGMPĐ",100,40,18,255);//Pڕ`
				DrawText("eXgBGMQĐ",100,80,18,255);//Qڕ`
			}
		}
	}
/*	@DrawTopObject@ǉs@܂	*/
	
	@Finalize()
	{
/*	@Finalizeɒǉs@	*/

		DeleteGraphic(titleimg);//^Cgʂ̉摜j

/*	@Finalizeɒǉs@܂	*/

		DeleteGraphic(imgEnemy);
	}
/*
	@BackGround()
	{
	 //@BackGround݂
	 //#BackGround[Default]D悳ĕ`悳
	}
*/


/*	b@ǉsƂ	*/
	task MainTask
	{
		yield;//ɏ
		TSystem;//VXeǗ^XN
		TMusicRoom;//~[WbN[\^XN
		TStage;//Xe[WǗ^XN
	}
	task TSystem
	{
		loop//^I@@MainLoop
		{
			if(title==true)
			{
				if(form==1)
				{//^Cgʎ
					if(GetKeyState(VK_UP)==KEY_PUSH)
					{
						if(cursol==1)
						{
							cursol=3;
						}
						else
						{
							cursol--;
						}
					}
					else if(GetKeyState(VK_DOWN)==KEY_PUSH)
					{//ꂽ
						if(cursol==3)
						{
							cursol=1;
						}
						else
						{
							cursol++;
						}
					}
					else if(GetKeyState(VK_SHOT)==KEY_PUSH)
					{
						if(form<=10)//Pwׂ
						{//Pw
							form=cursol*10+form;
						}
						else if(form<=100)//Qwׂ
						{//Qw
							form=cursol*100+form;
						}
						else if(form<=1000)//Rwׂ
						{//Rw
							form=cursol*1000+form;
						}
						else if(form<=10000)//Swׂ
						{//Sw
							form=cursol*10000+form;
						}
						cursol=1;
					}
					else if(GetKeyState(VK_BOMB)==KEY_PUSH)
					{
						cursol=3;
					}
				}
				else if(form==21)
				{//~[WbN[
					if(GetKeyState(VK_UP)==KEY_PUSH)
					{
						if(cursol==1)
						{
							cursol=2;
						}
						else
						{
							cursol--;
						}
					}
					else if(GetKeyState(VK_DOWN)==KEY_PUSH)
					{
						if(cursol==2)
						{
							cursol=1;
						}
						else
						{
							cursol++;
						}
					}
					else if(GetKeyState(VK_BOMB)==KEY_PUSH)
					{
						if(form<=10)//Pwׂ
						{//Pw
							cursol=3;
						}
						else if(form<=100)//Qwׂ
						{//Qw
							cursol=int(form/10);//iK1/10ăJ[\ɓ
							form=1;//Pwɖ߂
						}
						else if(form<=1000)//Rwׂ
						{//Rw
							cursol=int(form/100);//iK1/100ăJ[\ɓ
							form=form-cursol*100;//Qwɖ߂
						}
						else if(form<=10000)//Swׂ
						{//Sw
							cursol=int(form/1000);
							form=form-cursol*1000;//Rwɖ߂
						}
					}
				}
				else if(form==31)
				{//ϋAI
					ClearStage;
				}
			}
			else
			{//^CgȊO̎̓uCNĖ[vI
				break;
			}
			yield;
		}
	}
	task TMusicRoom
	{
		loop//^I@MainLoop
		{
			let p_music=1;
			if(title==true)
			{
				if(form==21)
				{//~[WbN[˓H
					if(musicroom==false)
					{//˓1t[ڂ?
						musicroom=true;
					}//̏Ȃ1t[ڂłȂ1ږڂ肳ꂽɂȂ
					else
					{
						if(GetKeyState(VK_SHOT)==KEY_PUSH)
						{
							if(cursol==1)
							{
								p_music=1;
								PlayMusic(testbgm1);//ȍĐ
							}
							else if(cursol==2)
							{
								p_music=2;
								PlayMusic(testbgm2);//ȍĐ
							}
						}
					else if(GetKeyState(VK_USER)==KEY_PUSH)
					{
						if(p_music==1)
						{
							DeleteMusic(testbgm1);
						}
						else if(p_music==2)
						{
							DeleteMusic(testbgm2);
						}
					}
				}
			}
			else
			{//~[WbN[oꍇ
				musicroom=false;//tO낷
			}
		}
		else
		{//^CgȊȌꍇ̓uCNĖ[vI
			break;
		}
		yield;
		}
	}
	task TStage
	{
		loop
		{
			if(form==11)
			{//Xe[W˓
				title=false;//^CgʃtO낷
				StageTask;//Xe[WN
			}
			yield;
		}
	}
/*	ǉs܂	*/
	
/*	StageTask̊֐^taskfunctionɕύX	*/
	function StageTask
	{//Xe[W^XN
		function Wait(let frame)
		{//ҋ@֐
			loop(frame){yield};
		}
		function WaitForZeroEnemy()
		{//G0ɂȂ܂őҋ@֐
			while(GetEnemyNum() != 0){yield;}
		}	
		Wait(60);//60t[҂
		//Gt@Cǂ݂ŏo
		CreateEnemyFromFile(GetCurrentScriptDirectory~"Enemy01.txt",cx,0,0,0,0);
		WaitForZeroEnemy();//G܂Œ~
		Wait(240);//240t[҂
		//ExRumiao
		CreateEnemyBossFromFile(GetCurrentScriptDirectory~"ExRumia.txt",cx,0,0,0,0);
		WaitForZeroEnemy();//G܂Œ~
		Wait(60);//60t[҂
		Clear();//Xe[WNA
	}
}
