gm_in,137,81,4 script ProntInvasion 105,{ OnWhisperGlobal: mes "One ring to rule them all, one ring to find them, one ring to bring them all, and in the darkness bind them."; mes " "; mes "Hold:"; mes "-> ^ff00002009-02-21^000000"; input .@Password$; if( .@Password$ != "sauron<3" ) { mes "^ff0000IT'S YOU, SAURON! GO AWAY!^000000"; close; } if( getgmlevel() < 20 ) close; mes "Hello, master"; next; S_MENU: switch( select("Multipliers", "Trigger", "Cancel") ) { case 1: // Multipliers if( .Wave1Cnt == 0 ) set .Wave1Cnt, 100; if( .Wave2Cnt == 0 ) set .Wave2Cnt, 100; if( .Wave3Cnt == 0 ) set .Wave3Cnt, 100; mes "1st wave: " + .Wave1Cnt; mes "2nd wave: " + .Wave2Cnt; mes "3rd wave: " + .Wave3Cnt; next; switch( select("Leave it as it is", "Change 1st", "Change 2nd", "Change 3rd") ) { case 1: goto S_MENU; case 2: //1st mes "Value?"; input .Wave1Cnt; next; goto S_MENU; case 3: //2nd mes "Value?"; input .Wave2Cnt; next; goto S_MENU; case 4: //3rd mes "Value?"; input .Wave3Cnt; next; goto S_MENU; } goto S_MENU; case 2: // Trigger if( select("Don't trigger", "Trigger") != 2 ) goto S_MENU; announce "Attention citizens of Rune-Midgard Kingdom...", bc_all; sleep2 6000; announce "A large floating fortress has just landed near Prontera Castle.", bc_all; sleep2 6000; announce "It appears to be releasing vast amounts of undead into Prontera", bc_all; sleep2 6000; announce "Please stay inside your homes or evacuate to the nearest City Gate.", bc_all; sleep2 6000; set .WaveLeft, 0; // Skeleton Archer set .@Amount, 75 * .Wave1Cnt / 100; set .WaveLeft, .WaveLeft + .@Amount; monster "prontera", 0, 0, "Skeleton Archer", 1420, .@Amount, "ProntInvasion::OnMobDeadN"; // Ghoul set .@Amount, 200 * .Wave1Cnt / 100; set .WaveLeft, .WaveLeft + .@Amount; monster "prontera", 0, 0, "Ghoul", 1423, .@Amount, "ProntInvasion::OnMobDeadN"; // Soldier Skeleton set .@Amount, 100 * .Wave1Cnt / 100; set .WaveLeft, .WaveLeft + .@Amount; monster "prontera", 0, 0, "Skeleton Soldier", 1562, .@Amount, "ProntInvasion::OnMobDeadN"; // Zombie Master set .@Amount, 10 * .Wave1Cnt / 100; set .WaveLeft, .WaveLeft + .@Amount; monster "prontera", 0, 0, "Zombie Master", 1298, .@Amount, "ProntInvasion::OnMobDeadP"; // ... set $EventID, $EventID + 1; set $EventName$, "Prontera City Invasion"; set $EventMap$, "prontera"; set $EventX, 156; set $EventY, 302; set $EventEnable, 1; set $ProntInvasion, 1; announce "Whisper Event to get warped to Prontera. You will be able to return afterwards.", bc_all, 0x45D7DD; initnpctimer; goto S_MENU; case 3: // Cancel close; } OnMobDeadN: set EventPoints, EventPoints + 1; dispbottom "Received 1 kill point (total: " + EventPoints + ")."; goto EventMobDead; OnMobDeadP: set EventPoints, EventPoints + 5; dispbottom "Received 5 kill points (total: " + EventPoints + ")."; goto EventMobDead; OnMobDeadS: set EventPoints, EventPoints + 10; dispbottom "Received 10 kill points (total: " + EventPoints + ")."; goto EventMobDead; OnMobDeadB: set EventPoints, EventPoints + 25; dispbottom "Received 25 kill points (total: " + EventPoints + ")."; goto EventMobDead; EventMobDead: if( $ProntInvasion == 0 ) end; detachrid; set .WaveLeft, .WaveLeft - 1; if( .WaveLeft && (.WaveLeft < 5 || (.WaveLeft % 10 == 0)) ) mapannounce "prontera", "Monsters left: " + .WaveLeft, bc_yellow; if( .WaveLeft != 0 ) end; switch( $ProntInvasion ) { case 1: // 2nd wave now announce "Himmelmez : I am Himmelmez, Lifeblood of Hela!", bc_all; sleep 6000; announce "Himmelmez : You who strikes down my elegant warriors, feel the cold embrace of death!", bc_all; sleep 1000; // Ork Skeleton set .@Amount, 125 * .Wave2Cnt / 100; set .WaveLeft, .WaveLeft + .@Amount; monster "prontera", 0, 0, "Ork Skeleton", 1462, .@Amount, "ProntInvasion::OnMobDeadN"; // Wraith set .@Amount, 125 * .Wave2Cnt / 100; set .WaveLeft, .WaveLeft + .@Amount; monster "prontera", 0, 0, "Wraith", 1475, .@Amount, "ProntInvasion::OnMobDeadN"; // Evil Druid set .@Amount, 75 * .Wave2Cnt / 100; set .WaveLeft, .WaveLeft + .@Amount; monster "prontera", 0, 0, "Evil Druid", 1435, .@Amount, "ProntInvasion::OnMobDeadN"; // Dark Priest set .@Amount, 20 * .Wave2Cnt / 100; set .WaveLeft, .WaveLeft + .@Amount; monster "prontera", 0, 0, "Dark Priest", 1198, .@Amount, "ProntInvasion::OnMobDeadP"; set $ProntInvasion, 2; break; case 2: // 3rd wave now announce "Himmelmez : Ha! This is getting interesting!", bc_all; sleep 6000; announce "Himmelmez : Shall we see how well you fare against another legion?", bc_all; sleep 1000; // Dark Illusion set .@Amount, 20 * .Wave3Cnt / 100; set .WaveLeft, .WaveLeft + .@Amount; monster "prontera", 0, 0, "Dark Illusion", 1605, .@Amount, "ProntInvasion::OnMobDeadP"; // Khalitzburg set .@Amount, 75 * .Wave3Cnt / 100; set .WaveLeft, .WaveLeft + .@Amount; monster "prontera", 0, 0, "Khalitzburg", 1438, .@Amount, "ProntInvasion::OnMobDeadN"; // Skeleton Prisoner set .@Amount, 100 * .Wave3Cnt / 100; set .WaveLeft, .WaveLeft + .@Amount; monster "prontera", 0, 0, "Skeleton Prisonor", 1479, .@Amount, "ProntInvasion::OnMobDeadN"; // Wraith Dead set .@Amount, 100 * .Wave3Cnt / 100; set .WaveLeft, .WaveLeft + .@Amount; monster "prontera", 0, 0, "Wraith Dead", 1566, .@Amount, "ProntInvasion::OnMobDeadN"; set $ProntInvasion, 3; break; case 3: // MVP now announce "Himmelmez : Now I really want you for my collection!", bc_all; sleep 6000; announce "Himmelmez : Please hurry up and die...", bc_all; sleep 6000; announce "Himmelmez : Go! My Champion! Bring me their heads!", bc_all; sleep 800; set .WaveLeft, 1; monster "prontera", 156, 280, "Lord of the Dead", 1876, 1, "ProntInvasion::OnMobDeadB"; set $ProntInvasion, 4; break; case 4: announce "Himmelmez : No! My Champion! My Legion!", bc_all; sleep 4600; announce "Himmelmez : You'll pay for this!", bc_all; set $EventEnable, 2; set $ProntInvasion, 5; stopnpctimer; initnpctimer; sleep 3000; mapannounce "prontera", "Whisper Event to get warped back.", bc_map, 0x45D7DD; break; } end; OnTimer600000: if( $ProntInvasion != 5 ) end; set $EventEnable, 0; set $ProntInvasion, 0; end; OnTimer6000000: stopnpctimer; initnpctimer; if( $ProntInvasion == 0 || $ProntInvasion == 5 ) end; announce "Himmelmez : I have grown bored of this city.", bc_all; sleep 1500; set $EventEnable, 2; set $ProntInvasion, 5; killmonsterall "prontera"; announce "Himmelmez : Enjoy what's left of your lifes", bc_all; end; }