summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog.txt1
-rw-r--r--db/item_db.txt16
-rw-r--r--npc/Changelog.txt8
-rw-r--r--npc/other/pvp.txt565
4 files changed, 142 insertions, 448 deletions
diff --git a/Changelog.txt b/Changelog.txt
index 27463c404..b3d00426e 100644
--- a/Changelog.txt
+++ b/Changelog.txt
@@ -1,5 +1,6 @@
Date Added
11/07
+ * Corrected some typos in item_db. Items 1143 and 1719 need to be re-checked.[kobra_k88]
* Fixed compiling error in Map Server in which @repairall was using old broken system [Shinigami]
11/06
diff --git a/db/item_db.txt b/db/item_db.txt
index 06583528b..570d85f1a 100644
--- a/db/item_db.txt
+++ b/db/item_db.txt
@@ -433,7 +433,7 @@
1122,Ring_Pommel_Saber,Ring Pommel Saber,4,24000,,900,100,,1,2,414946,2,2,2,14,2,{},{}
1123,Haedonggum,Haedonggum,4,50000,,900,120,,1,1,414946,2,2,3,27,2,{},{ bonus bInt,3; },,,,,,
-1124,Orcish_Sword,Orcish sword,4,20,,800,90,,1,0,8803555,2,2,3,5,2,{},{ bUnbreakable,100 },,,,,,,
+1124,Orcish_Sword,Orcish sword,4,20,,800,90,,1,0,8803555,2,2,3,5,2,{},{ bonus bUnbreakable,100; },,,,,,,
1125,Ring_Pommel_Saber_,Ring Pommel Saber,4,24000,,900,100,,1,3,414946,2,2,2,14,2,{},{},,,,,,,
1126,Saber,Saber,4,49000,,1000,115,,1,2,414946,2,2,3,27,2,{},{},,,,,,,
1127,Saber_,Saber,4,49000,,1000,115,,1,3,414946,2,2,3,27,2,{},{},,,,,,,
@@ -449,10 +449,10 @@
1137,Excalibur,Excalibur,4,20,,1200,150,,1,0,414946,2,2,4,40,2,{},{ bonus bInt,5; bonus bLuk,10; bonus bDex,-1; bonus bAtkEle,6; },,,
1138,Mysteltainn_,Mysteltainn,4,20,,1000,170,,1,0,414946,2,2,4,40,2,{},{ bonus bAtkEle,7; bonus2 bAddEle,8,15; bonus2 bAddEff,Eff_Stone,100; bonus bDex,3; },
1139,Talefing_,Talefing,4,20,,1000,200,,1,0,414946,2,2,4,40,2,{},{ bonus bAtkEle,7; bonus2 bSPDrainRate,50,-35; },,,,,,,,,
-1140,Byeollungum,Byeollungum,4,20,,900,150,,1,0,414946,2,2,4,40,2,{},{ bonus2 bSubRace,11,-10; bonus2 bAddRace,10,50; bAllStats,2; }
+1140,Byeollungum,Byeollungum,4,20,,900,150,,1,0,414946,2,2,4,40,2,{},{ bonus2 bSubRace,11,-10; bonus2 bAddRace,10,50; bonus bAllStats,2; }
1141,Immaterial_Sword,Immaterial Sword,4,20,,900,140,,1,0,414946,2,2,4,40,2,{},{ bonus bAtkEle,8; bonus2 bSPDrainRate,100,30; bonus2 bSPDrainRate,10000,-1; },,,,,,,,,
1142,Jewel_Sword,Crystal Sword,4,20,,2200,104,,1,0,414946,2,2,3,68,2,{},{},,,,,,,,,,
-1143,Gaia_Sword,Gaia Sword,4,20,,2500,115,,1,0,414946,2,2,3,74,2,{},{ bonus3 bAddMonsterDropItem,1002,50; },,,,,,,,,,
+1143,Gaia_Sword,Gaia Sword,4,20,,2500,115,,1,0,414946,2,2,3,74,2,{},{ bonus3 bAddMonsterDropItem,1002,50,25000; },,,,,,,,,,
1144,Sashimi,Sashimi,4,20,,1400,75,,1,0,414946,2,2,3,48,2,{},{ bonus bAtkEle,4; bonus3 bAddMonsterDropItem,544,5,4000; },,,,,,
1145,Holy_Avenger,Holy Avenger,4,20,,1350,125,,1,0,16384,2,2,3,75,2,{},{ bonus bAtkEle,6; },,,,,,,,
@@ -476,7 +476,7 @@
1165,Masamune,Masamune,4,20,,1000,200,,1,0,16514,2,34,4,48,3,{},{ bonus bFlee,30; bonus bStr,-5; bonus bAspd,2; bonus bDefRate,-50; bonus bDef2Rate,-50; },
1166,Dragon_Slayer,Dragon Slayer,4,20,,1300,150,,1,0,16514,2,34,4,48,3,{},{ bonus bIgnoreDefRace,9; bonus2 bAddRace,9,15; },,,
1167,Schweizersabel,Schweizersabel,4,20,,1600,160,,1,0,16514,2,34,4,48,3,{},{ bonus bAtkEle,4; skill 20,3; bonus bDef,1; bonus3 bAutoSpell,20,3,25; }
-1168,Zweihander,Zweihander,4,20,,2200,200,,1,0,16514,2,34,4,48,3,{},{ bUnbreakable,100; },,,,,,
+1168,Zweihander,Zweihander,4,20,,2200,200,,1,0,16514,2,34,4,48,3,{},{bonus bUnbreakable,100; },,,,,,
1169,Executioner_,Executioner,4,20,,2200,155,,1,0,16514,2,34,4,48,3,{},{ bonus bIgnoreDefRace,7; bonus2 bAddRace,7,20; bonus2 bSubRace,7,-10; bonus bAtkEle,7; }
1170,Katzbalger,Katzbalger,4,20,,2000,175,,1,0,16514,2,34,4,48,3,{},{ bonus bVit,10; bonus bDef,10; },,,,
@@ -510,8 +510,8 @@
1222,Damascus,Damascus,4,49000,,800,118,,1,1,2055918,2,2,3,24,1,{},{},,,,,,
1223,Fortune_Sword,Fortune Sword,4,20,,500,90,,1,0,2055918,2,2,4,24,1,{},{ bonus bLuk,5; bonus bFlee2,20; },,,,
-1224,Sword_Breaker,Swordbreaker,4,20,,1000,70,,1,0,2055918,2,2,4,36,1,{},{ bonus2 bBreakWeaponRate,100; },,,,,,
-1225,Mail_Breaker,Mailbreaker,4,20,,1000,70,,1,0,2055918,2,2,4,36,1,{},{ bonus2 bBreakArmorRate,100; },,,,,,
+1224,Sword_Breaker,Swordbreaker,4,20,,1000,70,,1,0,2055918,2,2,4,36,1,{},{ bonus bBreakWeaponRate,100; },,,,,,
+1225,Mail_Breaker,Mailbreaker,4,20,,1000,70,,1,0,2055918,2,2,4,36,1,{},{ bonus bBreakArmorRate,100; },,,,,,
1226,Damascus_,Damascus,4,49000,,800,118,,1,2,2055918,2,2,3,24,1,{},{},,,,,,
1227,Weeder_Knife,Weeder Knife,4,20,,400,80,,1,0,2055918,2,2,4,36,1,{},{ bonus bIgnoreDefRace,3; bonus2 bAddRace,3,15; bonus2 bSubRace,3,15; },
@@ -727,7 +727,7 @@
1716,Gakkung_,Gakkung,4,42000,,1100,100,,5,2,1706056,2,34,3,33,11,{},{},,,,,,,,,,,,,,
1718,Hunter_Bow,Hunter Bow,4,64000,,1500,125,,5,0,2048,2,34,3,33,11,{},{},,,,,,,,,,,,,,
-1719,Bow_of_Roguemaster,Roguemaster's Bow,4,20,,500,75,,11,0,64,2,34,4,48,11,{},{ bonus3 bAddStealRate,100; },,,,,,,,,,,,,,
+1719,Bow_of_Roguemaster,Roguemaster's Bow,4,20,,500,75,,11,0,64,2,34,4,48,11,{},{ bonus2 bAddStealRate,100,0; },,,,,,,,,,,,,,
1720,Bow_of_Rudra,Rudra's Bow,4,20,,1200,150,,5,0,1705992,2,34,4,48,11,{},{ bonus bAtkEle,6; bonus bInt,5; skill 35,1; skill 28,1; bonus2 bResEff,Eff_Poison,5000; bonus2 bResEff,Eff_Curse,5000; bonus2 bResEff,Eff_Silence,5000; bonus2 bResEff,Eff_Confusion,5000; bonus2 bResEff,Eff_Blind,5000; }
1721,Repeating_Crossbow,Repeating Crossbow,4,89000,,2000,95,,9,1,133184,2,34,3,65,11,{},{},,,,,,,,,,,,,,
1722,Ballista,Ballista,4,20,,3500,145,,5,0,1574912,2,34,4,77,11,{},{},,,,,,,,,,,,,,
@@ -795,7 +795,7 @@
1911,Guh_Moon_Goh,Guhmoongoh,4,54000,,1300,126,,1,1,524288,2,2,3,27,13,{},{},,,,,,,,,,,
1912,Guh_Moon_Goh_,Guhmoongoh,4,54000,,1300,126,,1,2,524288,2,2,3,27,13,{},{},,,,,,,,,,,
-1913,Electric_Guitar,Electric Guitar,4,20,,1800,110,,1,0,524288,2,2,4,70,13,{},{ bAutoSpell,84,1,25; bonus bAtkEle,4; bonus bInt,2; bonus bAgi,1 }
+1913,Electric_Guitar,Electric Guitar,4,20,,1800,110,,1,0,524288,2,2,4,70,13,{},{ bonus3 bAutoSpell,84,1,25; bonus bAtkEle,4; bonus bInt,2; bonus bAgi,1; }
1950,Rope,Rope,4,2500,,400,45,,2,3,1048576,2,2,1,3,14,{},{},,,
1951,Rope_,Rope,4,2500,,400,45,,2,4,1048576,2,2,1,3,14,{},{},,,
diff --git a/npc/Changelog.txt b/npc/Changelog.txt
index 7f3acbaaa..c491357c8 100644
--- a/npc/Changelog.txt
+++ b/npc/Changelog.txt
@@ -31,9 +31,11 @@ Other Ppl
Date Added
======
11/07
- * lutie.txt - Edited text, updated/corrected triggers for the Jack Frost quest.
- comodo.txt, morocc.txt, doomed_swords.txt - Implemented all of the triggers for
- the Doomed Swords quest based on mRO's version. Now the quest is much longer.[kobra_k88]
+ * - lutie.txt: Edited text, updated/corrected triggers for the Jack Frost quest.
+ - comodo.txt, morocc.txt, doomed_swords.txt: Implemented all of the triggers for
+ the Doomed Swords quest based on mRO's version. Now the quest is much longer.
+ - pvp.txt: Added PvP Narrator function. Using args for Fight Square Helpers.
+ - Corrected some typos in item_db. Items 1143 and 1719 need to be re-checked.[kobra_k88]
11/05
* Fixed and redo optional Umbalian quests:
- Wise Man Fabius' Umbalian Language Quest (you can learn Umbalian language in
diff --git a/npc/other/pvp.txt b/npc/other/pvp.txt
index 1299c979b..d12599c88 100644
--- a/npc/other/pvp.txt
+++ b/npc/other/pvp.txt
@@ -3,235 +3,58 @@
//===== By: ==================================================
//= kobra_k88
//===== Current Version: =====================================
-//= 1.2
+//= 1.2a
//===== Compatible With: =====================================
//= eAthena 0.5.2 +
//===== Description: =========================================
//=
//===== Additional Comments: =================================
-//= v1.1 Fixed arena names for Nightmare mode. Added room limit check.
-//= v1.2 Fixed the bug that you aways savepoint in geffen.
+//= v1.1 Fixed arena names for Nightmare mode. Added room limit
+//= check.[kobra_k88]
+//= v1.2 Fixed the bug that you aways savepoint in geffen.[shadowlady]
+//= v1.2a Added PvP Narrator function. Using args for Fight
+//= Square Helpers. [kobra_k88]
//============================================================
-//***********************************************************************************************************************************************************//
-// PvP Narrator and Gate Keeper Scripts //
-//***********************************************************************************************************************************************************//
+//==========================================================================
+// PvP Narrators
+//==========================================================================
-// Alberta =========================================================>\\
-// PvP Narrator ------------------------------------------------------
-alberta_in.gat, 22, 146,4 script PvP Narrator#1::PvPNarr 84,
-{
- mes "[PvP Narrator]";
- mes "Hello and welcome! I am in charge of explaining the PvP mode to all of those who inquire. I am the PvP Narrator!";
- M_Menu:
- next;
- menu "What is PvP?",M_0, "What are the PvP modes?",M_1, "What are the rules for PvP?",M_2, "Save position.",M_3;
-
- M_0:
- mes "[PvP Narrator]";
- mes "PvP is short for 'Player versus Player'! It is a unique play mode that allows players to duel other players!";
- next;
- mes "[PvP Narrator]";
- mes "If you're interested just speak with the ^5533FFGate Keeper'^000000. He will let you into the PvP square.";
- next;
- mes "[PvP Narrator]";
- mes "That IS, IF you have at least a base level of 31 and you have 500 zeny to pay for the enterance fee.";
- mes "Those are the requirements to participate in PvP.";
- goto M_Menu;
- M_1:
- mes "[PvP Narrator]";
- mes "There are 2 PvP modes to choose from.";
- mes "One is called ^5533FF'Yoyo'^000000 Mode and the other is called ^5533FF'Nightmare'^000000 Mode.";
- next;
- mes "[PvP Narrator]";
- mes "Yoyo mode essentially lets you play risk free. You can experience the thrill of PvP without any restrictions or penalties.";
- mes "It is recomended that you practice your skills in this mode before you move on.";
- next;
- mes "[PvP Narrator]";
- mes "Nightmare Mode is very dangerous! Please use caution when trying this mode of play.";
- mes "You will lose some of your real EXP if you are defeated. There is also the small chance that you will drop some items and equipment.";
- next;
- mes "[PvP Narrator]";
- mes "Of course if you win, the rewards can be great!! Even so you should really think twice before you attempt Nightmare Mode.";
- mes "Anyways, good luck.";
- goto M_Menu;
- M_2:
- mes "[PvP Narrator]";
- mes "Before you enter any actual PvP areana, you must first choose your level of ability based on your base level.";
- mes "You will do this in the pre-fight room. There will be a row of narrators, each one representing a set of player levels.";
- next;
- mes "[PvP Narrator]";
- mes "Speak to the narrator that represents your base level. You will then be asked to choose from five different fight maps.";
- mes "You will be able to see how many people are currently participating in any given map.";
- next;
- mes "[PvP Narrator]";
- mes "This will be represented by the 'Attendee/Total' figure in the corner of the screen. There is a limit to how many can play on a map.";
- mes "There is a hidden EXP value in PvP mode. This EXP will only apply inside of the PvP zone and not outside.";
- next;
- mes "[PvP Narrator]";
- mes "Every one will recieve a base EXP of 5 points when they first start. If you win a match your EXP with increase by 1 point.";
- mes "If you loose your EXP will drop by 5 points, so be carefull!";
- next;
- mes "[PvP Narrator]";
- mes "If you are defeated and your EXP is equal to or less than 0, you will be removed from the PvP arena.";
- mes "If your EXP is more than 0 than you may continue fighting and even get help from healers.";
- next;
- mes "[PvP Narrator]";
- mes "The fighting commands inside of PvP are the same as outside. Just remember that you won't be able to save inside a PvP arena.";
- next;
- mes "[PvP Narrator]";
- mes "Remember these rules well as they can help to ensure your victory.";
- goto M_Menu;
- M_3:
- savepoint "alberta_in.gat",24,143;
- mes "[PvP Narrator]";
- mes "Your position has been saved.";
- close;
+// Alberta -----------------------------------------
+alberta_in.gat, 22, 146,4 script PvP Narrator#1 84,{
+ callfunc "F_PvPNarr", "alberta_in.gat", 24, 143;
+ end;
}
-
-payon_in01.gat,173,109,3 script PvP Narrator#1::PvPNarr 84,
-{
- mes "[PvP Narrator]";
- mes "Hello and welcome! I am in charge of explaining the PvP mode to all of those who inquire. I am the PvP Narrator!";
- M_Menu:
- next;
- menu "What is PvP?",M_0, "What are the PvP modes?",M_1, "What are the rules for PvP?",M_2, "Save position.",M_3;
-
- M_0:
- mes "[PvP Narrator]";
- mes "PvP is short for 'Player versus Player'! It is a unique play mode that allows players to duel other players!";
- next;
- mes "[PvP Narrator]";
- mes "If you're interested just speak with the ^5533FFGate Keeper'^000000. He will let you into the PvP square.";
- next;
- mes "[PvP Narrator]";
- mes "That IS, IF you have at least a base level of 31 and you have 500 zeny to pay for the enterance fee.";
- mes "Those are the requirements to participate in PvP.";
- goto M_Menu;
- M_1:
- mes "[PvP Narrator]";
- mes "There are 2 PvP modes to choose from.";
- mes "One is called ^5533FF'Yoyo'^000000 Mode and the other is called ^5533FF'Nightmare'^000000 Mode.";
- next;
- mes "[PvP Narrator]";
- mes "Yoyo mode essentially lets you play risk free. You can experience the thrill of PvP without any restrictions or penalties.";
- mes "It is recomended that you practice your skills in this mode before you move on.";
- next;
- mes "[PvP Narrator]";
- mes "Nightmare Mode is very dangerous! Please use caution when trying this mode of play.";
- mes "You will lose some of your real EXP if you are defeated. There is also the small chance that you will drop some items and equipment.";
- next;
- mes "[PvP Narrator]";
- mes "Of course if you win, the rewards can be great!! Even so you should really think twice before you attempt Nightmare Mode.";
- mes "Anyways, good luck.";
- goto M_Menu;
- M_2:
- mes "[PvP Narrator]";
- mes "Before you enter any actual PvP areana, you must first choose your level of ability based on your base level.";
- mes "You will do this in the pre-fight room. There will be a row of narrators, each one representing a set of player levels.";
- next;
- mes "[PvP Narrator]";
- mes "Speak to the narrator that represents your base level. You will then be asked to choose from five different fight maps.";
- mes "You will be able to see how many people are currently participating in any given map.";
- next;
- mes "[PvP Narrator]";
- mes "This will be represented by the 'Attendee/Total' figure in the corner of the screen. There is a limit to how many can play on a map.";
- mes "There is a hidden EXP value in PvP mode. This EXP will only apply inside of the PvP zone and not outside.";
- next;
- mes "[PvP Narrator]";
- mes "Every one will recieve a base EXP of 5 points when they first start. If you win a match your EXP with increase by 1 point.";
- mes "If you loose your EXP will drop by 5 points, so be carefull!";
- next;
- mes "[PvP Narrator]";
- mes "If you are defeated and your EXP is equal to or less than 0, you will be removed from the PvP arena.";
- mes "If your EXP is more than 0 than you may continue fighting and even get help from healers.";
- next;
- mes "[PvP Narrator]";
- mes "The fighting commands inside of PvP are the same as outside. Just remember that you won't be able to save inside a PvP arena.";
- next;
- mes "[PvP Narrator]";
- mes "Remember these rules well as they can help to ensure your victory.";
- goto M_Menu;
- M_3:
- savepoint "payon_in01",169,108;
- mes "[PvP Narrator]";
- mes "Your position has been saved.";
- close;
+// Payon -------------------------------------
+payon_in01.gat,173,109,3 script PvP Narrator#2 84,{
+ callfunc "F_PvPNarr", "payon_in01.gat", 169, 108;
+ end;
}
-
-prt_in.gat,56,140,4 script PvP Narrator#1::PvPNarr 84,
-{
- mes "[PvP Narrator]";
- mes "Hello and welcome! I am in charge of explaining the PvP mode to all of those who inquire. I am the PvP Narrator!";
- M_Menu:
- next;
- menu "What is PvP?",M_0, "What are the PvP modes?",M_1, "What are the rules for PvP?",M_2, "Save position.",M_3;
-
- M_0:
- mes "[PvP Narrator]";
- mes "PvP is short for 'Player versus Player'! It is a unique play mode that allows players to duel other players!";
- next;
- mes "[PvP Narrator]";
- mes "If you're interested just speak with the ^5533FFGate Keeper'^000000. He will let you into the PvP square.";
- next;
- mes "[PvP Narrator]";
- mes "That IS, IF you have at least a base level of 31 and you have 500 zeny to pay for the enterance fee.";
- mes "Those are the requirements to participate in PvP.";
- goto M_Menu;
- M_1:
- mes "[PvP Narrator]";
- mes "There are 2 PvP modes to choose from.";
- mes "One is called ^5533FF'Yoyo'^000000 Mode and the other is called ^5533FF'Nightmare'^000000 Mode.";
- next;
- mes "[PvP Narrator]";
- mes "Yoyo mode essentially lets you play risk free. You can experience the thrill of PvP without any restrictions or penalties.";
- mes "It is recomended that you practice your skills in this mode before you move on.";
- next;
- mes "[PvP Narrator]";
- mes "Nightmare Mode is very dangerous! Please use caution when trying this mode of play.";
- mes "You will lose some of your real EXP if you are defeated. There is also the small chance that you will drop some items and equipment.";
- next;
- mes "[PvP Narrator]";
- mes "Of course if you win, the rewards can be great!! Even so you should really think twice before you attempt Nightmare Mode.";
- mes "Anyways, good luck.";
- goto M_Menu;
- M_2:
- mes "[PvP Narrator]";
- mes "Before you enter any actual PvP areana, you must first choose your level of ability based on your base level.";
- mes "You will do this in the pre-fight room. There will be a row of narrators, each one representing a set of player levels.";
- next;
- mes "[PvP Narrator]";
- mes "Speak to the narrator that represents your base level. You will then be asked to choose from five different fight maps.";
- mes "You will be able to see how many people are currently participating in any given map.";
- next;
- mes "[PvP Narrator]";
- mes "This will be represented by the 'Attendee/Total' figure in the corner of the screen. There is a limit to how many can play on a map.";
- mes "There is a hidden EXP value in PvP mode. This EXP will only apply inside of the PvP zone and not outside.";
- next;
- mes "[PvP Narrator]";
- mes "Every one will recieve a base EXP of 5 points when they first start. If you win a match your EXP with increase by 1 point.";
- mes "If you loose your EXP will drop by 5 points, so be carefull!";
- next;
- mes "[PvP Narrator]";
- mes "If you are defeated and your EXP is equal to or less than 0, you will be removed from the PvP arena.";
- mes "If your EXP is more than 0 than you may continue fighting and even get help from healers.";
- next;
- mes "[PvP Narrator]";
- mes "The fighting commands inside of PvP are the same as outside. Just remember that you won't be able to save inside a PvP arena.";
- next;
- mes "[PvP Narrator]";
- mes "Remember these rules well as they can help to ensure your victory.";
- goto M_Menu;
- M_3:
- savepoint "prt_in",54,137;
- mes "[PvP Narrator]";
- mes "Your position has been saved.";
- close;
+// Prontera -------------------------------------
+prt_in.gat,56,140,4 script PvP Narrator#3 84,{
+ callfunc "F_PvPNarr", "prt_in.gat", 54, 137;
+ end;
+}
+// Morocc --------------------------------------
+morocc_in.gat,144,138,4 script PvP Narrator#4 84,{
+ callfunc "F_PvPNarr", "morocc_in.gat", 141, 140;
+ end;
+}
+// Geffen --------------------------------------
+geffen_in.gat, 67,63,4 script PvP Narrator#5 84,{
+ callfunc "F_PvPNarr", "geffen_in.gat", 64, 60;
+ end;
}
-morocc_in.gat,144,138,4 script PvP Narrator#1::PvPNarr 84,
-{
+//******************************************************//
+// Function: PvP Narrator
+//******************************************************//
+// arg(0): mapname
+// arg(1): savepoint x cord.
+// arg(2): savepoint y cord.
+//=============================
+function script F_PvPNarr {
mes "[PvP Narrator]";
mes "Hello and welcome! I am in charge of explaining the PvP mode to all of those who inquire. I am the PvP Narrator!";
M_Menu:
@@ -294,83 +117,18 @@ morocc_in.gat,144,138,4 script PvP Narrator#1::PvPNarr 84,
mes "Remember these rules well as they can help to ensure your victory.";
goto M_Menu;
M_3:
- savepoint "morocc_in",141,140;
+ savepoint getarg(0), getarg(1), getarg(2);
mes "[PvP Narrator]";
mes "Your position has been saved.";
close;
}
-geffen_in.gat, 67,63,4 script PvP Narrator#1::PvPNarr 84,
-{
- mes "[PvP Narrator]";
- mes "Hello and welcome! I am in charge of explaining the PvP mode to all of those who inquire. I am the PvP Narrator!";
- M_Menu:
- next;
- menu "What is PvP?",M_0, "What are the PvP modes?",M_1, "What are the rules for PvP?",M_2, "Save position.",M_3;
- M_0:
- mes "[PvP Narrator]";
- mes "PvP is short for 'Player versus Player'! It is a unique play mode that allows players to duel other players!";
- next;
- mes "[PvP Narrator]";
- mes "If you're interested just speak with the ^5533FFGate Keeper'^000000. He will let you into the PvP square.";
- next;
- mes "[PvP Narrator]";
- mes "That IS, IF you have at least a base level of 31 and you have 500 zeny to pay for the enterance fee.";
- mes "Those are the requirements to participate in PvP.";
- goto M_Menu;
- M_1:
- mes "[PvP Narrator]";
- mes "There are 2 PvP modes to choose from.";
- mes "One is called ^5533FF'Yoyo'^000000 Mode and the other is called ^5533FF'Nightmare'^000000 Mode.";
- next;
- mes "[PvP Narrator]";
- mes "Yoyo mode essentially lets you play risk free. You can experience the thrill of PvP without any restrictions or penalties.";
- mes "It is recomended that you practice your skills in this mode before you move on.";
- next;
- mes "[PvP Narrator]";
- mes "Nightmare Mode is very dangerous! Please use caution when trying this mode of play.";
- mes "You will lose some of your real EXP if you are defeated. There is also the small chance that you will drop some items and equipment.";
- next;
- mes "[PvP Narrator]";
- mes "Of course if you win, the rewards can be great!! Even so you should really think twice before you attempt Nightmare Mode.";
- mes "Anyways, good luck.";
- goto M_Menu;
- M_2:
- mes "[PvP Narrator]";
- mes "Before you enter any actual PvP areana, you must first choose your level of ability based on your base level.";
- mes "You will do this in the pre-fight room. There will be a row of narrators, each one representing a set of player levels.";
- next;
- mes "[PvP Narrator]";
- mes "Speak to the narrator that represents your base level. You will then be asked to choose from five different fight maps.";
- mes "You will be able to see how many people are currently participating in any given map.";
- next;
- mes "[PvP Narrator]";
- mes "This will be represented by the 'Attendee/Total' figure in the corner of the screen. There is a limit to how many can play on a map.";
- mes "There is a hidden EXP value in PvP mode. This EXP will only apply inside of the PvP zone and not outside.";
- next;
- mes "[PvP Narrator]";
- mes "Every one will recieve a base EXP of 5 points when they first start. If you win a match your EXP with increase by 1 point.";
- mes "If you loose your EXP will drop by 5 points, so be carefull!";
- next;
- mes "[PvP Narrator]";
- mes "If you are defeated and your EXP is equal to or less than 0, you will be removed from the PvP arena.";
- mes "If your EXP is more than 0 than you may continue fighting and even get help from healers.";
- next;
- mes "[PvP Narrator]";
- mes "The fighting commands inside of PvP are the same as outside. Just remember that you won't be able to save inside a PvP arena.";
- next;
- mes "[PvP Narrator]";
- mes "Remember these rules well as they can help to ensure your victory.";
- goto M_Menu;
- M_3:
- savepoint "geffen_in",64,60;
- mes "[PvP Narrator]";
- mes "Your position has been saved.";
- close;
-}
+//==========================================================================
+// Gate Keepers
+//==========================================================================
-// Gate Keeper ---------------------------------------------------------------
+// Alberta -----------------------------------
alberta_in.gat, 26,146,4 script Gate Keeper#1::GateKeep 83,
{
mes "[Gate Keeper]";
@@ -453,264 +211,197 @@ sF_Move:
close;
}
-// Geffen ===================================================>\\
-//geffen_in.gat, 67,63,4 duplicate(PvPNarr) PvP Narrator#2 84
+// Geffen --------------------------------------------
geffen_in.gat, 63,63,4 duplicate(GateKeep) Gate Keeper#2 83
-
-// Morroc ===================================================>\\
-//morocc_in.gat,144,138,4 duplicate(PvPNarr) PvP Narrator#3 84
+// Morroc----------------------------------------------
morocc_in.gat, 144,142,4 duplicate(GateKeep) Gate Keeper#3 83
+// Payon ----------------------------------------------
+payon_in01.gat,175,106,3 duplicate(GateKeep) Gate Keeper#4 83
+// Prontera -------------------------------------------
+prt_in.gat,52,140,4 duplicate(GateKeep) Gate Keeper#5 83
-// Payon ===================================================>\\
-//payon_in01.gat,173,109,3 duplicate(PvPNarr) PvP Narrator#5 84
-payon_in01.gat,175,106,3 duplicate(GateKeep) Gate Keeper#5 83
-
-// Prontera =================================================>\\
-//prt_in.gat,56,140,4 duplicate(PvPNarr) PvP Narrator#6 84
-prt_in.gat,52,140,4 duplicate(GateKeep) Gate Keeper#6 83
+//==========================================================================//
+// PvP Yoyo Mode Fight Square Helpers
+//==========================================================================//
-//***********************************************************************************************************************************************//
-// PvP Yoyo Mode Fight Square Helpers //
-//***********************************************************************************************************************************************//
-
-// LV31 ~ 40 ------------------------------------------------------------------------------
-pvp_y_room.gat,30,85,4 script Fight Square Helper::YHelper1 105,
-{
- set @map$, "y_1";
- set @lvl2, 40;
- callfunc "F_PvPRoom";
+// LV31 ~ 40 ---------------------------------
+pvp_y_room.gat,30,85,4 script Fight Square Helper::YHelper1 105,{
+ callfunc "F_PvPRoom", "y_1", 31, 40;
OnInit:
waitingroom "LV31 ~ LV40",0;
end;
}
-// LV41 ~ 50 ------------------------------------------------------------------------------
-pvp_y_room.gat,38,85,4 script Fight Square Helper::YHelper2 105,
-{
- set @map$, "y_2";
- set @lvl1, 41;
- set @lvl2, 50;
- callfunc "F_PvPRoom";
+// LV41 ~ 50 --------------------------------
+pvp_y_room.gat,38,85,4 script Fight Square Helper::YHelper2 105,{
+ callfunc "F_PvPRoom", "y_2", 41, 50;
OnInit:
waitingroom "LV41 ~ LV50",0;
end;
}
-// LV51 ~ 60 ------------------------------------------------------------------------------
-pvp_y_room.gat,46,85,4 script Fight Square Helper::YHelper3 105,
-{
- set @map$, "y_3";
- set @lvl1, 51;
- set @lvl2, 60;
- callfunc "F_PvPRoom";
+// LV51 ~ 60 ---------------------------------
+pvp_y_room.gat,46,85,4 script Fight Square Helper::YHelper3 105,{
+ callfunc "F_PvPRoom", "y_3", 51, 60;
OnInit:
waitingroom "LV51 ~ LV60", 0;
end;
}
-// LV61 ~ 70 ------------------------------------------------------------------------------
-pvp_y_room.gat,54,85,4 script Fight Square Helper::YHelper4 105,
-{
- set @map$, "y_4";
- set @lvl1, 61;
- set @lvl2, 70;
- callfunc "F_PvPRoom";
+// LV61 ~ 70 ------------------------------------
+pvp_y_room.gat,54,85,4 script Fight Square Helper::YHelper4 105,{
+ callfunc "F_PvPRoom", "y_4", 61, 70;
OnInit:
waitingroom "LV61 ~ LV70", 0;
end;
}
-// LV71 ~ 80 ------------------------------------------------------------------------------
-pvp_y_room.gat,62,85,4 script Fight Square Helper::YHelper5 105,
-{
- set @map$, "y_5";
- set @lvl1, 71;
- set @lvl2, 80;
- callfunc "F_PvPRoom";
+// LV71 ~ 80 ------------------------------------
+pvp_y_room.gat,62,85,4 script Fight Square Helper::YHelper5 105,{
+ callfunc "F_PvPRoom", "y_5", 71, 80;
OnInit:
waitingroom "LV71 ~ LV80", 0;
end;
}
-// LV81 ~ 90 ------------------------------------------------------------------------------
-pvp_y_room.gat,70,85,4 script Fight Square Helper::YHelper6 105,
-{
- set @map$, "y_6";
- set @lvl1, 81;
- set @lvl2, 90;
- callfunc "F_PvPRoom";
+// LV81 ~ 90 --------------------------------------
+pvp_y_room.gat,70,85,4 script Fight Square Helper::YHelper6 105,{
+ callfunc "F_PvPRoom", "y_6", 81, 90;
OnInit:
waitingroom "LV81 ~ LV90", 0;
end;
}
-// LV91 ~ ------------------------------------------------------------------------------
-pvp_y_room.gat,78,85,4 script Fight Square Helper::YHelper7 105,
-{
- set @map$, "y_7";
- set @lvl1, 91;
- callfunc "F_PvPRoom";
+// LV91 ~ --------------------------------------------
+pvp_y_room.gat,78,85,4 script Fight Square Helper::YHelper7 105,{
+ callfunc "F_PvPRoom", "y_7", 91, 255;
OnInit:
waitingroom "LV91 ~ ", 0;
end;
}
-// No Limit ------------------------------------------------------------------------------
-pvp_y_room.gat,86,85,4 script Fight Square Helper::YHelper8 105,
-{
- set @map$, "y_8";
- set @lvl1, 0;
- set @lvl2, 200;
- callfunc "F_PvPRoom";
+// No Limit -----------------------------------------
+pvp_y_room.gat,86,85,4 script Fight Square Helper::YHelper8 105,{
+ callfunc "F_PvPRoom", "y_8", 0, 255;
OnInit:
waitingroom "No Limit", 0;
end;
}
-
-//***********************************************************************************************************************************************//
-// PvP Nightmare Mode Fight Square Helpers //
-//***********************************************************************************************************************************************//
-// LV31 ~ 40 ------------------------------------------------------------------------------
-pvp_n_room.gat,30,85,4 script Fight Square Helper#N1 105,
-{
- set @map$, "n_1";
- set @lvl2, 40;
- callfunc "F_PvPRoom";
+//==========================================================================//
+// PvP Nightmare Mode Fight Square Helpers
+//==========================================================================//
+// LV31 ~ 40 -------------------------------------
+pvp_n_room.gat,30,85,4 script Fight Square Helper#N1 105,{
+ callfunc "F_PvPRoom", "n_1", 31, 40;
OnInit:
waitingroom "LV31 ~ LV40",0;
end;
}
-// LV41 ~ 50 ------------------------------------------------------------------------------
-pvp_n_room.gat,38,85,4 script Fight Square Helper#N2 105,
-{
- set @map$, "n_2";
- set @lvl1, 41;
- set @lvl2, 50;
- callfunc "F_PvPRoom";
+// LV41 ~ 50 --------------------------------------
+pvp_n_room.gat,38,85,4 script Fight Square Helper#N2 105,{
+ callfunc "F_PvPRoom", "n_2", 41, 50;
OnInit:
waitingroom "LV41 ~ LV50",0;
end;
}
-// LV51 ~ 60 ------------------------------------------------------------------------------
-pvp_n_room.gat,46,85,4 script Fight Square Helper#N3 105,
-{
- set @map$, "n_3";
- set @lvl1, 51;
- set @lvl2, 60;
- callfunc "F_PvPRoom";
+// LV51 ~ 60 -------------------------------------
+pvp_n_room.gat,46,85,4 script Fight Square Helper#N3 105,{
+ callfunc "F_PvPRoom", "n_3", 51, 60;
OnInit:
waitingroom "LV51 ~ LV60", 0;
end;
}
-// LV61 ~ 70 ------------------------------------------------------------------------------
-pvp_n_room.gat,54,85,4 script Fight Square Helper#N4 105,
-{
- set @map$, "n_4";
- set @lvl1, 61;
- set @lvl2, 70;
- callfunc "F_PvPRoom";
+// LV61 ~ 70 ------------------------------------
+pvp_n_room.gat,54,85,4 script Fight Square Helper#N4 105,{
+ callfunc "F_PvPRoom", "n_4", 61, 70;
OnInit:
waitingroom "LV61 ~ LV70", 0;
end;
}
-// LV71 ~ 80 ------------------------------------------------------------------------------
-pvp_n_room.gat,62,85,4 script Fight Square Helper#N5 105,
-{
- set @map$, "n_5";
- set @lvl1, 71;
- set @lvl2, 80;
- callfunc "F_PvPRoom";
+// LV71 ~ 80 -----------------------------------
+pvp_n_room.gat,62,85,4 script Fight Square Helper#N5 105,{
+ callfunc "F_PvPRoom", "n_5", 71, 80;
OnInit:
waitingroom "LV71 ~ LV80", 0;
end;
}
-// LV81 ~ 90 ------------------------------------------------------------------------------
-pvp_n_room.gat,70,85,4 script Fight Square Helper#N6 105,
-{
- set @map$, "n_6";
- set @lvl1, 81;
- set @lvl2, 90;
- callfunc "F_PvPRoom";
+// LV81 ~ 90 ------------------------------------
+pvp_n_room.gat,70,85,4 script Fight Square Helper#N6 105,{
+ callfunc "F_PvPRoom", "n_6", 81, 90;
OnInit:
waitingroom "LV81 ~ LV90", 0;
end;
}
-// LV91 ~ ------------------------------------------------------------------------------
-pvp_n_room.gat,78,85,4 script Fight Square Helper#N7 105,
-{
- set @map$, "n_7";
- set @lvl1, 91;
- set @lvl2, 255;
- callfunc "F_PvPRoom";
+// LV91 ~ ---------------------------------------
+pvp_n_room.gat,78,85,4 script Fight Square Helper#N7 105,{
+ callfunc "F_PvPRoom", "n_7", 91, 255;
OnInit:
waitingroom "LV91 ~ ", 0;
end;
}
-// No Limit ------------------------------------------------------------------------------
-pvp_n_room.gat,86,85,4 script Fight Square Helper#N8 105,
-{
- set @map$, "n_8";
- set @lvl1, 0;
- set @lvl2, 255;
- callfunc "F_PvPRoom";
+// No Limit ----------------------------------
+pvp_n_room.gat,86,85,4 script Fight Square Helper#N8 105,{
+ callfunc "F_PvPRoom", "n_8", 0, 255;
OnInit:
waitingroom "No Limit", 0;
end;
}
-
-//***********************************************************************************************************************************************************//
-// Function: PvP Fight Square Helper //
-//***********************************************************************************************************************************************************//
+//***************************************************************//
+// Function: PvP Fight Square Helper
+//***************************************************************//
+// arg(0): pvp room name
+// arg(1): minimum base lvl to enter arena
+// arg(2): maximum base lvl allowed to enter arena
+//===============================================
function script F_PvPRoom {
mes "[Fight Square Helper]";
- if(BaseLevel < @lvl1) goto L_LowLvl;
- if(BaseLevel > @lvl2) goto L_HiLvl;
+ if(BaseLevel < getarg(1)) goto L_LowLvl;
+ if(BaseLevel > getarg(2)) goto L_HiLvl;
mes "Please choose an arena to fight in...";
M_Menu:
next;
- menu @room1$ + " [" + getmapusers("pvp_"+@map$ + "-1.gat") + "/" +@players1+ "]",M_Rm1,
- @room2$ + " [" + getmapusers("pvp_"+@map$ + "-2.gat") + "/" +@players2+ "]",M_Rm2,
- @room3$ + " [" + getmapusers("pvp_"+@map$ + "-3.gat") + "/" +@players2+ "]",M_Rm3,
- @room4$ + " [" + getmapusers("pvp_"+@map$ + "-4.gat") + "/" +@players2+ "]",M_Rm4,
- @room5$ + " [" + getmapusers("pvp_"+@map$ + "-5.gat") + "/" +@players2+ "]",M_Rm5, "Cancel",M_End;
+ menu @room1$ + " [" + getmapusers("pvp_" + getarg(0) + "-1.gat") + "/" +@players1+ "]",M_Rm1,
+ @room2$ + " [" + getmapusers("pvp_" + getarg(0) + "-2.gat") + "/" +@players2+ "]",M_Rm2,
+ @room3$ + " [" + getmapusers("pvp_" + getarg(0) + "-3.gat") + "/" +@players2+ "]",M_Rm3,
+ @room4$ + " [" + getmapusers("pvp_" + getarg(0) + "-4.gat") + "/" +@players2+ "]",M_Rm4,
+ @room5$ + " [" + getmapusers("pvp_" + getarg(0) + "-5.gat") + "/" +@players2+ "]",M_Rm5, "Cancel",M_End;
M_Rm1:
- if (getmapusers("pvp_"+@map$+"-1.gat") == @players1) goto L_Full;
- warp "pvp_"+@map$+"-1.gat",0,0;
+ if (getmapusers("pvp_" + getarg(0) + "-1.gat") == @players1) goto L_Full;
+ warp "pvp_" + getarg(0) + "-1.gat",0,0;
end;
M_Rm2:
- if (getmapusers("pvp_"+@map$+"-2.gat") == @players2) goto L_Full;
- warp "pvp_"+@map$+"-2.gat",0,0;
+ if (getmapusers("pvp_" + getarg(0) + "-2.gat") == @players2) goto L_Full;
+ warp "pvp_" + getarg(0) + "-2.gat",0,0;
end;
M_Rm3:
- if (getmapusers("pvp_"+@map$+"-3.gat") == @players2) goto L_Full;
- warp "pvp_"+@map$+"-3.gat",0,0;
+ if (getmapusers("pvp_" + getarg(0) + "-3.gat") == @players2) goto L_Full;
+ warp "pvp_" + getarg(0) + "-3.gat",0,0;
end;
M_Rm4:
- if (getmapusers("pvp_"+@map$+"-4.gat") == @players2) goto L_Full;
- warp "pvp_"+@map$+"-4.gat",0,0;
+ if (getmapusers("pvp_" + getarg(0) + "-4.gat") == @players2) goto L_Full;
+ warp "pvp_" + getarg(0) + "-4.gat",0,0;
end;
M_Rm5:
- if (getmapusers("pvp_"+@map$+"-5.gat") == @players2) goto L_Full;
- warp "pvp_"+@map$+"-5.gat",0,0;
+ if (getmapusers("pvp_" + getarg(0) + "-5.gat") == @players2) goto L_Full;
+ warp "pvp_" + getarg(0) + "-5.gat",0,0;
end;
M_End:
close;
-
L_LowLvl:
mes "I'm sorry but you do not meet the Base Level requirements to enter. Please try a lower level room.";
close;