Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #TouhouDanmakufu[Single]
- #ScriptVersion[3]
- #Title["Test System A8"]
- #Text["???"]
- // Example, definitely required for cut-in.
- let Cutin = GetCurrentScriptDirectory ~ "img/CutIn.png";
- let objBoss;
- let objScene=GetEnemyBossSceneObjectID();
- let size = 0.8;
- let type = true;
- let obj = 1;
- let bSpell = false;
- let l = 1024;
- let w = 40;
- let dt = 1000;
- let graph = 41;
- let delay = 10;
- let count = -120;
- #include "./System !/Shot/AllStarShot_Const.txt"
- #include "./Cutin.txt"
- #include "./SoundFunctions.txt"
- @Initialize {
- //cutin(BYAKUREN,BossCutIn,0,0,250,595);
- objBoss = ObjEnemy_Create(OBJ_ENEMY_BOSS);
- ObjEnemy_Regist(objBoss);
- ObjMove_SetDestAtFrame(objBoss, GetCenterX, 100, 100);
- ObjEnemyBossScene_StartSpell(objScene);
- ObjCutin_SetSpellcardS4("Heaven 'Rainbow Diversities'", Cutin, BYAKUREN, 6000, 10, 7000);
- ObjCutin_LaunchS3(BYAKUREN, Cutin, "Focuser");
- PlaySound("cardcall",100,0);
- TDrawLoop;
- TFinalize;
- MainTask;
- RenderBG;
- DrawName;
- }
- @Event {
- alternative(GetEventType())
- case(EV_REQUEST_LIFE){
- SetScriptResult(1);
- }
- case(EV_REQUEST_TIMER){
- SetScriptResult(90);
- }
- case(EV_REQUEST_SPELL_SCORE){
- SetScriptResult(9999999);
- }
- case(EV_REQUEST_IS_DURABLE_SPELL){
- SetScriptResult(true);
- }
- }
- @MainLoop {
- let objScene = GetEnemyBossSceneObjectID();
- if(objScene != ID_INVALID && ObjEnemyBossScene_GetInfo(objScene, INFO_IS_SPELL))
- {
- bSpell = true;
- }
- else
- {
- bSpell = false;
- }
- yield;
- }
- task MainTask{
- wait(120);
- ObjMove_SetDestAtFrame(objBoss, GetCenterX, 100, 60);
- magiccircle(objBoss,size,type);
- fireA;
- fireB;
- fireC;
- fireD;
- fireE;
- fireF;
- fireG;
- fireH;
- fireI;
- fireJ;
- fireK;
- fireL;
- fireM;
- fireN;
- fireO;
- fireP;
- fireQ;
- fireR;
- fireS;
- fireT;
- }
- task fireA{
- wait(150);
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- let r = 30;
- let speed = 2;
- let num = 10;
- let n = 10;
- let way = 1;
- ascent(n in 0..30){
- ascent(i in 0..num){
- PlaySound("Shot2",100,0);
- let angle = i*360/num+(360/num)*(5/12)*n*way;
- ascent(j in 0..1){
- CreateShotA1(ObjMove_GetX(objBoss)+r*cos(angle+j*way),ObjMove_GetY(objBoss)+r*sin(angle+j*way),speed,angle+j*way,292,8);
- }
- }
- wait(3);
- }
- }
- task fireB{
- wait(240);
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- let r = 30;
- let speed = 2;
- let num = 10;
- let n = 10;
- let way = -1;
- ascent(n in 0..30)
- {
- ascent(i in 0..num)
- {
- PlaySound("Shot2",100,0);
- let angle = i*360/num+(360/num)*(5/12)*n*way;
- ascent(j in 0..1)
- {
- CreateShotA1(ObjMove_GetX(objBoss)+r*cos(angle+j*way),ObjMove_GetY(objBoss)+r*sin(angle+j*way),speed,angle+j*way,298,8);
- }
- }
- wait(3);
- }
- }
- task fireC{
- wait(330);
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- let r = 30;
- let speed = 2;
- let num = 10;
- let n = 10;
- let way = 1;
- ascent(n in 0..30)
- {
- ascent(i in 0..num)
- {
- let angle = i*360/num+(360/num)*(5/12)*n*way;
- ascent(j in 0..1)
- {
- PlaySound("Shot2",100,0);
- CreateShotA1(ObjMove_GetX(objBoss)+r*cos(angle+j*way),ObjMove_GetY(objBoss)+r*sin(angle+j*way),speed,angle+j*way,297,8);
- }
- }
- wait(3);
- }
- }
- task fireD{
- wait(420);
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- let r = 30;
- let speed = 2;
- let num = 10;
- let n = 10;
- let way = -1;
- ascent(n in 0..30)
- {
- ascent(i in 0..num)
- {
- PlaySound("Shot2",100,0);
- let angle = i*360/num+(360/num)*(5/12)*n*way;
- ascent(j in 0..1)
- {
- CreateShotA1(ObjMove_GetX(objBoss)+r*cos(angle+j*way),ObjMove_GetY(objBoss)+r*sin(angle+j*way),speed,angle+j*way,296,8);
- }
- }
- wait(3);
- }
- }
- task fireE{
- wait(510);
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- let r = 30;
- let speed = 2;
- let num = 10;
- let n = 10;
- let way = 1;
- ascent(n in 0..30)
- {
- ascent(i in 0..num)
- {
- PlaySound("Shot2",100,0);
- let angle = i*360/num+(360/num)*(5/12)*n*way;
- ascent(j in 0..1)
- {
- PlaySound("Shot2",100,0);
- CreateShotA1(ObjMove_GetX(objBoss)+r*cos(angle+j*way),ObjMove_GetY(objBoss)+r*sin(angle+j*way),speed,angle+j*way,295,8);
- }
- }
- wait(3);
- }
- }
- task fireF{
- wait(600);
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- let r = 30;
- let speed = 2;
- let num = 10;
- let n = 10;
- let way = -1;
- ascent(n in 0..30)
- {
- ascent(i in 0..num)
- {
- PlaySound("Shot2",100,0);
- let angle = i*360/num+(360/num)*(5/12)*n*way;
- ascent(j in 0..1)
- {
- CreateShotA1(ObjMove_GetX(objBoss)+r*cos(angle+j*way),ObjMove_GetY(objBoss)+r*sin(angle+j*way),speed,angle+j*way,294,8);
- }
- }
- wait(3);
- }
- }
- task fireG{
- wait(690);
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- let r = 30;
- let speed = 2;
- let num = 10;
- let n = 10;
- let way = 1;
- ascent(n in 0..30)
- {
- ascent(i in 0..num)
- {
- PlaySound("Shot2",100,0);
- let angle = i*360/num+(360/num)*(5/12)*n*way;
- ascent(j in 0..1)
- {
- CreateShotA1(ObjMove_GetX(objBoss)+r*cos(angle+j*way),ObjMove_GetY(objBoss)+r*sin(angle+j*way),speed,angle+j*way,293,8);
- }
- }
- wait(3);
- }
- }
- task fireH{
- wait(900);
- let ang = rand(0,360);
- loop(30){
- PlaySound("Shot2",100,0);
- let obj = CreateShotA1(ObjMove_GetX(objBoss),ObjMove_GetY(objBoss),4,ang,276,10);
- let obj2 = CreateShotA1(ObjMove_GetX(objBoss),ObjMove_GetY(objBoss),3.5,ang,282,10);
- let obj3 = CreateShotA1(ObjMove_GetX(objBoss),ObjMove_GetY(objBoss),3,ang+5,281,10);
- let obj4 = CreateShotA1(ObjMove_GetX(objBoss),ObjMove_GetY(objBoss),2.5,ang,280,10);
- let obj5 = CreateShotA1(ObjMove_GetX(objBoss),ObjMove_GetY(objBoss),2,ang,279,10);
- let obj6 = CreateShotA1(ObjMove_GetX(objBoss),ObjMove_GetY(objBoss),1.5,ang+5,278,10);
- let obj7 = CreateShotA1(ObjMove_GetX(objBoss),ObjMove_GetY(objBoss),1,ang+5,277,10);
- ObjMove_SetAngularVelocity(obj, 0.2);
- ObjMove_SetAngularVelocity(obj2, -0.2);
- ObjMove_SetAngularVelocity(obj3, 0.2);
- ObjMove_SetAngularVelocity(obj4, -0.2);
- ObjMove_SetAngularVelocity(obj5, 0.2);
- ObjMove_SetAngularVelocity(obj6, -0.2);
- ObjMove_SetAngularVelocity(obj7, 0.2);
- ang += 360/30;
- }
- }
- task fireI{
- wait(1200);
- PlaySound("Laser1",100,0);
- let angleT = GetAngleToPlayer(objBoss);
- loop(32){
- let obj = CreateStraightLaserA1(ObjMove_GetX(objBoss), ObjMove_GetY(objBoss), angleT, 512, 50, 20, 1033, 60);
- ObjMove_AddPatternA2(obj, 120, NO_CHANGE, NO_CHANGE, 0.1, 0, 6);
- angleT += 360/-32;
- wait(5);
- }
- }
- task fireJ{
- wait(1200);
- PlaySound("Laser1",100,0);
- let angleT = GetAngleToPlayer(objBoss);
- loop(32){
- let obj = CreateStraightLaserA1(ObjMove_GetX(objBoss), ObjMove_GetY(objBoss), angleT, 512, 50, 20, 1039, 60);
- ObjMove_AddPatternA2(obj, 120, NO_CHANGE, NO_CHANGE, 0.1, 0, 6);
- angleT += 360/32;
- wait(5);
- }
- }
- task fireK{
- wait(1400);
- PlaySound("Laser1",100,0);
- let angleT = GetAngleToPlayer(objBoss);
- loop(32){
- let obj = CreateStraightLaserA1(ObjMove_GetX(objBoss), ObjMove_GetY(objBoss), angleT, 512, 50, 20, 1036, 60);
- ObjMove_AddPatternA2(obj, 120, NO_CHANGE, NO_CHANGE, 0.1, 0, 6);
- angleT += 360/-32;
- wait(5);
- }
- }
- task fireL{
- wait(1400);
- PlaySound("Laser1",100,0);
- let angleT = GetAngleToPlayer(objBoss);
- loop(32){
- let obj = CreateStraightLaserA1(ObjMove_GetX(objBoss), ObjMove_GetY(objBoss), angleT, 512, 50, 20, 1035, 60);
- ObjMove_AddPatternA2(obj, 120, NO_CHANGE, NO_CHANGE, 0.1, 0, 6);
- angleT += 360/32;
- wait(5);
- }
- }
- task fireM{
- wait(1600);
- PlaySound("Laser1",100,0);
- let angleT = GetAngleToPlayer(objBoss);
- loop(32){
- let obj = CreateStraightLaserA1(ObjMove_GetX(objBoss), ObjMove_GetY(objBoss), angleT, 512, 50, 20, 1038, 60);
- ObjMove_AddPatternA2(obj, 120, NO_CHANGE, NO_CHANGE, 0.1, 0, 6);
- angleT += 360/-32;
- wait(5);
- }
- }
- task fireN{
- wait(1600);
- PlaySound("Laser1",100,0);
- let angleT = GetAngleToPlayer(objBoss);
- loop(32){
- let obj = CreateStraightLaserA1(ObjMove_GetX(objBoss), ObjMove_GetY(objBoss), angleT, 512, 50, 20, 1034, 60);
- ObjMove_AddPatternA2(obj, 120, NO_CHANGE, NO_CHANGE, 0.1, 0, 6);
- angleT += 360/32;
- wait(5);
- }
- }
- task fireO{
- wait(1850);
- PlaySound("Laser5",100,0);
- let angleT = GetAngleToPlayer(objBoss);
- loop(5){
- let obj = CreateStraightLaserA1(ObjMove_GetX(objBoss), ObjMove_GetY(objBoss), angleT, 1024, 200, 100, 1037, 60);
- angleT += 360/5;
- wait(5);
- }
- }
- task fireP{
- ascent(i in 0..5){
- TShot01(i*360/1);
- TShot02(i*360/1);
- TShot03(i*360/1);
- TShot04(i*360/1);
- TShot05(i*360/1);
- TShot06(i*360/1);
- TShot07(i*360/1);
- TShot08(i*360/1);
- }
- }
- task TShot01(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(2000);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 45+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,67,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot02(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(2000);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 90+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,79,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot03(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(2000);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 135+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,78,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot04(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(2000);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 180+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,75,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot05(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(2000);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 225+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,73,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot06(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(2000);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 270+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,71,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot07(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(2000);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 315+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,68,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot08(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(2000);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = angle;
- let y = 0;
- loop{
- while(x<180){
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,69,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task fireQ{
- ascent(i in 0..5){
- TShot11(i*360/1);
- TShot12(i*360/1);
- TShot13(i*360/1);
- TShot14(i*360/1);
- TShot15(i*360/1);
- TShot16(i*360/1);
- TShot17(i*360/1);
- TShot18(i*360/1);
- }
- }
- task TShot11(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(3400);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 45+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,67,10);
- x++;
- dir += 360/-180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot12(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(3400);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 90+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,79,10);
- x++;
- dir += 360/-180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot13(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(3400);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 135+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,78,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot14(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(3400);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 180+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,75,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot15(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(3400);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 225+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,73,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot16(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(3400);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 270+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,71,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot17(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(3400);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = 315+angle;
- let y = 0;
- loop{
- while(x<180){
- PlaySound("Shot1",100,0);
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,68,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task TShot18(angle){
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){break;}
- wait(3400);
- let AnyDirection = rand(0,360);
- let GetPlayerXY = GetAngleToPlayer(objBoss);
- let x = 0;
- let dir = angle;
- let y = 0;
- loop{
- while(x<180){
- CreateShotA2(ObjMove_GetX(objBoss)+(30)*cos(dir),ObjMove_GetY(objBoss)+(30)*sin(dir),2,dir,+0.05,3,69,10);
- x++;
- dir += 360/180+y;
- y ++;
- y -= 0.98;
- wait(12);
- }
- x = 0;
- yield;
- }
- }
- task fireR{
- if(ObjEnemy_GetInfo(objBoss, INFO_LIFE) <= 0){return;}//Default kill to prevent (0,0) spawning
- wait(3800);
- PlaySound("boon2",100,0);
- //BOUND IS 0+60
- let obj = CreateStraightLaserA1(-30, 0, 0, 512, 36, 6000, 1051, 0);
- ObjStLaser_SetSource(obj, false);
- ascent(i in 0..8){//Move the laser
- ObjMove_SetY(obj, i);
- yield;
- }
- }
- task fireS{
- if(ObjEnemy_GetInfo(objBoss, INFO_LIFE) <= 0){return;}//Default kill to prevent (0,0) spawning
- wait(3800);
- PlaySound("boon2",100,0);
- //BOUND IS GSFH-60
- let obj = CreateStraightLaserA1(-30, GetStgFrameHeight, 0, 512, 36, 6000, 1003, 0);
- ObjStLaser_SetSource(obj, false);
- ascent(i in 0..8){//Move the laser
- ObjMove_SetY(obj, GetStgFrameHeight-i);
- yield;
- }
- }
- task fireT{
- wait(4200);
- if(ObjEnemy_GetInfo(objBoss, INFO_LIFE) <= 0){return;}//Default kill to prevent (0,0) spawning
- //BOUND IS GSFH-60
- let obj = CreateStraightLaserA1(0, GetStgFrameHeight, 0, 512, 36, 6000, 1015, 0);
- ObjStLaser_SetSource(obj, false);
- ascent(i in 0..8){//Move the laser
- ObjMove_SetY(obj, GetStgFrameHeight-i);
- yield;
- }
- }
- task DrawName{
- let objText = ObjText_Create();
- let alpha = 255;
- ObjText_SetText(objText, "Eiki Shiki");
- ObjText_SetFontSize(objText, 12);
- ObjText_SetFontColorTop(objText, 255, 255, 255);
- ObjText_SetFontColorBottom(objText, 0, 255, 128);
- ObjText_SetFontBorderType(objText, BORDER_SHADOW);
- ObjText_SetFontBorderColor(objText,0, 128, 128);
- ObjText_SetFontBorderWidth(objText, 2);
- ObjRender_SetPosition(objText,0,12,0);
- while(!Obj_IsDeleted(objText)){
- if(GetPlayerY>80 && alpha<255){alpha+=10;}
- if(GetPlayerY<=80 && alpha>100){alpha-=10;}
- ObjRender_SetAlpha(objText,alpha);
- yield;
- }
- }
- task RenderBG{
- let path1 = GetCurrentScriptDirectory() ~ "img/Muenzuka.png";
- let obj1 = ObjPrim_Create(OBJ_SPRITE_2D);
- ObjRender_SetBlendType(obj1, BLEND_ALPHA);
- Obj_SetRenderPriority(obj1, 0.20);
- ObjPrim_SetTexture(obj1, path1);
- ObjSprite2D_SetSourceRect(obj1, 0, 0, 512, 512);
- ObjSprite2D_SetDestRect(obj1, -256, -256, 256, 256);
- ObjRender_SetPosition(obj1, 384/2, 448/2, 1);
- let frame = 0;
- let alpha = 0;
- loop {
- if (bSpell) { //Transition from stage background
- alpha = 255;
- } else {
- alpha = 0; //If no longer spell
- }
- Obj_SetVisible(obj1, alpha > 0);
- frame++;
- yield;
- }
- }
- task magiccircle(objBoss,size,type){
- let obj=ObjPrim_Create(OBJ_SPRITE_2D);
- let GCSD = GetCurrentScriptDirectory;
- let img=GCSD~"img/MG (3).png";
- let spin = 0;
- let s = 0;
- LoadTexture(img);
- ObjPrim_SetTexture(obj,img);
- ObjSprite2D_SetSourceRect(obj,0,0,256,256);
- ObjSprite2D_SetDestCenter(obj);
- ObjRender_SetScaleXYZ(obj,size,size,size);
- ObjRender_SetAlpha(obj,230);
- Obj_SetRenderPriority(obj,0.35);
- while(!Obj_IsDeleted(objBoss)){
- spin += 3;
- ObjRender_SetAngleXYZ(obj,0,0,-spin*1.5);
- ObjRender_SetPosition(obj,ObjMove_GetX(objBoss),ObjMove_GetY(objBoss),0);
- if(type==true){
- ObjRender_SetScaleXYZ(obj,size+0.08*sin(spin),size+0.08*sin(spin),0);
- }
- ObjMove_SetPosition(obj,ObjMove_GetX(objBoss), ObjMove_GetY(objBoss));
- yield;
- }
- Obj_Delete(obj);
- }
- task TDrawLoop {
- let obj=ObjPrim_Create(OBJ_SPRITE_2D);
- let imgBoss = GetCurrentScriptDirectory() ~ "img/shikieiki.png.png";
- ObjPrim_SetTexture(objBoss, imgBoss);
- ObjSprite2D_SetSourceRect(objBoss, 0, 0, 148, 125);
- ObjSprite2D_SetDestCenter(objBoss);
- wait(100);
- ObjRender_SetAlpha(obj,150);
- yield;
- }
- task TFinalize{
- while(ObjEnemy_GetInfo(objBoss, INFO_LIFE) > 0){yield;}
- if(ObjEnemyBossScene_GetInfo(objScene, INFO_PLAYER_SHOOTDOWN_COUNT)
- +ObjEnemyBossScene_GetInfo(objScene, INFO_PLAYER_SPELL_COUNT) == 0){
- AddScore(ObjEnemyBossScene_GetInfo(objScene, INFO_SPELL_SCORE));
- PlaySound("capture",100,0);
- }
- Obj_Delete(objBoss);
- DeleteShotAll(TYPE_ALL,TYPE_IMMEDIATE);
- SetAutoDeleteObject(true);
- CloseScript(GetOwnScriptID());
- return;
- }
- function GetCenterX(){
- return GetStgFrameWidth() / 2;
- }
- function wait(n){
- loop(n){yield;}
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement