Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- anim { "enemy.anm"; "stgenm01.anm"; }
- ecli { "darklib.ecl"; "default.ecl"; }
- // ============
- // || Boss ||
- // ============
- sub Boss()
- {
- var A;
- doBackSub("FX_ShadowEffect", 0);
- boss 2 5 "Boss1";
- return1();
- }
- sub Boss1()
- {
- var count countf basedir dir dir2 diradd finaldir ind;
- setLife(2300);
- new attacklist
- {
- attack 2200 45 Boss1Card -32513;
- }
- setRemainingSpells(1);
- setByDifficulty($count, 40, 50, 60, 70);
- //Create 2 basic shot types
- new shot 0
- {
- count = 1;
- offset = 0.0f 0.0f;
- aim = NORMAL;
- angle = 0.0f;
- graphic = RICE_S BLUE;
- speed = 1.2f 1.45f 1.45f 1.7f;
- pattern : 0 1 ACCELERATE 30 1 0.05f 4.71238898f;
- pattern : 1 0 ACCELERATE 30 1 0.13f 1.57079633f;
- pattern : 2 0 CHANGE_GRAPHIC 13 3 NULLF NULLF;
- }
- new shot 1
- {
- count = 1;
- offset = 0.0f 0.0f;
- aim = NORMAL;
- angle = 0.0f;
- graphic = RICE_S PURPLE;
- speed = 1.2f 1.45f 1.45f 1.7f;
- pattern : 0 1 ACCELERATE 30 1 0.05f 4.71238898f;
- pattern : 1 0 ACCELERATE 30 1 0.13f 1.57079633f;
- pattern : 2 0 CHANGE_GRAPHIC 13 2 NULLF NULLF;
- }
- 12.56637f;
- float($count);
- dividef();
- movef(%diradd);
- loop -1 mainLoop
- %basedir = this.angleToPlayer;
- %dir = 0.0f;
- %dir2 = 0.0f;
- loop $count circleyay
- %dir;
- %basedir;
- addf();
- movef(%finaldir);
- shotSetAngle(0, %finaldir, 0.0f);
- shotFire(0);
- %dir2;
- %basedir;
- addf();
- 3.1415927f;
- addf();
- movef(%finaldir);
- shotSetAngle(1, %finaldir, 0.0f);
- shotFire(1);
- %dir += %diradd;
- %dir2 -= %diradd;
- wait(1);
- endloop circleyay
- bossMove(60, 4, 6.0f);
- wait(60);
- %basedir = this.angleToPlayer;
- %basedir += 3.1415927f;
- %dir = 0.0f;
- %dir2 = 0.0f;
- loop $count circleyay2
- %dir;
- %basedir;
- addf();
- movef(%finaldir);
- shotSetAngle(0, %finaldir, 0.0f);
- shotFire(0);
- %dir2;
- %basedir;
- addf();
- 3.1415927f;
- addf();
- movef(%finaldir);
- shotSetAngle(1, %finaldir, 0.0f);
- shotFire(1);
- %dir += %diradd;
- %dir2 -= %diradd;
- wait(1);
- endloop circleyay2
- bossMove(60, 4, 6.0f);
- wait(60);
- endloop mainLoop
- return3();
- }
- sub Boss1Card()
- {
- var playerX playerY angle radius offX offY laserI;
- spell 1 45 5000000 "Floral Spell 'Luminous Bloom'" Boss2;
- doBackSub("FX_ShadowEffect", 0);
- shotCreate(0);
- shotSetCountByDifficulty(0, 2, 2, 3, 3, 3, 3, 4, 4);
- shotSetOffset(0, 0.0f, 0.0f);
- shotSetAim(0, NORMAL_CIRCLE);
- shotSetAngle(0, 0.0f, 0.0f);
- shotSetAppearance(0, LEAF, GREEN);
- shotSetSpeedByDifficulty(0, 1.2f, 1.45f, 1.45f, 1.6f, 0.0f, 0.0f, 0.0f, 0.0f);
- shotCreate(1);
- shotSetCountByDifficulty(1, 2, 2, 3, 3, 2, 2, 3, 3);
- shotSetOffset(1, 0.0f, 0.0f);
- shotSetAim(1, NORMAL_CIRCLE);
- shotSetAngle(1, 0.0f, 0.0f);
- shotSetAppearance(1, RICE_M, BLUE);
- shotSetSpeedByDifficulty(1, 1.3f, 1.5f, 1.5f, 1.7f, 0.0f, 0.0f, 0.0f, 0.0f);
- shotCreate(2);
- shotSetCountByDifficulty(2, 1, 1, 2, 2, 2, 2, 3, 3);
- shotSetOffset(2, 0.0f, 0.0f);
- shotSetAim(2, NORMAL_CIRCLE);
- shotSetAngle(2, 0.0f, 0.0f);
- shotSetAppearance(2, BUTTERFLY, PURPLE);
- shotSetSpeedByDifficulty(2, 1.0f, 1.1f, 1.1f, 1.2f, 0.0f, 0.0f, 0.0f, 0.0f);
- shotAddPattern(2, 0, 1, CHANGE, 45, 1, 0.0f, 0.05f);
- shotAddPattern(2, 1, 1, CHANGE, 45, 1, 0.0f, 0.0f);
- shotAddPattern(2, 2, 1, CHANGE, 45, 1, 0.0f, -0.03f);
- %angle = 0.0f;
- loop -1 mainLoop
- shotSetOffset(0, 0.0f, 0.0f);
- $laserI = 0;
- loop 3 laserLoop
- shotSetOffset(0, 0.0f, 0.0f);
- fireLaserA($laserI, 3, 11, this.angleToPlayer, 900.0f, 900.0f, 30, 10, 10, 10, 48.0f, $laserI);
- $laserI += 1;
- doCoroutine("PAT_LaserShots", <float> 0.0f, <float> 0.0f, <int> 0, <float> this.angleToPlayer, <float> 480.0f, <float> 0.0f, <float> 0.43f, <int> 16, <int> 1, <int> 35);
- doCoroutine("PAT_LaserShots", <float> 0.0f, <float> 0.0f, <int> 1, <float> this.angleToPlayer, <float> 480.0f, <float> 0.0f, <float> 0.912f, <int> 16, <int> 2, <int> 35);
- doCoroutine("PAT_LaserShots", <float> 0.0f, <float> 0.0f, <int> 2, <float> this.angleToPlayer, <float> 480.0f, <float> 0.0f, <float> 1.305f, <int> 16, <int> 3, <int> 35);
- wait(180);
- endloop laserLoop
- wait(20);
- bossMove(30, 4, 8.0f);
- wait(50);
- endloop mainLoop
- return3();
- }
- sub main()
- {
- var A B C;
- setFlag(16);
- ins_0();
- //wait(60);
- //spawn("Enemy_0_blue", 0.0f, -16.0f, 60, 1000, POWER);
- wait(240);
- dialogueStart(0);
- waitForSubs();
- spawn("Boss", -144.0f, -16.0f, 40, 10000, POWER);
- waitForSubs();
- nextStage();
- //dialogueStart(1);
- //waitForSubs();
- wait(60);
- return1();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement