Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //==============================================
- //
- // Marisa Boss Battlev1.5
- // All rights reserved at ReiRei \ Yuyuko-sama
- // at MotK. Do not use this Script or
- // you will pay the price with my kitty lawyer!
- //
- //
- //==============================================
- #TouhouDanmakufu
- #Title[ Marisa's Nonspell #1 ]
- #Text[ Basic IN Nonspell.
- Be careful of the familiars shot though. ]
- #Player[ player\Sanae\SanaeA.txt, player\Sanae\SanaeB.txt ]
- #BGM[ .\SOUND\BGM\MagusNight.mp3 ]
- #ScriptVersion[ 2 ]
- ///////////////////////////////////////////////////////////
- script_enemy_main {
- ///////////////////////////////////////////////////////////
- #include_function".\DATA\lib_anime_Marisa.txt";
- #include_function".\SHOT\Index_UserShot.txt";
- let CSD = GetCurrentScriptDirectory;
- let Boss_Marisa = CSD ~ "SPRITE\boss_Marisa.png";
- let UserShot = CSD ~ "SHOT\supershot.txt";
- let ShotFam = CSD ~ "SOUND\SE\Weird.wav";
- let Shot01 = CSD ~ "SOUND\SE\Shot1.wav";
- @Initialize {
- LoadGraphic( Boss_Marisa );
- SetX( GetCenterX );
- SetY( GetCenterY - 100 );
- LoadSE( ShotFam );
- LoadSE( Shot01 );
- SetLife( 2600 );
- SetTimer( 60 );
- SetDamageRate( 70, 200 );
- LoadUserShotData( UserShot );
- MarisaTask;
- }
- @MainLoop {
- SetCollisionA( GetX, GetY, 32 );
- SetCollisionB( GetX, GetY, 16 );
- yield;
- }
- @DrawLoop {
- DrawBoss( Boss_Marisa );
- }
- @Finalize {
- DeleteGraphic( Boss_Marisa );
- }
- task MarisaTask {
- wait( 120 );
- PlaySE( ShotFam );
- CreateEnemyFromScript( "Familiar", GetX, GetY, 0, 0, 0 );
- wait( 45 );
- PlaySE( ShotFam );
- CreateEnemyFromScript( "Familiar", GetX, GetY, 0, 0, 90 );
- wait( 45 );
- PlaySE( ShotFam );
- CreateEnemyFromScript( "Familiar", GetX, GetY, 0, 0, 180 );
- wait( 45 );
- PlaySE( ShotFam );
- CreateEnemyFromScript( "Familiar", GetX, GetY, 0, 0, 270 );
- wait( 45 );
- SetAction( ACT_SHOT_B, 30 );
- Marishot;
- yield;
- }
- task Marishot {
- let MariAngle = GetAngleToPlayer + 90;
- loop {
- ascent( i in 0..200 ){
- PlaySE( Shot01 );
- CreateShot01( GetX, GetY, 3, MariAngle+i*10-12, US_STAR_MARISA_L_BLUE, 10 );
- SetAction( ACT_SHOT_B, 30 );
- wait( 60 );
- yield;
- }
- }
- function wait( w ){
- loop( w ) { yield; }
- }
- }
- script_enemy Familiar {
- #include_function".\SHOT\Index_UserShot.txt";
- let CSD = GetCurrentScriptDirectory;
- let Boss_Fam = CSD ~ "SPRITE\Familiar.png";
- let Shot01 = CSD ~ "SOUND\SE\Shot1.wav";
- let spin = 0;
- let dir = 0;
- let FamRadius = 160;
- @Initialize {
- LoadGraphic( Boss_Fam );
- LoadSE( Shot01 );
- SetLife( 9000 );
- SetDamageRate( 1, 10 );
- FamTask;
- }
- @MainLoop {
- SetCollisionA( GetX, GetY, 32 );
- SetCollisionB( GetX, GetY, 16 );
- yield;
- }
- @DrawLoop {
- SetTexture( Boss_Fam );
- SetRenderState( ALPHA );
- SetAlpha( 255 );
- SetGraphicRect( 0, 0, 312, 315 );
- SetGraphicScale( 0.14, 0.14 );
- SetGraphicAngle( 0, 0, spin );
- DrawGraphic( GetX, GetY );
- spin+=5;
- }
- @Finalize {
- }
- task FamTask {
- Fammovement;
- Famshot;
- yield;
- }
- task Fammovement {
- loop {
- SetMovePosition03( GetEnemyX + cos( dir ) * FamRadius, GetEnemyY + sin( dir ) * FamRadius, 20, 10 );
- dir+=2;
- yield;
- }
- }
- task Famshot {
- loop {
- CreateShotA( 1, GetX, GetY, 10 );
- SetShotDataA( 1, 0, 0, 0, 0, 0, 0, US_MARISA_STAR_S_YELLOW );
- SetShotDataA( 1, 60, 3, 90, 1, 3, 3, US_MARISA_STAR_S_YELLOW );
- FireShot( 1 );
- PlaySE( Shot01 );
- yield;
- }
- FireShot( 1 );
- }
- }
- function wait( w ){
- loop( w ){ yield; }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment