summaryrefslogblamecommitdiff
path: root/npc/032-5/episode.txt
blob: c7636fee73dcbb41b5eaad555ff10b92e5196dfd (plain) (tree)
1
2
3
4
5
6
7
8
9
10





                                 



                                                                               




                                                                          
 















































































                                                                                       
 
// TMW2 scripts.
// Authors:
//    Jesusalva
// Description:
//    Part of the Doctor's Quest.

// NOTE: Several things could be done to ensure the original owner is fighting.
// I did none.
// But if at any moment the boss is alone in the room, the fight resets.
// Dead bodies should be warped out automagically.
// Reward is 400,000 experience points (almost enough to level up a Lv 61)
// But the reward is only given when cutscene is completed
// Meaning if you merely espectate/help you won't get it.
// For helpers (Everyone on map) they'll get 30,000 exp
// Therefore, experience given is 30k + 370k

032-5,37,34,0	script	#EpShow	NPC_HIDDEN,2,0,{
    end;
OnInit:
    .ctrl = false;
    .platy = 0;
    .razor = 0;
    end;

OnTouch:
    if (mobcount("032-5", "all")) end;
    if (getq(LoFQuest_EPISODE) != 15) end;
    if (getq2(LoFQuest_EPISODE) != 2); end;
    if (.ctrl) end;

    .ctrl=true;
    initnpctimer;
    end;

OnTimer1000:
    .platy=monster("032-5", 39, 55, 1, strmobinfo(1, RedQueen), RedQueen);
    .razor=monster("032-5", 37, 57, 1, "The Black Razor", RedFollower);
    immortal(.platy);
    setunitdata(.platy, UDT_MODE, MD_BOSS|MD_PLANT|MD_NOKNOCKBACK);
    immortal(.razor);
    setunitdata(.razor, UDT_MODE, MD_BOSS|MD_PLANT|MD_NOKNOCKBACK);
    end;

OnTimer5000:
    unittalk(.razor, "Uh?");
    end;

OnTimer10000:
    unittalk(.razor, "Who are you people!");
    end;

OnTimer15000:
    unittalk(.razor, "Don't tell me... You're with Prsm!");
    end;

OnTimer20000:
    unittalk(.platy, "They think they can conspire about us.");
    end;

OnTimer25000:
    unittalk(.platy, "But I am the original queen and no one can steal this from me.");
    maptimer("032-5", 3000, "#EpShow::OnWarn1");
    end;

OnWarn1:
    dispbottom l("On your marks!");
    sleep2(1000);
    dispbottom l("Ready...");
    sleep2(1000);
    dispbottom l("FIGHT!");
    end;

OnTimer30000:
    unitwarp(.platy, "001-3-1", 19, 21);
    unitwarp(.razor, "001-3-1", 19, 21);
    sleep(25);
    unitkill(.platy);
    unitkill(.razor);
    sleep(25);
    .platy=monster("032-5", 39, 55, 1, strmobinfo(1, RedQueen), RedQueen);
    .razor=monster("032-5", 37, 57, 1, "The Black Razor", RedFollower);

    // The Black Razor needs tweaks
    setunitdata(.razor, UDT_MAXHP, 24000);
    setunitdata(.razor, UDT_HP, 24000);
    setunitdata(.razor, UDT_HIT, 24000);
    setunitdata(.razor, UDT_ADELAY, 1272);
    setunitdata(.razor, UDT_DMOTION, 48);
    setunitdata(.razor, UDT_SPEED, 480);

    // The Red Queen doesn't, but we need spawns and victory conditions
    stopnpctimer;
    .ctrl = false;
    end;

}