~Hakurei Shrine~ > Rika and Nitori's Garage Experiments
If China was an Extra boss, this would be her Final Spell.
(1/2) > >>
KomeijiKoishi:

--- Code: ---#TouhouDanmakufu
#Title[Chi-Eiki "Rainbow Reflection"]
#Text[THIS - IS - BULLET HELL!]
#Player[FREE]
#ScriptVersion[2]

script_enemy_main {

    let ImgBoss = "script\img\ExRumia.png";

    let count = -70;

let fire = 0;

    @Initialize {
        SetLife(3000);
        SetDamageRate(20, 0);
        SetTimer(180);
        SetScore(1000000);
        SetInvincibility( 200 );
        LoadGraphic(ImgBoss);
LoadUserShotData("\script\extrabosses_mcxd\images\shot_All.txt");
        SetMovePosition02(GetCenterX, GetCenterY, 120);
        CutIn(YOUMU, "Chi-Eiki "\""Rainbow Reflection"\", "", 0, 0, 0, 0);

        SetGraphicRect(0, 0, 64, 64);
    }

    @MainLoop {
    SetCollisionA(GetX, GetY, 32);
    SetCollisionB(GetX, GetY, 16);

    if ((count == 100)){
    particle;
    }

    count++;
    yield;
    }

    @DrawLoop {
SetTexture(ImgBoss);
DrawGraphic(GetX, GetY);
    }

    @Finalize {
DeleteGraphic(ImgBoss);
    }

task particle{
let b = 0;
let bup = 5.1;
let reverse = 0;
let lrar = 0;
let kput = 1;
let krar = 72;


let Length = 0;

let n = 0;

let q = 0;

let RollerX;
let RollerY;

loop{

PlaySE(GetCurrentScriptDirectory~"SFX\Shot1.wav");
    ascent(a in 0..kput){
    RollerX = GetX + Length * cos((180+a*krar+b)+1*(360/2));
    RollerY = GetY + Length * sin((180+a*krar+b)+1*(360/2));
Reflection(RollerX, RollerY, 2.4, (360+a*krar+b), 49, 8);
if (GetLife<2625 || GetTimer<140){
Reflection(RollerX, RollerY, 2.4, (360+a*krar+b)+45, 50, 8);}
if (GetLife<2250 || GetTimer<120){
Reflection(RollerX, RollerY, 2.4, (360+a*krar+b)+90, 51, 8);}
if (GetLife<1875 || GetTimer<100){
Reflection(RollerX, RollerY, 2.4, (360+a*krar+b)+135, 52, 8);}
if (GetLife<1500 || GetTimer<80){
Reflection(RollerX, RollerY, 2.4, (360+a*krar+b)+180, 53, 8);}
if (GetLife<1125 || GetTimer<60){
Reflection(RollerX, RollerY, 2.4, (360+a*krar+b)+225, 54, 8);}
if (GetLife<750 || GetTimer<40){
Reflection(RollerX, RollerY, 2.4, (360+a*krar+b)+270, 55, 8);}
if (GetLife<375 || GetTimer<20){
Reflection(RollerX, RollerY, 2.4, (360+a*krar+b)+315, 56, 8);}
    }
if (reverse == 0){
if (bup < 0){
bup += 0;
}
else{
reverse++;
}
}
else{
if (bup > -0){
bup -= 0;
}
else{
reverse--;
}
}
b += bup;
if (Length > 0){
Length -= 0;
}

loop(4.5){
yield;
}
}
}


    task Reflection(x, y, spe, dir, graph, delay){
      let obj = Obj_Create(OBJ_SHOT);
      let b = 0;

      Obj_SetPosition   (obj, x, y);
      Obj_SetSpeed      (obj, spe);
      Obj_SetAngle      (obj, dir);
      ObjShot_SetGraphic(obj, graph);
      ObjShot_SetDelay  (obj, delay);

      while(! Obj_BeDeleted(obj)) {
           if (Obj_GetX(obj)<GetClipMinX && b==0) {Obj_SetAngle(obj, -dir+180); b=1;}
           if (Obj_GetX(obj)>GetClipMaxX && b==0) {Obj_SetAngle(obj, -dir+180); b=1;}
           if (Obj_GetY(obj)<GetClipMinY && b==0) {Obj_SetAngle(obj, -dir); b=1;}
          yield;
           }
    }


}

--- End code ---
CK Crash:
Not exactly Extra Stage material when you forget the external scripts necessary for the attack to work  :P

All it's doing for me is making ExRumia look like she's about to shoot white bullets.
KomeijiKoishi:
White bullets?
It should look like that:
http://www.youtube.com/watch?v=1uFJ_JiKGV0&fmt=18
Drake:
Ack. It's nice, but far too difficult to be practical in any way.
KomeijiKoishi:

--- Quote from: Drake on May 10, 2009, 04:54:27 PM ---Ack. It's nice, but far too difficult to be practical in any way.

--- End quote ---
I knew that this was coming.
Navigation
Message Index
Next page

Go to full version