Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #TouhouDanmakufu[Stage]
- #Title[Stage 1]
- #Text[Stage 1]
- #Player[.\..\Futo\FUTOA.txt]
- #PlayLevel[Normal]
- #ScriptVersion[2]
- script_stage_main{
- let D = GetCurrentScriptDirectory;
- let bgm = D ~ "bgm\BGM 2.wav";
- let bgm2 = D ~ "bgm\BGM 3.wav";
- let stage1 = D ~ "system\stage1.png";
- let ext = D ~ "sfx\Extend.wav";
- let bg = D ~ "system\bg.png";
- function Wait(let frames){loop(frames){yield;}}
- function WaitForZeroEnemy{while(GetEnemyNum != 0){yield;}}
- task effectobj{
- Wait(30);
- let obj=Obj_Create(OBJ_EFFECT);
- let counter = 0;
- ObjEffect_SetRenderState(obj, ALPHA);
- ObjEffect_SetTexture(obj, stage1);
- Obj_SetPosition(obj, GetCenterX, GetCenterY-60);
- ObjEffect_SetScale(obj, 2, 2);
- ObjEffect_SetLayer(obj, 5);
- ObjEffect_SetPrimitiveType(obj, PRIMITIVE_TRIANGLESTRIP);
- ObjEffect_CreateVertex(obj, 4);
- ObjEffect_SetVertexXY(obj, 0, -45, -44);
- ObjEffect_SetVertexXY(obj, 1, 45, -44);
- ObjEffect_SetVertexXY(obj, 2, -45, 44);
- ObjEffect_SetVertexXY(obj, 3, 45, 44);
- ObjEffect_SetVertexUV(obj, 0, 0, 0);
- ObjEffect_SetVertexUV(obj, 1, 90, 0);
- ObjEffect_SetVertexUV(obj, 2, 0, 88);
- ObjEffect_SetVertexUV(obj, 3, 90, 88);
- while(!Obj_BeDeleted(obj)) {
- if(counter==120){Obj_Delete(obj);}
- counter++;
- yield;
- }
- }
- task extendstate{
- let extendlist = [50, 100, 250, 500, 800, 1100, 1500, 2000];
- let indexq = 0;
- while(indexq<8){
- if(GetPoint > extendlist[indexq]){
- ExtendPlayer(1);
- PlaySE(ext);
- indexq++;
- }
- yield;
- }
- }
- task stage{
- PlayMusic(bgm);
- Wait(180);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX-120, GetCenterY-240, 1.5, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX+120, GetCenterY-240, 1.5, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX-190, GetCenterY-240, 2.5, 45, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX+190, GetCenterY-240, 2.5, 135, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX-80, GetCenterY-240, 3, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX+80, GetCenterY-240, 3, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX, GetCenterY-240, 2.5, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX-95, GetCenterY-240, 1.5, 45, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX+95, GetCenterY-240, 1.5, 135, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX-190, GetCenterY-50, 2.5, 45, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX+190, GetCenterY-50, 2.5, 135, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX-190, GetCenterY-90, 2.5, 60, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX+190, GetCenterY-90, 2.5, 120, 0);
- Wait(60);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX-120, GetCenterY-240, 1.8, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX+120, GetCenterY-240, 1.8, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX-190, GetCenterY-240, 2, 45, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX+190, GetCenterY-240, 2, 135, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX-60, GetCenterY-240, 1.8, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX+60, GetCenterY-240, 1.8, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX-95, GetCenterY-240, 2, 45, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A2.txt", GetCenterX+95, GetCenterY-240, 2, 135, 0);
- Wait(180);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A3.txt", GetCenterX+200, GetCenterY-120, 2, 180, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A3.txt", GetCenterX-200, GetCenterY-120, 2, 0, 0);
- Wait(90);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A3.txt", GetCenterX+200, GetCenterY-60, 2, 180, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A3.txt", GetCenterX-200, GetCenterY-60, 2, 0, 0);
- Wait(90);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A3.txt", GetCenterX-200, GetCenterY-120, 2, 180, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A3.txt", GetCenterX+200, GetCenterY-120, 2, 0, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A3.txt", GetCenterX+100, GetCenterY-240, 2, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A3.txt", GetCenterX-100, GetCenterY-240, 2, 90, 0);
- Wait(90);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A4.txt", GetCenterX-220, GetCenterY-112, 1.6, 0, 0);
- Wait(35);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A4.txt", GetCenterX-220, GetCenterY-112, 1.6, 0, 0);
- Wait(35);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A4.txt", GetCenterX-220, GetCenterY-112, 1.6, 0, 0);
- Wait(35);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A4.txt", GetCenterX-220, GetCenterY-112, 1.6, 0, 0);
- Wait(35);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A3.txt", GetCenterX+120, GetCenterY-240, 2, 310, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A3.txt", GetCenterX-200, GetCenterY-100, 2, 210, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A3.txt", GetCenterX-190, GetCenterY-240, 2, 79, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A3.txt", GetCenterX+190, GetCenterY-240, 2, 35, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A4.txt", GetCenterX-220, GetCenterY-112, 1.6, 0, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A4.txt", GetCenterX+220, GetCenterY-62, 1.6, 180, 0);
- Wait(35);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A4.txt", GetCenterX+220, GetCenterY-62, 1.6, 180, 0);
- Wait(35);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A4.txt", GetCenterX+220, GetCenterY-62, 1.6, 180, 0);
- Wait(35);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A4.txt", GetCenterX+220, GetCenterY-62, 1.6, 180, 0);
- Wait(35);
- Wait(35);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A10.txt", 0, 0, 0, 0, 0);
- Wait(35);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A11.txt", GetCenterX, GetCenterY-240, 1, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A11b.txt", GetCenterX, GetCenterY-240, 1, 90, 0);
- Wait(35);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A11.txt", GetCenterX, GetCenterY-240, 1, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A11b.txt", GetCenterX, GetCenterY-240, 1, 90, 0);
- Wait(35);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A11.txt", GetCenterX, GetCenterY-240, 1, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A11b.txt", GetCenterX, GetCenterY-240, 1, 90, 0);
- Wait(35);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A11.txt", GetCenterX, GetCenterY-240,1, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A11b.txt", GetCenterX, GetCenterY-240, 1, 90, 0);
- Wait(35);
- Wait(270);
- //MIDBOSS
- CreateEnemyBossFromFile(GetCurrentScriptDirectory~"Stage 1 Mid-Boss Non-Spell 1.txt", 0, 0, 0, 0, 0);
- WaitForZeroEnemy;
- Wait(90);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A5.txt", GetCenterX-120, GetCenterY-240, 2, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A6.txt", GetCenterX-200, GetCenterY-100, 2, 0, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A5.txt", GetCenterX+120, GetCenterY-240, 2, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A6.txt", GetCenterX+200, GetCenterY-100, 2, 180, 0);
- Wait(160);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A5.txt", GetCenterX-120, GetCenterY-240, 2, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A7.txt", GetCenterX-200, GetCenterY-100, 2, 0, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A5.txt", GetCenterX+120, GetCenterY-240, 2, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A7.txt", GetCenterX+200, GetCenterY-100, 2, 180, 0);
- Wait(160);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A5.txt", GetCenterX-120, GetCenterY-240, 2, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A6.txt", GetCenterX-200, GetCenterY-100, 2, 0, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A7.txt", GetCenterX-200, GetCenterY-100, 2, 0, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A5.txt", GetCenterX+120, GetCenterY-240, 2, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A6.txt", GetCenterX+200, GetCenterY-100, 2, 180, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A7.txt", GetCenterX+200, GetCenterY-100, 2, 180, 0);
- Wait(200);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A9.txt", GetCenterX+200, GetCenterY-100, 2, 180, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A9b.txt", GetCenterX-200, GetCenterY-100, 2, 0, 0);
- Wait(330);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A9.txt", GetCenterX+200, GetCenterY-100, 2, 180, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A9b.txt", GetCenterX-200, GetCenterY-100, 2, 0, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A5.txt", GetCenterX-120, GetCenterY-240, 2, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A6.txt", GetCenterX-200, GetCenterY-100, 2, 0, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A5.txt", GetCenterX+120, GetCenterY-240, 2, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A6.txt", GetCenterX+200, GetCenterY-100, 2, 180, 0);
- Wait(330);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A.txt", GetCenterX+200, GetCenterY-100, 2, 180, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A.txt", GetCenterX-200, GetCenterY-100, 2, 90, 0);
- Wait(90);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A.txt", GetCenterX-120, GetCenterY-240, 1.6, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A.txt", GetCenterX+120, GetCenterY-240, 1.6, 90, 0);
- Wait(90);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A.txt", GetCenterX-120, GetCenterY-240, 1.6, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A.txt", GetCenterX+120, GetCenterY-240, 1.6, 90, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A.txt", GetCenterX+200, GetCenterY-100, 2, 180, 0);
- CreateEnemyFromFile(GetCurrentScriptDirectory~"enemy A.txt", GetCenterX-200, GetCenterY-100, 2, 90, 0);
- Wait(60);
- Wait(360);
- CollectItems;
- FadeOutMusic(bgm,30);
- Wait(120);
- PlayMusic(bgm2);
- Wait(40);
- CreateEnemyBossFromFile(GetCurrentScriptDirectory~"Stage 1 Boss.txt", 0, 0, 0, 0, 0);
- WaitForZeroEnemy;
- CollectItems;
- Wait(360);
- FadeOutMusic(bgm2,10);
- Clear;
- }
- @Initialize{
- //ExpertEx(false, 3, 3);
- LoadMusic(bgm);
- LoadMusic(bgm2);
- LoadGraphic(stage1);
- LoadSE(ext);
- LoadGraphic(bg);
- SetNormPoint(50);
- effectobj;
- extendstate;
- stage;
- }
- @MainLoop{yield;}
- @Background{
- SetTexture(bg);
- SetRenderState(ALPHA);
- SetAlpha(255);
- SetGraphicRect(0,0,257,257);
- SetGraphicScale(1,1);
- SetGraphicAngle(0,0,0);
- DrawGraphic(GetCenterX,GetCenterY);
- }
- @Finalize{
- DeleteGraphic(stage1);
- DeleteMusic(bgm);
- DeleteMusic(bgm2);
- DeleteSE(ext);
- DeleteGraphic(bg);
- }}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement