summaryrefslogtreecommitdiff
path: root/npc/battleground
diff options
context:
space:
mode:
Diffstat (limited to 'npc/battleground')
-rw-r--r--npc/battleground/bg_common.txt578
-rw-r--r--npc/battleground/flavius/flavius01.txt768
-rw-r--r--npc/battleground/flavius/flavius02.txt768
-rw-r--r--npc/battleground/flavius/flavius_enter.txt363
-rw-r--r--npc/battleground/kvm/kvm01.txt435
-rw-r--r--npc/battleground/kvm/kvm02.txt434
-rw-r--r--npc/battleground/kvm/kvm03.txt436
-rw-r--r--npc/battleground/kvm/kvm_enter.txt230
-rw-r--r--npc/battleground/kvm/kvm_item_pay.txt331
-rw-r--r--npc/battleground/tierra/tierra01.txt961
-rw-r--r--npc/battleground/tierra/tierra02.txt961
-rw-r--r--npc/battleground/tierra/tierra_enter.txt371
12 files changed, 0 insertions, 6636 deletions
diff --git a/npc/battleground/bg_common.txt b/npc/battleground/bg_common.txt
deleted file mode 100644
index 4c9f3c307..000000000
--- a/npc/battleground/bg_common.txt
+++ /dev/null
@@ -1,578 +0,0 @@
-//================= Hercules Script =======================================
-//= _ _ _
-//= | | | | | |
-//= | |_| | ___ _ __ ___ _ _| | ___ ___
-//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
-//= | | | | __/ | | (__| |_| | | __/\__ \
-//= \_| |_/\___|_| \___|\__,_|_|\___||___/
-//================= License ===============================================
-//= This file is part of Hercules.
-//= http://herc.ws - http://github.com/HerculesWS/Hercules
-//=
-//= Copyright (C) 2012-2016 Hercules Dev Team
-//= Copyright (C) Euphy
-//= Copyright (C) L0ne_W0lf
-//=
-//= Hercules is free software: you can redistribute it and/or modify
-//= it under the terms of the GNU General Public License as published by
-//= the Free Software Foundation, either version 3 of the License, or
-//= (at your option) any later version.
-//=
-//= This program is distributed in the hope that it will be useful,
-//= but WITHOUT ANY WARRANTY; without even the implied warranty of
-//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-//= GNU General Public License for more details.
-//=
-//= You should have received a copy of the GNU General Public License
-//= along with this program. If not, see <http://www.gnu.org/licenses/>.
-//=========================================================================
-// BattleGround System - Common NPCs
-//================= Description ===========================================
-//= Battleground NPCs:
-//= - Generals and Aides
-//= - Battleground Warper
-//= - Kafra and Repairman.
-//= - GM Management NPC (disabled by default)
-//= - Badge Exchanger (Tierra and Flavius)
-//================= Current Version =======================================
-//= 1.4
-//=========================================================================
-
-//== Generals ==============================================
-bat_room,161,158,3 script Gen. Guillaume's Aide#01 4_M_KY_HEAD,{ end; }
-bat_room,161,160,3 script Gen. Guillaume's Aide#03 4_M_KY_HEAD,{ end; }
-
-bat_room,160,141,3 script Prince Croix 4_M_CRU_CRUA,{
- cutin "bat_crua1",2;
- mes("[Prince Croix]");
- mes("Wise adventurer, why don't you lend us your power for victory?");
- next;
- switch(select("What's the reason for the Battle?", "Tell me about General Guillaume")) {
- case 1:
- cutin "bat_crua2",2;
- mes("[Prince Croix]");
- mes("Maroll's great king, Marcel Marollo VII, is very sick lately.");
- mes("His Majesty has declared that he will be leaving the future of Maroll to me or the 3rd prince, General Guillaume.");
- next;
- mes("[Prince Croix]");
- mes("General Guillaume may have an advantage in this battle as he is the great general of Maroll, but that doesn't automatically mean he'll win.");
- mes("I want to win this battle so that I can bring prosperity to the people of Maroll. They've suffered enough from war...");
- next;
- switch(select("Yes, I want to join you.", "End Conversation")) {
- case 1:
- cutin "bat_crua1",2;
- mes("[Prince Croix]");
- mes("Thank you so much. I feel like I can win with the help of adventurers like you.");
- mes("Now, please go downstairs and join your comrades in sharpening their skills to fight the enemy!");
- break;
- case 2:
- mes("[Prince Croix]");
- mes("For Maroll!");
- break;
- }
- break;
- case 2:
- cutin "bat_crua2",2;
- mes("[Prince Croix]");
- mes("The 3rd Prince Guillaume is the great general of Maroll.");
- mes("It's a waste of time to explain to you how great a leader or warlord he is, since he commands the great military power of Maroll.");
- next;
- mes("[Prince Croix]");
- mes("Unfortunately, there's something he and his followers are unaware of:");
- mes("Do the people of Maroll really want them to spend so much money on military power?");
- mes("We have suffered enough from wars.");
- mes("I believe weapons aren't the best way to bring prosperity to a nation.");
- next;
- mes("[Prince Croix]");
- mes("I do not wish to shed blood, but I have no choice but to fight for the possibility of peace and for the sake of my people.");
- next;
- switch(select("Yes, I want to join you.", "End Conversation")) {
- case 1:
- cutin "bat_crua1",2;
- mes("[Prince Croix]");
- mes("Thank you so much. I feel like I can win with the help of adventurers like you.");
- mes("Now, please go downstairs and join your comrades in sharpening their skills to fight the enemy!");
- break;
- case 2:
- mes("[Prince Croix]");
- mes("For Maroll!");
- break;
- }
- break;
- }
- close2;
- cutin "bat_crua1",255;
- cutin "bat_crua2",255;
- end;
-}
-
-bat_room,161,140,3 script Prince Croix's Aide#01 4_M_CRU_HEAD,{ end; }
-bat_room,161,142,3 script Prince Croix's Aide#02 4_M_CRU_HEAD,{ end; }
-
-bat_room,160,159,3 script General Guillaume 4_M_KY_KIYOM,{
- cutin "bat_kiyom2",2;
- mes("[General Guillaume]");
- mes("Hot-blooded adventurer, we need your ability to win this battle.");
- next;
- switch(select("What's the reason for the Battle?", "Tell me about Prince Croix")) {
- case 1:
- cutin "bat_kiyom1",2;
- mes("[General Guillaume]");
- mes("Our great king, Marcel Marollo VII, is very sick lately.");
- mes("His Majesty has declared that he has chosen either me or Prince Croix as the next king amongst his 9 sons.");
- next;
- mes("[General Guillaume]");
- mes("Two kings can't share a nation! Only the one victorious from His Majesty's appointed battle will be enthroned.");
- next;
- mes("[General Guillaume]");
- mes("This is, however, not just a battle between us. This battle will determine the future of this country.");
- mes("I pledge on my honor to prove that I'm the one who can protect this Maroll from outside threats.");
- next;
- switch(select("Yes, I want to join you.", "End Conversation")) {
- case 1:
- cutin "bat_kiyom2",2;
- mes("[General Guillaume]");
- mes("Welcome to my army, comrade.");
- mes("Your eyes tell me that you're a soldier that I can trust.");
- next;
- mes("[General Guillaume]");
- mes("Now, go upstairs and apply for battle with your comrades.");
- mes("I'm sure they'll welcome you whole-heartedly!");
- break;
- case 2:
- mes("[General Guillaume]");
- mes("I'll be the one who will capture the flag!");
- break;
- }
- break;
- case 2:
- cutin "bat_kiyom1",2;
- mes("[General Guillaume]");
- mes("The 5th Prince Croix is currently titled as the Prime Minister of Maroll.");
- mes("He thinks all national matters of a nation can be discussed and determined on a desk,\r"
- "and believes in peaceful co-existence with other countries.");
- next;
- mes("[General Guillaume]");
- mes("He's too ignorant to admit that so-called peace is built on countless lives that are sacrificed in "
- "wars while normal citizens and upper classes can live, oblivious to the horrors that allow them to live that way.");
- next;
- mes("[General Guillaume]");
- mes("He's too naive to understand the reality....");
- mes("I can't leave Maroll to someone like him who lives in a dream!");
- next;
- mes("[General Guillaume]");
- mes("His unrealistic beliefs will drown this country in poverty and make the people weak. If he becomes the king, "
- "Maroll will never rest from the onslaughts of other countries.");
- mes("I want to teach him what makes this small country so powerful and prosperous. It's military power!");
- next;
- switch(select("I want to join your army!", "End Conversation")) {
- case 1:
- cutin "bat_kiyom2",2;
- mes("[General Guillaume]");
- mes("Welcome to my army, comrade.");
- mes("Your eyes tell me that you're a soldier that I can trust.");
- next;
- mes("[General Guillaume]");
- mes("Now, go upstairs and apply for battle from your comrades.");
- mes("I'm sure they'll welcome you whole-heartedly!");
- break;
- case 2:
- mes("[General Guillaume]");
- mes("I'll be the one who will capture the flag!");
- break;
- }
- break;
- }
- close2;
- cutin "bat_kiyom1",255;
- cutin "bat_kiyom2",255;
- end;
-}
-
-//== Flags =================================================
-//bat_room,140,160,3 script Guillaume Base#roomflag1 1_FLAG_LION,{ end; }
-//bat_room,167,160,3 script Guillaume Base#roomflag2 1_FLAG_LION,{ end; }
-//bat_room,140,139,3 script Croix Base#roomflag1 1_FLAG_EAGLE,{ end; }
-//bat_room,167,139,3 script Croix Base#roomflag2 1_FLAG_EAGLE,{ end; }
-
-//== BattleGround Warper ===================================
-bat_room,148,150,5 script Teleporter#Battlefield 4_F_TELEPORTER,{
- mes("[Teleporter]");
- mes("Do you wish to leave the battlefield? Use my services to return to town.");
- next;
- switch(select("Leave", "Don't Leave")) {
- case 1:
- mes("[Teleporter]");
- switch(bat_return) {
- default:
- case 1:
- setarray .@mapname$[0], _("Prontera"), "prontera";
- setarray .@xy[0],116,72;
- break;
- case 2:
- setarray .@mapname$[0], _("Morroc"), "moc_ruins";
- setarray .@xy[0],152,48;
- break;
- case 3:
- setarray .@mapname$[0], _("Al De Baran"), "aldebaran";
- setarray .@xy[0],168,112;
- break;
- case 4:
- setarray .@mapname$[0], _("Geffen"), "geffen";
- setarray .@xy[0],120,39;
- break;
- case 5:
- setarray .@mapname$[0], _("Payon"), "payon";
- setarray .@xy[0],161,58;
- break;
- case 6:
- setarray .@mapname$[0], _("Lighthalzen"), "lighthalzen";
- setarray .@xy[0],159,93;
- break;
- case 7:
- setarray .@mapname$[0], _("Rachel"), "rachel";
- setarray .@xy[0],115,124;
- break;
- }
- mesf("You will be sent back to %s.", .@mapname$[0]);
- close2;
- warp .@mapname$[1],.@xy[0],.@xy[1];
- break;
- case 2:
- mes("[Teleporter]");
- mes("I'll be here whenever you're in need of my services.");
- close;
- }
- end;
-}
-
-- script Maroll Battle Recruiter::BatRecruit 4_F_JOB_KNIGHT,{
- mes("[Maroll Battle Recruiter]");
- mes("Good day, adventurer.");
- mes("I'm a knight from a far country called Maroll Kingdom.");
- next;
- mes("[Maroll Battle Recruiter]");
- mes("The two princes of the kingdom are now battling for the throne of Maroll, and are in need of experienced soldiers like you.");
- mes("How would you like to lend your power to one of the princes in the Maroll Kingdom?");
- next;
- switch(select("Join", "Don't Join")) {
- case 1:
- mes("[Maroll Battle Recruiter]");
- mes("May the war god bless you.");
- close2;
- getmapxy(.@mapname$, .@x, .@y, UNITTYPE_NPC);
- if (.@mapname$ == "prontera")
- bat_return = 1;
- else if (.@mapname$ == "moc_ruins")
- bat_return = 2;
- else if (.@mapname$ == "aldebaran")
- bat_return = 3;
- else if (.@mapname$ == "geffen")
- bat_return = 4;
- else if (.@mapname$ == "payon")
- bat_return = 5;
- else if (.@mapname$ == "lighthalzen")
- bat_return = 6;
- else if (.@mapname$ == "rachel")
- bat_return = 7;
- else
- bat_return = 1;
- warp "bat_room",154,150;
- break;
- case 2:
- mes("[Maroll Battle Recruiter]");
- mes("I'll always be stationed here for more soldiers. Feel free to come back whenever you're interested.");
- close;
- }
- end;
-}
-
-prontera,123,83,3 duplicate(BatRecruit) Maroll Battle Recruiter::BatRecruit1 4_F_JOB_KNIGHT
-moc_ruins,75,162,3 duplicate(BatRecruit) Maroll Battle Recruiter::BatRecruit2 4_F_JOB_KNIGHT
-aldebaran,146,109,3 duplicate(BatRecruit) Maroll Battle Recruiter::BatRecruit3 4_F_JOB_KNIGHT
-geffen,109,66,3 duplicate(BatRecruit) Maroll Battle Recruiter::BatRecruit4 4_F_JOB_KNIGHT
-payon,189,105,3 duplicate(BatRecruit) Maroll Battle Recruiter::BatRecruit5 4_F_JOB_KNIGHT
-lighthalzen,153,86,5 duplicate(BatRecruit) Maroll Battle Recruiter::BatRecruit6 4_F_JOB_KNIGHT
-rachel,149,138,3 duplicate(BatRecruit) Maroll Battle Recruiter::BatRecruit7 4_F_JOB_KNIGHT
-
-//== Additional warps ======================================
-// Empty
-bat_room,57,81,0 warp bat1 1,1,bat_room,154,149
-bat_room,57,90,0 warp bat2 1,1,bat_room,154,149
-// Empty
-bat_room,85,81,0 warp bat5 1,1,bat_room,154,149
-bat_room,85,90,0 warp bat6 1,1,bat_room,154,149
-// Free BG
-bat_room,113,81,0 warp bat9 1,1,bat_room,154,149
-bat_room,113,90,0 warp bat10 1,1,bat_room,154,149
-// Free BG
-bat_room,141,81,0 warp bat13 1,1,bat_room,154,149
-bat_room,141,90,0 warp bat14 1,1,bat_room,154,149
-// Free BG
-bat_room,169,81,0 warp bat17 1,1,bat_room,154,149
-bat_room,169,90,0 warp bat18 1,1,bat_room,154,149
-// Free BG
-bat_room,197,81,0 warp bat21 1,1,bat_room,154,149
-bat_room,197,90,0 warp bat22 1,1,bat_room,154,149
-// Free BG
-bat_room,225,81,0 warp bat25 1,1,bat_room,154,149
-bat_room,225,90,0 warp bat26 1,1,bat_room,154,149
-// Empty
-bat_room,253,81,0 warp bat29 1,1,bat_room,154,149
-bat_room,253,90,0 warp bat30 1,1,bat_room,154,149
-// Empty
-bat_room,253,220,0 warp bat31 1,1,bat_room,154,149
-bat_room,253,211,0 warp bat32 1,1,bat_room,154,149
-
-//== Kafra =================================================
-bat_room,148,147,4 script Kafra Staff::kaf_bat 4_F_KAFRA9,{
- cutin "kafra_09",2;
- callfunc "F_Kafra",0,2,1,150,0;
-}
-
-//== Repairman =============================================
-bat_room,138,144,4 script Repairman#bg 4_M_04,{
- callfunc("repairmain", _("Repairman"));
- end;
-}
-
-//== GM Management NPC =====================================
-bat_room,1,151,3 script Switch#batgnd 4_DOG01,{
- .@i = callfunc("F_GM_NPC",1854,0);
- if (.@i == -1) {
- mes("The command has been cancelled.");
- close;
- } else if (.@i == 0) {
- end;
- } else {
- mes("May I help you?");
- next;
- switch(select("Close Battlefield", "Open Battlefield", "Reset a01", "Reset b01", "Reset a02", "Reset b02")) {
- case 1:
- disablenpc "Tierra Gorge Officer#01a";
- disablenpc "Tierra Gorge Officer#02a";
- disablenpc "Tierra Gorge Officer#01b";
- disablenpc "Tierra Gorge Officer#02b";
- disablenpc "Flavius Officer#01a";
- disablenpc "Flavius Officer#01b";
- disablenpc "Flavius Officer#02a";
- disablenpc "Flavius Officer#02b";
- break;
- case 2:
- enablenpc "Tierra Gorge Officer#01a";
- enablenpc "Tierra Gorge Officer#02a";
- enablenpc "Tierra Gorge Officer#01b";
- enablenpc "Tierra Gorge Officer#02b";
- enablenpc "Flavius Officer#01a";
- enablenpc "Flavius Officer#01b";
- enablenpc "Flavius Officer#02a";
- enablenpc "Flavius Officer#02b";
- break;
- case 3:
- donpcevent "start#bat_a01::OnEnable";
- break;
- case 4:
- donpcevent "start#bat_b01::OnEnable";
- break;
- case 5:
- donpcevent "start#bat_a02::OnEnable";
- break;
- case 6:
- donpcevent "start#bat_b02::OnEnable";
- break;
- }
- mes("Complete");
- close;
- }
-}
-
-//== Badges Exchange =======================================
-bat_room,160,150,3 script Erundek 4_M_MANAGER,{
- if (checkweight(Knife,1) == 0) {
- mes("- Wait a minute !! -");
- mes("- Currently you're carrying -");
- mes("- too many items with you. -");
- mes("- Please try again -");
- mes("- after you loose some weight. -");
- close;
- }
- mes("[Erundek]");
- mes("Do you have the battlefield badges?");
- mes("I can exchange Bravery Badges and Valor Badges for reward items.");
- next;
- switch(select("Exchange Badges", "Check the Catalog")) {
- case 1:
- mes("[Erundek]");
- mes("Which type of items would you like to exchange?");
- mes("To check more information about the reward items, please use our ^3131FFCatalog^000000.");
- next;
- switch(select("Weapon", "Armor", "Accessory", "Consumable")) {
- case 1:
- mes("[Erundek]");
- mes("You chose ^3131FFWeapon^000000.");
- mes("The following weapons are available for exchange with the battlefield badges.");
- mes("Please note that items for ^3131FFBravery Badges are indicated as (BB)^000000, and ^3131FFValor Badges as (VB)^000000.");
- next;
- switch(select("Dagger/OneSword/TwoSword/TwoSpear", "Staff/Mace/TwoAxe/Shuriken", "Bow/Katar/Music/Whip", "Book/Knuckle", "Revolver/Rifle/Gatling/Shotgun/Launcher")) {
- case 1:
- mes("[Erundek]");
- mes("The following items are available in the ^3131FFDagger, One-Handed Sword, Two-Handed Sword, and Two-Handed Spear^000000 category.");
- next;
- setarray .@Weapons[0],13036,7828,13037,7829,13411,7828,13410,7829,1183,7828,1184,7829,1425,7828,1482,7829;
- break;
- case 2:
- mes("[Erundek]");
- mes("The following items are available in the ^3131FFStaff / Mace / Two-Handed Axe / Huuma Shuriken^000000 category.");
- next;
- setarray .@Weapons[0],1632,7828,1633,7829,1634,7828,1635,7829,1543,7828,1542,7829,1380,7828,1379,7829,13305,7828,13306,7829;
- break;
- case 3:
- mes("[Erundek]");
- mes("The following weapons are available in the ^3131FFBow / Katar / Musical Instrument / Whip^000000 category.");
- next;
- setarray .@Weapons[0],1739,7828,1738,7829,1279,7828,1280,7829,1924,7828,1923,7829,1978,7828,1977,7829;
- break;
- case 4:
- mes("[Erundek]");
- mes("The following weapons are available in the ^3131FFBook / Knuckle^000000 category.");
- next;
- setarray .@Weapons[0],1574,7828,1575,7829,1824,7828,1823,7829;
- break;
- case 5:
- mes("[Erundek]");
- mes("The following weapons are available in the ^3131FFRevolver / Rifle / Gatling Gun / Shotgun / Grenade Launcher^000000 category.");
- next;
- setarray .@Weapons[0],13108,7828,13171,7829,13172,7828,13173,7829,13174,7829;
- break;
- }
- .@menu$ = "";
- for (.@i = 0; .@i < getarraysize(.@Weapons); .@i += 2)
- .@menu$ += getitemname(.@Weapons[.@i]) + ((.@Weapons[.@i+1]==7828) ? _("(BB)") : _("(VB)")) + ":";
- .@i = (select(.@menu$)-1)*2;
- .@type$ = ((.@Weapons[.@i+1]==7828) ? _("(BB)") : _("(VB)"));
- mes("[Erundek]");
- mesf("You chose ^3131FF%s%s^000000.", getitemname(.@Weapons[.@i]), .@type$);
- mesf("You can exchange for this item with ^FF0000100 %s^000000.", getitemname(.@Weapons[.@i+1]));
- mes("Would you like to exchange?");
- next;
- switch(select("Do not exchange", "Exchange")) {
- case 1:
- break;
- case 2:
- mes("[Erundek]");
- mesf("Would you like to spend ^FF0000100 %s^000000 and receive a ^3131FF%s%s^000000?",
- getitemname(.@Weapons[.@i+1]), getitemname(.@Weapons[.@i]), .@type$);
- next;
- mes("[Erundek]");
- mes("Remember, Battleground Reward Items are ^FF0000Character Bound^000000. Are you sure you want this item?");
- next;
- switch(select("Yes", "No")) {
- case 1:
- mes("[Erundek]");
- if (countitem(.@Weapons[.@i+1]) >= 100) {
- mes("Thank you for exchanging.");
- delitem .@Weapons[.@i+1],100;
- getitem .@Weapons[.@i],1;
- }
- else mes("I'm sorry, but you don't have enough badges to exchange.");
- close;
- case 2:
- break;
- }
- break;
- }
- mes("[Erundek]");
- mes("Do you need more time to check the items?");
- close;
- case 2:
- mes("[Erundek]");
- mes("You chose ^3131FFArmor^000000.");
- mes("The following armors are available for exchange with the battlefield badges.");
- next;
- switch(select("Garments / Shoes", "Armor")) {
- case 1:
- setarray .@items[0],2538,50,2539,50,2540,50,2435,50,2436,50,2437,50;
- break;
- case 2:
- setarray .@items[0],2376,80,2377,80,2378,80,2379,80,2380,80,2381,80,2382,80;
- break;
- }
- break;
- case 3:
- mes("[Erundek]");
- mes("You chose ^3131FFAccessory^000000.");
- mes("You can exchange the Medal of Honors with your Badges according to the job classes, as follows:");
- next;
- setarray .@items[0],2733,500,2720,500,2721,500,2722,500,2723,500,2724,500,2725,500;
- .@menu1$ = sprintf("%s:%s/%s:%s:%s:%s:%s:%s",
- jobname(Job_Gunslinger), jobname(Job_Swordman), jobname(Job_Star_Gladiator), jobname(Job_Thief),
- jobname(Job_Acolyte), jobname(Job_Mage), jobname(Job_Archer), jobname(Job_Merchant));
- break;
- case 4:
- mes("[Erundek]");
- mes("You chose ^3131FFConsumable^000000.");
- mes("The following consumable items are available for exchange with the battlefield badges:");
- next;
- setarray .@items[0],12269,10,12270,10,12271,5,12272,10,12273,10;
- break;
- }
- break;
- case 2:
- mes("[Erundek]");
- mes("We have many items, so please take a look and purchase deliberately.");
- close2;
- readbook 11010,1;
- end;
- }
- .@menu$ = "";
- if (.@menu1$ != "") .@menu$ = .@menu1$;
- else for (.@i = 0; .@i < getarraysize(.@items); .@i += 2)
- .@menu$ += getitemname(.@items[.@i])+":";
- .@i = (select(.@menu$)-1)*2;
- mes("[Erundek]");
- mesf("You chose ^3131FF%s^000000.", getitemname(.@items[.@i]));
- switch(.@items[.@i]) {
- case 2720: mes("This item is for Swordman and Taekwon Master Class only."); break;
- case 2721: mes("This item is for Thief Class only."); break;
- case 2722: mes("This item is for Acolyte Class only."); break;
- case 2723: mes("This item is for Magician Class only."); break;
- case 2724: mes("This item is for Archer Class only."); break;
- case 2725: mes("This item is for Merchant Class only."); break;
- case 2733: mes("This item is for Gunslinger only."); break;
- default: break;
- }
- mesf("You can exchange for this item with ^FF0000%d %s or %d %s^000000.", .@items[.@i+1], getitemname(7828), .@items[.@i+1], getitemname(7829));
- mes("Would you like to exchange?");
- next;
- switch(select("Do not exchange", "Exchange")) {
- case 1:
- mes("[Erundek]");
- mes("Do you need more time to check the items?");
- break;
- case 2:
- mes("[Erundek]");
- mes("Which Badge do you want to exchange?");
- mesf("You need ^3131FF%d Badges^000000 to exchange.", .@items[.@i+1]);
- next;
- if (.@item[0] < 12269 || .@item[0] > 12273 ) {
- mes("[Erundek]");
- mes("Remember, Battleground Reward Items are ^FF0000Character Bound^000000. Are you sure you want this item?");
- next;
- }
- .@j = select("Bravery Badge", "Valor Badge", "Cancel");
- mes("[Erundek]");
- if (.@j == 3) {
- mes("You cancelled the exchange.");
- break;
- }
- .@cost = ((.@j==1)?7828:7829);
- if (countitem(.@cost) >= .@items[.@i+1]) {
- mes("Thank you for exchanging.");
- delitem .@cost, .@items[.@i+1];
- getitem .@items[.@i],1;
- }
- else mesf("You do not have enough %ss.", getitemname(.@cost));
- break;
- }
- close;
-}
diff --git a/npc/battleground/flavius/flavius01.txt b/npc/battleground/flavius/flavius01.txt
deleted file mode 100644
index 8370f1e53..000000000
--- a/npc/battleground/flavius/flavius01.txt
+++ /dev/null
@@ -1,768 +0,0 @@
-//================= Hercules Script =======================================
-//= _ _ _
-//= | | | | | |
-//= | |_| | ___ _ __ ___ _ _| | ___ ___
-//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
-//= | | | | __/ | | (__| |_| | | __/\__ \
-//= \_| |_/\___|_| \___|\__,_|_|\___||___/
-//================= License ===============================================
-//= This file is part of Hercules.
-//= http://herc.ws - http://github.com/HerculesWS/Hercules
-//=
-//= Copyright (C) 2012-2016 Hercules Dev Team
-//= Copyright (C) Euphy
-//= Copyright (C) Kisuka
-//= Copyright (C) L0ne_W0lf
-//=
-//= Hercules is free software: you can redistribute it and/or modify
-//= it under the terms of the GNU General Public License as published by
-//= the Free Software Foundation, either version 3 of the License, or
-//= (at your option) any later version.
-//=
-//= This program is distributed in the hope that it will be useful,
-//= but WITHOUT ANY WARRANTY; without even the implied warranty of
-//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-//= GNU General Public License for more details.
-//=
-//= You should have received a copy of the GNU General Public License
-//= along with this program. If not, see <http://www.gnu.org/licenses/>.
-//=========================================================================
-// BattleGround System - Flavius
-//================= Description ===========================================
-//= Flavius Battleground.
-//= - Winning Team: 9 badges
-//= - Losing Team: 3 badge
-//================= Current Version =======================================
-//= 1.5
-//=========================================================================
-
-//== Waiting Room NPCs =====================================
-bat_room,86,227,4 script Lieutenant Ator 4_M_KY_KNT,{
- end;
-OnInit:
- waitingroom(_("Battle Station"), 11, "start#bat_b01::OnReadyCheck", 1, 0, 80);
- end;
-OnEnterBG:
- $@FlaviusBG1_id1 = waitingroom2bg("bat_b01",10,290,"start#bat_b01::OnGuillaumeQuit","");
- end;
-}
-
-bat_room,85,204,0 script Lieutenant Thelokus 4_M_CRU_KNT,{
- end;
-OnInit:
- waitingroom(_("Battle Station"), 11, "start#bat_b01::OnReadyCheck", 1, 0, 80);
- end;
-OnEnterBG:
- $@FlaviusBG1_id2 = waitingroom2bg("bat_b01",390,10,"start#bat_b01::OnCroixQuit","");
- end;
-}
-
-bat_room,85,220,0 warp back_bgroomb01a 1,1,bat_room,154,150
-bat_room,85,211,0 warp back_bgroomb01b 1,1,bat_room,154,150
-
-bat_room,2,151,3 script #bat_b01_timer CLEAR_NPC,{
- end;
-
-OnInit:
-OnEnable:
- initnpctimer;
- end;
-
-OnStop:
- stopnpctimer;
- end;
-
-OnTimer1000:
- stopnpctimer;
- initnpctimer;
- .@chk_bat_a01 = getmapusers("bat_b01");
- if (.@chk_bat_a01 < 1) {
- $@FlaviusBG1 = 0;
- if( $@FlaviusBG1_id1 ) { bg_destroy $@FlaviusBG1_id1; $@FlaviusBG1_id1 = 0; }
- if( $@FlaviusBG1_id2 ) { bg_destroy $@FlaviusBG1_id2; $@FlaviusBG1_id2 = 0; }
- donpcevent "start#bat_b01::OnReadyCheck";
- }
- end;
-}
-
-//== Flavius Battleground Engine ===========================
-bat_b01,15,15,3 script start#bat_b01 CLEAR_NPC,{
-OnInit:
- mapwarp "bat_b01","bat_room",154,150;
- end;
-
-OnReadyCheck:
- if( $@FlaviusBG1 )
- end;
- .@Guillaume = getwaitingroomstate(0,"Lieutenant Ator");
- .@Croix = getwaitingroomstate(0,"Lieutenant Thelokus");
- if( !.@Guillaume && !.@Croix ) {
- donpcevent "#bat_b01_timer::OnStop";
- end;
- }
- if( .@Guillaume < 10 || .@Croix < 10 )
- end;
- $@FlaviusBG1 = 1;
- $@FlaviusBG1_Victory = 0;
- $@Croix_ScoreBG1 = 0;
- $@Guill_ScoreBG1 = 0;
- bg_updatescore "bat_b01",$@Guill_ScoreBG1,$@Croix_ScoreBG1;
-
- donpcevent "Lieutenant Ator::OnEnterBG";
- donpcevent "Lieutenant Thelokus::OnEnterBG";
- donpcevent "OBJ#bat_b01_a::OnKill";
- donpcevent "OBJ#bat_b01_a::OnEnable";
- donpcevent "OBJ#bat_b01_b::OnKill";
- donpcevent "OBJ#bat_b01_b::OnEnable";
- donpcevent "guardian#bat_b01_a::OnKill";
- donpcevent "guardian#bat_b01_b::OnKill";
- donpcevent "guardian#bat_b01_a::OnEnable";
- donpcevent "guardian#bat_b01_b::OnEnable";
- donpcevent "cell#bat_b01_a::OnRed";
- donpcevent "cell#bat_b01_b::OnRed";
- donpcevent "time#bat_b01::OnEnable";
- disablenpc "Guillaume Vintenar#b01_a";
- disablenpc "Croix Vintenar#b01_b";
- disablenpc "Vintenar#bat_b01_aover";
- disablenpc "Vintenar#bat_b01_bover";
- bg_warp $@FlaviusBG1_id1,"bat_b01",87,75;
- bg_warp $@FlaviusBG1_id2,"bat_b01",311,224;
- donpcevent "countdown#bat_b01::OnEnable";
- initnpctimer;
- end;
-
-OnReset:
- donpcevent "OBJ#bat_b01_a::OnKill";
- donpcevent "OBJ#bat_b01_a::OnEnable";
- donpcevent "OBJ#bat_b01_b::OnKill";
- donpcevent "OBJ#bat_b01_b::OnEnable";
- donpcevent "guardian#bat_b01_a::OnKill";
- donpcevent "guardian#bat_b01_b::OnKill";
- donpcevent "guardian#bat_b01_a::OnEnable";
- donpcevent "guardian#bat_b01_b::OnEnable";
- donpcevent "cell#bat_b01_a::OnRed";
- donpcevent "cell#bat_b01_b::OnRed";
- donpcevent "time#bat_b01::OnEnable";
- disablenpc "Guillaume Vintenar#b01_a";
- disablenpc "Croix Vintenar#b01_b";
- disablenpc "Vintenar#bat_b01_aover";
- disablenpc "Vintenar#bat_b01_bover";
- bg_warp $@FlaviusBG1_id1,"bat_b01",87,75;
- bg_warp $@FlaviusBG1_id2,"bat_b01",311,224;
- end;
-
-OnGuillaumeQuit:
-OnCroixQuit:
- bg_leave;
- end;
-
-OnTimer10000:
- stopnpctimer;
- donpcevent "#bat_b01_timer::OnEnable";
- end;
-}
-
-bat_b01,1,1,3 script OBJ#bat_b01_a CLEAR_NPC,{
-OnEnable:
- bg_monster $@FlaviusBG1_id1,"bat_b01",61,150,"Pink Crystal",1915,"OBJ#bat_b01_a::OnMyMobDead";
- end;
-
-OnKill:
- killmonster "bat_b01","OBJ#bat_b01_a::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_b01","OBJ#bat_b01_a::OnMyMobDead") < 1) {
- mapannounce("bat_b01", _("Guillaume's Crystal has been destroyed."), bc_map, "0xFFCE00");
- if ($@Croix_ScoreBG1 > 0) {
- $@FlaviusBG1_Victory = 2;
- ++$@Croix_ScoreBG1;
- enablenpc "Guillaume Vintenar#b01_a";
- enablenpc "Croix Vintenar#b01_b";
- donpcevent "time#bat_b01::OnStop";
- }
- else {
- $@Croix_ScoreBG1 = 1;
- donpcevent "time#bat_b01::OnEnable";
- donpcevent "start#bat_b01::OnReset";
- }
- donpcevent "#bat_b01_timer::OnStop";
- bg_updatescore "bat_b01",$@Guill_ScoreBG1,$@Croix_ScoreBG1;
- bg_warp $@FlaviusBG1_id1,"bat_b01",10,290;
- bg_warp $@FlaviusBG1_id2,"bat_b01",390,10;
- donpcevent "#bat_b01_timer::OnEnable";
- }
- end;
-}
-
-bat_b01,1,2,3 script OBJ#bat_b01_b CLEAR_NPC,{
-OnEnable:
- bg_monster($@FlaviusBG1_id2, "bat_b01", 328, 150, _("Blue Crystal"), 1914, "OBJ#bat_b01_b::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_b01","OBJ#bat_b01_b::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_b01","OBJ#bat_b01_b::OnMyMobDead") < 1) {
- mapannounce("bat_b01", _("Croix's Crystal has been destroyed."), bc_map, "0xFFCE00");
- if ($@Guill_ScoreBG1 > 0) {
- $@FlaviusBG1_Victory = 1;
- ++$@Guill_ScoreBG1;
- enablenpc "Guillaume Vintenar#b01_a";
- enablenpc "Croix Vintenar#b01_b";
- donpcevent "time#bat_b01::OnStop";
- }
- else {
- $@Guill_ScoreBG1 = 1;
- donpcevent "time#bat_b01::OnEnable";
- donpcevent "start#bat_b01::OnReset";
- }
- donpcevent "#bat_b01_timer::OnStop";
- bg_updatescore "bat_b01",$@Guill_ScoreBG1,$@Croix_ScoreBG1;
- bg_warp $@FlaviusBG1_id1,"bat_b01",10,290;
- bg_warp $@FlaviusBG1_id2,"bat_b01",390,10;
- donpcevent "#bat_b01_timer::OnEnable";
- }
- end;
-}
-
-bat_b01,1,3,3 script guardian#bat_b01_a CLEAR_NPC,{
-OnEnable:
- bg_monster($@FlaviusBG1_id1, "bat_b01", 108, 159, _("Guillaume Camp Guardian"), 1949, "guardian#bat_b01_a::OnMyMobDead");
- bg_monster($@FlaviusBG1_id1, "bat_b01", 108, 141, _("Guillaume Camp Guardian"), 1949, "guardian#bat_b01_a::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_b01","guardian#bat_b01_a::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_b01","guardian#bat_b01_a::OnMyMobDead") < 1) {
- donpcevent "cell#bat_b01_a::OnGreen";
- mapannounce("bat_b01", _("The Guardian protecting Guillaume's Crystal has been slain."), bc_map, "0xFFCE00");
- }
- end;
-}
-
-bat_b01,1,3,3 script guardian#bat_b01_b CLEAR_NPC,{
-OnEnable:
- bg_monster($@FlaviusBG1_id2, "bat_b01", 307, 160, _("Croix Camp Guardian"), 1949, "guardian#bat_b01_b::OnMyMobDead");
- bg_monster($@FlaviusBG1_id2, "bat_b01", 307, 138, _("Croix Camp Guardian"), 1949, "guardian#bat_b01_b::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_b01","guardian#bat_b01_b::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_b01","guardian#bat_b01_b::OnMyMobDead") < 1) {
- donpcevent "cell#bat_b01_b::OnGreen";
- mapannounce("bat_b01", _("The Guardian protecting Croix's Crystal has been slain."), bc_map, "0xFFCE00");
- }
- end;
-}
-
-bat_b01,1,4,3 script cell#bat_b01_a CLEAR_NPC,{
-OnRed:
- setcell "bat_b01",62,149,60,151,cell_basilica,1;
- setcell "bat_b01",62,149,60,151,cell_walkable,0;
- end;
-
-OnGreen:
- setcell "bat_b01",62,149,60,151,cell_basilica,0;
- setcell "bat_b01",62,149,60,151,cell_walkable,1;
- end;
-}
-
-bat_b01,1,5,3 script cell#bat_b01_b CLEAR_NPC,{
-OnRed:
- setcell "bat_b01",327,151,329,149,cell_basilica,1;
- setcell "bat_b01",327,151,329,149,cell_walkable,0;
- end;
-
-OnGreen:
- setcell "bat_b01",327,151,329,149,cell_basilica,0;
- setcell "bat_b01",327,151,329,149,cell_walkable,1;
- end;
-}
-
-bat_b01,1,6,1 script time#bat_b01 CLEAR_NPC,{
-OnEnable:
- donpcevent "Battle Therapist#b01_a::OnEnable";
- donpcevent "Battle Therapist#b01_b::OnEnable";
- end;
-
-OnStop:
- donpcevent "Battle Therapist#b01_a::OnStop";
- donpcevent "Battle Therapist#b01_b::OnStop";
- end;
-}
-
-bat_b01,10,294,3 script Battle Therapist#b01_a 4_F_SISTER,{
- specialeffect2 EF_HEAL;
- mes("[Battle Therapist]");
- mes("Just close your eyes,\r"
- "and take a deep breath.");
- mes("You can be free from pain.");
- close;
-
-OnTimer25000:
- specialeffect EF_SANCTUARY;
- enablenpc "bat_b01_rp1_a_warp";
- end;
-
-OnTimer26000:
- disablenpc "bat_b01_rp1_a_warp";
- end;
-
-OnTimer26500:
- stopnpctimer;
- donpcevent "Battle Therapist#b01_a::OnEnable";
- end;
-
-OnEnable:
- initnpctimer;
- enablenpc "Battle Therapist#b01_a";
- end;
-
-OnStop:
- disablenpc "bat_b01_rp1_a_warp";
- disablenpc "Battle Therapist#b01_a";
- stopnpctimer;
- end;
-}
-
-bat_b01,10,290,0 script bat_b01_rp1_a_warp WARPNPC,10,10,{
-OnInit:
- disablenpc "bat_b01_rp1_a_warp";
- end;
-
-OnTouch:
- percentheal 100,100;
- warp "bat_b01",87,73;
- end;
-}
-
-bat_b01,389,14,3 script Battle Therapist#b01_b 4_F_SISTER,{
- specialeffect2 EF_HEAL;
- mes("[Battle Therapist]");
- mes("Just close your eyes,\r"
- "and take a deep breath.");
- mes("You can be free from pain.");
- close;
-
-OnTimer25000:
- specialeffect EF_SANCTUARY;
- enablenpc "bat_b01_rp1_b_warp";
- end;
-
-OnTimer26000:
- disablenpc "bat_b01_rp1_b_warp";
- end;
-
-OnTimer26500:
- stopnpctimer;
- donpcevent "Battle Therapist#b01_b::OnEnable";
- end;
-
-OnEnable:
- initnpctimer;
- enablenpc "Battle Therapist#b01_b";
- end;
-
-OnStop:
- disablenpc "bat_b01_rp1_b_warp";
- disablenpc "Battle Therapist#b01_b";
- stopnpctimer;
- end;
-}
-
-bat_b01,389,10,0 script bat_b01_rp1_b_warp WARPNPC,9,9,{
-OnInit:
- disablenpc "bat_b01_rp1_a_warp";
- end;
-
-OnTouch:
- percentheal 100,100;
- warp "bat_b01",312,225;
- end;
-}
-
-bat_b01,87,76,0 script A_CODE#bat_b01 FAKE_NPC,5,5,{
-OnTouch:
- if (!questprogress(2070))
- setquest 2070;
- end;
-}
-
-bat_b01,312,224,0 script B_CODE#bat_b01 FAKE_NPC,5,5,{
-OnTouch:
- if (!questprogress(2070))
- setquest 2070;
- end;
-}
-
-bat_b01,10,294,3 script Guillaume Vintenar#b01_a 4_M_RASWORD,{
- if ($@FlaviusBG1_id1 == getcharid(CHAR_ID_BG)) {
- if ($@FlaviusBG1_Victory == 1) {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 8) {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,9;
- }
- else {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, next time you will definitely win.");
- close2;
- getitem BF_Badge2,3;
- }
- else {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, next time you will definitely win.");
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- }
- bg_leave;
- warp "bat_room",154,150;
- end;
-
-OnInit:
- disablenpc "Guillaume Vintenar#b01_a";
- end;
-}
-
-bat_b01,389,14,3 script Croix Vintenar#b01_b 4_M_RASWORD,{
- if ($@FlaviusBG1_id2 == getcharid(CHAR_ID_BG)) {
- if ($@FlaviusBG1_Victory == 2) {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 8) {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,9;
- }
- else {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Swandery]");
- mesf("Oh, %s. Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge2,3;
- }
- else {
- mes("[Swandery]");
- mesf("Oh, %s. Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- }
- bg_leave;
- warp "bat_room",154,150;
- end;
-
-OnInit:
- disablenpc "Croix Vintenar#b01_b";
- end;
-}
-
-bat_b01,1,5,3 script countdown#bat_b01 CLEAR_NPC,{
-OnInit:
- stopnpctimer;
- end;
-
-OnEnable:
- stopnpctimer;
- initnpctimer;
- end;
-
-OnStop:
- stopnpctimer;
- end;
-
-OnTimer7000:
- mapannounce("bat_b01", _("Guillaume Vintenar Axl Rose : Let's attack to destroy that Crystal!"), bc_map, "0xFF9900");
- end;
-
-OnTimer8000:
- mapannounce("bat_b01", _("Croix Vintenar Swandery : Even though Guillaume is struggling to win against us, the victory is ours. Let's show them our power."), bc_map, "0xFF99CC");
- end;
-
-OnTimer1800000:
- mapannounce("bat_b01", _("Marollo VII : Guillaume Marollo, Croix Marollo! And their followers!"), bc_map, "0x99CC00");
- end;
-
-OnTimer1803000:
- mapannounce("bat_b01", _("Marollo VII : Both camps are competitive, so it's hard to judge which team is superior."), bc_map, "0x99CC00");
- end;
-
-OnTimer1808000:
- mapannounce("bat_b01", _("Marollo VII : This battle of Flavian is such a waste of time. I will decide victory and defeat by your progress."), bc_map, "0x99CC00");
- end;
-
-OnTimer1822000:
- mapannounce("bat_b01", _("Marollo VII : If you can't accept the results, try again in another valley battle!"), bc_map, "0x99CC00");
- end;
-
-OnTimer1825000:
- mapannounce("bat_b01", _("Axl Rose, Swandery : Yes, sir."), bc_map, "0x99CC00");
- end;
-
-OnTimer1830000:
- donpcevent "time#bat_b01::OnStop";
- bg_warp $@FlaviusBG1_id1,"bat_b01",10,290;
- bg_warp $@FlaviusBG1_id2,"bat_b01",390,10;
- enablenpc "Vintenar#bat_b01_aover";
- enablenpc "Vintenar#bat_b01_bover";
- end;
-
-OnTimer1900000:
- mapwarp "bat_b01","bat_room",154,150;
- donpcevent "countdown#bat_b01::OnStop";
- end;
-}
-
-bat_b01,81,83,3 script Guillaume Camp#flag21 1_FLAG_LION,{ end; }
-bat_b01,94,83,3 script Guillaume Camp#flag22 1_FLAG_LION,{ end; }
-bat_b01,81,66,3 script Guillaume Camp#flag23 1_FLAG_LION,{ end; }
-bat_b01,94,66,3 script Guillaume Camp#flag24 1_FLAG_LION,{ end; }
-bat_b01,139,142,3 script Guillaume Camp#flag25 1_FLAG_LION,{ end; }
-bat_b01,139,158,3 script Guillaume Camp#flag26 1_FLAG_LION,{ end; }
-bat_b01,110,161,3 script Guillaume Camp#flag27 1_FLAG_LION,{ end; }
-bat_b01,110,137,3 script Guillaume Camp#flag28 1_FLAG_LION,{ end; }
-bat_b01,63,135,3 script Guillaume Camp#flag29 1_FLAG_LION,{ end; }
-bat_b01,63,165,3 script Guillaume Camp#flag30 1_FLAG_LION,{ end; }
-bat_b01,10,296,3 script Guillaume Camp#flag31 1_FLAG_LION,{ end; }
-
-bat_b01,306,233,3 script Croix Camp#flag21 1_FLAG_EAGLE,{ end; }
-bat_b01,317,233,3 script Croix Camp#flag22 1_FLAG_EAGLE,{ end; }
-bat_b01,306,216,3 script Croix Camp#flag23 1_FLAG_EAGLE,{ end; }
-bat_b01,317,216,3 script Croix Camp#flag24 1_FLAG_EAGLE,{ end; }
-bat_b01,257,158,3 script Croix Camp#flag25 1_FLAG_EAGLE,{ end; }
-bat_b01,257,141,3 script Croix Camp#flag26 1_FLAG_EAGLE,{ end; }
-bat_b01,297,164,3 script Croix Camp#flag27 1_FLAG_EAGLE,{ end; }
-bat_b01,297,136,3 script Croix Camp#flag28 1_FLAG_EAGLE,{ end; }
-bat_b01,336,161,3 script Croix Camp#flag29 1_FLAG_EAGLE,{ end; }
-bat_b01,336,139,3 script Croix Camp#flag30 1_FLAG_EAGLE,{ end; }
-bat_b01,389,16,3 script Croix Camp#flag31 1_FLAG_EAGLE,{ end; }
-
-bat_b01,10,294,3 script Vintenar#bat_b01_aover 4_M_KY_HEAD,{
- .@A_B_gap = $@Guill_ScoreBG1 - $@Croix_ScoreBG1;
- if ($@FlaviusBG1_id1 == getcharid(CHAR_ID_BG)) {
- if (.@A_B_gap > 0) {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 8) {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,9;
- }
- else {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- else if (.@A_B_gap == 0) {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, next time you will definitely win.");
- close2;
- getitem BF_Badge2,3;
- }
- else {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, next time you will definitely win.");
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, next time you will definitely win.");
- close2;
- getitem BF_Badge2,3;
- }
- else {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, next time you will definitely win.");
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- }
- else {
- mes("[Axl Rose]");
- mes("Why are you here, Croix mercenary? I am definitely sure of victory against foolish Croix such as you. Ha!");
- close;
- }
- bg_leave;
- warp "bat_room",154,150;
- end;
-
-OnInit:
- disablenpc "Vintenar#bat_b01_aover";
- end;
-}
-
-bat_b01,389,14,3 script Vintenar#bat_b01_bover 4_M_CRU_HEAD,{
- .@A_B_gap = $@Guill_ScoreBG1 - $@Croix_ScoreBG1;
- if ($@FlaviusBG1_id2 == getcharid(CHAR_ID_BG)) {
- if (.@A_B_gap > 0) {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Swandery]");
- mesf("Oh, %s. Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge2,3;
- }
- else {
- mes("[Swandery]");
- mesf("Oh, %s. Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- else if (.@A_B_gap == 0) {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Swandery]");
- mesf("Oh, %s. Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge2,3;
- }
- else {
- mes("[Swandery]");
- mesf("Oh, %s. Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 8) {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,9;
- }
- else {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- }
- else {
- mes("[Swandery]");
- mes("Why do you come here as a Guillaume? You will be sent to where you should be!");
- close;
- }
- bg_leave;
- warp "bat_room",154,150;
- end;
-
-OnInit:
- disablenpc "Vintenar#bat_b01_bover";
- end;
-}
-
-bat_b01,1,10,3 script Release all#b01 4_DOG01,{
- .@i = callfunc("F_GM_NPC",1854,0);
- if (.@i == -1) {
- mes("Cancelled.");
- close;
- } else if (.@i == 0) {
- end;
- } else {
- mes("May I help you?");
- next;
- switch(select("Release all.", "Cancel.")) {
- case 1:
- mes("Bye.");
- close2;
- mapwarp "bat_b01","bat_room",154,150;
- end;
- case 2:
- mes("Cancelled.");
- close;
- }
- }
-}
diff --git a/npc/battleground/flavius/flavius02.txt b/npc/battleground/flavius/flavius02.txt
deleted file mode 100644
index 232dd7e39..000000000
--- a/npc/battleground/flavius/flavius02.txt
+++ /dev/null
@@ -1,768 +0,0 @@
-//================= Hercules Script =======================================
-//= _ _ _
-//= | | | | | |
-//= | |_| | ___ _ __ ___ _ _| | ___ ___
-//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
-//= | | | | __/ | | (__| |_| | | __/\__ \
-//= \_| |_/\___|_| \___|\__,_|_|\___||___/
-//================= License ===============================================
-//= This file is part of Hercules.
-//= http://herc.ws - http://github.com/HerculesWS/Hercules
-//=
-//= Copyright (C) 2012-2016 Hercules Dev Team
-//= Copyright (C) Euphy
-//= Copyright (C) Kisuka
-//= Copyright (C) L0ne_W0lf
-//=
-//= Hercules is free software: you can redistribute it and/or modify
-//= it under the terms of the GNU General Public License as published by
-//= the Free Software Foundation, either version 3 of the License, or
-//= (at your option) any later version.
-//=
-//= This program is distributed in the hope that it will be useful,
-//= but WITHOUT ANY WARRANTY; without even the implied warranty of
-//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-//= GNU General Public License for more details.
-//=
-//= You should have received a copy of the GNU General Public License
-//= along with this program. If not, see <http://www.gnu.org/licenses/>.
-//=========================================================================
-// BattleGround System - Flavius Second
-//================= Description ===========================================
-//= Flavius Battleground.
-//= - Winning Team: 9 badges
-//= - Losing Team: 3 badge
-//================= Current Version =======================================
-//= 1.6
-//=========================================================================
-
-//== Waiting Room NPCs =====================================
-bat_room,142,227,4 script Lieutenant Huvas 4_M_KY_KNT,{
- end;
-OnInit:
- waitingroom(_("Battle Station"), 11, "start#bat_b02::OnReadyCheck", 1, 0, 80);
- end;
-OnEnterBG:
- $@FlaviusBG2_id1 = waitingroom2bg("bat_b02",10,290,"start#bat_b02::OnGuillaumeQuit","");
- end;
-}
-
-bat_room,142,204,0 script Lieutenant Yukon 4_M_CRU_KNT,{
- end;
-OnInit:
- waitingroom(_("Battle Station"), 11, "start#bat_b02::OnReadyCheck", 1, 0, 80);
- end;
-OnEnterBG:
- $@FlaviusBG2_id2 = waitingroom2bg("bat_b02",390,10,"start#bat_b02::OnCroixQuit","");
- end;
-}
-
-bat_room,141,220,0 warp back_bgroomb02a 1,1,bat_room,154,150
-bat_room,141,211,0 warp back_bgroomb02b 1,1,bat_room,154,150
-
-bat_room,2,151,3 script #bat_b02_timer CLEAR_NPC,{
- end;
-
-OnInit:
-OnEnable:
- initnpctimer;
- end;
-
-OnStop:
- stopnpctimer;
- end;
-
-OnTimer1000:
- stopnpctimer;
- initnpctimer;
- .@chk_bat_a01 = getmapusers("bat_b02");
- if (.@chk_bat_a01 < 1) {
- $@FlaviusBG2 = 0;
- if( $@FlaviusBG2_id1 ) { bg_destroy $@FlaviusBG2_id1; $@FlaviusBG2_id1 = 0; }
- if( $@FlaviusBG2_id2 ) { bg_destroy $@FlaviusBG2_id2; $@FlaviusBG2_id2 = 0; }
- donpcevent "start#bat_b02::OnReadyCheck";
- }
- end;
-}
-
-//== Flavius Battleground Engine ===========================
-bat_b02,15,15,3 script start#bat_b02 CLEAR_NPC,{
-OnInit:
- mapwarp "bat_b02","bat_room",154,150;
- end;
-
-OnReadyCheck:
- if( $@FlaviusBG2 )
- end;
- .@Guillaume = getwaitingroomstate(0,"Lieutenant Huvas");
- .@Croix = getwaitingroomstate(0,"Lieutenant Yukon");
- if( !.@Guillaume && !.@Croix ) {
- donpcevent "#bat_b02_timer::OnStop";
- end;
- }
- if( .@Guillaume < 10 || .@Croix < 10 )
- end;
- $@FlaviusBG2 = 1;
- $@FlaviusBG2_Victory = 0;
- $@Croix_ScoreBG2 = 0;
- $@Guill_ScoreBG2 = 0;
-
- bg_updatescore "bat_b02",$@Guill_ScoreBG2,$@Croix_ScoreBG2;
- donpcevent "Lieutenant Huvas::OnEnterBG";
- donpcevent "Lieutenant Yukon::OnEnterBG";
- donpcevent "OBJ#bat_b02_a::OnKill";
- donpcevent "OBJ#bat_b02_a::OnEnable";
- donpcevent "OBJ#bat_b02_b::OnKill";
- donpcevent "OBJ#bat_b02_b::OnEnable";
- donpcevent "guardian#bat_b02_a::OnKill";
- donpcevent "guardian#bat_b02_b::OnKill";
- donpcevent "guardian#bat_b02_a::OnEnable";
- donpcevent "guardian#bat_b02_b::OnEnable";
- donpcevent "cell#bat_b02_a::OnRed";
- donpcevent "cell#bat_b02_b::OnRed";
- donpcevent "time#bat_b02::OnEnable";
- disablenpc "Guillaume Vintenar#b02_a";
- disablenpc "Croix Vintenar#b02_b";
- disablenpc "Vintenar#bat_b02_aover";
- disablenpc "Vintenar#bat_b02_bover";
- bg_warp $@FlaviusBG2_id1,"bat_b02",87,75;
- bg_warp $@FlaviusBG2_id2,"bat_b02",311,224;
- donpcevent "countdown#bat_b02::OnEnable";
- initnpctimer;
- end;
-
-OnReset:
- donpcevent "OBJ#bat_b02_a::OnKill";
- donpcevent "OBJ#bat_b02_a::OnEnable";
- donpcevent "OBJ#bat_b02_b::OnKill";
- donpcevent "OBJ#bat_b02_b::OnEnable";
- donpcevent "guardian#bat_b02_a::OnKill";
- donpcevent "guardian#bat_b02_b::OnKill";
- donpcevent "guardian#bat_b02_a::OnEnable";
- donpcevent "guardian#bat_b02_b::OnEnable";
- donpcevent "cell#bat_b02_a::OnRed";
- donpcevent "cell#bat_b02_b::OnRed";
- donpcevent "time#bat_b02::OnEnable";
- disablenpc "Guillaume Vintenar#b02_a";
- disablenpc "Croix Vintenar#b02_b";
- disablenpc "Vintenar#bat_b02_aover";
- disablenpc "Vintenar#bat_b02_bover";
- bg_warp $@FlaviusBG2_id1,"bat_b02",87,75;
- bg_warp $@FlaviusBG2_id2,"bat_b02",311,224;
- end;
-
-OnGuillaumeQuit:
-OnCroixQuit:
- bg_leave;
- end;
-
-OnTimer10000:
- stopnpctimer;
- donpcevent "#bat_b02_timer::OnEnable";
- end;
-}
-
-bat_b02,1,1,3 script OBJ#bat_b02_a CLEAR_NPC,{
-OnEnable:
- bg_monster $@FlaviusBG2_id1,"bat_b02",61,150,"Pink Crystal",1915,"OBJ#bat_b02_a::OnMyMobDead";
- end;
-
-OnKill:
- killmonster "bat_b02","OBJ#bat_b02_a::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_b02","OBJ#bat_b02_a::OnMyMobDead") < 1) {
- mapannounce("bat_b02", _("Guillaume's Crystal has been destroyed."), bc_map, "0xFFCE00");
- if ($@Croix_ScoreBG2 > 0) {
- $@FlaviusBG2_Victory = 2;
- $@Croix_ScoreBG2 = $@Croix_ScoreBG2+1;
- enablenpc "Guillaume Vintenar#b02_a";
- enablenpc "Croix Vintenar#b02_b";
- donpcevent "time#bat_b02::OnStop";
- }
- else {
- $@Croix_ScoreBG2 = 1;
- donpcevent "time#bat_b02::OnEnable";
- donpcevent "start#bat_b02::OnReset";
- }
- donpcevent "#bat_b02_timer::OnStop";
- bg_updatescore "bat_b02",$@Guill_ScoreBG2,$@Croix_ScoreBG2;
- bg_warp $@FlaviusBG2_id1,"bat_b02",10,290;
- bg_warp $@FlaviusBG2_id2,"bat_b02",390,10;
- donpcevent "#bat_b02_timer::OnEnable";
- }
- end;
-}
-
-bat_b02,1,2,3 script OBJ#bat_b02_b CLEAR_NPC,{
-OnEnable:
- bg_monster($@FlaviusBG2_id2, "bat_b02", 328, 150, _("Blue Crystal"), 1914, "OBJ#bat_b02_b::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_b02","OBJ#bat_b02_b::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_b02","OBJ#bat_b02_b::OnMyMobDead") < 1) {
- mapannounce("bat_b02", _("Croix's Crystal has been destroyed."), bc_map, "0xFFCE00");
- if ($@Guill_ScoreBG2 > 0) {
- $@FlaviusBG2_Victory = 1;
- ++$@Guill_ScoreBG2;
- enablenpc "Guillaume Vintenar#b02_a";
- enablenpc "Croix Vintenar#b02_b";
- donpcevent "time#bat_b02::OnStop";
- }
- else {
- $@Guill_ScoreBG2 = 1;
- donpcevent "time#bat_b02::OnEnable";
- donpcevent "start#bat_b02::OnReset";
- }
- donpcevent "#bat_b02_timer::OnStop";
- bg_updatescore "bat_b02",$@Guill_ScoreBG2,$@Croix_ScoreBG2;
- bg_warp $@FlaviusBG2_id1,"bat_b02",10,290;
- bg_warp $@FlaviusBG2_id2,"bat_b02",390,10;
- donpcevent "#bat_b02_timer::OnEnable";
- }
- end;
-}
-
-bat_b02,1,3,3 script guardian#bat_b02_a CLEAR_NPC,{
-OnEnable:
- bg_monster($@FlaviusBG2_id1, "bat_b02", 108, 159, _("Guillaume Camp Guardian"), 1949, "guardian#bat_b02_a::OnMyMobDead");
- bg_monster($@FlaviusBG2_id1, "bat_b02", 108, 141, _("Guillaume Camp Guardian"), 1949, "guardian#bat_b02_a::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_b02","guardian#bat_b02_a::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_b02","guardian#bat_b02_a::OnMyMobDead") < 1) {
- donpcevent "cell#bat_b02_a::OnGreen";
- mapannounce("bat_b02", _("The Guardian protecting Guillaume's Crystal has been slain."), bc_map, "0xFFCE00");
- }
- end;
-}
-
-bat_b02,1,3,3 script guardian#bat_b02_b CLEAR_NPC,{
-OnEnable:
- bg_monster($@FlaviusBG2_id2, "bat_b02", 307, 160, _("Croix Camp Guardian"), 1949, "guardian#bat_b02_b::OnMyMobDead");
- bg_monster($@FlaviusBG2_id2, "bat_b02", 307, 138, _("Croix Camp Guardian"), 1949, "guardian#bat_b02_b::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_b02","guardian#bat_b02_b::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_b02","guardian#bat_b02_b::OnMyMobDead") < 1) {
- donpcevent "cell#bat_b02_b::OnGreen";
- mapannounce("bat_b02", _("The Guardian protecting Croix's Crystal has been slain."), bc_map, "0xFFCE00");
- }
- end;
-}
-
-bat_b02,1,4,3 script cell#bat_b02_a CLEAR_NPC,{
-OnRed:
- setcell "bat_b02",62,149,60,151,cell_basilica,1;
- setcell "bat_b02",62,149,60,151,cell_walkable,0;
- end;
-
-OnGreen:
- setcell "bat_b02",62,149,60,151,cell_basilica,0;
- setcell "bat_b02",62,149,60,151,cell_walkable,1;
- end;
-}
-
-bat_b02,1,5,3 script cell#bat_b02_b CLEAR_NPC,{
-OnRed:
- setcell "bat_b02",327,151,329,149,cell_basilica,1;
- setcell "bat_b02",327,151,329,149,cell_walkable,0;
- end;
-
-OnGreen:
- setcell "bat_b02",327,151,329,149,cell_basilica,0;
- setcell "bat_b02",327,151,329,149,cell_walkable,1;
- end;
-}
-
-bat_b02,1,6,1 script time#bat_b02 CLEAR_NPC,{
-OnEnable:
- donpcevent "Battle Therapist#b02_a::OnEnable";
- donpcevent "Battle Therapist#b02_b::OnEnable";
- end;
-
-OnStop:
- donpcevent "Battle Therapist#b02_a::OnStop";
- donpcevent "Battle Therapist#b02_b::OnStop";
- end;
-}
-
-bat_b02,10,294,3 script Battle Therapist#b02_a 4_F_SISTER,{
- specialeffect2 EF_HEAL;
- mes("[Battle Therapist]");
- mes("Just close your eyes,\r"
- "and take a deep breath.");
- mes("You can be free from pain.");
- close;
-
-OnTimer25000:
- specialeffect EF_SANCTUARY;
- enablenpc "bat_b02_rp1_a_warp";
- end;
-
-OnTimer26000:
- disablenpc "bat_b02_rp1_a_warp";
- end;
-
-OnTimer26500:
- stopnpctimer;
- donpcevent "Battle Therapist#b02_a::OnEnable";
- end;
-
-OnEnable:
- initnpctimer;
- enablenpc "Battle Therapist#b02_a";
- end;
-
-OnStop:
- disablenpc "bat_b02_rp1_a_warp";
- disablenpc "Battle Therapist#b02_a";
- stopnpctimer;
- end;
-}
-
-bat_b02,10,290,0 script bat_b02_rp1_a_warp WARPNPC,10,10,{
-OnInit:
- disablenpc "bat_b02_rp1_a_warp";
- end;
-
-OnTouch:
- percentheal 100,100;
- warp "bat_b02",87,73;
- end;
-}
-
-bat_b02,389,14,3 script Battle Therapist#b02_b 4_F_SISTER,{
- specialeffect2 EF_HEAL;
- mes("[Battle Therapist]");
- mes("Just close your eyes,\r"
- "and take a deep breath.");
- mes("You can be free from pain.");
- close;
-
-OnTimer25000:
- specialeffect EF_SANCTUARY;
- enablenpc "bat_b02_rp1_b_warp";
- end;
-
-OnTimer26000:
- disablenpc "bat_b02_rp1_b_warp";
- end;
-
-OnTimer26500:
- stopnpctimer;
- donpcevent "Battle Therapist#b02_b::OnEnable";
- end;
-
-OnEnable:
- initnpctimer;
- enablenpc "Battle Therapist#b02_b";
- end;
-
-OnStop:
- disablenpc "bat_b02_rp1_b_warp";
- disablenpc "Battle Therapist#b02_b";
- stopnpctimer;
- end;
-}
-
-bat_b02,389,10,0 script bat_b02_rp1_b_warp WARPNPC,9,9,{
-OnInit:
- disablenpc "bat_b02_rp1_a_warp";
- end;
-
-OnTouch:
- percentheal 100,100;
- warp "bat_b02",312,225;
- end;
-}
-
-bat_b02,87,76,0 script A_CODE#bat_b02 FAKE_NPC,5,5,{
-OnTouch:
- //if (!questprogress(2070))
- // setquest 2070;
- end;
-}
-
-bat_b02,312,224,0 script B_CODE#bat_b02 FAKE_NPC,5,5,{
-OnTouch:
- //if (!questprogress(2070))
- // setquest 2070;
- end;
-}
-
-bat_b02,10,294,3 script Guillaume Vintenar#b02_a 4_M_RASWORD,{
- if ($@FlaviusBG2_id1 == getcharid(CHAR_ID_BG)) {
- if ($@FlaviusBG2_Victory == 1) {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 8) {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,9;
- }
- else {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, next time you will definitely win.");
- close2;
- getitem BF_Badge2,3;
- }
- else {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, next time you will definitely win.");
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- }
- bg_leave;
- warp "bat_room",154,150;
- end;
-
-OnInit:
- disablenpc "Guillaume Vintenar#b02_a";
- end;
-}
-
-bat_b02,389,14,3 script Croix Vintenar#b02_b 4_M_RASWORD,{
- if ($@FlaviusBG2_id2 == getcharid(CHAR_ID_BG)) {
- if ($@FlaviusBG2_Victory == 2) {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 8) {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,9;
- }
- else {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Swandery]");
- mesf("Oh, %s. Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge2,3;
- }
- else {
- mes("[Swandery]");
- mesf("Oh, %s. Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- }
- bg_leave;
- warp "bat_room",154,150;
- end;
-
-OnInit:
- disablenpc "Croix Vintenar#b02_b";
- end;
-}
-
-bat_b02,1,5,3 script countdown#bat_b02 CLEAR_NPC,{
-OnInit:
- stopnpctimer;
- end;
-
-OnEnable:
- stopnpctimer;
- initnpctimer;
- end;
-
-OnStop:
- stopnpctimer;
- end;
-
-OnTimer7000:
- mapannounce("bat_b02", _("Guillaume Vintenar Axl Rose : Let's attack to destroy that Crystal!"), bc_map, "0xFF9900");
- end;
-
-OnTimer8000:
- mapannounce("bat_b02", _("Croix Vintenar Swandery : Even though Guillaume is struggling to win against us, the victory is ours. Let's show them our power."), bc_map, "0xFF99CC");
- end;
-
-OnTimer1800000:
- mapannounce("bat_b02", _("Marollo VII : Guillaume Marollo, Croix Marollo! And their followers!"), bc_map, "0x99CC00");
- end;
-
-OnTimer1803000:
- mapannounce("bat_b02", _("Marollo VII : Both camps are competitive, so it's hard to judge which team is superior."), bc_map, "0x99CC00");
- end;
-
-OnTimer1808000:
- mapannounce("bat_b02", _("Marollo VII : This battle of Flavian is such a waste of time. I will decide victory and defeat by your progress."), bc_map, "0x99CC00");
- end;
-
-OnTimer1822000:
- mapannounce("bat_b02", _("Marollo VII : If you can't accept the results, try again in another valley battle!"), bc_map, "0x99CC00");
- end;
-
-OnTimer1825000:
- mapannounce("bat_b02", _("Axl Rose, Swandery : Yes, sir."), bc_map, "0x99CC00");
- end;
-
-OnTimer1830000:
- donpcevent "time#bat_b02::OnStop";
- bg_warp $@FlaviusBG2_id1,"bat_b02",10,290;
- bg_warp $@FlaviusBG2_id2,"bat_b02",390,10;
- enablenpc "Vintenar#bat_b02_aover";
- enablenpc "Vintenar#bat_b02_bover";
- end;
-
-OnTimer1900000:
- mapwarp "bat_b02","bat_room",154,150;
- donpcevent "countdown#bat_b02::OnStop";
- end;
-}
-
-bat_b02,81,83,3 script Guillaume Camp#flag32 1_FLAG_LION,{ end; }
-bat_b02,94,83,3 script Guillaume Camp#flag33 1_FLAG_LION,{ end; }
-bat_b02,81,66,3 script Guillaume Camp#flag34 1_FLAG_LION,{ end; }
-bat_b02,94,66,3 script Guillaume Camp#flag35 1_FLAG_LION,{ end; }
-bat_b02,139,142,3 script Guillaume Camp#flag36 1_FLAG_LION,{ end; }
-bat_b02,139,158,3 script Guillaume Camp#flag37 1_FLAG_LION,{ end; }
-bat_b02,110,161,3 script Guillaume Camp#flag38 1_FLAG_LION,{ end; }
-bat_b02,110,137,3 script Guillaume Camp#flag39 1_FLAG_LION,{ end; }
-bat_b02,63,135,3 script Guillaume Camp#flag40 1_FLAG_LION,{ end; }
-bat_b02,63,165,3 script Guillaume Camp#flag41 1_FLAG_LION,{ end; }
-bat_b02,10,296,3 script Guillaume Camp#flag42 1_FLAG_LION,{ end; }
-
-bat_b02,306,233,3 script Croix Camp#flag32 1_FLAG_EAGLE,{ end; }
-bat_b02,317,233,3 script Croix Camp#flag33 1_FLAG_EAGLE,{ end; }
-bat_b02,306,216,3 script Croix Camp#flag34 1_FLAG_EAGLE,{ end; }
-bat_b02,317,216,3 script Croix Camp#flag35 1_FLAG_EAGLE,{ end; }
-bat_b02,257,158,3 script Croix Camp#flag36 1_FLAG_EAGLE,{ end; }
-bat_b02,257,141,3 script Croix Camp#flag37 1_FLAG_EAGLE,{ end; }
-bat_b02,297,164,3 script Croix Camp#flag38 1_FLAG_EAGLE,{ end; }
-bat_b02,297,136,3 script Croix Camp#flag39 1_FLAG_EAGLE,{ end; }
-bat_b02,336,161,3 script Croix Camp#flag40 1_FLAG_EAGLE,{ end; }
-bat_b02,336,139,3 script Croix Camp#flag41 1_FLAG_EAGLE,{ end; }
-bat_b02,389,16,3 script Croix Camp#flag42 1_FLAG_EAGLE,{ end; }
-
-bat_b02,10,294,3 script Vintenar#bat_b02_aover 4_M_KY_HEAD,{
- .@A_B_gap = $@Guill_ScoreBG2 - $@Croix_ScoreBG2;
- if ($@FlaviusBG2_id1 == getcharid(CHAR_ID_BG)) {
- if (.@A_B_gap > 0) {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 8) {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,9;
- }
- else {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- else if (.@A_B_gap == 0) {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, next time you will definitely win.");
- close2;
- getitem BF_Badge2,3;
- }
- else {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, next time you will definitely win.");
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, next time you will definitely win.");
- close2;
- getitem BF_Badge2,3;
- }
- else {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, next time you will definitely win.");
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- }
- else {
- mes("[Axl Rose]");
- mes("Why are you here, Croix mercenary? I am definitely sure of victory against foolish Croix such as you. Ha!");
- close;
- }
- bg_leave;
- warp "bat_room",154,150;
- end;
-
-OnInit:
- disablenpc "Vintenar#bat_b02_aover";
- end;
-}
-
-bat_b02,389,14,3 script Vintenar#bat_b02_bover 4_M_CRU_HEAD,{
- .@A_B_gap = $@Guill_ScoreBG2 - $@Croix_ScoreBG2;
- if ($@FlaviusBG2_id2 == getcharid(CHAR_ID_BG)) {
- if (.@A_B_gap > 0) {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Swandery]");
- mesf("Oh, %s. Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge2,3;
- }
- else {
- mes("[Swandery]");
- mesf("Oh, %s. Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- else if (.@A_B_gap == 0) {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Swandery]");
- mesf("Oh, %s. Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge2,3;
- }
- else {
- mes("[Swandery]");
- mesf("Oh, %s. Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge2);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 8) {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,9;
- }
- else {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge2,.@medal_gap;
- }
- }
- }
- else {
- mes("[Swandery]");
- mes("Why do you come here as a Guillaume? You will be sent to where you should be!");
- close;
- }
- bg_leave;
- warp "bat_room",154,150;
- end;
-
-OnInit:
- disablenpc "Vintenar#bat_b02_bover";
- end;
-}
-
-bat_b02,1,10,3 script Release all#b02 4_DOG01,{
- .@i = callfunc("F_GM_NPC",1854,0);
- if (.@i == -1) {
- mes("Cancelled.");
- close;
- } else if (.@i == 0) {
- end;
- } else {
- mes("May I help you?");
- next;
- switch(select("Release all.", "Cancel.")) {
- case 1:
- mes("Bye.");
- close2;
- mapwarp "bat_b02","bat_room",154,150;
- end;
- case 2:
- mes("Cancelled.");
- close;
- }
- }
-}
diff --git a/npc/battleground/flavius/flavius_enter.txt b/npc/battleground/flavius/flavius_enter.txt
deleted file mode 100644
index 974a0dab0..000000000
--- a/npc/battleground/flavius/flavius_enter.txt
+++ /dev/null
@@ -1,363 +0,0 @@
-//================= Hercules Script =======================================
-//= _ _ _
-//= | | | | | |
-//= | |_| | ___ _ __ ___ _ _| | ___ ___
-//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
-//= | | | | __/ | | (__| |_| | | __/\__ \
-//= \_| |_/\___|_| \___|\__,_|_|\___||___/
-//================= License ===============================================
-//= This file is part of Hercules.
-//= http://herc.ws - http://github.com/HerculesWS/Hercules
-//=
-//= Copyright (C) 2012-2016 Hercules Dev Team
-//= Copyright (C) L0ne_W0lf
-//=
-//= Hercules is free software: you can redistribute it and/or modify
-//= it under the terms of the GNU General Public License as published by
-//= the Free Software Foundation, either version 3 of the License, or
-//= (at your option) any later version.
-//=
-//= This program is distributed in the hope that it will be useful,
-//= but WITHOUT ANY WARRANTY; without even the implied warranty of
-//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-//= GNU General Public License for more details.
-//=
-//= You should have received a copy of the GNU General Public License
-//= along with this program. If not, see <http://www.gnu.org/licenses/>.
-//=========================================================================
-// BattleGround System - Flavius Entrance NPCs
-//================= Description ===========================================
-//= Flavius Battleground Entrance NPCs
-//================= Current Version =======================================
-//= 1.0
-//=========================================================================
-
-//== Flavius Officer - Guillaume ===========================
-bat_room,133,178,5 script Flavius Officer#01a 4_M_KY_KNT,{
- if (checkweight(Knife,1) == 0) {
- mes("- Wait a minute !! -");
- mes("- Currently you're carrying -");
- mes("- too many items with you. -");
- mes("- Please try again -");
- mes("- after you loose some weight. -");
- close;
- }
- mes("[Guillaume Army Officer]");
- mes("Let's show the power of the Guillaume Army to those stinky Croixs!");
- next;
- switch(select("I want to join your army!", "End Conversation")) {
- case 1:
- if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes("[Guillaume Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- if (BaseLevel < 80) {
- mes("[Guillaume Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- .@chk_urtime = questprogress(2070, PLAYTIME);
- if (.@chk_urtime == 1) {
- mes("[Guillaume Army Officer]");
- mes("You seem to have just returned from the battlefield.");
- mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
- break;
- }
- if (.@chk_urtime == 2)
- erasequest 2070;
- if (getmapusers("bat_b01") > 0) {
- mes("[Guillaume Army Officer]");
- mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Croixs already.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- if ($@FlaviusBG1 > 0) {
- mes("[Guillaume Army Officer]");
- mes("An elite corps is already standing by to be dispatched to the battlefield.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- mes("[Guillaume Army Officer]");
- mes("You definitely seem to be ready for battle!");
- mes("Go show the Croixs what fear truly means!");
- mes("Today, our cry of victory shall echo all over the battlefield!");
- close2;
- warp "bat_room",85,223;
- end;
- case 2:
- mes("[Guillaume Army Officer]");
- mes("Today, we shall be victorious!");
- break;
- }
- close;
-}
-
-bat_room,133,121,1 script Flavius Officer#01b 4_M_CRU_KNT,{
- if (checkweight(Knife,1) == 0) {
- mes("- Wait a minute !! -");
- mes("- Currently you're carrying -");
- mes("- too many items with you. -");
- mes("- Please try again -");
- mes("- after you loose some weight. -");
- close;
- }
- mes("[Croix Army Officer]");
- mes("Let's show the Guillaumes the power of the Croix Army!");
- next;
- switch(select("I want to join your army!", "End Conversation")) {
- case 1:
- if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes("[Croix Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- if (BaseLevel < 80) {
- mes("[Croix Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- .@chk_urtime = questprogress(2070,PLAYTIME);
- if (.@chk_urtime == 1) {
- mes("[Croix Army Officer]");
- mes("You seem to have just returned from the battlefield.");
- mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
- break;
- }
- if (.@chk_urtime == 2)
- erasequest 2070;
- if (getmapusers("bat_b01") > 0) {
- mes("[Croix Army Officer]");
- mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Guillaume already.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- if ($@FlaviusBG1 > 0) {
- mes("[Croix Army Officer]");
- mes("An elite corps is already standing by to be dispatched to the battlefield.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- mes("[Croix Army Officer]");
- mes("You definitely seem to be ready for battle!");
- mes("Go show the Guillaumes what fear truly means!");
- mes("Today, our cry of victory shall echo all over the battlefield!");
- close2;
- warp "bat_room",85,207;
- end;
- case 2:
- mes("[Croix Army Officer]");
- mes("Today, we shall be victorious!");
- break;
- }
- close;
-}
-
-bat_room,135,178,5 script Guillaume Knight#3 4_M_KY_SOLD,{
- mes("[Guillaume Knight]");
- mes("The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal.");
- next;
- mes("[Guillaume Knight]");
- mes("The crystals for both armies are protected by special barricades that cannot be destroyed by direct attacks.");
- next;
- mes("[Guillaume Knight]");
- mes("But they can be removed by destroying the Guardians that protect the enemy army base.");
- next;
- mes("[Guillaume Knight]");
- mes("The crystals are immune to every type of skill; your physical attacks are the only choice for destroying your enemy's crystal.");
- next;
- mes("[Guillaume Knight]");
- mes("Please remember: when you join a battle, you will be receiving a token which indicates the set duration for which you cannot participate in the same type of battle.");
- mes("You may check the duration by pressing the Alt+U keys.");
- next;
- mes("[Guillaume Knight]");
- mes("Are you ready for battle? Then apply with the recruiter next to me!");
- close;
-}
-
-bat_room,151,178,5 script Guillaume Knight#4 4_M_KY_SOLD,{
- mes("[Guillaume Knight]");
- mes("The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal.");
- next;
- mes("[Guillaume Knight]");
- mes("The crystals for both armies are protected by special barricades that cannot be destroyed by direct attacks.");
- next;
- mes("[Guillaume Knight]");
- mes("But they can be removed by destroying the Guardians that protect the enemy army base.");
- next;
- mes("[Guillaume Knight]");
- mes("The crystals are immune to every type of skill; your physical attacks are the only choice for destroying your enemy's crystal.");
- next;
- mes("[Guillaume Knight]");
- mes("Please remember: when you join a battle, you will be receiving a token which indicates the set duration for which you cannot participate in the same type of battle.");
- mes("You may check the duration by pressing the Alt+U keys.");
- next;
- mes("[Guillaume Knight]");
- mes("Are you ready for battle? Then apply with the recruiter next to me!");
- close;
-}
-
-bat_room,135,121,1 script Croix Knight#3 4_M_CRU_SOLD,{
- mes("[Croix Knight]");
- mes("The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal.");
- next;
- mes("[Croix Knight]");
- mes("The crystals for both armies are protected by special barricades that cannot be destroyed by direct attacks.");
- next;
- mes("[Croix Knight]");
- mes("But they can be removed by destroying the Guardians that protect the enemy army base.");
- next;
- mes("[Croix Knight]");
- mes("The crystals are immune to every type of skill; your physical attacks are the only choice for destroying your enemy's crystal.");
- next;
- mes("[Croix Knight]");
- mes("Please remember: when you join a battle, you will be receiving a token which indicates the set duration for which you cannot participate in the same type of battle.");
- mes("You may check the duration by pressing the Alt+U keys.");
- next;
- mes("[Croix Knight]");
- mes("Are you ready for battle? Then apply with the recruiter next to me!");
- close;
-}
-
-bat_room,151,121,1 script Croix Knight#4 4_M_CRU_SOLD,{
- mes("[Croix Knight]");
- mes("The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal.");
- next;
- mes("[Croix Knight]");
- mes("The crystals for both armies are protected by special barricades that cannot be destroyed by direct attacks.");
- next;
- mes("[Croix Knight]");
- mes("But they can be removed by destroying the Guardians that protect the enemy army base.");
- next;
- mes("[Croix Knight]");
- mes("The crystals are immune to every type of skill; your physical attacks are the only choice for destroying your enemy's crystal.");
- next;
- mes("[Croix Knight]");
- mes("Please remember: when you join a battle, you will be receiving a token which indicates the set duration for which you cannot participate in the same type of battle.");
- mes("You may check the duration by pressing the Alt+U keys.");
- next;
- mes("[Croix Knight]");
- mes("Are you ready for battle? Then apply with the recruiter next to me!");
- close;
-}
-
-//== Flavius Officer - Croix ===============================
-bat_room,148,178,5 script Flavius Officer#02a 4_M_KY_KNT,{
- if (checkweight(Knife,1) == 0) {
- mes("- Wait a minute !! -");
- mes("- Currently you're carrying -");
- mes("- too many items with you. -");
- mes("- Please try again -");
- mes("- after you loose some weight. -");
- close;
- }
- mes("[Guillaume Army Officer]");
- mes("Let's show the power of the Guillaume Army to those stinky Croixs!");
- next;
- switch(select("I want to join your army!", "End Conversation")) {
- case 1:
- if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes("[Guillaume Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- if (BaseLevel < 80) {
- mes("[Guillaume Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- .@chk_urtime = questprogress(2070, PLAYTIME);
- if (.@chk_urtime == 1) {
- mes("[Guillaume Army Officer]");
- mes("You seem to have just returned from the battlefield.");
- mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
- break;
- }
- if (.@chk_urtime == 2)
- erasequest 2070;
- if (getmapusers("bat_b02") > 0) {
- mes("[Guillaume Army Officer]");
- mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Croixs already.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- if ($@FlaviusBG2 > 0) {
- mes("[Guillaume Army Officer]");
- mes("An elite corps is already standing by to be dispatched to the battlefield.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- mes("[Guillaume Army Officer]");
- mes("You definitely seem to be ready for battle!");
- mes("Go show the Croixs what fear truly means!");
- mes("Today, our cry of victory shall echo all over the battlefield!");
- close2;
- warp "bat_room",141,224;
- end;
- case 2:
- mes("[Guillaume Army Officer]");
- mes("Today, we shall be victorious!");
- break;
- }
- close;
-}
-
-bat_room,148,121,1 script Flavius Officer#02b 4_M_CRU_KNT,{
- if (checkweight(Knife,1) == 0) {
- mes("- Wait a minute !! -");
- mes("- Currently you're carrying -");
- mes("- too many items with you. -");
- mes("- Please try again -");
- mes("- after you loose some weight. -");
- close;
- }
- mes("[Croix Army Officer]");
- mes("Let's show the power of the Croix Army to those stinky Guillaumes!");
- next;
- switch(select("I want to join your army!", "End Conversation")) {
- case 1:
- if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes("[Croix Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- if (BaseLevel < 80) {
- mes("[Croix Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- .@chk_urtime = questprogress(2070,PLAYTIME);
- if (.@chk_urtime == 1) {
- mes("[Croix Army Officer]");
- mes("You seem to have just returned from the battlefield.");
- mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
- break;
- }
- if (.@chk_urtime == 2)
- erasequest 2070;
- if (getmapusers("bat_b02") > 0) {
- mes("[Croix Army Officer]");
- mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Guillaume already.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- if ($@FlaviusBG2 > 0) {
- mes("[Croix Army Officer]");
- mes("An elite corps is already standing by to be dispatched to the battlefield.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- mes("[Croix Army Officer]");
- mes("You definitely seem to be ready for battle!");
- mes("Go show the Guillaumes what fear truly means!");
- mes("Today, our cry of victory shall echo all over the battlefield!");
- close2;
- warp "bat_room",141,207;
- end;
- case 2:
- mes("[Croix Army Officer]");
- mes("Today, we shall be victorious!");
- break;
- }
- close;
-}
diff --git a/npc/battleground/kvm/kvm01.txt b/npc/battleground/kvm/kvm01.txt
deleted file mode 100644
index d0b3d16be..000000000
--- a/npc/battleground/kvm/kvm01.txt
+++ /dev/null
@@ -1,435 +0,0 @@
-//================= Hercules Script =======================================
-//= _ _ _
-//= | | | | | |
-//= | |_| | ___ _ __ ___ _ _| | ___ ___
-//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
-//= | | | | __/ | | (__| |_| | | __/\__ \
-//= \_| |_/\___|_| \___|\__,_|_|\___||___/
-//================= License ===============================================
-//= This file is part of Hercules.
-//= http://herc.ws - http://github.com/HerculesWS/Hercules
-//=
-//= Copyright (C) 2012-2016 Hercules Dev Team
-//= Copyright (C) L0ne_W0lf
-//=
-//= Hercules is free software: you can redistribute it and/or modify
-//= it under the terms of the GNU General Public License as published by
-//= the Free Software Foundation, either version 3 of the License, or
-//= (at your option) any later version.
-//=
-//= This program is distributed in the hope that it will be useful,
-//= but WITHOUT ANY WARRANTY; without even the implied warranty of
-//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-//= GNU General Public License for more details.
-//=
-//= You should have received a copy of the GNU General Public License
-//= along with this program. If not, see <http://www.gnu.org/licenses/>.
-//=========================================================================
-// BattleGround System - KvM 80-99
-//================= Description ===========================================
-//= Kreiger Von Midgard Battleground for levels 80 to 99
-//= - Winning Team: 5 points
-//= - Losing Team: 1 point
-//================= Current Version =======================================
-//= 1.2
-//=========================================================================
-
-//== Waiting Room NPCs =====================================
-bat_room,169,226,5 script KVM Waiting Room#a::KvM01R_Guillaume 4_M_KY_KNT,{
- end;
-
-OnInit:
- waitingroom(_("Battle Station 5 Players"), 6, "KvM01_BG::OnGuillaumeJoin", 1);
- end;
-
-OnEnterBG:
- $@KvM01BG_id1 = waitingroom2bg("bat_c01",52,129,"KvM01_BG::OnGuillaumeQuit","KvM01_BG::OnGuillaumeDie");
- end;
-}
-
-bat_room,169,220,0 warp #kvm801 2,2,bat_room,154,150
-
-bat_room,169,205,3 script KVM Waiting Room#b::KvM01R_Croix 4_M_CRU_KNT,{
- end;
-
-OnInit:
- waitingroom(_("Battle Station 5 Players"), 6, "KvM01_BG::OnCroixJoin", 1);
- end;
-
-OnEnterBG:
- $@KvM01BG_id2 = waitingroom2bg("bat_c01",147,55,"KvM01_BG::OnCroixQuit","KvM01_BG::OnCroixDie");
- end;
-}
-
-bat_room,169,211,0 warp #kvm802 2,2,bat_room,154,150
-
-//== Starting Line =========================================
-- script KVM01::CellEffect FAKE_NPC,{
- end;
-
-OnKvM01One:
- specialeffect EF_CHANGECOLD;
- end;
-
-OnKvM01Two:
- specialeffect EF_CHANGEPOISON;
- end;
-}
-
-bat_c01,54,124,3 duplicate(CellEffect) #RedcellA1-1 HIDDEN_WARP_NPC
-bat_c01,55,124,3 duplicate(CellEffect) #RedcellA2-1 HIDDEN_WARP_NPC
-bat_c01,56,124,3 duplicate(CellEffect) #RedcellA3-1 HIDDEN_WARP_NPC
-bat_c01,57,124,3 duplicate(CellEffect) #RedcellA4-1 HIDDEN_WARP_NPC
-bat_c01,57,125,3 duplicate(CellEffect) #RedcellA5-1 HIDDEN_WARP_NPC
-bat_c01,57,126,3 duplicate(CellEffect) #RedcellA6-1 HIDDEN_WARP_NPC
-bat_c01,57,127,3 duplicate(CellEffect) #RedcellA7-1 HIDDEN_WARP_NPC
-
-bat_c01,145,59,3 duplicate(CellEffect) #RedcellB1-1 HIDDEN_WARP_NPC
-bat_c01,144,59,3 duplicate(CellEffect) #RedcellB2-1 HIDDEN_WARP_NPC
-bat_c01,143,59,3 duplicate(CellEffect) #RedcellB3-1 HIDDEN_WARP_NPC
-bat_c01,142,59,3 duplicate(CellEffect) #RedcellB4-1 HIDDEN_WARP_NPC
-bat_c01,142,56,3 duplicate(CellEffect) #RedcellB5-1 HIDDEN_WARP_NPC
-bat_c01,142,57,3 duplicate(CellEffect) #RedcellB6-1 HIDDEN_WARP_NPC
-bat_c01,142,58,3 duplicate(CellEffect) #RedcellB7-1 HIDDEN_WARP_NPC
-
-bat_c01,54,128,3 script #A_camp_start01 HIDDEN_WARP_NPC,4,4,{
- end;
-
-OnInit:
- disablenpc "#A_camp_start01";
- end;
-
-OnEnable:
- enablenpc "#A_camp_start01";
- end;
-
-OnDisable:
- disablenpc "#A_camp_start01";
- end;
-
-OnTouch:
- Bat_Team = 1;
- setquest 6025;
- end;
-}
-
-bat_c01,146,56,3 script #B_camp_start01 HIDDEN_WARP_NPC,4,4,{
- end;
-
-OnInit:
- disablenpc "#B_camp_start01";
- end;
-
-OnEnable:
- enablenpc "#B_camp_start01";
- end;
-
-OnDisable:
- disablenpc "#B_camp_start01";
- end;
-
-OnTouch:
- Bat_Team = 2;
- setquest 6025;
- end;
-}
-
-//== Battleground Engine ===================================
-- script KvM01_BG FAKE_NPC,{
- end;
-
-OnInit:
- setwall "bat_c01",54,122,6,7,0,"batc01wall_a";
- setwall "bat_c01",55,122,5,7,0,"batc01wall_b";
- setwall "bat_c01",140,56,6,7,0,"batc01wall_c";
- setwall "bat_c01",140,57,5,7,0,"batc01wall_d";
- disablenpc "KVM Officer#KVM01A";
- disablenpc "KVM Officer#KVM01B";
- end;
-
-OnGuillaumeJoin:
-OnCroixJoin:
- donpcevent "KvM01_BG::OnReadyCheck";
- end;
-
-OnGuillaumeQuit:
- //BG_Delay_Tick = gettimetick(2) + 1200;
-OnGuillaumeDie:
- if ($@KvM01BG == 2) {
- --.Guillaume_Count;
- bg_updatescore "bat_c01",.Guillaume_Count,.Croix_Count;
- if( .Guillaume_Count < 1 ) donpcevent "KvM01_BG::OnCroixWin";
- else {
- mapannounce("bat_c01", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
- mapannounce("bat_c01", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
- }
- }
- end;
-
-OnCroixQuit:
- //BG_Delay_Tick = gettimetick(2) + 1200;
-OnCroixDie:
- if ($@KvM01BG == 2) {
- --.Croix_Count;
- bg_updatescore "bat_c01",.Guillaume_Count,.Croix_Count;
- if( .Croix_Count < 1 ) donpcevent "KvM01_BG::OnGuillaumeWin";
- else {
- mapannounce("bat_c01", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
- mapannounce("bat_c01", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
- }
- }
- end;
-
-OnReadyCheck:
- if( $@KvM01BG )
- end;
- .@Guillaume = getwaitingroomstate(0,"KvM01R_Guillaume");
- .@Croix = getwaitingroomstate(0,"KvM01R_Croix");
-
- if( .@Guillaume < 5 || .@Croix < 5 )
- end;
-
- $@KvM01BG = 1; // Starting
- donpcevent "KvM01R_Croix::OnEnterBG";
- donpcevent "KvM01R_Guillaume::OnEnterBG";
- donpcevent "KvM01_BG::OnStart";
- end;
-
-OnStart:
- disablenpc "KVM Officer#KVM01A";
- disablenpc "KVM Officer#KVM01B";
- $@KvM01BG_Victory = 0;
- // Warp Teams
- bg_warp $@KvM01BG_id1,"bat_c01",53,128;
- bg_warp $@KvM01BG_id2,"bat_c01",146,55;
- initnpctimer;
- end;
-
-OnTimer1000:
- mapannounce("bat_c01", _("In 1 minute, KVM will start."), bc_map, "0x00ff00");
- end;
-
-OnTimer3000:
- mapannounce("bat_c01", _("The maximum time for a KVM battle is 5 minutes."), bc_map, "0x00ff00");
- end;
-
-OnTimer6000:
- mapannounce("bat_c01", _("Please prepare for the KVM battle."), bc_map, "0x00ff00");
- mapannounce("bat_c01", _("You can buff your people."), bc_map, "0x00ff00");
- donpcevent "#A_camp_start01::OnEnable";
- donpcevent "#B_camp_start01::OnEnable";
- end;
-
-OnTimer13000:
- donpcevent "#A_camp_start01::OnDisable";
- donpcevent "#B_camp_start01::OnDisable";
- end;
-
-OnTimer30000:
- mapannounce("bat_c01", _("30 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer45000:
- mapannounce("bat_c01", _("15 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
- donpcevent "::OnKvM01One";
- end;
-
-OnTimer50000:
- mapannounce("bat_c01", _("10 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
- donpcevent "::OnKvM01Two";
- end;
-
-OnTimer55000:
- mapannounce("bat_c01", _("5 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
- donpcevent "::OnKvM01One";
- end;
-
-OnTimer59000:
- mapannounce("bat_c01", _("KVM is now commencing."), bc_map, "0x00ff00");
- donpcevent "::OnKvM01Two";
- end;
-
-OnTimer61000:
- // Team Members
- .Guillaume_Count = bg_get_data($@KvM01BG_id1, 0);
- .Croix_Count = bg_get_data($@KvM01BG_id2, 0);
- if( .Guillaume_Count < 5 || .Croix_Count < 5 )
- {
- $@KvM01BG_Victory = 3;
- $@KvM01BG = 3;
- mapannounce("bat_c01", _("There are not enough players to start the battle"), bc_map, "0x696969");
- stopnpctimer;
- donpcevent "KvM01_BG::OnStop";
- end;
- }
- $@KvM01BG = 2; // Playing
- bg_warp $@KvM01BG_id1,"bat_c01",61,120;
- bg_warp $@KvM01BG_id2,"bat_c01",138,63;
- end;
-
-OnTimer300000:
- mapannounce("bat_c01", _("1 minute remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer330000:
- mapannounce("bat_c01", _("30 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer345000:
- mapannounce("bat_c01", _("15 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer350000:
- mapannounce("bat_c01", _("10 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer355000:
- mapannounce("bat_c01", _("5 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer360000:
- mapannounce("bat_c01", _("The KVM battle is over."), bc_map, "0x00ff00");
- if( .Croix_Count > .Guillaume_Count )
- donpcevent "KvM01_BG::OnCroixWin";
- else if( .Croix_Count < .Guillaume_Count )
- donpcevent "KvM01_BG::OnGuillaumeWin";
- else
- { // Draw Game
- $@KvM01BG = 3;
- $@KvM01BG_Victory = 3;
- mapannounce("bat_c01", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
- mapannounce("bat_c01", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
- mapannounce("bat_c01", _("This battle has ended in a draw."), bc_map, "0x00ff00");
- donpcevent "KvM01_BG::OnStop";
- }
- end;
-
-OnGuillaumeWin:
- $@KvM01BG = 3;
- $@KvM01BG_Victory = 1;
- mapannounce("bat_c01", _("Guillaume wins!"), bc_map, "0x00ff00");
- mapannounce("bat_c01", _("Congratulations to Guillaume members."), bc_map, "0x00ff00");
- mapannounce("bat_c01", _("Everyone will be moved to the start point."), bc_map, "0x00ff00");
- donpcevent "KvM01_BG::OnStop";
- end;
-
-OnCroixWin:
- $@KvM01BG = 3;
- $@KvM01BG_Victory = 2;
- mapannounce("bat_c01", _("Croix wins!"), bc_map, "0x00ff00");
- mapannounce("bat_c01", _("Congratulations to Croix members."), bc_map, "0x00ff00");
- mapannounce("bat_c01", _("Everyone will be moved to the start point."), bc_map, "0x00ff00");
- donpcevent "KvM01_BG::OnStop";
- end;
-
-OnStop:
- stopnpctimer;
- enablenpc "KVM Officer#KVM01A";
- enablenpc "KVM Officer#KVM01B";
- // Warp Teams
- bg_warp $@KvM01BG_id1,"bat_c01",53,128;
- bg_warp $@KvM01BG_id2,"bat_c01",146,55;
- donpcevent "KvM01_BG_Out::OnBegin";
- end;
-
-OnReset:
- .Croix_Count = 0;
- .Guillaume_Count = 0;
- $@KvM01BG_Victory = 0;
- if( $@KvM01BG_id1 ) { bg_destroy $@KvM01BG_id1; $@KvM01BG_id1 = 0; }
- if( $@KvM01BG_id2 ) { bg_destroy $@KvM01BG_id2; $@KvM01BG_id2 = 0; }
- disablenpc "KVM Officer#KVM01A";
- disablenpc "KVM Officer#KVM01B";
- mapwarp "bat_c01","bat_room",154,150;
- maprespawnguildid "bat_c01",0,3; // Just in case someone else
- bg_updatescore "bat_c01",5,5;
- $@KvM01BG = 0;
- donpcevent "KvM01_BG::OnReadyCheck"; // Maybe a game is ready to start
- end;
-}
-
-- script KvM01_BG_Out FAKE_NPC,{
- end;
-
-OnBegin:
- initnpctimer;
- end;
-
-OnTimer1000:
- mapannounce("bat_c01", _("Please apply with the Officer to acquire KVM points."), bc_map, "0x00ff00");
- end;
-
-OnTimer3000:
- mapannounce("bat_c01", _("The Officer will grant you the points for 30 seconds."), bc_map, "0x00ff00");
- mapannounce("bat_c01", _("In 30 seconds, the Officer will be sent away."), bc_map, "0x00ff00");
- end;
-
-OnTimer5000:
- mapannounce("bat_c01", _("Unless you talk to the Officer, you cannot gain the points."), bc_map, "0x00ff00");
- mapannounce("bat_c01", _("Please be careful."), bc_map, "0x00ff00");
- end;
-
-OnTimer55000:
- mapannounce("bat_c01", _("You will be sent back."), bc_map, "0x00ff00");
- end;
-
-OnTimer60000:
- stopnpctimer;
- donpcevent "KvM01_BG::OnReset";
- end;
-}
-
-//== Battleground rewards ==================================
-bat_c01,51,130,5 script KVM Officer#KVM01A 4_M_KY_HEAD,{
- if( $@KvM01BG_Victory )
- {
- if( $@KvM01BG_Victory == Bat_Team )
- { // Victory
- kvm_point += 5;
- mes("[KVM Officer]");
- mes("Good Game.");
- mes("May the glory of KVM be with you.");
- mes("You aquire the winning points: 5");
- close2;
- } else {
- ++kvm_point;
- mes("[KVM Officer]");
- mes("I am so sorry.");
- mes("I wish you better luck next time.");
- mes("You aquire the losing points: 1");
- close2;
- }
- bg_leave;
- Bat_Team = 0;
- warp "bat_room",154,150;
- end;
- }
- end;
-}
-
-bat_c01,148,53,1 script KVM Officer#KVM01B 4_M_CRU_HEAD,{
- if( $@KvM01BG_Victory )
- {
- if( $@KvM01BG_Victory == Bat_Team )
- { // Victory
- kvm_point += 5;
- mes("[KVM Officer]");
- mes("Good Game.");
- mes("May the glory of KVM be with you.");
- mes("You aquire the winning points: 5");
- close2;
- } else {
- ++kvm_point;
- mes("[KVM Officer]");
- mes("I am so sorry.");
- mes("I wish you better luck next time.");
- mes("You aquire the losing points: 1");
- close2;
- }
- bg_leave;
- Bat_Team = 0;
- warp "bat_room",154,150;
- end;
- }
- end;
-}
diff --git a/npc/battleground/kvm/kvm02.txt b/npc/battleground/kvm/kvm02.txt
deleted file mode 100644
index a64dbf536..000000000
--- a/npc/battleground/kvm/kvm02.txt
+++ /dev/null
@@ -1,434 +0,0 @@
-//================= Hercules Script =======================================
-//= _ _ _
-//= | | | | | |
-//= | |_| | ___ _ __ ___ _ _| | ___ ___
-//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
-//= | | | | __/ | | (__| |_| | | __/\__ \
-//= \_| |_/\___|_| \___|\__,_|_|\___||___/
-//================= License ===============================================
-//= This file is part of Hercules.
-//= http://herc.ws - http://github.com/HerculesWS/Hercules
-//=
-//= Copyright (C) 2012-2016 Hercules Dev Team
-//= Copyright (C) Ai4rei
-//= Copyright (C) L0ne_W0lf
-//=
-//= Hercules is free software: you can redistribute it and/or modify
-//= it under the terms of the GNU General Public License as published by
-//= the Free Software Foundation, either version 3 of the License, or
-//= (at your option) any later version.
-//=
-//= This program is distributed in the hope that it will be useful,
-//= but WITHOUT ANY WARRANTY; without even the implied warranty of
-//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-//= GNU General Public License for more details.
-//=
-//= You should have received a copy of the GNU General Public License
-//= along with this program. If not, see <http://www.gnu.org/licenses/>.
-//=========================================================================
-// BattleGround System - KvM 1-59
-//================= Description ===========================================
-//= Kreiger Von Midgard Battleground for levels 1 to 59
-//= - Winning Team: 1 point
-//= - Losing Team: 0 points
-//================= Current Version =======================================
-//= 1.3
-//=========================================================================
-
-//== Waiting Room NPCs =====================================
-bat_room,197,226,5 script KVM Waiting Room#a2::KvM02R_Guillaume 4_M_KY_KNT,{
- end;
-
-OnInit:
- waitingroom(_("Battle Station 5 Players"), 6, "KvM02_BG::OnGuillaumeJoin", 1);
- end;
-
-OnEnterBG:
- $@KvM02BG_id1 = waitingroom2bg("bat_c02",52,129,"KvM02_BG::OnGuillaumeQuit","KvM02_BG::OnGuillaumeDie");
- end;
-}
-
-bat_room,197,220,0 warp #kvm601 2,2,bat_room,154,150
-
-bat_room,197,205,3 script KVM Waiting Room#b2::KvM02R_Croix 4_M_CRU_KNT,{
- end;
-
-OnInit:
- waitingroom(_("Battle Station 5 Players"), 6, "KvM02_BG::OnCroixJoin", 1);
- end;
-
-OnEnterBG:
- $@KvM02BG_id2 = waitingroom2bg("bat_c02",147,55,"KvM02_BG::OnCroixQuit","KvM02_BG::OnCroixDie");
- end;
-}
-
-bat_room,197,211,0 warp #kvm602 2,2,bat_room,154,150
-
-//== Starting Line =========================================
-- script KVM02::CellEffect2 FAKE_NPC,{
- end;
-
-OnKvM02One:
- specialeffect EF_CHANGECOLD;
- end;
-
-OnKvM02Two:
- specialeffect EF_CHANGEPOISON;
- end;
-}
-
-bat_c02,54,124,3 duplicate(CellEffect2) #RedcellA1-2 HIDDEN_WARP_NPC
-bat_c02,55,124,3 duplicate(CellEffect2) #RedcellA2-2 HIDDEN_WARP_NPC
-bat_c02,56,124,3 duplicate(CellEffect2) #RedcellA3-2 HIDDEN_WARP_NPC
-bat_c02,57,124,3 duplicate(CellEffect2) #RedcellA4-2 HIDDEN_WARP_NPC
-bat_c02,57,125,3 duplicate(CellEffect2) #RedcellA5-2 HIDDEN_WARP_NPC
-bat_c02,57,126,3 duplicate(CellEffect2) #RedcellA6-2 HIDDEN_WARP_NPC
-bat_c02,57,127,3 duplicate(CellEffect2) #RedcellA7-2 HIDDEN_WARP_NPC
-
-bat_c02,145,59,3 duplicate(CellEffect2) #RedcellB1-2 HIDDEN_WARP_NPC
-bat_c02,144,59,3 duplicate(CellEffect2) #RedcellB2-2 HIDDEN_WARP_NPC
-bat_c02,143,59,3 duplicate(CellEffect2) #RedcellB3-2 HIDDEN_WARP_NPC
-bat_c02,142,59,3 duplicate(CellEffect2) #RedcellB4-2 HIDDEN_WARP_NPC
-bat_c02,142,56,3 duplicate(CellEffect2) #RedcellB5-2 HIDDEN_WARP_NPC
-bat_c02,142,57,3 duplicate(CellEffect2) #RedcellB6-2 HIDDEN_WARP_NPC
-bat_c02,142,58,3 duplicate(CellEffect2) #RedcellB7-2 HIDDEN_WARP_NPC
-
-bat_c02,54,128,3 script #A_camp_start02 HIDDEN_WARP_NPC,4,4,{
- end;
-
-OnInit:
- disablenpc "#A_camp_start02";
- end;
-
-OnEnable:
- enablenpc "#A_camp_start02";
- end;
-
-OnDisable:
- disablenpc "#A_camp_start03";
- end;
-
-OnTouch:
- Bat_Team = 1;
- setquest 6025;
- end;
-}
-
-bat_c02,146,56,3 script #B_camp_start02 HIDDEN_WARP_NPC,4,4,{
- end;
-
-OnInit:
- disablenpc "#B_camp_start02";
- end;
-
-OnEnable:
- enablenpc "#B_camp_start02";
- end;
-
-OnDisable:
- disablenpc "#B_camp_start02";
- end;
-
-OnTouch:
- Bat_Team = 2;
- setquest 6025;
- end;
-}
-
-//== Battleground Engine ===================================
-- script KvM02_BG FAKE_NPC,{
- end;
-
-OnInit:
- setwall "bat_c02",54,122,6,7,0,"batc02wall_a";
- setwall "bat_c02",55,122,5,7,0,"batc02wall_b";
- setwall "bat_c02",140,56,6,7,0,"batc02wall_c";
- setwall "bat_c02",140,57,5,7,0,"batc02wall_d";
- disablenpc "KVM Officer#KVM02A";
- disablenpc "KVM Officer#KVM02B";
- end;
-
-OnGuillaumeJoin:
-OnCroixJoin:
- donpcevent "KvM02_BG::OnReadyCheck";
- end;
-
-OnGuillaumeQuit:
- //BG_Delay_Tick = gettimetick(2) + 1200;
-OnGuillaumeDie:
- if ($@KvM02BG == 2) {
- --.Guillaume_Count;
- bg_updatescore "bat_c02",.Guillaume_Count,.Croix_Count;
- if( .Guillaume_Count < 1 ) donpcevent "KvM02_BG::OnCroixWin";
- else {
- mapannounce("bat_c02", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
- mapannounce("bat_c02", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
- }
- }
- end;
-
-OnCroixQuit:
- //BG_Delay_Tick = gettimetick(2) + 1200;
-OnCroixDie:
- if ($@KvM02BG == 2) {
- --.Croix_Count;
- bg_updatescore "bat_c02",.Guillaume_Count,.Croix_Count;
- if( .Croix_Count < 1 ) donpcevent "KvM02_BG::OnGuillaumeWin";
- else {
- mapannounce("bat_c02", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
- mapannounce("bat_c02", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
- }
- }
- end;
-
-OnReadyCheck:
- if( $@KvM02BG )
- end;
- .@Guillaume = getwaitingroomstate(0,"KvM02R_Guillaume");
- .@Croix = getwaitingroomstate(0,"KvM02R_Croix");
-
- if( .@Guillaume < 5 || .@Croix < 5 )
- end;
-
- $@KvM02BG = 1; // Starting
- donpcevent "KvM02R_Croix::OnEnterBG";
- donpcevent "KvM02R_Guillaume::OnEnterBG";
- donpcevent "KvM02_BG::OnStart";
- end;
-
-OnStart:
- disablenpc "KVM Officer#KVM02A";
- disablenpc "KVM Officer#KVM02B";
- $@KvM02BG_Victory = 0;
- // Warp Teams
- bg_warp $@KvM02BG_id1,"bat_c02",53,128;
- bg_warp $@KvM02BG_id2,"bat_c02",146,55;
- initnpctimer;
- end;
-
-OnTimer1000:
- mapannounce("bat_c02", _("In 1 minute, KVM will start."), bc_map, "0x00ff00");
- end;
-
-OnTimer3000:
- mapannounce("bat_c02", _("The maximum time for a KVM battle is 5 minutes."), bc_map, "0x00ff00");
- end;
-
-OnTimer6000:
- mapannounce("bat_c02", _("Please prepare for the KVM battle."), bc_map, "0x00ff00");
- mapannounce("bat_c02", _("You can buff your people."), bc_map, "0x00ff00");
- donpcevent "#A_camp_start02::OnEnable";
- donpcevent "#B_camp_start02::OnEnable";
- end;
-
-OnTimer13000:
- donpcevent "#A_camp_start02::OnDisable";
- donpcevent "#B_camp_start02::OnDisable";
- end;
-
-OnTimer30000:
- mapannounce("bat_c02", _("30 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer45000:
- mapannounce("bat_c02", _("15 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
- donpcevent "::OnKvM01One";
- end;
-
-OnTimer50000:
- mapannounce("bat_c02", _("10 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
- donpcevent "::OnKvM01Two";
- end;
-
-OnTimer55000:
- mapannounce("bat_c02", _("5 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
- donpcevent "::OnKvM01One";
- end;
-
-OnTimer59000:
- mapannounce("bat_c02", _("KVM is now commencing."), bc_map, "0x00ff00");
- donpcevent "::OnKvM01Two";
- end;
-
-OnTimer61000:
- // Team Members
- .Guillaume_Count = bg_get_data($@KvM02BG_id1, 0);
- .Croix_Count = bg_get_data($@KvM02BG_id2, 0);
- if( .Guillaume_Count < 5 || .Croix_Count < 5 )
- {
- $@KvM02BG_Victory = 3;
- $@KvM02BG = 3;
- mapannounce("bat_c02", _("There are not enough players to start the battle"), bc_map, "0x808080");
- stopnpctimer;
- donpcevent "KvM02_BG::OnStop";
- end;
- }
- $@KvM02BG = 2; // Playing
- bg_warp $@KvM02BG_id1,"bat_c02",62,119;
- bg_warp $@KvM02BG_id2,"bat_c02",137,64;
- end;
-
-OnTimer300000:
- mapannounce("bat_c02", _("1 minute remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer330000:
- mapannounce("bat_c02", _("30 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer345000:
- mapannounce("bat_c02", _("15 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer350000:
- mapannounce("bat_c02", _("10 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer355000:
- mapannounce("bat_c02", _("5 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer360000:
- mapannounce("bat_c02", _("The KVM battle is over."), bc_map, "0x00ff00");
- if( .Croix_Count > .Guillaume_Count )
- donpcevent "KvM02_BG::OnCroixWin";
- else if( .Croix_Count < .Guillaume_Count )
- donpcevent "KvM02_BG::OnGuillaumeWin";
- else
- { // Draw Game
- $@KvM02BG = 3;
- $@KvM02BG_Victory = 3;
- mapannounce("bat_c02", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
- mapannounce("bat_c02", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
- mapannounce("bat_c02", _("This battle has ended in a draw."), bc_map, "0x00ff00");
- donpcevent "KvM02_BG::OnStop";
- }
- end;
-
-OnGuillaumeWin:
- $@KvM02BG = 3;
- $@KvM02BG_Victory = 1;
- mapannounce("bat_c02", _("Guillaume wins!"), bc_map, "0x00ff00");
- mapannounce("bat_c02", _("Congratulations to Guillaume members."), bc_map, "0x00ff00");
- mapannounce("bat_c02", _("Everyone will be moved to the start point."), bc_map, "0x00ff00");
- donpcevent "KvM02_BG::OnStop";
- end;
-
-OnCroixWin:
- $@KvM02BG = 3;
- $@KvM02BG_Victory = 2;
- mapannounce("bat_c02", _("Croix wins!"), bc_map, "0x00ff00");
- mapannounce("bat_c02", _("Congratulations to Croix members."), bc_map, "0x00ff00");
- mapannounce("bat_c02", _("Everyone will be moved to the start point."), bc_map, "0x00ff00");
- donpcevent "KvM02_BG::OnStop";
- end;
-
-OnStop:
- stopnpctimer;
- enablenpc "KVM Officer#KVM02A";
- enablenpc "KVM Officer#KVM02B";
- // Warp Teams
- bg_warp $@KvM02BG_id1,"bat_c02",53,128;
- bg_warp $@KvM02BG_id2,"bat_c02",146,55;
- donpcevent "KvM02_BG_Out::OnBegin";
- end;
-
-OnReset:
- .Croix_Count = 0;
- .Guillaume_Count = 0;
- $@KvM02BG_Victory = 0;
- if( $@KvM02BG_id1 ) { bg_destroy $@KvM02BG_id1; $@KvM02BG_id1 = 0; }
- if( $@KvM02BG_id2 ) { bg_destroy $@KvM02BG_id2; $@KvM02BG_id2 = 0; }
- disablenpc "KVM Officer#KVM02A";
- disablenpc "KVM Officer#KVM02B";
- mapwarp "bat_c02","bat_room",154,150;
- maprespawnguildid "bat_c02",0,3; // Just in case someone else
- bg_updatescore "bat_c02",5,5;
- $@KvM02BG = 0;
- donpcevent "KvM02_BG::OnReadyCheck"; // Maybe a game is ready to start
- end;
-}
-
-- script KvM02_BG_Out FAKE_NPC,{
- end;
-
-OnBegin:
- initnpctimer;
- end;
-
-OnTimer1000:
- mapannounce("bat_c02", _("Please apply with the Officer to acquire KVM points."), bc_map, "0x00ff00");
- end;
-
-OnTimer3000:
- mapannounce("bat_c02", _("The Officer will grant you the points for 30 seconds."), bc_map, "0x00ff00");
- mapannounce("bat_c02", _("In 30 seconds, the Officer will be sent away."), bc_map, "0x00ff00");
- end;
-
-OnTimer5000:
- mapannounce("bat_c02", _("Unless you talk to the Officer, you cannot gain the points."), bc_map, "0x00ff00");
- mapannounce("bat_c02", _("Please be careful."), bc_map, "0x00ff00");
- end;
-
-OnTimer55000:
- mapannounce("bat_c02", _("You will be sent back."), bc_map, "0x00ff00");
- end;
-
-OnTimer60000:
- stopnpctimer;
- donpcevent "KvM02_BG::OnReset";
- end;
-}
-
-//== Battleground rewards ==================================
-bat_c02,51,130,5 script KVM Officer#KVM02A 4_M_KY_HEAD,{
- if( $@KvM01BG_Victory )
- {
- if( $@KvM02BG_Victory == Bat_Team )
- { // Victory
- ++kvm_point;
- mes("[KVM Officer]");
- mes("Good Game.");
- mes("May the glory of KVM be with you.");
- mes("You aquire the winning points: 1");
- close2;
- } else {
- mes("[KVM Officer]");
- mes("I am so sorry.");
- mes("I wish you better luck next time.");
- mes("You aquire the losing points: 0");
- close2;
- }
- bg_leave;
- Bat_Team = 0;
- warp "bat_room",154,150;
- end;
- }
- end;
-}
-
-bat_c02,148,53,1 script KVM Officer#KVM02B 4_M_CRU_HEAD,{
- if( $@KvM01BG_Victory )
- {
- if( $@KvM02BG_Victory == Bat_Team )
- { // Victory
- ++kvm_point;
- mes("[KVM Officer]");
- mes("Good Game.");
- mes("May the glory of KVM be with you.");
- mes("You aquire the winning points: 1");
- close2;
- } else {
- mes("[KVM Officer]");
- mes("I am so sorry.");
- mes("I wish you better luck next time.");
- mes("You aquire the losing points: 0");
- close2;
- }
- bg_leave;
- Bat_Team = 0;
- warp "bat_room",154,150;
- end;
- }
- end;
-}
diff --git a/npc/battleground/kvm/kvm03.txt b/npc/battleground/kvm/kvm03.txt
deleted file mode 100644
index 954fd7b49..000000000
--- a/npc/battleground/kvm/kvm03.txt
+++ /dev/null
@@ -1,436 +0,0 @@
-//================= Hercules Script =======================================
-//= _ _ _
-//= | | | | | |
-//= | |_| | ___ _ __ ___ _ _| | ___ ___
-//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
-//= | | | | __/ | | (__| |_| | | __/\__ \
-//= \_| |_/\___|_| \___|\__,_|_|\___||___/
-//================= License ===============================================
-//= This file is part of Hercules.
-//= http://herc.ws - http://github.com/HerculesWS/Hercules
-//=
-//= Copyright (C) 2012-2016 Hercules Dev Team
-//= Copyright (C) Ai4rei
-//= Copyright (C) L0ne_W0lf
-//=
-//= Hercules is free software: you can redistribute it and/or modify
-//= it under the terms of the GNU General Public License as published by
-//= the Free Software Foundation, either version 3 of the License, or
-//= (at your option) any later version.
-//=
-//= This program is distributed in the hope that it will be useful,
-//= but WITHOUT ANY WARRANTY; without even the implied warranty of
-//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-//= GNU General Public License for more details.
-//=
-//= You should have received a copy of the GNU General Public License
-//= along with this program. If not, see <http://www.gnu.org/licenses/>.
-//=========================================================================
-// BattleGround System - KvM 60-80
-//================= Description ===========================================
-//= Kreiger Von Midgard Battleground for levels 60 to 80
-//= - Winning Team: 2 points
-//= - Losing Team: 1 point
-//================= Current Version =======================================
-//= 1.3
-//=========================================================================
-
-//== Waiting Room NPCs =====================================
-bat_room,225,226,5 script KVM Waiting Room#a3::KvM03R_Guillaume 4_M_KY_KNT,{
- end;
-
-OnInit:
- waitingroom(_("Battle Station 5 Players"), 6, "KvM03_BG::OnGuillaumeJoin", 1);
- end;
-
-OnEnterBG:
- $@KvM03BG_id1 = waitingroom2bg("bat_c03",52,129,"KvM03_BG::OnGuillaumeQuit","KvM03_BG::OnGuillaumeDie");
- end;
-}
-
-bat_room,225,220,0 warp #kvm701 2,2,bat_room,154,150
-
-bat_room,225,205,3 script KVM Waiting Room#b3::KvM03R_Croix 4_M_CRU_KNT,{
- end;
-
-OnInit:
- waitingroom(_("Battle Station 5 Players"), 6, "KvM03_BG::OnCroixJoin", 1);
- end;
-
-OnEnterBG:
- $@KvM03BG_id2 = waitingroom2bg("bat_c03",147,55,"KvM03_BG::OnCroixQuit","KvM03_BG::OnCroixDie");
- end;
-}
-
-bat_room,225,211,0 warp #kvm702 2,2,bat_room,154,150
-
-//== Starting Line =========================================
-- script KVM03::CellEffect3 FAKE_NPC,{
- end;
-
-OnKvM03One:
- specialeffect EF_CHANGECOLD;
- end;
-
-OnKvM03Two:
- specialeffect EF_CHANGEPOISON;
- end;
-}
-
-bat_c03,54,124,3 duplicate(CellEffect3) #RedcellA1-3 HIDDEN_WARP_NPC
-bat_c03,55,124,3 duplicate(CellEffect3) #RedcellA2-3 HIDDEN_WARP_NPC
-bat_c03,56,124,3 duplicate(CellEffect3) #RedcellA3-3 HIDDEN_WARP_NPC
-bat_c03,57,124,3 duplicate(CellEffect3) #RedcellA4-3 HIDDEN_WARP_NPC
-bat_c03,57,125,3 duplicate(CellEffect3) #RedcellA5-3 HIDDEN_WARP_NPC
-bat_c03,57,126,3 duplicate(CellEffect3) #RedcellA6-3 HIDDEN_WARP_NPC
-bat_c03,57,127,3 duplicate(CellEffect3) #RedcellA7-3 HIDDEN_WARP_NPC
-
-bat_c03,145,59,3 duplicate(CellEffect3) #RedcellB1-3 HIDDEN_WARP_NPC
-bat_c03,144,59,3 duplicate(CellEffect3) #RedcellB2-3 HIDDEN_WARP_NPC
-bat_c03,143,59,3 duplicate(CellEffect3) #RedcellB3-3 HIDDEN_WARP_NPC
-bat_c03,142,59,3 duplicate(CellEffect3) #RedcellB4-3 HIDDEN_WARP_NPC
-bat_c03,142,56,3 duplicate(CellEffect3) #RedcellB5-3 HIDDEN_WARP_NPC
-bat_c03,142,57,3 duplicate(CellEffect3) #RedcellB6-3 HIDDEN_WARP_NPC
-bat_c03,142,58,3 duplicate(CellEffect3) #RedcellB7-3 HIDDEN_WARP_NPC
-
-bat_c03,54,128,3 script #A_camp_start03 HIDDEN_WARP_NPC,4,4,{
- end;
-
-OnInit:
- disablenpc "#A_camp_start03";
- end;
-
-OnEnable:
- enablenpc "#A_camp_start03";
- end;
-
-OnDisable:
- disablenpc "#A_camp_start03";
- end;
-
-OnTouch:
- Bat_Team = 1;
- setquest 6025;
- end;
-}
-
-bat_c03,146,56,3 script #B_camp_start03 HIDDEN_WARP_NPC,4,4,{
- end;
-
-OnInit:
- disablenpc "#B_camp_start03";
- end;
-
-OnEnable:
- enablenpc "#B_camp_start03";
- end;
-
-OnDisable:
- disablenpc "#B_camp_start03";
- end;
-
-OnTouch:
- Bat_Team = 2;
- setquest 6025;
- end;
-}
-
-//== Battleground Engine ===================================
-- script KvM03_BG FAKE_NPC,{
- end;
-
-OnInit:
- setwall "bat_c03",54,122,6,7,0,"batc03wall_a";
- setwall "bat_c03",55,122,5,7,0,"batc03wall_b";
- setwall "bat_c03",140,56,6,7,0,"batc03wall_c";
- setwall "bat_c03",140,57,5,7,0,"batc03wall_d";
- disablenpc "KVM Officer#KVM03A";
- disablenpc "KVM Officer#KVM03B";
- end;
-
-OnGuillaumeJoin:
-OnCroixJoin:
- donpcevent "KvM03_BG::OnReadyCheck";
- end;
-
-OnGuillaumeQuit:
- //BG_Delay_Tick = gettimetick(2) + 1200;
-OnGuillaumeDie:
- if ($@KvM03BG == 2) {
- --.Guillaume_Count;
- bg_updatescore "bat_c03",.Guillaume_Count,.Croix_Count;
- if( .Guillaume_Count < 1 ) donpcevent "KvM03_BG::OnCroixWin";
- else {
- mapannounce("bat_c03", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
- mapannounce("bat_c03", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
- }
- }
- end;
-
-OnCroixQuit:
- //BG_Delay_Tick = gettimetick(2) + 1200;
-OnCroixDie:
- if ($@KvM03BG == 2) {
- --.Croix_Count;
- bg_updatescore "bat_c03",.Guillaume_Count,.Croix_Count;
- if( .Croix_Count < 1 ) donpcevent "KvM03_BG::OnGuillaumeWin";
- else {
- mapannounce("bat_c03", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
- mapannounce("bat_c03", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
- }
- }
- end;
-
-OnReadyCheck:
- if( $@KvM03BG )
- end;
- .@Guillaume = getwaitingroomstate(0,"KvM03R_Guillaume");
- .@Croix = getwaitingroomstate(0,"KvM03R_Croix");
-
- if( .@Guillaume < 5 || .@Croix < 5 )
- end;
-
- $@KvM03BG = 1; // Starting
- donpcevent "KvM03R_Croix::OnEnterBG";
- donpcevent "KvM03R_Guillaume::OnEnterBG";
- donpcevent "KvM03_BG::OnStart";
- end;
-
-OnStart:
- disablenpc "KVM Officer#KVM03A";
- disablenpc "KVM Officer#KVM03B";
- $@KvM01BG_Victory = 0;
- // Warp Teams
- bg_warp $@KvM03BG_id1,"bat_c03",53,128;
- bg_warp $@KvM03BG_id2,"bat_c03",146,55;
- initnpctimer;
- end;
-
-OnTimer1000:
- mapannounce("bat_c03", _("In 1 minute, KVM will start."), bc_map, "0x00ff00");
- end;
-
-OnTimer3000:
- mapannounce("bat_c03", _("The maximum time for a KVM battle is 5 minutes."), bc_map, "0x00ff00");
- end;
-
-OnTimer6000:
- mapannounce("bat_c03", _("Please prepare for the KVM battle."), bc_map, "0x00ff00");
- mapannounce("bat_c03", _("You can buff your people."), bc_map, "0x00ff00");
- donpcevent "#A_camp_start03::OnEnable";
- donpcevent "#B_camp_start03::OnEnable";
- end;
-
-OnTimer13000:
- donpcevent "#A_camp_start03::OnDisable";
- donpcevent "#B_camp_start03::OnDisable";
- end;
-
-OnTimer30000:
- mapannounce("bat_c03", _("30 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer45000:
- mapannounce("bat_c03", _("15 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
- donpcevent "::OnKvM01One";
- end;
-
-OnTimer50000:
- mapannounce("bat_c03", _("10 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
- donpcevent "::OnKvM01Two";
- end;
-
-OnTimer55000:
- mapannounce("bat_c03", _("5 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
- donpcevent "::OnKvM01One";
- end;
-
-OnTimer59000:
- mapannounce("bat_c03", _("KVM is now commencing."), bc_map, "0x00ff00");
- donpcevent "::OnKvM01Two";
- end;
-
-OnTimer61000:
- // Team Members
- .Guillaume_Count = bg_get_data($@KvM03BG_id1, 0);
- .Croix_Count = bg_get_data($@KvM03BG_id2, 0);
- if( .Guillaume_Count < 5 || .Croix_Count < 5 )
- {
- $@KvM03BG_Victory = 3;
- $@KvM03BG = 3;
- mapannounce("bat_c03", _("There are not enough players to start the battle"), bc_map, "0xC0C0C0");
- stopnpctimer;
- donpcevent "KvM03_BG::OnStop";
- end;
- }
- $@KvM03BG = 2; // Playing
- bg_warp $@KvM03BG_id1,"bat_c03",62,119;
- bg_warp $@KvM03BG_id2,"bat_c03",137,64;
- end;
-
-OnTimer300000:
- mapannounce("bat_c03", _("1 minute remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer330000:
- mapannounce("bat_c03", _("30 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer345000:
- mapannounce("bat_c03", _("15 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer350000:
- mapannounce("bat_c03", _("10 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer355000:
- mapannounce("bat_c03", _("5 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
- end;
-
-OnTimer360000:
- mapannounce("bat_c03", _("KVM has ended."), bc_map, "0x00ff00");
- if( .Croix_Count > .Guillaume_Count )
- donpcevent "KvM03_BG::OnCroixWin";
- else if( .Croix_Count < .Guillaume_Count )
- donpcevent "KvM03_BG::OnGuillaumeWin";
- else
- { // Draw Game
- $@KvM03BG = 3;
- $@KvM03BG_Victory = 3;
- mapannounce("bat_c03", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
- mapannounce("bat_c03", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
- mapannounce("bat_c03", _("This battle has ended in a draw."), bc_map, "0x00ff00");
- donpcevent "KvM03_BG::OnStop";
- }
- end;
-
-OnGuillaumeWin:
- $@KvM03BG = 3;
- $@KvM03BG_Victory = 1;
- mapannounce("bat_c03", _("Guillaume wins!"), bc_map, "0x00ff00");
- mapannounce("bat_c03", _("Congratulations to Guillaume members."), bc_map, "0x00ff00");
- mapannounce("bat_c03", _("Everyone will be moved to the start point."), bc_map, "0x00ff00");
- donpcevent "KvM03_BG::OnStop";
- end;
-
-OnCroixWin:
- $@KvM03BG = 3;
- $@KvM03BG_Victory = 2;
- mapannounce("bat_c03", _("Croix wins!"), bc_map, "0x00ff00");
- mapannounce("bat_c03", _("Congratulations to Croix members."), bc_map, "0x00ff00");
- mapannounce("bat_c03", _("Everyone will be moved to the start point."), bc_map, "0x00ff00");
- donpcevent "KvM03_BG::OnStop";
- end;
-
-OnStop:
- stopnpctimer;
- enablenpc "KVM Officer#KVM03A";
- enablenpc "KVM Officer#KVM03B";
- // Warp Teams
- bg_warp $@KvM03BG_id1,"bat_c03",53,128;
- bg_warp $@KvM03BG_id2,"bat_c03",146,55;
- donpcevent "KvM03_BG_Out::OnBegin";
- end;
-
-OnReset:
- .Croix_Count = 0;
- .Guillaume_Count = 0;
- $@KvM03BG_Victory = 0;
- if( $@KvM03BG_id1 ) { bg_destroy $@KvM03BG_id1; $@KvM03BG_id1 = 0; }
- if( $@KvM03BG_id2 ) { bg_destroy $@KvM03BG_id2; $@KvM03BG_id2 = 0; }
- disablenpc "KVM Officer#KVM03A";
- disablenpc "KVM Officer#KVM03B";
- mapwarp "bat_c03","bat_room",154,150;
- maprespawnguildid "bat_c03",0,3; // Just in case someone else
- bg_updatescore "bat_c03",5,5;
- $@KvM03BG = 0;
- donpcevent "KvM03_BG::OnReadyCheck"; // Maybe a game is ready to start
- end;
-}
-
-- script KvM03_BG_Out FAKE_NPC,{
- end;
-
-OnBegin:
- initnpctimer;
- end;
-
-OnTimer1000:
- mapannounce("bat_c03", _("Please apply with the Officer to acquire KVM points."), bc_map, "0x00ff00");
- end;
-
-OnTimer3000:
- mapannounce("bat_c03", _("The Officer will grant you the points for 30 seconds."), bc_map, "0x00ff00");
- mapannounce("bat_c03", _("In 30 seconds, the Officer will be sent away."), bc_map, "0x00ff00");
- end;
-
-OnTimer5000:
- mapannounce("bat_c03", _("Unless you talk to the Officer, you cannot gain the points."), bc_map, "0x00ff00");
- mapannounce("bat_c03", _("Please be careful."), bc_map, "0x00ff00");
- end;
-
-OnTimer55000:
- mapannounce("bat_c03", _("You will be sent back."), bc_map, "0x00ff00");
- end;
-
-OnTimer60000:
- stopnpctimer;
- donpcevent "KvM03_BG::OnReset";
- end;
-}
-
-//== Battleground rewards ==================================
-bat_c03,51,130,5 script KVM Officer#KVM03A 4_M_KY_HEAD,{
- if( $@KvM01BG_Victory )
- {
- if( $@KvM03BG_Victory == Bat_Team )
- { // Victory
- kvm_point += 2;
- mes("[KVM Officer]");
- mes("Good Game.");
- mes("May the glory of KVM be with you.");
- mes("You aquire the winning points: 2");
- close2;
- } else {
- ++kvm_point;
- mes("[KVM Officer]");
- mes("I am so sorry.");
- mes("I wish you better luck next time.");
- mes("You aquire the losing points: 1");
- close2;
- }
- bg_leave;
- Bat_Team = 0;
- warp "bat_room",154,150;
- end;
- }
- end;
-}
-
-bat_c03,148,53,1 script KVM Officer#KVM03B 4_M_CRU_HEAD,{
- if( $@KvM01BG_Victory )
- {
- if( $@KvM03BG_Victory == Bat_Team )
- { // Victory
- kvm_point +=2;
- mes("[KVM Officer]");
- mes("Good Game.");
- mes("May the glory of KVM be with you.");
- mes("You aquire the winning points: 2");
- close2;
- } else {
- ++kvm_point;
- mes("[KVM Officer]");
- mes("I am so sorry.");
- mes("I wish you better luck next time.");
- mes("You aquire the losing points: 1");
- close2;
- }
- bg_leave;
- Bat_Team = 0;
- warp "bat_room",154,150;
- end;
- }
- end;
-}
diff --git a/npc/battleground/kvm/kvm_enter.txt b/npc/battleground/kvm/kvm_enter.txt
deleted file mode 100644
index 2ee4a7c5d..000000000
--- a/npc/battleground/kvm/kvm_enter.txt
+++ /dev/null
@@ -1,230 +0,0 @@
-//================= Hercules Script =======================================
-//= _ _ _
-//= | | | | | |
-//= | |_| | ___ _ __ ___ _ _| | ___ ___
-//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
-//= | | | | __/ | | (__| |_| | | __/\__ \
-//= \_| |_/\___|_| \___|\__,_|_|\___||___/
-//================= License ===============================================
-//= This file is part of Hercules.
-//= http://herc.ws - http://github.com/HerculesWS/Hercules
-//=
-//= Copyright (C) 2012-2016 Hercules Dev Team
-//= Copyright (C) L0ne_W0lf
-//=
-//= Hercules is free software: you can redistribute it and/or modify
-//= it under the terms of the GNU General Public License as published by
-//= the Free Software Foundation, either version 3 of the License, or
-//= (at your option) any later version.
-//=
-//= This program is distributed in the hope that it will be useful,
-//= but WITHOUT ANY WARRANTY; without even the implied warranty of
-//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-//= GNU General Public License for more details.
-//=
-//= You should have received a copy of the GNU General Public License
-//= along with this program. If not, see <http://www.gnu.org/licenses/>.
-//=========================================================================
-// BattleGround System - KvM Entrance NPCs
-//================= Description ===========================================
-//= Kreiger Von Midgard Battleground Entrance NPCs
-//= Original NPCs scrapped from bg_common.
-//================= Current Version =======================================
-//= 1.1
-//=========================================================================
-
-//== KvM Officer - Guillaume ===============================
-bat_room,164,178,5 script KVM Mercenary Officer#1 4_M_KY_KNT,{
- /*
- .@kvm = questprogress(6026,PLAYTIME);
- if (.@kvm == 1) {
- mes("[Croix Mercenary Officer]");
- mes("I know that you've already signed with the Croix. Go back and join their team. We will not accept traitors to fight for us.");
- close;
- }
- else if (.@kvm == 2) erasequest 6026;
- */
- .@permit = questprogress(6025,PLAYTIME);
- if (.@permit == 1) {
- mes("[Guillaume Mercenary Officer]");
- mes("It seems you have recently participated in a KVM battle. You must wait 5 minutes before signing up again.");
- close;
- }
- else if (.@permit == 2) erasequest 6025;
- mes("[Guillaume Mercenary Officer]");
- mes("Let them know the real might of Guillaume!");
- next;
- switch(select("I will fight with you.", "End Conversation.")) {
- case 1:
- mes("[Guillaume Mercenary Officer]");
- mes("Show them how strong we are.");
- mes("Today, everyone will hear the shout of triumph from Guillaume!");
- close2;
- //setquest 6025;
- if (BaseLevel > 79) warp "bat_room",169,223;
- else if (BaseLevel < 60) warp "bat_room",197,223;
- else warp "bat_room",225,223;
- end;
- case 2:
- mes("[Guillaume Mercenary Officer]");
- mes("We will win!");
- close;
- }
-}
-
-//== Guillaume Knight - KvM ================================
-bat_room,167,178,5 script Guillaume Knight#kvm 4_M_KY_SOLD,{
- mes("[Guillaume Knight]");
- mes("Hello.");
- mes("What do you want to know?");
- next;
- switch(select("Apply for KVM.", "What is KVM?", "How do I participate in KVM?", "I want to know my Kreiger Points.")) {
- case 1:
- mes("[Guillaume Knight]");
- mes("Applications are not available yet.");
- mes("To apply, you need to go to a KVM Mercenary Officer.");
- close;
- case 2:
- mes("[Guillaume Knight]");
- mes("KVM is the abbreviation of Kreiger Von Midgard.");
- mes("Adventurer, are you aware that the way to the new world has been opened?");
- next;
- mes("[Guillaume Knight]");
- mes("We, the Guillaume Administration, have several plans to advance to the new world.");
- mes("And KVM is one of them.");
- next;
- mes("[Guillaume Knight]");
- mes("It means that we, one of many countries in the Midgard continent,");
- mes("have decided to employ many adventurers for the immediate advance to the new world.");
- next;
- mes("[Guillaume Knight]");
- mes("Therefore, to select the best adventurers, we are holding the KVM.");
- mes("We exspect responses from many adventurers.");
- next;
- mes("[Guillaume Knight]");
- mes("And we will give them rewards for their participation!");
- mes("As for the rewards, please contact a KVM Logistic Officer.");
- close;
- case 3:
- mes("[Guillaume Knight]");
- mes("Basically, KVM is a 5 on 5 battle.");
- mes("First, you apply with a KVM receptionist, in a group or individually.");
- next;
- mes("[Guillaume Knight]");
- mes("Group applications are for when you intend to enter the KVM with your party members,");
- mes("and a personal application is for when you intend to enter the KVM individually.");
- next;
- mes("[Guillaume Knight]");
- mes("Please apply with a KVM officer, and he will contact you later when you are in Prontera.");
- next;
- mes("[Guillaume Knight]");
- mes("Then you enter and follow the instructions in the battlefield.");
- next;
- mes("[Guillaume Knight]");
- mes("However, please be advised that unless you are in the KVM office, he cannot contact you.");
- close;
- case 4:
- mes("[Guillaume Knight]");
- mes("Your Kreiger Points are:");
- mesf("%d.", kvm_point);
- close;
- }
-}
-
-//== KvM Officer - Croix ===================================
-bat_room,164,121,1 script KVM Mercenary Officer#2 4_M_CRU_KNT,{
- /*
- .@kvm = questprogress(6025,PLAYTIME);
- if (.@kvm == 1) {
- mes("[Croix Mercenary Officer]");
- mes("I know that you've already signed with the Guillaume. Go back and join their team. We will not accept traitors to fight for us.");
- close;
- }
- else if (.@kvm == 2) erasequest 6025;
- */
- .@permit = questprogress(6025,PLAYTIME);
- if (.@permit == 1) {
- mes("[Croix Mercenary Officer]");
- mes("It seems you have recently participated in a KVM battle. You must wait 5 minutes before signing up again.");
- close;
- }
- else if (.@permit == 2) erasequest 6025;
- mes("[Croix Mercenary Officer]");
- mes("Let them know the real might of Croix!");
- next;
- switch(select("I will fight with you.", "End Conversation.")) {
- case 1:
- mes("[Croix Mercenary Officer]");
- mes("Show them how strong we are.");
- mes("Today, everyone will hear the shout of triumph from Croix!");
- close2;
- //setquest 6026;
- if (BaseLevel > 79) warp "bat_room",169,207;
- else if (BaseLevel < 60) warp "bat_room",197,207;
- else warp "bat_room",225,207;
- end;
- case 2:
- mes("[Croix Mercenary Officer]");
- mes("We will win!");
- close;
- }
-}
-
-//== Croix Knight - KvM ====================================
-bat_room,167,121,1 script Croix Knight#kvm 4_M_CRU_SOLD,{
- mes("[Croix Knight]");
- mes("Hello.");
- mes("What do you want to know?");
- next;
- switch(select("Apply for KVM.", "What is KVM?", "How do I participate in KVM?", "I want to know my Kreiger Points.")) {
- case 1:
- mes("[Croix Knight]");
- mes("Applications are not available yet.");
- mes("To apply, you need to go to a KVM Mercenary Officer.");
- close;
- case 2:
- mes("[Croix Knight]");
- mes("KVM is the abbreviation of Kreiger Von Midgard.");
- mes("Adventurer, are you aware that the way to the new world has been opened?");
- next;
- mes("[Croix Knight]");
- mes("We, the Croix Administration, have several plans to advance to the new world.");
- mes("And KVM is one of them.");
- next;
- mes("[Croix Knight]");
- mes("It means that we, one of many countries in the Midgard continent,");
- mes("have decided to employ many adventurers for the immediate advance to the new world.");
- next;
- mes("[Croix Knight]");
- mes("Therefore, to select the best adventurers, we are holding the KVM.");
- mes("We exspect responses from many adventurers.");
- next;
- mes("[Croix Knight]");
- mes("And we will give them rewards for their participation!");
- mes("As for the rewards, please contact a KVM Logistic Officer.");
- close;
- case 3:
- mes("[Croix Knight]");
- mes("Basically, KVM is a 5 on 5 battle.");
- mes("First, you apply with a KVM receptionist, in a group or individually.");
- next;
- mes("[Croix Knight]");
- mes("Group applications are for when you intend to enter the KVM with your party members,");
- mes("and a personal application is for when you intend to enter the KVM individually.");
- next;
- mes("[Croix Knight]");
- mes("Please apply with a KVM officer, and he will contact you later when you are in Prontera.");
- next;
- mes("[Croix Knight]");
- mes("Then you enter and follow the instructions in the battlefield.");
- next;
- mes("[Croix Knight]");
- mes("However, please be advised that unless you are in the KVM office, he cannot contact you.");
- close;
- case 4:
- mes("[Croix Knight]");
- mes("Your Kreiger Points are:");
- mesf("%d.", kvm_point);
- close;
- }
-}
diff --git a/npc/battleground/kvm/kvm_item_pay.txt b/npc/battleground/kvm/kvm_item_pay.txt
deleted file mode 100644
index f9dac0766..000000000
--- a/npc/battleground/kvm/kvm_item_pay.txt
+++ /dev/null
@@ -1,331 +0,0 @@
-//================= Hercules Script =======================================
-//= _ _ _
-//= | | | | | |
-//= | |_| | ___ _ __ ___ _ _| | ___ ___
-//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
-//= | | | | __/ | | (__| |_| | | __/\__ \
-//= \_| |_/\___|_| \___|\__,_|_|\___||___/
-//================= License ===============================================
-//= This file is part of Hercules.
-//= http://herc.ws - http://github.com/HerculesWS/Hercules
-//=
-//= Copyright (C) 2012-2016 Hercules Dev Team
-//= Copyright (C) L0ne_W0lf
-//=
-//= Hercules is free software: you can redistribute it and/or modify
-//= it under the terms of the GNU General Public License as published by
-//= the Free Software Foundation, either version 3 of the License, or
-//= (at your option) any later version.
-//=
-//= This program is distributed in the hope that it will be useful,
-//= but WITHOUT ANY WARRANTY; without even the implied warranty of
-//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-//= GNU General Public License for more details.
-//=
-//= You should have received a copy of the GNU General Public License
-//= along with this program. If not, see <http://www.gnu.org/licenses/>.
-//=========================================================================
-// BattleGround System - KvM Item Dealer
-//================= Description ===========================================
-//= Kreiger Von Midgard Battleground Point redemption NPC
-//================= Current Version =======================================
-//= 1.0
-//================= Additional Comments ===================================
-//= KvM Does NOT use items, but a character variable to keep track of
-//= points. This NPC when talked to will convert already-given tokens and
-//= convert them to points under the player variable kvm_point.
-//=========================================================================
-
-bat_room,151,144,3 script KVM Logistic Officer#a 4_M_JOB_KNIGHT2,{
- if (countitem(War_Badge)) {
- .@pointstoadd = countitem(War_Badge);
- delitem 7773,.@pointstoadd;
- kvm_point += .@pointstoadd;
- mes("[Logistics]");
- mesf("Are those %ss I see?", getitemname(7773));
- mes("We no longer accept that currency,\r"
- "but I can exchange those for you.");
- mesf("So you have %d %ss?", .@pointstoadd, getitemname(7773));
- mesf("Alright, all set, you now have ^580080%d^000000 KVM Points.", kvm_point);
- next;
- }
- if (checkweight(Knife,1) == 0) {
- mes("- Wait a minute !! -");
- mes("- Currently you're carrying -");
- mes("- too many items with you. -");
- mes("- Please try again -");
- mes("- after you loose some weight. -");
- close;
- }
- mes("[Logistics]");
- mes("Hello?");
- mes("I am in charge of distributing\r"
- "reward items for KVM points. Any\r"
- "wrong selection of items will not\r"
- "be reversed. Please be carefull.");
- mes("Select the next step please.");
- next;
- .@name$ = strcharinfo(PC_NAME);
- switch(select("Read the KVM Catalogue.", "Purchase KVM Items.", "Confirm KVM Points.", "Explanation of KVM Rewards.", "Explanation of KVM Points.")) {
- case 1:
- mes("[Logistics]");
- mes("Here is the catalogue of KVM items.");
- mes("Each weapon requires 2,000 points\r"
- "and each armor from 10 to 1,200\r"
- "points. So, be carefull when\r"
- "selecting a reward.");
- close2;
- readbook 11017,1;
- end;
- case 2:
- mes("[Logistics]");
- mes("Wich items do you want to see? As\r"
- "for the detailed specification of\r"
- "the items, please refer to the\r"
- "^3131FFCatalogue^000000.");
- next;
- switch(select("Weapon", "Armor/Accessory", "Mass-Production Armor/Accessory", "Popularized Armor/Accessory")) {
- case 1:
- mes("[Logistics]");
- mes("You have selected the Weapon Category.");
- mes("Please select a sub-category.");
- next;
- switch(select("Dagger/Sword/Spear", "Staff/Mace/Axe/Shuriken", "Bow/Katar/Instrument/Whip", "Book/Knuckle", "Revolver/Rifle/Gun/Grenade Launcher")) {
- case 1:
- mes("[Logistics]");
- mes("You have selected the Dagger/Sword/Spear category.");
- mes("Please select a sub-category.");
- next;
- switch(select("Dagger", "One-handed Sword", "Two-handed Sword", "One-handed Spear", "Two-handed Spear")) {
- case 1: callsub PurchaseItem,13042,0,1; //Krieger_Dagger1
- case 2:
- mes("[Logistics]");
- mes("You have selected the 'One-handed Sword' category.");
- mes("There are 3 One-handed Swords: Glorious Flamberge, Glorious Rapier and Glorious Holy Avenger.");
- mes("If you want their details, please refer to the KVM Catalogue.");
- mes("Please select one of them.");
- next;
- switch(select("Glorious Flamberge", "Glorious Rapier", "Glorious Holy Avenger")) {
- case 1: callsub PurchaseItem,13416,0,0; //Krieger_Onehand_Sword1
- case 2: callsub PurchaseItem,13417,0,0; //Krieger_Onehand_Sword2
- case 3: callsub PurchaseItem,13418,0,0; //Krieger_Onehand_Sword3
- }
- case 3: callsub PurchaseItem,1187,0,1; //Krieger_Twohand_Sword1
- case 4: callsub PurchaseItem,1426,0,1; //Krieger_Onehand_Spear1
- case 5: callsub PurchaseItem,1486,0,1; //Krieger_Twohand_Spear1
- }
- case 2:
- mes("[Logistics]");
- mes("You have selected the 'Staff/Mace/Axe/Shuriken' category.");
- mes("Please select a sub-category.");
- next;
- switch(select("Staff", "Mace", "One-handed Axe", "Two-handed Axe", "Shuriken")) {
- case 1:
- mes("[Logistics]");
- mes("You have selected the 'Staff' category.");
- mes("There are 3 Staffs: a Two-handed Weapon Glorious Destruction Staff, a One-handed Glorious Arc Wand and a Glorious Healing Staff.");
- mes("If you want their details, please refer to the KVM Catalogue.");
- mes("Please select one of them.");
- next;
- switch(select("Glorious Destruction Staff", "Glorious Arc Wand", "Glorious Healing Staff")) {
- case 1: callsub PurchaseItem,2002,0,0; //Krieger_Twohand_Staff1
- case 2: callsub PurchaseItem,1640,0,0; //Krieger_Onehand_Staff1
- case 3: callsub PurchaseItem,1641,0,0; //Krieger_Onehand_Staff2
- }
- case 2: callsub PurchaseItem,1546,0,1; //Krieger_Onehand_Mace1
- case 3: callsub PurchaseItem,1310,0,1; //Krieger_Onehand_Axe1
- case 4: callsub PurchaseItem,1382,0,1; //Krieger_Twohand_Axe1
- case 5: callsub PurchaseItem,13307,0,1; //Krieger_Huuma_Shuriken1
- }
- case 3:
- mes("[Logistics]");
- mes("You have selected the Bow/Katar/Instrument/Whip category.");
- mes("Please select a sub-category.");
- next;
- switch(select("Bow", "Katar", "Instrument", "Whip")) {
- case 1: callsub PurchaseItem,1743,0,1; //Krieger_Bow1
- case 2:
- mes("[Logistics]");
- mes("You have selected the 'Katar' category.");
- mes("There are 2 Katars: Glorious Bloody Roar and Glorious Jamadhar.");
- mes("If you want their details, please refer to the KVM Catalogue.");
- mes("Please select one of them.");
- next;
- switch(select("Glorious Bloody Roar", "Glorious Jamadhar")) {
- case 1: callsub PurchaseItem,1281,0,0; //Krieger_Katar1
- case 2: callsub PurchaseItem,1282,0,0; //Krieger_Katar2
- }
- case 3: callsub PurchaseItem,1927,0,1; //Krieger_Instrument1
- case 4: callsub PurchaseItem,1981,0,1; //Krieger_Whip1
- }
- case 4:
- mes("[Logistics]");
- mes("You have selected the Book/Knuckle category.");
- mes("Please select a sub-category.");
- next;
- switch(select("Book", "Knuckle")) {
- case 1:
- mes("[Logistics]");
- mes("You have selected 'Book'.");
- mes("There are 2 Books: Glorious Tablet and Glorious Apocalypse.");
- mes("If you want their details, please refer to the KVM Catalogue.");
- mes("Please select one of them.");
- next;
- switch(select("Glorious Tablet", "Glorious Apocalypse")) {
- case 1: callsub PurchaseItem,1576,0,0; //Krieger_Book1
- case 2: callsub PurchaseItem,1577,0,0; //Krieger_Book2
- }
- case 2:
- mes("[Logistics]");
- mes("You have selected the 'Knuckle' category.");
- mes("There are 2 Knuckles: Glorious Claw and Glorious Fist.");
- mes("If you want their details, please refer to the KVM Catalogue.");
- mes("Please select one of them.");
- next;
- switch(select("Glorious Claw", "Glorious Fist")) {
- case 1: callsub PurchaseItem,1826,0,0; //Krieger_Knuckle1
- case 2: callsub PurchaseItem,1827,0,0; //Krieger_Knuckle2
- }
- }
- case 5:
- mes("[Logistics]");
- mes("You have selected the 'Revolver/Rifle/Gun/Grenade Launcher' category.");
- mes("Please select a sub-category.");
- next;
- switch(select("Revolver", "Rifle", "Gatling Gun", "Shotgun", "Grenade Launcher")) {
- case 1: callsub PurchaseItem,13110,0,1; //Krieger_Pistol1
- case 2: callsub PurchaseItem,13176,0,1; //Krieger_Rifle1
- case 3: callsub PurchaseItem,13177,0,1; //Krieger_Gatling1
- case 4: callsub PurchaseItem,13178,0,1; //Krieger_Shotgun1
- case 5: callsub PurchaseItem,13179,0,1; //Krieger_Launcher1
- }
- }
- case 2:
- mes("[Logistics]");
- mes("You have selected the 'Armor/Accessory' category.");
- mes("Please select a sub-category.");
- next;
- switch(select("Armor", "Cloak", "Shoes", "Accessory")) {
- case 1: callsub PurchaseItem,2394,1,2; //Krieger_Suit1
- case 2: callsub PurchaseItem,2549,2,2; //Krieger_Muffler1
- case 3: callsub PurchaseItem,2444,3,2; //Krieger_Shoes1
- case 4: callsub PurchaseItem,2772,4,2; //Krieger_Ring1
- }
- case 3:
- mes("[Logistics]");
- mes("You have selected the 'Mass-Production Armor/Accessory' category.");
- mes("Please select a sub-category.");
- next;
- switch(select("Mass-Production Armor", "Mass-Production Shoes", "Mass-Production Accessory")) {
- case 1: callsub PurchaseItem,2395,5,3; //Krieger_Suit2
- case 2: callsub PurchaseItem,2445,6,3; //Krieger_Shoes2
- case 3: callsub PurchaseItem,2773,7,3; //Krieger_Ring2
- }
- case 4:
- mes("[Logistics]");
- mes("You have selected the 'Popularized Armor/Accessory' category.");
- mes("Please select a sub-category.");
- next;
- switch(select("Popularized Armor", "Popularized Shoes", "Popularized Accessory")) {
- case 1: callsub PurchaseItem,2396,8,4; //Krieger_Suit3
- case 2: callsub PurchaseItem,2446,9,4; //Krieger_Shoes3
- case 3: callsub PurchaseItem,2774,10,4; //Krieger_Ring3
- }
- }
- case 3:
- mes("[Logistics]");
- mesf("%s, your current points are ^580080%d^000000 KVM Points.", .@name$, kvm_point);
- close;
- case 4:
- mes("[Logistics]");
- mes("There are 3 categories in KVM Rewards: Weapon/Armor.Accessory.");
- next;
- mes("[Logistics]");
- mes("Weapon rewards require 2,000 KVM points for each.");
- mes("There are 3 types of Armor rewards and they require 840/630/580 KVM points fo each.");
- mes("Accessory rewards require 1,200 KVM points for each.");
- next;
- mes("[Logistics]");
- mes("Kreiger Weapons are LV 4 Weapons, they can be upgraded and will have special effects: Slaughter, Destruction and Blessing.");
- next;
- mes("[Logistics]");
- mes("When you can wear all 3 armors, you can have a special set of options.");
- mes("Also, when Kreiger Accessory rewards are worn with medalsm it will bring you special set rewards.");
- next;
- mes("[Logistics]");
- mes("Finally, there are Mass-Production Armor and Accessory rewards.");
- mes("Players whose Lvl is higher than 60 can equip Mass-Production Armors and there is a Lvl limit for Popularized Armor as well.");
- close;
- case 5:
- mes("[Logistics]");
- mes("KVM Points are rewarded when you win, lose or draw in Kreiger Von Midgard (KVM).");
- mes("You can have special Rewards by using these points.");
- close;
- }
-
-PurchaseItem:
- // Pricing for Weapon, Suit1, Muffler1, Shoes1, Ring1m Suit2, Shoes2, Ring2, Suit3, Shoes3, Ring3
- setarray .@prices[0],2000,840,630,580,1200,120,70,200,15,10,30;
-
- mes("[Logistics]");
-
- if (!getarg(2))
- mesf("You have selected ^ff0000%s^000000.", getitemname(getarg(0)));
- else if (getarg(2) == 1)
- mesf("There is only one %s: %s.", callfunc("F_GetWeaponType",getarg(0)), getitemname(getarg(0)));
- else if (getarg(2) == 2) {
- mesf("You have selected '%s'.", callfunc("F_GetArmorType",getarg(0)));
- mesf("The armor for one whose Lvl is more than 80 is: ^ff0000%s^000000.", getitemname(getarg(0)));
- }
- else if (getarg(2) == 3) {
- mesf("You have selected 'Mass-Production %s'.", callfunc("F_GetArmorType",getarg(0)));
- mesf("There is only one Mass-Production %s: ^ff0000%s^000000.", callfunc("F_GetArmorType",getarg(0)), getitemname(getarg(0)));
- }
- else if (getarg(2) == 4) {
- mesf("You have selected 'Popularized %s'.", callfunc("F_GetArmorType",getarg(0)));
- mesf("There is only one Popularized %s: ^ff0000%s^000000.", callfunc("F_GetArmorType",getarg(0)), getitemname(getarg(0)));
- }
-
- if (!getarg(1))
- mesf("It requires ^0000ff2,000^000000 KVM Points, and %s, your points are: ^580080%d^000000.", .@name$, kvm_point);
- else if (getarg(1) == 4)
- mesf("It requires ^0000ff1,200^000000 KVM Points, and %s, your points are: ^580080%d^000000.", .@name$, kvm_point);
- else
- mesf("It requires ^0000ff%d^000000 KVM Points, and %s, your points are: ^580080%d^000000.", .@prices[getarg(1)], .@name$, kvm_point);
-
- mes("Are you sure you want this item?");
- next;
- switch(select("No, I won't purchase it.", "Yes, I will purchase it.")) {
- case 1:
- mes("[Logistics]");
- mes("You have selected 'I won't purchase it'.");
- mes("When purchasing an item, please be careful there are no refunds.");
- break;
- case 2:
- if (kvm_point >= .@prices[getarg(1)]) {
- kvm_point -= .@prices[getarg(1)];
- getitem getarg(0),1;
- mes("[Logistics]");
- mesf("You have purchased a %s.", getitemname(getarg(0)));
- if (!getarg(1))
- mesf("Your KVM Points are reduced by ^0000ff%d^000000 points, your KVM Points are now ^580080%d^000000.", getarg(1), kvm_point);
- if (getarg(1) == 4)
- mesf("Your KVM Points are reduced by ^0000ff1,200^000000 points, your KVM Points are now ^580080%d^000000.", kvm_point);
- else
- mesf("Your KVM Points are reduced by ^0000ff%d^000000 points, your KVM Points are now ^580080%d^000000.", .@prices[getarg(1)], kvm_point);
- }
- else {
- mes("[Logistics]");
- if (!getarg(1))
- mes("You need ^0000ff2,000^000000 KVM Points to purchase this item.");
- else if (getarg(1) == 4)
- mes("You need ^0000ff1,200^000000 KVM Points to purchase this item.");
- else
- mesf("You need ^0000ff%d^000000 KVM Points to purchase this item.", .@prices[getarg(1)]);
- mesf("However, your KVM Points are now ^580080%d^000000.", kvm_point);
- mes("Which are not enough to buy it.");
- mes("When you get enough points, please come back again.");
- }
- }
- close;
-}
diff --git a/npc/battleground/tierra/tierra01.txt b/npc/battleground/tierra/tierra01.txt
deleted file mode 100644
index 22a612c81..000000000
--- a/npc/battleground/tierra/tierra01.txt
+++ /dev/null
@@ -1,961 +0,0 @@
-//================= Hercules Script =======================================
-//= _ _ _
-//= | | | | | |
-//= | |_| | ___ _ __ ___ _ _| | ___ ___
-//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
-//= | | | | __/ | | (__| |_| | | __/\__ \
-//= \_| |_/\___|_| \___|\__,_|_|\___||___/
-//================= License ===============================================
-//= This file is part of Hercules.
-//= http://herc.ws - http://github.com/HerculesWS/Hercules
-//=
-//= Copyright (C) 2012-2016 Hercules Dev Team
-//= Copyright (C) Euphy
-//= Copyright (C) Kisuka
-//= Copyright (C) L0ne_W0lf
-//=
-//= Hercules is free software: you can redistribute it and/or modify
-//= it under the terms of the GNU General Public License as published by
-//= the Free Software Foundation, either version 3 of the License, or
-//= (at your option) any later version.
-//=
-//= This program is distributed in the hope that it will be useful,
-//= but WITHOUT ANY WARRANTY; without even the implied warranty of
-//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-//= GNU General Public License for more details.
-//=
-//= You should have received a copy of the GNU General Public License
-//= along with this program. If not, see <http://www.gnu.org/licenses/>.
-//=========================================================================
-// BattleGround System - Tierra Gorge
-//================= Description ===========================================
-//= Tierra Gorge Battleground.
-//= - Winning Team: 3 badges
-//= - Losing Team: 1 badge
-//================= Current Version =======================================
-//= 1.5
-//=========================================================================
-
-//== Waiting Room NPCs =====================================
-bat_room,57,227,5 script Lieutenant Kalos 4_M_KY_KNT,{
- end;
-
-OnInit:
- waitingroom("Battle Station", 11, "start#bat_a01::OnReadyCheck", 1, 0, 80);
- end;
-
-OnEnterBG:
- $@TierraBG1_id1 = waitingroom2bg("bat_a01",50,374,"start#bat_a01::OnGuillaumeQuit","");
- end;
-}
-
-bat_room,58,204,1 script Lieutenant Eyor 4_M_CRU_KNT,{
- end;
-
-OnInit:
- waitingroom("Battle Station", 11, "start#bat_a01::OnReadyCheck", 1, 0, 80);
- end;
-
-OnEnterBG:
- $@TierraBG1_id2 = waitingroom2bg("bat_a01",42,16,"start#bat_a01::OnCroixQuit","");
- end;
-}
-
-bat_room,1,151,3 script #bat_a01_timer CLEAR_NPC,{
- end;
-
-OnInit:
-OnEnable:
- initnpctimer;
- end;
-
-OnStop:
- stopnpctimer;
- end;
-
-OnTimer1000:
- stopnpctimer;
- initnpctimer;
- .@chk_bat_a01 = getmapusers("bat_a01");
- if (.@chk_bat_a01 < 1) {
- $@TierraBG1 = 0; $@TierraBG1_Victory = 0;
- if( $@TierraBG1_id1 ) { bg_destroy $@TierraBG1_id1; $@TierraBG1_id1 = 0; }
- if( $@TierraBG1_id2 ) { bg_destroy $@TierraBG1_id2; $@TierraBG1_id2 = 0; }
- donpcevent "start#bat_a01::OnReadyCheck";
- }
- end;
-}
-
-bat_a01,352,342,0 script #bat_a01_quest_a FAKE_NPC,5,5,{
- end;
-
-OnTouch:
- if (!questprogress(2069))
- setquest 2069;
- end;
-}
-
-bat_a01,353,52,0 script #bat_a01_quest_b FAKE_NPC,5,5,{
- end;
-
-OnTouch:
- if (!questprogress(2069))
- setquest 2069;
- end;
-}
-
-bat_room,57,220,0 warp back_bgrooma01a 1,1,bat_room,154,150
-bat_room,57,211,0 warp back_bgrooma01b 1,1,bat_room,154,150
-
-//== Tierra Gorge Battleground Engine ======================
-bat_a01,15,15,3 script start#bat_a01 CLEAR_NPC,{
-OnInit:
- mapwarp "bat_a01","bat_room",154,150;
- end;
-
-OnEnable:
- donpcevent "OBJ#bat_a01_a::OnKill";
- donpcevent "OBJ#bat_a01_a::OnEnable";
- donpcevent "OBJ#bat_a01_b::OnKill";
- donpcevent "OBJ#bat_a01_b::OnEnable";
- donpcevent "barricade#bat_a01_a::OnKill";
- donpcevent "barricade#bat_a01_a::OnEnable";
- donpcevent "barricade#bat_a01_b::OnKill";
- donpcevent "barricade#bat_a01_b::OnEnable";
- donpcevent "OBJ#bat_a01_n::OnKill";
- donpcevent "OBJ#bat_a01_n::OnEnable";
- donpcevent "NOBJ_mob#bat_a01_a::OnKill";
- donpcevent "NOBJ_mob#bat_a01_b::OnKill";
- donpcevent "Battle Therapist#a01_a::OnEnable";
- donpcevent "Battle Therapist#a01_b::OnEnable";
- donpcevent "countdown#bat_a01::OnEnable";
- disablenpc "Guillaume Blacksmith#a01";
- disablenpc "Croix Blacksmith#bat_a01";
- disablenpc "Guillaume Vintenar#a01_a";
- disablenpc "Croix Vintenar#a01_b";
- end;
-
-OnGuillaumeQuit:
-OnCroixQuit:
- bg_leave;
- end;
-
-OnReadyCheck:
- if( $@TierraBG1 )
- end;
- .@Guillaume = getwaitingroomstate(0,"Lieutenant Kalos");
- .@Croix = getwaitingroomstate(0,"Lieutenant Eyor");
- if( !.@Guillaume && !.@Croix ) {
- donpcevent "#bat_a01_timer::OnStop";
- end;
- }
- else if( .@Guillaume < 10 || .@Croix < 10 )
- end;
- $@TierraBG1 = 1;
- donpcevent "Lieutenant Kalos::OnEnterBG";
- donpcevent "Lieutenant Eyor::OnEnterBG";
- donpcevent "start#bat_a01::OnEnable";
- bg_warp $@TierraBG1_id1,"bat_a01",352,342;
- bg_warp $@TierraBG1_id2,"bat_a01",353,52;
- initnpctimer;
- end;
-
-OnTimer10000:
- stopnpctimer;
- donpcevent "#bat_a01_timer::OnEnable";
- end;
-}
-
-bat_a01,15,16,3 script OBJ#bat_a01_a CLEAR_NPC,{
-OnEnable:
- bg_monster($@TierraBG1_id1, "bat_a01", 177, 345, _("Food Storage"), 1909, "OBJ#bat_a01_a::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_a01","OBJ#bat_a01_a::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_a01","OBJ#bat_a01_a::OnMyMobDead") < 1) {
- donpcevent "Battle Therapist#a01_a::OnStop";
- donpcevent "Battle Therapist#a01_b::OnStop";
- $@TierraBG1_Victory = 2;
- enablenpc "Guillaume Vintenar#a01_a";
- enablenpc "Croix Vintenar#a01_b";
- mapannounce("bat_a01", _("Croix Vintenar Swandery: We destroyed Guillaume's Food Storage. We won that! Wow!"), bc_map, "0xFFCE00");
- bg_warp $@TierraBG1_id1,"bat_a01",50,374;
- bg_warp $@TierraBG1_id2,"bat_a01",42,16;
- }
- end;
-}
-
-bat_a01,15,17,3 script OBJ#bat_a01_b CLEAR_NPC,{
-OnEnable:
- bg_monster($@TierraBG1_id2, "bat_a01", 167, 50, _("Food Depot"), 1910, "OBJ#bat_a01_b::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_a01","OBJ#bat_a01_b::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_a01","OBJ#bat_a01_b::OnMyMobDead") < 1) {
- donpcevent "Battle Therapist#a01_a::OnStop";
- donpcevent "Battle Therapist#a01_b::OnStop";
- $@TierraBG1_Victory = 1;
- enablenpc "Guillaume Vintenar#a01_a";
- enablenpc "Croix Vintenar#a01_b";
- mapannounce("bat_a01", _("Guillaume Vintenar Axl Rose : We destroyed Croix's Food Storage. We won that! Wow!"), bc_map, "0xFFCE00");
- bg_warp $@TierraBG1_id1,"bat_a01",50,374;
- bg_warp $@TierraBG1_id2,"bat_a01",42,16;
- }
- end;
-}
-
-bat_a01,15,18,3 script barricade#bat_a01_a CLEAR_NPC,{
-OnEnable:
- for (.@i = 185; .@i < 202; ++.@i)
- bg_monster($@TierraBG1_id1, "bat_a01", .@i, 266, _("Barricade"), 1906, "barricade#bat_a01_a::OnMyMobDead");
- setwall "bat_a01",186,266,16,6,1,"bat_a01_c1";
- end;
-
-OnKill:
- killmonster "bat_a01","barricade#bat_a01_a::OnMyMobDead";
- delwall "bat_a01_c1";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_a01","barricade#bat_a01_a::OnMyMobDead") < 17) {
- killmonster "bat_a01","barricade#bat_a01_a::OnMyMobDead";
- delwall "bat_a01_c1";
- enablenpc "Guillaume Blacksmith#a01";
- mapannounce("bat_a01", _("Guillaume Vintenar Axl Rose : The Barricade in the valley has been destroyed! Where's the Blacksmith? We need to rebuild the Barricade!"), bc_map, "0xFFCE00");
- }
- end;
-}
-
-bat_a01,15,19,3 script barricade#bat_a01_b CLEAR_NPC,{
-OnEnable:
- for (.@i = 169; .@i < 186; ++.@i)
- bg_monster($@TierraBG1_id2, "bat_a01", .@i, 129, _("Barricade"), 1906, "barricade#bat_a01_b::OnMyMobDead");
- setwall "bat_a01",170,129,16,6,1,"bat_a01_g1";
- end;
-
-OnKill:
- killmonster "bat_a01","barricade#bat_a01_b::OnMyMobDead";
- delwall "bat_a01_g1";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_a01","barricade#bat_a01_b::OnMyMobDead") < 17) {
- killmonster "bat_a01","barricade#bat_a01_b::OnMyMobDead";
- delwall "bat_a01_g1";
- enablenpc "Croix Blacksmith#bat_a01";
- mapannounce("bat_a01", _("Croix Vintenar Swandery : The Barricade in the valley has been destroyed! Where's the Blacksmith? We need to rebuild the Barricade!"), bc_map, "0xFFCE00");
- }
- end;
-}
-
-bat_a01,15,20,3 script OBJ#bat_a01_n CLEAR_NPC,{
-OnEnable:
- monster("bat_a01", 273, 203, _("Neutrality Flag"), 1911, 1, "OBJ#bat_a01_n::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_a01","OBJ#bat_a01_n::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_a01","OBJ#bat_a01_n::OnMyMobDead") < 17) {
- bg_team_setxy getcharid(CHAR_ID_BG),56,212;
- if (getcharid(CHAR_ID_BG) == $@TierraBG1_id1) {
- donpcevent "NOBJ_mob#bat_a01_a::OnEnable";
- mapannounce("bat_a01", _("Guillaume captured a Neutrality Flag, so they have an advantage."), bc_map, "0xFFCE00");
- }
- else {
- donpcevent "NOBJ_mob#bat_a01_b::OnEnable";
- mapannounce("bat_a01", _("Croix captured a Neutrality Flag, so they have an advantage."), bc_map, "0xFFCE00");
- }
- }
- end;
-}
-
-bat_a01,15,21,3 script NOBJ_mob#bat_a01_a CLEAR_NPC,{
-OnEnable:
- donpcevent "NOBJ_mob#bat_a01_b::OnKill";
- bg_monster($@TierraBG1_id1, "bat_a01", 272, 204, _("Guillaume Camp Guardian"), 1949, "NOBJ_mob#bat_a01_a::OnMyMobDead");
- bg_monster($@TierraBG1_id1, "bat_a01", 272, 213, _("Guillaume Camp Guardian"), 1949, "NOBJ_mob#bat_a01_a::OnMyMobDead");
- bg_monster($@TierraBG1_id1, "bat_a01", 273, 197, _("Guillaume Camp Guardian"), 1950, "NOBJ_mob#bat_a01_a::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_a01","NOBJ_mob#bat_a01_a::OnMyMobDead";
- end;
-
-OnMyMobDead:
- end;
-}
-
-bat_a01,15,22,3 script NOBJ_mob#bat_a01_b CLEAR_NPC,{
-OnEnable:
- donpcevent "NOBJ_mob#bat_a01_a::OnKill";
- bg_monster($@TierraBG1_id2, "bat_a01", 272, 204, _("Croix Camp Guardian"), 1949, "NOBJ_mob#bat_a01_a::OnMyMobDead");
- bg_monster($@TierraBG1_id2, "bat_a01", 272, 213, _("Croix Camp Guardian"), 1949, "NOBJ_mob#bat_a01_a::OnMyMobDead");
- bg_monster($@TierraBG1_id2, "bat_a01", 273, 197, _("Croix Camp Guardian"), 1950, "NOBJ_mob#bat_a01_a::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_a01","NOBJ_mob#bat_a01_b::OnMyMobDead";
- end;
-
-OnMyMobDead:
- end;
-}
-
-bat_a01,185,270,1 script Guillaume Blacksmith#a01 4_M_REPAIR,{
- if (getcharid(CHAR_ID_BG) == $@TierraBG1_id1) {
- mes("[Guillaume Blacksmith]");
- mes("We are in urgency! The Barricade has been destroyed!");
- mes("We can repair the Barricade with ^3131FF50 Stones, 3 Sinew of Bear, 500 Metal Fragments, 30 Rough Elunium and 100 Gold.^000000");
- mes("We have it all except for the 50 Stones!");
- next;
- switch(select("Repair.", "Leave it.")) {
- case 1:
- if (countitem(Stone) > 49) {
- mes("[Guillaume Blacksmith]");
- mes("You brought enough stones! Let's go and repair.");
- next;
- mes("..");
- next;
- mes("....");
- next;
- mes("......");
- next;
- mes("........");
- next;
- mes("..........");
- next;
- mes("............");
- next;
- mes("..............");
- next;
- mes("[Guillaume Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage.");
- next;
- mes("[Guillaume Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade.");
- next;
- mes("[Guillaume Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger.");
- next;
- mes("[Guillaume Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Now decorate with Metal Fragments.");
- next;
- mes("[Guillaume Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Decorate with Metal Fragments, and plait stones with Sinew of Bear!");
- next;
- mes("..............");
- mes("..............");
- mes("..............");
- mes("..............");
- mes("..............");
- next;
- specialeffect EF_REPAIRWEAPON;
- mes("[Guillaume Blacksmith]");
- mes("Wow! It's done.");
- mes("We are relieved.");
- delitem Stone,50;
- donpcevent "barricade#bat_a01_a::OnEnable";
- close2;
- disablenpc "Guillaume Blacksmith#a01";
- end;
- }
- else {
- mes("[Guillaume Blacksmith]");
- mes("You don't have enough Stones!");
- next;
- mes("[Guillaume Blacksmith]");
- mes("^3131FFWe need 50 Stones.^000000");
- mes("We are busy, so please hurry.");
- close;
- }
- case 2:
- mes("[Guillaume Blacksmith]");
- mes("There are enemies coming! Let's evacuate from here!");
- close;
- }
- }
- else {
- mes("[Guillaume Blacksmith]");
- mes("There the enemy is coming!");
- close;
- }
-
-OnInit:
- disablenpc "Guillaume Blacksmith#a01";
- end;
-}
-
-bat_a01,170,121,5 script Croix Blacksmith#bat_a01 4_M_REPAIR,{
- if (getcharid(CHAR_ID_BG) == $@TierraBG1_id2) {
- mes("[Croix Blacksmith]");
- mes("We are in urgency! The Barricade has been destroyed!");
- mes("We can repair the Barricade with ^3131FF50 Stones, 3 Sinew of Bear, 500 Metal Fragments, 30 Rough Elunium and 100 Gold.^000000");
- mes("We have it all except for the 50 Stones!");
- next;
- switch(select("Repair.", "Leave it.")) {
- case 1:
- if (countitem(Stone) > 49) {
- mes("[Croix Blacksmith]");
- mes("You brought enough stones! Let's go and repair.");
- next;
- mes("..");
- next;
- mes("....");
- next;
- mes("......");
- next;
- mes("........");
- next;
- mes("..........");
- next;
- mes("............");
- next;
- mes("..............");
- next;
- mes("[Croix Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage.");
- next;
- mes("[Croix Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade.");
- next;
- mes("[Croix Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger.");
- next;
- mes("[Croix Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Now decorate with Metal Fragments.");
- next;
- mes("[Croix Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Decorate with Metal Fragments, and plait stones with Sinew of Bear!");
- next;
- mes("..............");
- mes("..............");
- mes("..............");
- mes("..............");
- mes("..............");
- next;
- specialeffect EF_REPAIRWEAPON;
- mes("[Croix Blacksmith]");
- mes("Wow! It's done.");
- mes("We are relieved.");
- delitem Stone,50;
- donpcevent "barricade#bat_a01_b::OnEnable";
- close2;
- disablenpc "Croix Blacksmith#bat_a01";
- end;
- }
- else {
- mes("[Croix Blacksmith]");
- mes("You don't have enough Stones!");
- next;
- mes("[Croix Blacksmith]");
- mes("^3131FFWe need 50 Stone.^000000");
- mes("We are busy, so please hurry.");
- close;
- }
- case 2:
- mes("[Croix Blacksmith]");
- mes("There are enemies coming! Let's evacuate from here!");
- close;
- }
- }
- else {
- mes("[Croix Blacksmith]");
- mes("There, the enemy is coming!");
- close;
- }
-
-OnInit:
- disablenpc "Croix Blacksmith#bat_a01";
- end;
-}
-
-bat_a01,53,377,3 script Battle Therapist#a01_a 4_F_SISTER,{
- specialeffect2 EF_HEAL;
- mes("[Battle Therapist]");
- mes("Just close your eyes,\r"
- "and take a deep breath.");
- mes("You can be free from pain.");
- close;
- end;
-
-OnInit:
- initnpctimer;
- end;
-
-OnEnable:
- stopnpctimer;
- initnpctimer;
- enablenpc "Battle Therapist#a01_a";
- end;
-
-OnStop:
- disablenpc "bat_a01_rp1_a_warp";
- disablenpc "Battle Therapist#a01_a";
- stopnpctimer;
- end;
-
-OnTimer25000:
- specialeffect EF_SANCTUARY;
- enablenpc "bat_a01_rp1_a_warp";
- end;
-
-OnTimer26000:
- disablenpc "bat_a01_rp1_a_warp";
- end;
-
-OnTimer26500:
- donpcevent "Battle Therapist#a01_a::OnEnable";
- end;
-}
-
-bat_a01,51,375,0 script bat_a01_rp1_a_warp FAKE_NPC,10,10,{
-OnInit:
- disablenpc "bat_a01_rp1_a_warp";
- end;
-
-OnTouch_:
- percentheal 100,100;
- warp "bat_a01",352,342;
- end;
-}
-
-bat_a01,45,19,3 script Battle Therapist#a01_b 4_F_SISTER,{
- specialeffect2 EF_HEAL;
- mes("[Battle Therapist]");
- mes("Just close your eyes,\r"
- "and take a deep breath.");
- mes("You can be free from pain.");
- close;
- end;
-
-OnInit:
- initnpctimer;
- end;
-
-OnEnable:
- stopnpctimer;
- initnpctimer;
- enablenpc "Battle Therapist#a01_b";
- end;
-
-OnStop:
- disablenpc "bat_a01_rp1_b_warp";
- disablenpc "Battle Therapist#a01_b";
- stopnpctimer;
- end;
-
-OnTimer25000:
- specialeffect EF_SANCTUARY;
- enablenpc "bat_a01_rp1_b_warp";
- end;
-
-OnTimer26000:
- disablenpc "bat_a01_rp1_b_warp";
- end;
-
-OnTimer26500:
- donpcevent "Battle Therapist#a01_b::OnEnable";
- end;
-}
-
-bat_a01,43,17,0 script bat_a01_rp1_b_warp FAKE_NPC,10,10,{
-OnInit:
- disablenpc "bat_a01_rp1_b_warp";
- end;
-
-OnTouch:
- percentheal 100,100;
- warp "bat_a01",353,52;
- end;
-}
-
-bat_a01,60,216,3 script Valley Ghost#bat_a01_n 4_GHOSTRING,{
- specialeffect2 EF_HEAL;
- mes("[Valley Ghost]");
- mes("Boo...Boo...");
- close;
-
-OnInit:
- initnpctimer;
- end;
-
-OnEnable:
- stopnpctimer;
- initnpctimer;
- end;
-
-OnTimer25000:
- specialeffect EF_SANCTUARY;
- enablenpc "bat_a01_rp1_n_warp";
- end;
-
-OnTimer26000:
- disablenpc "bat_a01_rp1_n_warp";
- end;
-
-OnTimer26500:
- donpcevent "Valley Ghost#bat_a01_n::OnEnable";
- end;
-}
-
-bat_a01,55,213,0 script bat_a01_rp1_n_warp FAKE_NPC,10,10,{
-OnInit:
- disablenpc "bat_a01_rp1_n_warp";
- end;
-
-OnTouch:
- percentheal 100,100;
- warp "bat_a01",301,209;
- end;
-}
-
-bat_a01,194,267,0 script barri_warp_up#bat_a01_a FAKE_NPC,7,0,{
-OnTouch:
- if (getcharid(CHAR_ID_BG) == $@TierraBG1_id1)
- warp "bat_a01",194,261;
- end;
-}
-
-bat_a01,194,265,0 script barri_warp_down#bat_a01a FAKE_NPC,7,0,{
-OnTouch:
- if (getcharid(CHAR_ID_BG) == $@TierraBG1_id1)
- warp "bat_a01",194,270;
- end;
-}
-
-bat_a01,177,130,0 script barri_warp_up#bat_a01_b FAKE_NPC,7,0,{
-OnTouch:
- if (getcharid(CHAR_ID_BG) == $@TierraBG1_id2)
- warp "bat_a01",178,125;
- end;
-}
-
-bat_a01,177,128,0 script barri_warp_down#bat_a01b FAKE_NPC,7,0,{
-OnTouch:
- if (getcharid(CHAR_ID_BG) == $@TierraBG1_id2)
- warp "bat_a01",178,134;
- end;
-}
-
-bat_a01,352,342,0 script A_CODE#bat_a01 FAKE_NPC,5,5,{
-OnTouch:
- if (questprogress(2069) == 1)
- setquest 2069;
- end;
-}
-
-bat_a01,353,52,0 script B_CODE#bat_a01 FAKE_NPC,5,5,{
-OnTouch:
- if (questprogress(2069) == 1)
- setquest 2069;
- end;
-}
-
-bat_a01,169,227,0 script underladd#bat_a01_1 WARPNPC,1,1,{
-OnTouch_:
- warp "bat_a01",178,228;
- end;
-}
-
-bat_a01,208,164,0 script underladd#bat_a01_2 WARPNPC,1,1,{
-OnTouch_:
- warp "bat_a01",200,171;
- end;
-}
-
-bat_a01,171,309,3 script Guillaume Camp#flag1 1_FLAG_LION,{ end; }
-bat_a01,149,310,3 script Guillaume Camp#flag2 1_FLAG_LION,{ end; }
-bat_a01,119,336,3 script Guillaume Camp#flag3 1_FLAG_LION,{ end; }
-bat_a01,118,357,3 script Guillaume Camp#flag4 1_FLAG_LION,{ end; }
-bat_a01,150,380,3 script Guillaume Camp#flag5 1_FLAG_LION,{ end; }
-bat_a01,173,380,3 script Guillaume Camp#flag6 1_FLAG_LION,{ end; }
-bat_a01,210,344,3 script Guillaume Camp#flag7 1_FLAG_LION,{ end; }
-bat_a01,350,325,3 script Guillaume Camp#flag8 1_FLAG_LION,{ end; }
-bat_a01,358,325,3 script Guillaume Camp#flag9 1_FLAG_LION,{ end; }
-
-bat_a01,138,12,3 script Croix Camp#flag1 1_FLAG_EAGLE,{ end; }
-bat_a01,108,36,3 script Croix Camp#flag2 1_FLAG_EAGLE,{ end; }
-bat_a01,108,63,3 script Croix Camp#flag3 1_FLAG_EAGLE,{ end; }
-bat_a01,136,87,3 script Croix Camp#flag4 1_FLAG_EAGLE,{ end; }
-bat_a01,167,86,3 script Croix Camp#flag5 1_FLAG_EAGLE,{ end; }
-bat_a01,199,49,3 script Croix Camp#flag6 1_FLAG_EAGLE,{ end; }
-bat_a01,168,16,3 script Croix Camp#flag7 1_FLAG_EAGLE,{ end; }
-bat_a01,357,74,3 script Croix Camp#flag8 1_FLAG_EAGLE,{ end; }
-bat_a01,348,74,3 script Croix Camp#flag9 1_FLAG_EAGLE,{ end; }
-
-bat_a01,53,377,3 script Guillaume Vintenar#a01_a 4_M_KY_HEAD,{
- if (getcharid(CHAR_ID_BG) == $@TierraBG1_id1) {
- if ($@TierraBG1_Victory == 1) {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,3;
- }
- else {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 0) {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, and next time you will definitely win.");
- close2;
- getitem BF_Badge1,1;
- }
- else {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, and next time you will definitely win.");
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- }
- else {
- if ($@TierraBG1_Victory == 2) {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 0) {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, and next time you will definitely win.");
- close2;
- getitem BF_Badge1,1;
- }
- else {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, and next time you will definitely win.");
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,3;
- }
- else {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign of victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- }
- bg_leave;
- warp "bat_room",154,150;
- end;
-
-OnInit:
- disablenpc "Guillaume Vintenar#a01_a";
- end;
-}
-
-bat_a01,45,19,3 script Croix Vintenar#a01_b 4_M_CRU_HEAD,{
- if (getcharid(CHAR_ID_BG) == $@TierraBG1_id2) {
- if ($@TierraBG1_Victory == 2) {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,3;
- }
- else {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 0) {
- mes("[Swandery]");
- mesf("Oh, %s Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge1,1;
- }
- else {
- mes("[Swandery]");
- mesf("Oh, %s Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- }
- else {
- if ($@TierraBG1_Victory == 1) {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 0) {
- mes("[Swandery]");
- mesf("Oh, %s Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge1,1;
- }
- else {
- mes("[Swandery]");
- mesf("Oh, %s Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,3;
- }
- else {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- }
- bg_leave;
- warp "bat_room",154,150;
- end;
-
-OnInit:
- disablenpc "Croix Vintenar#a01_b";
- end;
-}
-
-bat_a01,1,5,3 script countdown#bat_a01 CLEAR_NPC,{
-OnEnable:
- initnpctimer;
- end;
-
-OnStop:
- stopnpctimer;
- end;
-
-OnTimer7000:
- mapannounce("bat_a01", _("Guillaume Vintenar Axl Rose : Let's attack to burn down Croix's Food Depot!"), bc_map, "0xFF9900");
- end;
-
-OnTimer8000:
- mapannounce("bat_a01", _("Croix Vintenar Swandery : Master of Valhalla! Let us be gifted with unfailing faith and courage!"), bc_map, "0xFF99CC");
- end;
-
-OnTimer1800000:
- mapannounce("bat_a01", _("Marollo VII : Guillaume Marollo, Croix Marollo! Marollo followers!"), bc_map, "0x99CC00");
- end;
-
-OnTimer1803000:
- mapannounce("bat_a01", _("Marollo VII : Both camps are competitive, so no camp would be destroyed easily. That means the Marollo kingdoms will never be defeated!"), bc_map, "0x99CC00");
- end;
-
-OnTimer1808000:
- mapannounce("bat_a01", _("Marollo VII : I think we'd better terminate the battle, and call it a draw."), bc_map, "0x99CC00");
- end;
-
-OnTimer1822000:
- mapannounce("bat_a01", _("Marollo VII : Hold your royalty and faith for a moment, and let's settle up the battle of Tierra Gorge."), bc_map, "0x99CC00");
- end;
-
-OnTimer1825000:
- mapannounce("bat_a01", _("Axl Rose, Swandery : Yes sir."), bc_map, "0x99CC00");
- end;
-
-OnTimer1830000:
- mapwarp "bat_a01","bat_room",154,150;
- donpcevent "countdown#bat_a01::OnStop";
- end;
-}
-
-/*
-bat_a01,351,75,3 script Croix Camp Soldier#bat_a01_guide 4_M_RASWORD,{
- mes("Loading...");
- close;
-}
-
-bat_a01,356,326,3 script Guillaume Camp Soldier#bat_a01_guide 4_M_RASWORD,{
- mes("Loading...");
- close;
-}
-*/
-
-bat_a01,1,1,3 script Release all#a01 4_DOG01,{
- .@i = callfunc("F_GM_NPC",1854,0);
- if (.@i == -1) {
- mes("Cancelled.");
- close;
- } else if (.@i == 0) {
- end;
- } else {
- mes("May I help you?");
- next;
- switch(select("Release all.", "Cancel.")) {
- case 1:
- mes("Bye.");
- close2;
- mapwarp "bat_a01","bat_room",154,150;
- end;
- case 2:
- mes("Cancelled.");
- close;
- }
- }
-}
diff --git a/npc/battleground/tierra/tierra02.txt b/npc/battleground/tierra/tierra02.txt
deleted file mode 100644
index a54935089..000000000
--- a/npc/battleground/tierra/tierra02.txt
+++ /dev/null
@@ -1,961 +0,0 @@
-//================= Hercules Script =======================================
-//= _ _ _
-//= | | | | | |
-//= | |_| | ___ _ __ ___ _ _| | ___ ___
-//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
-//= | | | | __/ | | (__| |_| | | __/\__ \
-//= \_| |_/\___|_| \___|\__,_|_|\___||___/
-//================= License ===============================================
-//= This file is part of Hercules.
-//= http://herc.ws - http://github.com/HerculesWS/Hercules
-//=
-//= Copyright (C) 2012-2016 Hercules Dev Team
-//= Copyright (C) Euphy
-//= Copyright (C) Kisuka
-//= Copyright (C) L0ne_W0lf
-//=
-//= Hercules is free software: you can redistribute it and/or modify
-//= it under the terms of the GNU General Public License as published by
-//= the Free Software Foundation, either version 3 of the License, or
-//= (at your option) any later version.
-//=
-//= This program is distributed in the hope that it will be useful,
-//= but WITHOUT ANY WARRANTY; without even the implied warranty of
-//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-//= GNU General Public License for more details.
-//=
-//= You should have received a copy of the GNU General Public License
-//= along with this program. If not, see <http://www.gnu.org/licenses/>.
-//=========================================================================
-// BattleGround System - Tierra Gorge 2
-//================= Description ===========================================
-//= Second Tierra Gorge Battleground.
-//= - Winning Team: 3 badges
-//= - Losing Team: 1 badge
-//================= Current Version =======================================
-//= 1.4
-//=========================================================================
-
-//== Waiting Room NPCs =====================================
-bat_room,114,227,5 script Lieutenant Rundel 4_M_KY_KNT,{
- end;
-
-OnInit:
- waitingroom("Battle Station", 11, "start#bat_a02::OnReadyCheck", 1, 0, 80);
- end;
-
-OnEnterBG:
- $@TierraBG2_id1 = waitingroom2bg("bat_a02",50,374,"start#bat_a02::OnGuillaumeQuit","");
- end;
-}
-
-bat_room,114,204,1 script Lieutenant Guerrit 4_M_CRU_KNT,{
- end;
-
-OnInit:
- waitingroom("Battle Station", 11, "start#bat_a02::OnReadyCheck", 1, 0, 80);
- end;
-
-OnEnterBG:
- $@TierraBG2_id2 = waitingroom2bg("bat_a02",42,16,"start#bat_a02::OnCroixQuit","");
- end;
-}
-
-bat_room,1,151,3 script #bat_a02_timer CLEAR_NPC,{
- end;
-
-OnInit:
-OnEnable:
- initnpctimer;
- end;
-
-OnStop:
- stopnpctimer;
- end;
-
-OnTimer1000:
- stopnpctimer;
- initnpctimer;
- .@chk_bat_a02 = getmapusers("bat_a02");
- if (.@chk_bat_a02 < 1) {
- $@TierraBG2 = 0; $@TierraBG2_Victory = 0;
- if( $@TierraBG2_id1 ) { bg_destroy $@TierraBG2_id1; $@TierraBG2_id1 = 0; }
- if( $@TierraBG2_id2 ) { bg_destroy $@TierraBG2_id2; $@TierraBG2_id2 = 0; }
- donpcevent "start#bat_a02::OnReadyCheck";
- }
- end;
-}
-
-bat_a02,352,342,0 script #bat_a02_quest_a FAKE_NPC,5,5,{
- end;
-
-OnTouch:
- if (!questprogress(2069))
- setquest 2069;
- end;
-}
-
-bat_a02,353,52,0 script #bat_a02_quest_b FAKE_NPC,5,5,{
- end;
-
-OnTouch:
- if (!questprogress(2069))
- setquest 2069;
- end;
-}
-
-bat_room,113,220,0 warp back_bgrooma02a 1,1,bat_room,154,150
-bat_room,113,211,0 warp back_bgrooma02b 1,1,bat_room,154,150
-
-//== Tierra Gorge Battleground Engine ======================
-bat_a02,15,15,3 script start#bat_a02 CLEAR_NPC,{
-OnInit:
- mapwarp "bat_a02","bat_room",154,150;
- end;
-
-OnEnable:
- donpcevent "OBJ#bat_a02_a::OnKill";
- donpcevent "OBJ#bat_a02_a::OnEnable";
- donpcevent "OBJ#bat_a02_b::OnKill";
- donpcevent "OBJ#bat_a02_b::OnEnable";
- donpcevent "barricade#bat_a02_a::OnKill";
- donpcevent "barricade#bat_a02_a::OnEnable";
- donpcevent "barricade#bat_a02_b::OnKill";
- donpcevent "barricade#bat_a02_b::OnEnable";
- donpcevent "OBJ#bat_a02_n::OnKill";
- donpcevent "OBJ#bat_a02_n::OnEnable";
- donpcevent "NOBJ_mob#bat_a02_a::OnKill";
- donpcevent "NOBJ_mob#bat_a02_b::OnKill";
- donpcevent "Battle Therapist#a02_a::OnEnable";
- donpcevent "Battle Therapist#a02_b::OnEnable";
- donpcevent "countdown#bat_a02::OnEnable";
- disablenpc "Guillaume Blacksmith#a02";
- disablenpc "Croix Blacksmith#bat_a02";
- disablenpc "Guillaume Vintenar#a02_a";
- disablenpc "Croix Vintenar#a02_b";
- end;
-
-OnGuillaumeQuit:
-OnCroixQuit:
- bg_leave;
- end;
-
-OnReadyCheck:
- if( $@TierraBG2 )
- end;
- .@Guillaume = getwaitingroomstate(0,"Lieutenant Rundel");
- .@Croix = getwaitingroomstate(0,"Lieutenant Guerrit");
- if( !.@Guillaume && !.@Croix ) {
- donpcevent "#bat_a02_timer::OnStop";
- end;
- }
- else if( .@Guillaume < 10 || .@Croix < 10 )
- end;
- $@TierraBG2 = 1;
- donpcevent "Lieutenant Rundel::OnEnterBG";
- donpcevent "Lieutenant Guerrit::OnEnterBG";
- donpcevent "start#bat_a02::OnEnable";
- bg_warp $@TierraBG2_id1,"bat_a02",352,342;
- bg_warp $@TierraBG2_id2,"bat_a02",353,52;
- initnpctimer;
- end;
-
-OnTimer10000:
- stopnpctimer;
- donpcevent "#bat_a02_timer::OnEnable";
- end;
-}
-
-bat_a02,15,16,3 script OBJ#bat_a02_a CLEAR_NPC,{
-OnEnable:
- bg_monster($@TierraBG2_id1, "bat_a02", 177, 345, _("Food Storage"), 1909, "OBJ#bat_a02_a::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_a02","OBJ#bat_a02_a::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_a02","OBJ#bat_a02_a::OnMyMobDead") < 1) {
- donpcevent "Battle Therapist#a02_a::OnStop";
- donpcevent "Battle Therapist#a02_b::OnStop";
- $@TierraBG2_Victory = 2;
- enablenpc "Guillaume Vintenar#a02_a";
- enablenpc "Croix Vintenar#a02_b";
- mapannounce("bat_a02", _("Croix Vintenar Swandery: We destroyed Guillaume's Food Storage. We won that! Wow!"), bc_map, "0xFFCE00");
- bg_warp $@TierraBG2_id1,"bat_a02",50,374;
- bg_warp $@TierraBG2_id2,"bat_a02",42,16;
- }
- end;
-}
-
-bat_a02,15,17,3 script OBJ#bat_a02_b CLEAR_NPC,{
-OnEnable:
- bg_monster($@TierraBG2_id2, "bat_a02", 167, 50, _("Food Depot"), 1910, "OBJ#bat_a02_b::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_a02","OBJ#bat_a02_b::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_a02","OBJ#bat_a02_b::OnMyMobDead") < 1) {
- donpcevent "Battle Therapist#a02_a::OnStop";
- donpcevent "Battle Therapist#a02_b::OnStop";
- $@TierraBG2_Victory = 1;
- enablenpc "Guillaume Vintenar#a02_a";
- enablenpc "Croix Vintenar#a02_b";
- mapannounce("bat_a02", _("Guillaume Vintenar Axl Rose : We destroyed Croix's Food Storage. We won that! Wow!"), bc_map, "0xFFCE00");
- bg_warp $@TierraBG2_id1,"bat_a02",50,374;
- bg_warp $@TierraBG2_id2,"bat_a02",42,16;
- }
- end;
-}
-
-bat_a02,15,18,3 script barricade#bat_a02_a CLEAR_NPC,{
-OnEnable:
- for (.@i = 185; .@i < 202; ++.@i)
- bg_monster($@TierraBG2_id1, "bat_a02", .@i, 266, _("Barricade"), 1906, "barricade#bat_a02_a::OnMyMobDead");
- setwall "bat_a02",186,266,16,6,1,"bat_a02_c1";
- end;
-
-OnKill:
- killmonster "bat_a02","barricade#bat_a02_a::OnMyMobDead";
- delwall "bat_a02_c1";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_a02","barricade#bat_a02_a::OnMyMobDead") < 17) {
- killmonster "bat_a02","barricade#bat_a02_a::OnMyMobDead";
- delwall "bat_a02_c1";
- enablenpc "Guillaume Blacksmith#a02";
- mapannounce("bat_a02", _("Guillaume Vintenar Axl Rose : The Barricade in the valley has been destroyed! Where's the Blacksmith? We need to rebuild the Barricade!"), bc_map, "0xFFCE00");
- }
- end;
-}
-
-bat_a02,15,19,3 script barricade#bat_a02_b CLEAR_NPC,{
-OnEnable:
- for (.@i = 169; .@i < 186; ++.@i)
- bg_monster($@TierraBG2_id2, "bat_a02", .@i, 129, _("Barricade"), 1906, "barricade#bat_a02_b::OnMyMobDead");
- setwall "bat_a02",170,129,16,6,1,"bat_a02_g1";
- end;
-
-OnKill:
- killmonster "bat_a02","barricade#bat_a02_b::OnMyMobDead";
- delwall "bat_a02_g1";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_a02","barricade#bat_a02_b::OnMyMobDead") < 17) {
- killmonster "bat_a02","barricade#bat_a02_b::OnMyMobDead";
- delwall "bat_a02_g1";
- enablenpc "Croix Blacksmith#bat_a02";
- mapannounce("bat_a02", _("Croix Vintenar Swandery : The Barricade in the valley has been destroyed! Where's the Blacksmith? We need to rebuild the Barricade!"), bc_map, "0xFFCE00");
- }
- end;
-}
-
-bat_a02,15,20,3 script OBJ#bat_a02_n CLEAR_NPC,{
-OnEnable:
- monster("bat_a02", 273, 203, _("Neutrality Flag"), 1911, 1, "OBJ#bat_a02_n::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_a02","OBJ#bat_a02_n::OnMyMobDead";
- end;
-
-OnMyMobDead:
- if (mobcount("bat_a02","OBJ#bat_a02_n::OnMyMobDead") < 17) {
- bg_team_setxy getcharid(CHAR_ID_BG),56,212;
- if (getcharid(CHAR_ID_BG) == $@TierraBG2_id1) {
- donpcevent "NOBJ_mob#bat_a02_a::OnEnable";
- mapannounce("bat_a02", _("Guillaume captured a Neutrality Flag, so they have an advantage."), bc_map, "0xFFCE00");
- }
- else {
- donpcevent "NOBJ_mob#bat_a02_b::OnEnable";
- mapannounce("bat_a02", _("Croix captured a Neutrality Flag, so they have an advantage."), bc_map, "0xFFCE00");
- }
- }
- end;
-}
-
-bat_a02,15,21,3 script NOBJ_mob#bat_a02_a CLEAR_NPC,{
-OnEnable:
- donpcevent "NOBJ_mob#bat_a02_b::OnKill";
- bg_monster($@TierraBG2_id1, "bat_a02", 272, 204, _("Guillaume Camp Guardian"), 1949, "NOBJ_mob#bat_a02_a::OnMyMobDead");
- bg_monster($@TierraBG2_id1, "bat_a02", 272, 213, _("Guillaume Camp Guardian"), 1949, "NOBJ_mob#bat_a02_a::OnMyMobDead");
- bg_monster($@TierraBG2_id1, "bat_a02", 273, 197, _("Guillaume Camp Guardian"), 1950, "NOBJ_mob#bat_a02_a::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_a02","NOBJ_mob#bat_a02_a::OnMyMobDead";
- end;
-
-OnMyMobDead:
- end;
-}
-
-bat_a02,15,22,3 script NOBJ_mob#bat_a02_b CLEAR_NPC,{
-OnEnable:
- donpcevent "NOBJ_mob#bat_a02_a::OnKill";
- bg_monster($@TierraBG2_id2, "bat_a02", 272, 204, _("Croix Camp Guardian"), 1949, "NOBJ_mob#bat_a02_a::OnMyMobDead");
- bg_monster($@TierraBG2_id2, "bat_a02", 272, 213, _("Croix Camp Guardian"), 1949, "NOBJ_mob#bat_a02_a::OnMyMobDead");
- bg_monster($@TierraBG2_id2, "bat_a02", 273, 197, _("Croix Camp Guardian"), 1950, "NOBJ_mob#bat_a02_a::OnMyMobDead");
- end;
-
-OnKill:
- killmonster "bat_a02","NOBJ_mob#bat_a02_b::OnMyMobDead";
- end;
-
-OnMyMobDead:
- end;
-}
-
-bat_a02,185,270,1 script Guillaume Blacksmith#a02 4_M_REPAIR,{
- if (getcharid(CHAR_ID_BG) == $@TierraBG2_id1) {
- mes("[Guillaume Blacksmith]");
- mes("We are in urgency! The Barricade has been destroyed!");
- mes("We can repair the Barricade with ^3131FF50 Stones, 3 Sinew of Bear, 500 Metal Fragments, 30 Rough Elunium and 100 Gold.^000000");
- mes("We have it all except for the 50 Stones!");
- next;
- switch(select("Repair.", "Leave it.")) {
- case 1:
- if (countitem(Stone) > 49) {
- mes("[Guillaume Blacksmith]");
- mes("You brought enough stones! Let's go and repair.");
- next;
- mes("..");
- next;
- mes("....");
- next;
- mes("......");
- next;
- mes("........");
- next;
- mes("..........");
- next;
- mes("............");
- next;
- mes("..............");
- next;
- mes("[Guillaume Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage.");
- next;
- mes("[Guillaume Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade.");
- next;
- mes("[Guillaume Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger.");
- next;
- mes("[Guillaume Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Now decorate with Metal Fragments.");
- next;
- mes("[Guillaume Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Decorate with Metal Fragments, and plait stones with Sinew of Bear!");
- next;
- mes("..............");
- mes("..............");
- mes("..............");
- mes("..............");
- mes("..............");
- next;
- specialeffect EF_REPAIRWEAPON;
- mes("[Guillaume Blacksmith]");
- mes("Wow! It's done.");
- mes("We are relieved.");
- delitem Stone,50;
- donpcevent "barricade#bat_a02_a::OnEnable";
- close2;
- disablenpc "Guillaume Blacksmith#a02";
- end;
- }
- else {
- mes("[Guillaume Blacksmith]");
- mes("You don't have enough Stones!");
- next;
- mes("[Guillaume Blacksmith]");
- mes("^3131FFWe need 50 Stones.^000000");
- mes("We are busy, so please hurry.");
- close;
- }
- case 2:
- mes("[Guillaume Blacksmith]");
- mes("There are enemies coming! Let's evacuate from here!");
- close;
- }
- }
- else {
- mes("[Guillaume Blacksmith]");
- mes("There the enemy is coming!");
- close;
- }
-
-OnInit:
- disablenpc "Guillaume Blacksmith#a02";
- end;
-}
-
-bat_a02,170,121,5 script Croix Blacksmith#bat_a02 4_M_REPAIR,{
- if (getcharid(CHAR_ID_BG) == $@TierraBG2_id2) {
- mes("[Croix Blacksmith]");
- mes("We are in urgency! The Barricade has been destroyed!");
- mes("We can repair the Barricade with ^3131FF50 Stones, 3 Sinew of Bear, 500 Metal Fragments, 30 Rough Elunium and 100 Gold.^000000");
- mes("We have it all except for the 50 Stones!");
- next;
- switch(select("Repair.", "Leave it.")) {
- case 1:
- if (countitem(Stone) > 49) {
- mes("[Croix Blacksmith]");
- mes("You brought enough stones! Let's go and repair.");
- next;
- mes("..");
- next;
- mes("....");
- next;
- mes("......");
- next;
- mes("........");
- next;
- mes("..........");
- next;
- mes("............");
- next;
- mes("..............");
- next;
- mes("[Croix Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage.");
- next;
- mes("[Croix Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade.");
- next;
- mes("[Croix Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger.");
- next;
- mes("[Croix Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Now decorate with Metal Fragments.");
- next;
- mes("[Croix Blacksmith]");
- mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Decorate with Metal Fragments, and plait stones with Sinew of Bear!");
- next;
- mes("..............");
- mes("..............");
- mes("..............");
- mes("..............");
- mes("..............");
- next;
- specialeffect EF_REPAIRWEAPON;
- mes("[Croix Blacksmith]");
- mes("Wow! It's done.");
- mes("We are relieved.");
- delitem Stone,50;
- donpcevent "barricade#bat_a02_b::OnEnable";
- close2;
- disablenpc "Croix Blacksmith#bat_a02";
- end;
- }
- else {
- mes("[Croix Blacksmith]");
- mes("You don't have enough Stones!");
- next;
- mes("[Croix Blacksmith]");
- mes("^3131FFWe need 50 Stone.^000000");
- mes("We are busy, so please hurry.");
- close;
- }
- case 2:
- mes("[Croix Blacksmith]");
- mes("There are enemies coming! Let's evacuate from here!");
- close;
- }
- }
- else {
- mes("[Croix Blacksmith]");
- mes("There, the enemy is coming!");
- close;
- }
-
-OnInit:
- disablenpc "Croix Blacksmith#bat_a02";
- end;
-}
-
-bat_a02,53,377,3 script Battle Therapist#a02_a 4_F_SISTER,{
- specialeffect2 EF_HEAL;
- mes("[Battle Therapist]");
- mes("Just close your eyes,\r"
- "and take a deep breath.");
- mes("You can be free from pain.");
- close;
- end;
-
-OnInit:
- initnpctimer;
- end;
-
-OnEnable:
- stopnpctimer;
- initnpctimer;
- enablenpc "Battle Therapist#a02_a";
- end;
-
-OnStop:
- disablenpc "bat_a02_rp1_a_warp";
- disablenpc "Battle Therapist#a02_a";
- stopnpctimer;
- end;
-
-OnTimer25000:
- specialeffect EF_SANCTUARY;
- enablenpc "bat_a02_rp1_a_warp";
- end;
-
-OnTimer26000:
- disablenpc "bat_a02_rp1_a_warp";
- end;
-
-OnTimer26500:
- donpcevent "Battle Therapist#a02_a::OnEnable";
- end;
-}
-
-bat_a02,51,375,0 script bat_a02_rp1_a_warp FAKE_NPC,10,10,{
-OnInit:
- disablenpc "bat_a02_rp1_a_warp";
- end;
-
-OnTouch_:
- percentheal 100,100;
- warp "bat_a02",352,342;
- end;
-}
-
-bat_a02,45,19,3 script Battle Therapist#a02_b 4_F_SISTER,{
- specialeffect2 EF_HEAL;
- mes("[Battle Therapist]");
- mes("Just close your eyes,\r"
- "and take a deep breath.");
- mes("You can be free from pain.");
- close;
- end;
-
-OnInit:
- initnpctimer;
- end;
-
-OnEnable:
- stopnpctimer;
- initnpctimer;
- enablenpc "Battle Therapist#a02_b";
- end;
-
-OnStop:
- disablenpc "bat_a02_rp1_b_warp";
- disablenpc "Battle Therapist#a02_b";
- stopnpctimer;
- end;
-
-OnTimer25000:
- specialeffect EF_SANCTUARY;
- enablenpc "bat_a02_rp1_b_warp";
- end;
-
-OnTimer26000:
- disablenpc "bat_a02_rp1_b_warp";
- end;
-
-OnTimer26500:
- donpcevent "Battle Therapist#a02_b::OnEnable";
- end;
-}
-
-bat_a02,43,17,0 script bat_a02_rp1_b_warp FAKE_NPC,10,10,{
-OnInit:
- disablenpc "bat_a02_rp1_b_warp";
- end;
-
-OnTouch:
- percentheal 100,100;
- warp "bat_a02",353,52;
- end;
-}
-
-bat_a02,60,216,3 script Valley Ghost#bat_a02_n 4_GHOSTRING,{
- specialeffect2 EF_HEAL;
- mes("[Valley Ghost]");
- mes("Boo...Boo...");
- close;
-
-OnInit:
- initnpctimer;
- end;
-
-OnEnable:
- stopnpctimer;
- initnpctimer;
- end;
-
-OnTimer25000:
- specialeffect EF_SANCTUARY;
- enablenpc "bat_a02_rp1_n_warp";
- end;
-
-OnTimer26000:
- disablenpc "bat_a02_rp1_n_warp";
- end;
-
-OnTimer26500:
- donpcevent "Valley Ghost#bat_a02_n::OnEnable";
- end;
-}
-
-bat_a02,55,213,0 script bat_a02_rp1_n_warp FAKE_NPC,10,10,{
-OnInit:
- disablenpc "bat_a02_rp1_n_warp";
- end;
-
-OnTouch:
- percentheal 100,100;
- warp "bat_a02",301,209;
- end;
-}
-
-bat_a02,194,267,0 script barri_warp_up#bat_a02_a FAKE_NPC,7,0,{
-OnTouch:
- if (getcharid(CHAR_ID_BG) == $@TierraBG2_id1)
- warp "bat_a02",194,261;
- end;
-}
-
-bat_a02,194,265,0 script barri_warp_down#bat_a02a FAKE_NPC,7,0,{
-OnTouch:
- if (getcharid(CHAR_ID_BG) == $@TierraBG2_id1)
- warp "bat_a02",194,270;
- end;
-}
-
-bat_a02,177,130,0 script barri_warp_up#bat_a02_b FAKE_NPC,7,0,{
-OnTouch:
- if (getcharid(CHAR_ID_BG) == $@TierraBG2_id2)
- warp "bat_a02",178,125;
- end;
-}
-
-bat_a02,177,128,0 script barri_warp_down#bat_a02b FAKE_NPC,7,0,{
-OnTouch:
- if (getcharid(CHAR_ID_BG) == $@TierraBG2_id2)
- warp "bat_a02",178,134;
- end;
-}
-
-bat_a02,352,342,0 script A_CODE#bat_a02 FAKE_NPC,5,5,{
-OnTouch:
- if (questprogress(2069) == 1)
- setquest 2069;
- end;
-}
-
-bat_a02,353,52,0 script B_CODE#bat_a02 FAKE_NPC,5,5,{
-OnTouch:
- if (questprogress(2069) == 1)
- setquest 2069;
- end;
-}
-
-bat_a02,169,227,0 script underladd#bat_a02_1 WARPNPC,1,1,{
-OnTouch_:
- warp "bat_a02",178,228;
- end;
-}
-
-bat_a02,208,164,0 script underladd#bat_a02_2 WARPNPC,1,1,{
-OnTouch_:
- warp "bat_a02",200,171;
- end;
-}
-
-bat_a02,171,309,3 script Guillaume Camp#flag11 1_FLAG_LION,{ end; }
-bat_a02,149,310,3 script Guillaume Camp#flag12 1_FLAG_LION,{ end; }
-bat_a02,119,336,3 script Guillaume Camp#flag13 1_FLAG_LION,{ end; }
-bat_a02,118,357,3 script Guillaume Camp#flag14 1_FLAG_LION,{ end; }
-bat_a02,150,380,3 script Guillaume Camp#flag15 1_FLAG_LION,{ end; }
-bat_a02,173,380,3 script Guillaume Camp#flag16 1_FLAG_LION,{ end; }
-bat_a02,210,344,3 script Guillaume Camp#flag17 1_FLAG_LION,{ end; }
-bat_a02,350,325,3 script Guillaume Camp#flag18 1_FLAG_LION,{ end; }
-bat_a02,358,325,3 script Guillaume Camp#flag19 1_FLAG_LION,{ end; }
-
-bat_a02,138,12,3 script Croix Camp#flag11 1_FLAG_EAGLE,{ end; }
-bat_a02,108,36,3 script Croix Camp#flag12 1_FLAG_EAGLE,{ end; }
-bat_a02,108,63,3 script Croix Camp#flag13 1_FLAG_EAGLE,{ end; }
-bat_a02,136,87,3 script Croix Camp#flag14 1_FLAG_EAGLE,{ end; }
-bat_a02,167,86,3 script Croix Camp#flag15 1_FLAG_EAGLE,{ end; }
-bat_a02,199,49,3 script Croix Camp#flag16 1_FLAG_EAGLE,{ end; }
-bat_a02,168,16,3 script Croix Camp#flag17 1_FLAG_EAGLE,{ end; }
-bat_a02,357,74,3 script Croix Camp#flag18 1_FLAG_EAGLE,{ end; }
-bat_a02,348,74,3 script Croix Camp#flag19 1_FLAG_EAGLE,{ end; }
-
-bat_a02,53,377,3 script Guillaume Vintenar#a02_a 4_M_KY_HEAD,{
- if (getcharid(CHAR_ID_BG) == $@TierraBG2_id1) {
- if ($@TierraBG2_Victory == 1) {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,3;
- }
- else {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 0) {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, and next time you will definitely win.");
- close2;
- getitem BF_Badge1,1;
- }
- else {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, and next time you will definitely win.");
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- }
- else {
- if ($@TierraBG2_Victory == 2) {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 0) {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, and next time you will definitely win.");
- close2;
- getitem BF_Badge1,1;
- }
- else {
- mes("[Axl Rose]");
- mes("You lost, but you're dedicated to this battle.");
- mes("This is a reward for your great dedication by Guillaume Marollo!");
- mes("Just take this defeat as a lesson, and next time you will definitely win.");
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,3;
- }
- else {
- mes("[Axl Rose]");
- mes("Blessed Guillaume!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign of victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- }
- bg_leave;
- warp "bat_room",154,150;
- end;
-
-OnInit:
- disablenpc "Guillaume Vintenar#a02_a";
- end;
-}
-
-bat_a02,45,19,3 script Croix Vintenar#a02_b 4_M_CRU_HEAD,{
- if (getcharid(CHAR_ID_BG) == $@TierraBG2_id2) {
- if ($@TierraBG2_Victory == 2) {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,3;
- }
- else {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 0) {
- mes("[Swandery]");
- mesf("Oh, %s Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge1,1;
- }
- else {
- mes("[Swandery]");
- mesf("Oh, %s Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- }
- else {
- if ($@TierraBG2_Victory == 1) {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 0) {
- mes("[Swandery]");
- mesf("Oh, %s Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge1,1;
- }
- else {
- mes("[Swandery]");
- mesf("Oh, %s Don't be sad.", strcharinfo(PC_NAME));
- mes("Even though we didn't win, we did our best.");
- mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- else {
- .@your_medal = countitem(BF_Badge1);
- .@medal_gap = 500 - .@your_medal;
- if (.@medal_gap > 2) {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,3;
- }
- else {
- mes("[Swandery]");
- mes("Blessed Croix!");
- mes("Let's enjoy our glorious victory!");
- mesf("%s, it's a sign reflecting victory.", strcharinfo(PC_NAME));
- close2;
- getitem BF_Badge1,.@medal_gap;
- }
- }
- }
- bg_leave;
- warp "bat_room",154,150;
- end;
-
-OnInit:
- disablenpc "Croix Vintenar#a02_b";
- end;
-}
-
-bat_a02,1,5,3 script countdown#bat_a02 CLEAR_NPC,{
-OnEnable:
- initnpctimer;
- end;
-
-OnStop:
- stopnpctimer;
- end;
-
-OnTimer7000:
- mapannounce("bat_a02", _("Guillaume Vintenar Axl Rose : Let's attack to burn down Croix's Food Depot!"), bc_map, "0xFF9900");
- end;
-
-OnTimer8000:
- mapannounce("bat_a02", _("Croix Vintenar Swandery : Master of Valhalla! Let us be gifted with unfailing faith and courage!"), bc_map, "0xFF99CC");
- end;
-
-OnTimer1800000:
- mapannounce("bat_a02", _("Marollo VII : Guillaume Marollo, Croix Marollo! Marollo followers!"), bc_map, "0x99CC00");
- end;
-
-OnTimer1803000:
- mapannounce("bat_a02", _("Marollo VII : Both camps are competitive, so no camp would be destroyed easily. That means the Marollo kingdoms will never be defeated!"), bc_map, "0x99CC00");
- end;
-
-OnTimer1808000:
- mapannounce("bat_a02", _("Marollo VII : I think we'd better terminate the battle, and call it a draw."), bc_map, "0x99CC00");
- end;
-
-OnTimer1822000:
- mapannounce("bat_a02", _("Marollo VII : Hold your royalty and faith for a moment, and let's settle up the battle of Tierra Gorge."), bc_map, "0x99CC00");
- end;
-
-OnTimer1825000:
- mapannounce("bat_a02", _("Axl Rose, Swandery : Yes sir."), bc_map, "0x99CC00");
- end;
-
-OnTimer1830000:
- mapwarp "bat_a02","bat_room",154,150;
- donpcevent "countdown#bat_a02::OnStop";
- end;
-}
-
-/*
-bat_a02,351,75,3 script Croix Camp Soldier#bat_a02_guide 4_M_RASWORD,{
- mes("Loading...");
- close;
-}
-
-bat_a02,356,326,3 script Guillaume Camp Soldier#bat_a02_guide 4_M_RASWORD,{
- mes("Loading...");
- close;
-}
-*/
-
-bat_a02,1,1,3 script Release all#a02 4_DOG01,{
- .@i = callfunc("F_GM_NPC",1854,0);
- if (.@i == -1) {
- mes("Cancelled.");
- close;
- } else if (.@i == 0) {
- end;
- } else {
- mes("May I help you?");
- next;
- switch(select("Release all.", "Cancel.")) {
- case 1:
- mes("Bye.");
- close2;
- mapwarp "bat_a02","bat_room",154,150;
- end;
- case 2:
- mes("Cancelled.");
- close;
- }
- }
-}
diff --git a/npc/battleground/tierra/tierra_enter.txt b/npc/battleground/tierra/tierra_enter.txt
deleted file mode 100644
index c3a04719f..000000000
--- a/npc/battleground/tierra/tierra_enter.txt
+++ /dev/null
@@ -1,371 +0,0 @@
-//================= Hercules Script =======================================
-//= _ _ _
-//= | | | | | |
-//= | |_| | ___ _ __ ___ _ _| | ___ ___
-//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
-//= | | | | __/ | | (__| |_| | | __/\__ \
-//= \_| |_/\___|_| \___|\__,_|_|\___||___/
-//================= License ===============================================
-//= This file is part of Hercules.
-//= http://herc.ws - http://github.com/HerculesWS/Hercules
-//=
-//= Copyright (C) 2012-2016 Hercules Dev Team
-//= Copyright (C) L0ne_W0lf
-//=
-//= Hercules is free software: you can redistribute it and/or modify
-//= it under the terms of the GNU General Public License as published by
-//= the Free Software Foundation, either version 3 of the License, or
-//= (at your option) any later version.
-//=
-//= This program is distributed in the hope that it will be useful,
-//= but WITHOUT ANY WARRANTY; without even the implied warranty of
-//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-//= GNU General Public License for more details.
-//=
-//= You should have received a copy of the GNU General Public License
-//= along with this program. If not, see <http://www.gnu.org/licenses/>.
-//=========================================================================
-// BattleGround System - Tierra Gorge Entrance NPCs
-//================= Description ===========================================
-//= Tierra Gorge Battleground Entrance NPCs
-//================= Current Version =======================================
-//= 1.1
-//=========================================================================
-
-//== First Tierra Gorge Officers - Guillaume ===============
-bat_room,124,178,5 script Tierra Gorge Officer#01a 4_M_KY_KNT,{
- if (checkweight(Knife,1) == 0) {
- mes("- Wait a minute !! -");
- mes("- Currently you're carrying -");
- mes("- too many items with you. -");
- mes("- Please try again -");
- mes("- after you loose some weight. -");
- close;
- }
- mes("[Guillaume Army Officer]");
- mes("Let's show the power of the Guillaume Army to those stinky Croixs!");
- next;
- switch(select("I want to join your army!", "End Conversation")) {
- case 1:
- if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes("[Guillaume Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- if (BaseLevel < 80) {
- mes("[Guillaume Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- .@chk_urtime = questprogress(2069,PLAYTIME);
- if (.@chk_urtime == 1) {
- mes("[Guillaume Army Officer]");
- mes("You seem to have just returned from the battlefield.");
- mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
- break;
- }
- if (.@chk_urtime == 2)
- erasequest 2069;
- if (getmapusers("bat_a01") > 0) {
- mes("[Guillaume Army Officer]");
- mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Croixs already.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- if ($@TierraBG1) {
- mes("[Guillaume Army Officer]");
- mes("An elite corps is already standing by to be dispatched to the battlefield.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- mes("[Guillaume Army Officer]");
- mes("You definitely seem to be ready for battle!");
- mes("Go show the Croixs what fear truly means!");
- mes("Today, our cry of victory shall echo all over the battlefield!");
- close2;
- warp "bat_room",57,223;
- end;
- case 2:
- mes("[Guillaume Army Officer]");
- mes("Today, we shall be victorious!");
- break;
- }
- close;
-}
-
-bat_room,140,178,5 script Tierra Gorge Officer#02a 4_M_KY_KNT,{
- if (checkweight(Knife,1) == 0) {
- mes("- Wait a minute !! -");
- mes("- Currently you're carrying -");
- mes("- too many items with you. -");
- mes("- Please try again -");
- mes("- after you loose some weight. -");
- close;
- }
- mes("[Guillaume Army Officer]");
- mes("Let's show the power of the Guillaume Army to those stinky Croixs!");
- next;
- switch(select("I want to join your army!", "End Conversation")) {
- case 1:
- if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes("[Guillaume Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- if (BaseLevel < 80) {
- mes("[Guillaume Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- .@chk_urtime = questprogress(2069,PLAYTIME);
- if (.@chk_urtime == 1) {
- mes("[Guillaume Army Officer]");
- mes("You seem to have just returned from the battlefield.");
- mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
- break;
- }
- if (.@chk_urtime == 2)
- erasequest 2069;
- if (getmapusers("bat_a02") > 0) {
- mes("[Guillaume Army Officer]");
- mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Croixs already.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- if ($@TierraBG2) {
- mes("[Guillaume Army Officer]");
- mes("An elite corps is already standing by to be dispatched to the battlefield.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- mes("[Guillaume Army Officer]");
- mes("You definitely seem to be ready for battle!");
- mes("Go show the Croixs what fear truly means!");
- mes("Today, our cry of victory shall echo all over the battlefield!");
- close2;
- warp "bat_room",114,223;
- end;
- case 2:
- mes("[Guillaume Army Officer]");
- mes("Today, we shall be victorious!");
- break;
- }
- close;
-}
-
-bat_room,127,178,5 script Guillaume Knight#1 4_M_KY_SOLD,{
- mes("[Guillaume Knight]");
- mes("Tierra Gorge consists of two steep sides placed vertically, and has ration depots for the Guillaume and Croix Armies at the 11 and 7 o'clock directions.");
- next;
- mes("[Guillaume Knight]");
- mes("The battle starts at your army's ship, and the goal is to advance and destroy your enemy's rations depot faster than they can destroy yours.");
- next;
- mes("[Guillaume Knight]");
- mes("The healer of the battlefield will resurrect soldiers once every 25 seconds so that they can rejoin the battle.");
- mes("The army that captures the neutral flag in the center of the battlefield will be rewarded with extra regeneration points, meaning their soldiers will resurrect more than the other side, giving them an advantage.");
- next;
- mes("[Guillaume Knight]");
- mes("Those two rations depots are connected to each other through short and narrow paths, but the gates are blocked with barricades.");
- mes("Think and move as quickly as you can. The victory of your army relies on your contribution.");
- next;
- mes("[Guillaume Knight]");
- mes("Please remember: when you join a battle, you will receive a token which indicates the set duration for which you cannot participate in the same type of battle.");
- mes("You may check the duration by pressing the Alt+U keys.");
- next;
- mes("[Guillaume Knight]");
- mes("Are you ready to battle? Then apply with the recruiter next to me!");
- close;
-}
-
-bat_room,143,178,5 script Guillaume Knight#2 4_M_KY_SOLD,{
- mes("[Guillaume Knight]");
- mes("Tierra Gorge consists of two steep sides placed vertically, and has ration depots for the Guillaume and Croix Armies at the 11 and 7 o'clock directions.");
- next;
- mes("[Guillaume Knight]");
- mes("The battle starts at your army's ship, and the goal is to advance and destroy your enemy's rations depot faster than they can destroy yours.");
- next;
- mes("[Guillaume Knight]");
- mes("The healer of the battlefield will resurrect soldiers once every 25 seconds so that they can rejoin the battle.");
- mes("The army that captures the neutral flag in the center of the battlefield will be rewarded with extra regeneration points, meaning their soldiers will resurrect more than the other side, giving them an advantage.");
- next;
- mes("[Guillaume Knight]");
- mes("Those two rations depots are connected to each other through short and narrow paths, but the gates are blocked with barricades.");
- mes("Think and move as quickly as you can. The victory of your army relies on your contribution.");
- next;
- mes("[Guillaume Knight]");
- mes("Please remember: when you join a battle, you will receive a token which indicates the set duration for which you cannot participate in the same type of battle.");
- mes("You may check the duration by pressing the Alt+U keys.");
- next;
- mes("[Guillaume Knight]");
- mes("Are you ready to battle? Then apply with the recruiter next to me!");
- close;
-}
-
-bat_room,127,121,1 script Croix Knight#1 4_M_CRU_SOLD,{
- mes("[Croix Knight]");
- mes("Tierra Gorge consists of two steep sides placed vertically, and has ration depots for the Guillaume and Croix Armies at the 11 and 7 o'clock directions.");
- next;
- mes("[Croix Knight]");
- mes("The battle starts at your army's ship, and the goal is to advance and destroy your enemy's rations depot faster than they can destroy yours.");
- next;
- mes("[Croix Knight]");
- mes("The healer of the battlefield will resurrect soldiers once every 25 seconds so that they can rejoin the battle.");
- mes("The army that captures the neutral flag in the center of the battlefield will be rewarded with extra regeneration points, meaning their soldiers will resurrect more than the other side, giving them an advantage.");
- next;
- mes("[Croix Knight]");
- mes("Those two rations depots are connected to each other through short and narrow paths, but the gates are blocked with barricades.");
- mes("Think and move as quickly as you can. The victory of your army relies on your contribution.");
- next;
- mes("[Croix Knight]");
- mes("Please remember: when you join a battle, you will receive a token which indicates the set duration for which you cannot participate in the same type of battle.");
- mes("You may check the duration by pressing the Alt+U keys.");
- next;
- mes("[Croix Knight]");
- mes("Are you ready to battle? Then apply with the recruiter next to me!");
- close;
-}
-
-bat_room,143,121,1 script Croix Knight#2 4_M_CRU_SOLD,{
- mes("[Croix Knight]");
- mes("Tierra Gorge consists of two steep sides placed vertically, and has ration depots for the Guillaume and Croix Armies at the 11 and 7 o'clock directions.");
- next;
- mes("[Croix Knight]");
- mes("The battle starts at your army's ship, and the goal is to advance and destroy your enemy's rations depot faster than they can destroy yours.");
- next;
- mes("[Croix Knight]");
- mes("The healer of the battlefield will resurrect soldiers once every 25 seconds so that they can rejoin the battle.");
- mes("The army that captures the neutral flag in the center of the battlefield will be rewarded with extra regeneration points, meaning their soldiers will resurrect more than the other side, giving them an advantage.");
- next;
- mes("[Croix Knight]");
- mes("Those two rations depots are connected to each other through short and narrow paths, but the gates are blocked with barricades.");
- mes("Think and move as quickly as you can. The victory of your army relies on your contribution.");
- next;
- mes("[Croix Knight]");
- mes("Please remember: when you join a battle, you will receive a token which indicates the set duration for which you cannot participate in the same type of battle.");
- mes("You may check the duration by pressing the Alt+U keys.");
- next;
- mes("[Croix Knight]");
- mes("Are you ready to battle? Then apply with the recruiter next to me!");
- close;
-}
-
-//== Second Tierra Gorge Officers - Croix ==================
-bat_room,125,121,1 script Tierra Gorge Officer#01b 4_M_CRU_KNT,{
- if (checkweight(Knife,1) == 0) {
- mes("- Wait a minute !! -");
- mes("- Currently you're carrying -");
- mes("- too many items with you. -");
- mes("- Please try again -");
- mes("- after you loose some weight. -");
- close;
- }
- mes("[Croix Army Officer]");
- mes("Let's show the power of the Croix Army to those stinky Guillaumes!");
- next;
- switch(select("I want to join your army!", "End Conversation")) {
- case 1:
- if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes("[Croix Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- if (BaseLevel < 80) {
- mes("[Croix Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- .@chk_urtime = questprogress(2069,PLAYTIME);
- if (.@chk_urtime == 1) {
- mes("[Croix Army Officer]");
- mes("You seem to have just returned from the battlefield.");
- mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
- break;
- }
- if (.@chk_urtime == 2)
- erasequest 2069;
- if (getmapusers("bat_a02") > 0) {
- mes("[Croix Army Officer]");
- mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Guillaume already.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- if ($@TierraBG1) {
- mes("[Croix Army Officer]");
- mes("An elite corps is already standing by to be dispatched to the battlefield.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- mes("[Croix Army Officer]");
- mes("You definitely seem to be ready for battle!");
- mes("Go show the Guillaumes what fear truly means!");
- mes("Today, our cry of victory shall echo all over the battlefield!");
- close2;
- warp "bat_room",57,207;
- end;
- case 2:
- mes("[Croix Army Officer]");
- mes("Today, we shall be victorious!");
- break;
- }
- close;
-}
-
-bat_room,140,121,1 script Tierra Gorge Officer#02b 4_M_CRU_KNT,{
- if (checkweight(Knife,1) == 0) {
- mes("- Wait a minute !! -");
- mes("- Currently you're carrying -");
- mes("- too many items with you. -");
- mes("- Please try again -");
- mes("- after you loose some weight. -");
- close;
- }
- mes("[Croix Army Officer]");
- mes("Let's show the power of the Croix Army to those stinky Guillaumes!");
- next;
- switch(select("I want to join your army!", "End Conversation")) {
- case 1:
- if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes("[Croix Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- if (BaseLevel < 80) {
- mes("[Croix Army Officer]");
- mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
- break;
- }
- .@chk_urtime = questprogress(2069,PLAYTIME);
- if (.@chk_urtime == 1) {
- mes("[Croix Army Officer]");
- mes("You seem to have just returned from the battlefield.");
- mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
- break;
- }
- if (.@chk_urtime == 2)
- erasequest 2069;
- if (getmapusers("bat_a02") > 0) {
- mes("[Croix Army Officer]");
- mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Guillaume already.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- if ($@TierraBG2) {
- mes("[Croix Army Officer]");
- mes("An elite corps is already standing by to be dispatched to the battlefield.");
- mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
- break;
- }
- mes("[Croix Army Officer]");
- mes("You definitely seem to be ready for battle!");
- mes("Go show the Guillaumes what fear truly means!");
- mes("Today, our cry of victory shall echo all over the battlefield!");
- close2;
- warp "bat_room",114,207;
- end;
- case 2:
- mes("[Croix Army Officer]");
- mes("Today, we shall be victorious!");
- break;
- }
- close;
-}