Browse Source

* Added support for Baby classes in 1-1 job scripts (bugreport:5789).
* Documented some changes from r17131 (tid:76924).
* Follow-up r17131, fixed more minor issues in El Dicastes quests (bugreport:7273).
* Moved "Girl" NPC (from Guillotine Cross job quest) off of ve_fild05, unreachable in Renewal (bugreport:7275).
* Moved "Wincing Old Man" (from quests_veins) to pre-re/re coordinates.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17132 54d463be-8e91-2dee-dedb-b68131a5f0ec

euphyy 12 years ago
parent
commit
2fdc7109a0

+ 14 - 11
doc/script_commands.txt

@@ -2166,7 +2166,7 @@ This function will return the basic stats of an invoking character, referred to
 by the parameter number. Instead of a number, you can use a parameter name if it 
 by the parameter number. Instead of a number, you can use a parameter name if it 
 is defined in 'db/const.txt'.
 is defined in 'db/const.txt'.
 
 
-For reference, these things are defined:
+Some example parameters:
 
 
 StatusPoint, BaseLevel, SkillPoint, Class, Upper, Zeny, Sex, Weight, MaxWeight,
 StatusPoint, BaseLevel, SkillPoint, Class, Upper, Zeny, Sex, Weight, MaxWeight,
 JobLevel, BaseExp, JobExp, NextBaseExp, NextJobExp, Hp, MaxHp, Sp, MaxSp,
 JobLevel, BaseExp, JobExp, NextBaseExp, NextJobExp, Hp, MaxHp, Sp, MaxSp,
@@ -2453,16 +2453,19 @@ This function returns the item ID of the item equipped in the equipment slot
 specified on the invoking character. If nothing is equipped there, it returns -1. 
 specified on the invoking character. If nothing is equipped there, it returns -1. 
 Valid equipment slots are:
 Valid equipment slots are:
 
 
-EQI_HEAD_TOP (1)  - Upper head gear
-EQI_ARMOR (2)     - Armor (Where you keep your Jackets and Robes)
-EQI_HAND_L (3)    - What is in your Left hand.
-EQI_HAND_R (4)    - What is in your Right hand.
-EQI_GARMENT (5)   - The garment slot (Mufflers, Hoods, Manteaus)
-EQI_SHOES (6)     - What foot gear the player has on.
-EQI_ACC_L (7)     - Accessory 1.
-EQI_ACC_R (8)     - Accessory 2.
-EQI_HEAD_MID (9)  - Middle Headgear (masks and glasses)
-EQI_HEAD_LOW (10) - Lower Headgear (beards, some masks)
+EQI_HEAD_TOP (1)          - Upper Headear
+EQI_ARMOR (2)             - Armor (Where you keep your Jackets and Robes)
+EQI_HAND_L (3)            - What is in your Left hand.
+EQI_HAND_R (4)            - What is in your Right hand.
+EQI_GARMENT (5)           - The garment slot (Mufflers, Hoods, Manteaus)
+EQI_SHOES (6)             - What foot gear the player has on.
+EQI_ACC_L (7)             - Accessory 1.
+EQI_ACC_R (8)             - Accessory 2.
+EQI_HEAD_MID (9)          - Middle Headgear (masks and glasses)
+EQI_HEAD_LOW (10)         - Lower Headgear (beards, some masks)
+EQI_COSTUME_HEAD_LOW (11) - Lower Costume Headgear
+EQI_COSTUME_HEAD_MID (12) - Middle Costume Headgear
+EQI_COSTUME_HEAD_TOP (13) - Upper Costume Headgear
 
 
 Notice that a few items occupy several equipment slots, and if the character is 
 Notice that a few items occupy several equipment slots, and if the character is 
 wearing such an item, 'getequipid' will return it's ID number for either slot.
 wearing such an item, 'getequipid' will return it's ID number for either slot.

+ 15 - 0
npc/pre-re/quests/quests_veins.txt

@@ -0,0 +1,15 @@
+//===== rAthena Script ======================================= 
+//= Quest NPCs located in Veins
+//===== By: ================================================== 
+//= Euphy
+//===== Current Version: ===================================== 
+//= 1.0
+//===== Compatible With: ===================================== 
+//= rAthena SVN
+//===== Description: ========================================= 
+//= Quests related to Lighthalzen City.
+//===== Additional Comments: ================================= 
+//= 1.0 First version.
+//============================================================ 
+
+ve_fild05,257,130,4	duplicate(WincingOldMan_veins)	Wincing Old Man#ve	945

+ 1 - 0
npc/pre-re/scripts_athena.conf

@@ -79,3 +79,4 @@ npc: npc/pre-re/other/mercenary_rent.txt
 npc: npc/pre-re/quests/mrsmile.txt
 npc: npc/pre-re/quests/mrsmile.txt
 npc: npc/pre-re/quests/quests_izlude.txt
 npc: npc/pre-re/quests/quests_izlude.txt
 npc: npc/pre-re/quests/quests_lighthalzen.txt
 npc: npc/pre-re/quests/quests_lighthalzen.txt
+npc: npc/pre-re/quests/quests_veins.txt

+ 3 - 2
npc/quests/quests_veins.txt

@@ -3,7 +3,7 @@
 //===== By: ================================================== 
 //===== By: ================================================== 
 //= L0ne_W0lf
 //= L0ne_W0lf
 //===== Current Version: ===================================== 
 //===== Current Version: ===================================== 
-//= 2.1
+//= 2.2
 //===== Compatible With: ===================================== 
 //===== Compatible With: ===================================== 
 //= rAthena SVN
 //= rAthena SVN
 //===== Description: ========================================= 
 //===== Description: ========================================= 
@@ -45,11 +45,12 @@
 //=     - Thor Volcano Base Quest
 //=     - Thor Volcano Base Quest
 //= 2.0 Removed level requirement. (bugreport:4678) [L0ne_W0lf]
 //= 2.0 Removed level requirement. (bugreport:4678) [L0ne_W0lf]
 //= 2.1 Added missing changequest (3071-3076). [Joseph]
 //= 2.1 Added missing changequest (3071-3076). [Joseph]
+//= 2.2 Moved "Wincing Old Man" to pre-re/re coordinates. [Euphy]
 //============================================================ 
 //============================================================ 
 
 
 // Stone Quest
 // Stone Quest
 //============================================================ 
 //============================================================ 
-ve_fild05,257,130,4	script	Wincing Old Man#ve	945,{
+-	script	::WincingOldMan_veins	-1,{
 	if ((MaxWeight - Weight) < 2000 || checkweight(1201,1) == 0) {
 	if ((MaxWeight - Weight) < 2000 || checkweight(1201,1) == 0) {
 		mes "- Wait a moment! -";
 		mes "- Wait a moment! -";
 		mes "- Currently you are carrying -";
 		mes "- Currently you are carrying -";

+ 7 - 8
npc/re/jobs/1-1/acolyte.txt

@@ -3,7 +3,7 @@
 //===== By: ================================================== 
 //===== By: ================================================== 
 //= Kisuka
 //= Kisuka
 //===== Current Version: ===================================== 
 //===== Current Version: ===================================== 
-//= 1.1
+//= 1.2
 //===== Compatible With: ===================================== 
 //===== Compatible With: ===================================== 
 //= rAthena SVN
 //= rAthena SVN
 //===== Description: ========================================= 
 //===== Description: ========================================= 
@@ -11,6 +11,7 @@
 //===== Additional Comments: ================================= 
 //===== Additional Comments: ================================= 
 //= 1.0 First Version. [Kisuka]
 //= 1.0 First Version. [Kisuka]
 //= 1.1 Added back the npcs used for the priest quest.
 //= 1.1 Added back the npcs used for the priest quest.
+//= 1.2 Added support for Baby classes. [Euphy]
 //============================================================ 
 //============================================================ 
 prt_church,184,41,4	script	Cleric#aco	60,{
 prt_church,184,41,4	script	Cleric#aco	60,{
 	if (Upper == 1) {
 	if (Upper == 1) {
@@ -63,16 +64,14 @@ prt_church,184,41,4	script	Cleric#aco	60,{
 	next;
 	next;
 	switch(select("Change your job to acolyte.:Ask the requirements to be an acolyte.:Quit it.")) {
 	switch(select("Change your job to acolyte.:Ask the requirements to be an acolyte.:Quit it.")) {
 	case 1:
 	case 1:
-		if(Class != Job_Novice) {
-			mes "[Father Mareusis]";
-			if(Class == Job_Acolyte) {
+		mes "[Father Mareusis]";
+		if(BaseJob != Job_Novice) {
+			if(BaseJob == Job_Acolyte)
 				mes "Are you feeling okay today? I can tell by your attire that you are already an Acolyte. You're not joking around, are you?";
 				mes "Are you feeling okay today? I can tell by your attire that you are already an Acolyte. You're not joking around, are you?";
-			}else{
+			else
 				mes "I'm sorry but it seems you already have your own job, aren't you?";
 				mes "I'm sorry but it seems you already have your own job, aren't you?";
-			}
 			close;
 			close;
 		}else{
 		}else{
-			mes "[Father Mareusis]";
 			mes "Do you truly wish to become a servant of God?";
 			mes "Do you truly wish to become a servant of God?";
 			mes "Let's see whether you are ready for it or not... Hmm...";
 			mes "Let's see whether you are ready for it or not... Hmm...";
 			next;
 			next;
@@ -87,7 +86,7 @@ prt_church,184,41,4	script	Cleric#aco	60,{
 			next;
 			next;
 			mes "[Father Mareusis]";
 			mes "[Father Mareusis]";
 			mes "Always remember to be thankful to God, who takes care of us all the time. In chaos and times of difficulty, face your hardships with unwavering faith.";
 			mes "Always remember to be thankful to God, who takes care of us all the time. In chaos and times of difficulty, face your hardships with unwavering faith.";
-			jobchange Job_Acolyte;
+			callfunc "Job_Change",Job_Acolyte;
 			getitem 1545,1;	// N_Mace
 			getitem 1545,1;	// N_Mace
 			next;
 			next;
 			mes "[Father Mareusis]";
 			mes "[Father Mareusis]";

+ 9 - 9
npc/re/jobs/1-1/archer.txt

@@ -3,13 +3,14 @@
 //===== By: ================================================== 
 //===== By: ================================================== 
 //= Kisuka
 //= Kisuka
 //===== Current Version: ===================================== 
 //===== Current Version: ===================================== 
-//= 1.0
+//= 1.1
 //===== Compatible With: ===================================== 
 //===== Compatible With: ===================================== 
 //= rAthena SVN
 //= rAthena SVN
 //===== Description: ========================================= 
 //===== Description: ========================================= 
 //= Job Change to Archer Class
 //= Job Change to Archer Class
 //===== Additional Comments: ================================= 
 //===== Additional Comments: ================================= 
 //= 1.0 First Version. [Kisuka]
 //= 1.0 First Version. [Kisuka]
+//= 1.1 Added support for Baby classes. [Euphy]
 //============================================================ 
 //============================================================ 
 payon_in02,64,71,4	script	Archer Guildsman#archer	85,{
 payon_in02,64,71,4	script	Archer Guildsman#archer	85,{
 	if (Upper == 1) {
 	if (Upper == 1) {
@@ -63,18 +64,17 @@ payon_in02,64,71,4	script	Archer Guildsman#archer	85,{
 	next;
 	next;
 	switch(select("I want to be an Archer.:I need the requirements, please.:Nothing, thanks.")) {
 	switch(select("I want to be an Archer.:I need the requirements, please.:Nothing, thanks.")) {
 	case 1:
 	case 1:
-		if(Class != Job_Novice) {
-			mes "[Archer Guildsman]";
-			if(Class == Job_Archer) {
-				mes "Haha, you are kidding me..";
-			}else{
+		mes "[Archer Guildsman]";
+		if(BaseJob != Job_Novice) {
+			if(BaseJob == Job_Archer)
+				mes "Haha, you are kidding me...";
+			else {
 				mes "I feel sorry but only Novices can change their job.";
 				mes "I feel sorry but only Novices can change their job.";
 				mes "You already have your own decent job, don't you?";
 				mes "You already have your own decent job, don't you?";
 			}
 			}
 			close;
 			close;
 		}else{
 		}else{
-			mes "[Archer Guildsman]";
-			mes "You are... "+strcharinfo(0)+". right?";
+			mes "You are... "+strcharinfo(0)+", right?";
 			next;
 			next;
 			if (getskilllv("NV_BASIC") < 9) {
 			if (getskilllv("NV_BASIC") < 9) {
 				mes "[Archer Guildsman]";
 				mes "[Archer Guildsman]";
@@ -92,7 +92,7 @@ payon_in02,64,71,4	script	Archer Guildsman#archer	85,{
 			mes "[Archer Guildsman]";
 			mes "[Archer Guildsman]";
 			mes "Congratulations! You are now an Archer! Also, we hope that you actively participate in many programs for the revival of the Archer Guild.";
 			mes "Congratulations! You are now an Archer! Also, we hope that you actively participate in many programs for the revival of the Archer Guild.";
 			mes "Ah, items have arrived from the Production Department. Here, take these! These are all yours!";
 			mes "Ah, items have arrived from the Production Department. Here, take these! These are all yours!";
-			jobchange Job_Archer;
+			callfunc "Job_Change",Job_Archer;
 			getitem 1742,1;	// N_Composite_Bow
 			getitem 1742,1;	// N_Composite_Bow
 			getitem 12004,1;	// Arrow_Container
 			getitem 12004,1;	// Arrow_Container
 			getitem 12009,1;	// Silver_Arrow_Container
 			getitem 12009,1;	// Silver_Arrow_Container

+ 7 - 8
npc/re/jobs/1-1/mage.txt

@@ -3,13 +3,14 @@
 //===== By: ================================================== 
 //===== By: ================================================== 
 //= Kisuka
 //= Kisuka
 //===== Current Version: ===================================== 
 //===== Current Version: ===================================== 
-//= 1.0
+//= 1.1
 //===== Compatible With: ===================================== 
 //===== Compatible With: ===================================== 
 //= rAthena SVN
 //= rAthena SVN
 //===== Description: ========================================= 
 //===== Description: ========================================= 
 //= Job Change to Mage Class
 //= Job Change to Mage Class
 //===== Additional Comments: ================================= 
 //===== Additional Comments: ================================= 
 //= 1.0 First Version. [Kisuka]
 //= 1.0 First Version. [Kisuka]
+//= 1.1 Added support for Baby classes. [Euphy]
 //============================================================ 
 //============================================================ 
 geffen_in,164,124,4	script	Mage Guildsman#mage	123,{
 geffen_in,164,124,4	script	Mage Guildsman#mage	123,{
 	if (Upper == 1) {
 	if (Upper == 1) {
@@ -52,17 +53,15 @@ geffen_in,164,124,4	script	Mage Guildsman#mage	123,{
 			close;
 			close;
 		}
 		}
 	}
 	}
-	if(Class != Job_Novice) {
-		mes "[Mage Guildsman]";
-		if(Class == Job_Mage) {
+	mes "[Mage Guildsman]";
+	if(BaseJob != Job_Novice) {
+		if(BaseJob == Job_Mage) {
 			mes "Hey, haven't you realized? You're already a Mage, silly!";
 			mes "Hey, haven't you realized? You're already a Mage, silly!";
 			mes "One of these days you'll realize the power inside of you when you can make Fire with your mind!";
 			mes "One of these days you'll realize the power inside of you when you can make Fire with your mind!";
-		}else{
+		} else
 			mes "Hey~ C'mon. Quit playing games. You can't be a Mage because you already have another Job.";
 			mes "Hey~ C'mon. Quit playing games. You can't be a Mage because you already have another Job.";
-		}
 		close;
 		close;
 	}else{
 	}else{
-		mes "[Mage Guildsman]";
 		mes "Hey?";
 		mes "Hey?";
 		next;
 		next;
 		switch(select("I want to be a Mage:What are the requirements to be a Mage?:Nothing, thanks.")) {
 		switch(select("I want to be a Mage:What are the requirements to be a Mage?:Nothing, thanks.")) {
@@ -105,7 +104,7 @@ geffen_in,164,124,4	script	Mage Guildsman#mage	123,{
 			mes "'Welcome to the Mage Guild~'";
 			mes "'Welcome to the Mage Guild~'";
 			mes "Congratulations on becoming a member of the Mage Guild! Go for it!";
 			mes "Congratulations on becoming a member of the Mage Guild! Go for it!";
 			callfunc "Job_Change",Job_Mage;
 			callfunc "Job_Change",Job_Mage;
-			getitem	1639,1; // N_Rod
+			getitem 1639,1;	// N_Rod
 			close;
 			close;
 		case 2:
 		case 2:
 			mes "[Mage Guildsman]";
 			mes "[Mage Guildsman]";

+ 6 - 6
npc/re/jobs/1-1/merchant.txt

@@ -3,13 +3,14 @@
 //===== By: ================================================== 
 //===== By: ================================================== 
 //= Kisuka
 //= Kisuka
 //===== Current Version: ===================================== 
 //===== Current Version: ===================================== 
-//= 1.0
+//= 1.1
 //===== Compatible With: ===================================== 
 //===== Compatible With: ===================================== 
 //= rAthena SVN
 //= rAthena SVN
 //===== Description: ========================================= 
 //===== Description: ========================================= 
 //= Job Change to Merchant Class
 //= Job Change to Merchant Class
 //===== Additional Comments: ================================= 
 //===== Additional Comments: ================================= 
 //= 1.0 First Version. [Kisuka]
 //= 1.0 First Version. [Kisuka]
+//= 1.1 Added support for Baby classes. [Euphy]
 //============================================================ 
 //============================================================ 
 alberta_in,53,43,6	script	Merchant#mer	86,{
 alberta_in,53,43,6	script	Merchant#mer	86,{
 	if (Upper == 1) {
 	if (Upper == 1) {
@@ -57,9 +58,9 @@ alberta_in,53,43,6	script	Merchant#mer	86,{
 	next;
 	next;
 	switch(select("I want to be a merchant.:I want to know more about merchants.:Ask him the requirements to be a merchant.:Nothing.")) {
 	switch(select("I want to be a merchant.:I want to know more about merchants.:Ask him the requirements to be a merchant.:Nothing.")) {
 	case 1:
 	case 1:
-		if(Class != Job_Novice) {
-			mes "[Guildsman Mahnsoo]";
-			if(Class == Job_Merchant) {
+		mes "[Guildsman Mahnsoo]";
+		if(BaseJob != Job_Novice) {
+			if(BaseJob == Job_Merchant) {
 				mes ".....? Sorry? What are you saying?";
 				mes ".....? Sorry? What are you saying?";
 				mes "You are already a merchant. Oh my..";
 				mes "You are already a merchant. Oh my..";
 				mes "Huh?! ...Do I need to laugh right now?!";
 				mes "Huh?! ...Do I need to laugh right now?!";
@@ -72,7 +73,6 @@ alberta_in,53,43,6	script	Merchant#mer	86,{
 			}
 			}
 			close;
 			close;
 		}else{
 		}else{
-			mes "[Guildsman Mahnsoo]";
 			mes "Want to be a merchant? Hmm...";
 			mes "Want to be a merchant? Hmm...";
 			next;
 			next;
 			if (getskilllv("NV_BASIC") < 9) {
 			if (getskilllv("NV_BASIC") < 9) {
@@ -91,7 +91,7 @@ alberta_in,53,43,6	script	Merchant#mer	86,{
 			mes "Congratulations on becoming a merchant!";
 			mes "Congratulations on becoming a merchant!";
 			mes "Congratulations again for being a member of the merchant guild and one of our colleagues. I expect your active participation from now on!";
 			mes "Congratulations again for being a member of the merchant guild and one of our colleagues. I expect your active participation from now on!";
 			callfunc "Job_Change",Job_Merchant;
 			callfunc "Job_Change",Job_Merchant;
-			getitem	1381,1; // N_Battle_Axe
+			getitem 1381,1;	// N_Battle_Axe
 			next;
 			next;
 			mes "[Guildsman Mahnsoo]";
 			mes "[Guildsman Mahnsoo]";
 			mes "Absolutely, we need young people who have passion to achieve our great goal for securing 20% of the worldwide currency volume. You get it? Huh?";
 			mes "Absolutely, we need young people who have passion to achieve our great goal for securing 20% of the worldwide currency volume. You get it? Huh?";

+ 5 - 6
npc/re/jobs/1-1/swordman.txt

@@ -3,13 +3,14 @@
 //===== By: ================================================== 
 //===== By: ================================================== 
 //= Kisuka
 //= Kisuka
 //===== Current Version: ===================================== 
 //===== Current Version: ===================================== 
-//= 1.0
+//= 1.1
 //===== Compatible With: ===================================== 
 //===== Compatible With: ===================================== 
 //= rAthena SVN
 //= rAthena SVN
 //===== Description: ========================================= 
 //===== Description: ========================================= 
 //= Job Change to Swordman Class
 //= Job Change to Swordman Class
 //===== Additional Comments: ================================= 
 //===== Additional Comments: ================================= 
 //= 1.0 First Version. [Kisuka]
 //= 1.0 First Version. [Kisuka]
+//= 1.1 Added support for Baby classes. [Euphy]
 //============================================================ 
 //============================================================ 
 izlude_in,74,172,4	script	Swordman#swd	119,{
 izlude_in,74,172,4	script	Swordman#swd	119,{
 	if (Upper == 1) {
 	if (Upper == 1) {
@@ -80,9 +81,9 @@ izlude_in,74,172,4	script	Swordman#swd	119,{
 		mes "In my opinion, Swordman is the best job ever!";
 		mes "In my opinion, Swordman is the best job ever!";
 		close;
 		close;
 	case 2:
 	case 2:
-		if(Class != Job_Novice) {
-			mes "[Swordman Guildsman]";
-			if(Class == Job_Swordman) {
+		mes "[Swordman Guildsman]";
+		if(BaseJob != Job_Novice) {
+			if(BaseJob == Job_Swordman) {
 				mes "You are already an excellent Swordman, aren't you?";
 				mes "You are already an excellent Swordman, aren't you?";
 				mes "Just devote yourself to be a great Swordman.";
 				mes "Just devote yourself to be a great Swordman.";
 			}else{
 			}else{
@@ -92,7 +93,6 @@ izlude_in,74,172,4	script	Swordman#swd	119,{
 			close;
 			close;
 		}else{
 		}else{
 			if (getskilllv("NV_BASIC") < 9) {
 			if (getskilllv("NV_BASIC") < 9) {
-				mes "[Swordman Guildsman]";
 				mes "I'm sorry to tell you this but to be a Swordman, you must reach at least ^4A4AFFJob Level 10^000000.";
 				mes "I'm sorry to tell you this but to be a Swordman, you must reach at least ^4A4AFFJob Level 10^000000.";
 				mes "and ^4A4AFFBasic Skill Level 9^000000.";
 				mes "and ^4A4AFFBasic Skill Level 9^000000.";
 				next;
 				next;
@@ -101,7 +101,6 @@ izlude_in,74,172,4	script	Swordman#swd	119,{
 				mes "Do you think being a Swordman is that easy?";
 				mes "Do you think being a Swordman is that easy?";
 				close;
 				close;
 			}
 			}
-			mes "[Swordman Guildsman]";
 			mes "Hmm, both your Job Level and Basic Skill Level check out.";
 			mes "Hmm, both your Job Level and Basic Skill Level check out.";
 			mes "Good. Do you want to be a Swordman right away?";
 			mes "Good. Do you want to be a Swordman right away?";
 			next;
 			next;

+ 15 - 20
npc/re/jobs/1-1/thief.txt

@@ -3,13 +3,14 @@
 //===== By: ================================================== 
 //===== By: ================================================== 
 //= Kisuka
 //= Kisuka
 //===== Current Version: ===================================== 
 //===== Current Version: ===================================== 
-//= 1.0
+//= 1.1
 //===== Compatible With: ===================================== 
 //===== Compatible With: ===================================== 
 //= rAthena SVN
 //= rAthena SVN
 //===== Description: ========================================= 
 //===== Description: ========================================= 
 //= Job Change to Thief Class
 //= Job Change to Thief Class
 //===== Additional Comments: ================================= 
 //===== Additional Comments: ================================= 
 //= 1.0 First Version. [Kisuka]
 //= 1.0 First Version. [Kisuka]
+//= 1.1 Added support for Baby classes. [Euphy]
 //============================================================ 
 //============================================================ 
 moc_prydb1,39,129,2	script	Thief Guide#thief	69,{
 moc_prydb1,39,129,2	script	Thief Guide#thief	69,{
 	if (Upper == 1) {
 	if (Upper == 1) {
@@ -65,39 +66,33 @@ moc_prydb1,39,129,2	script	Thief Guide#thief	69,{
 		mes "If you want to become a Thief, ask the sharp-eyed guy next to me.";
 		mes "If you want to become a Thief, ask the sharp-eyed guy next to me.";
 		close;
 		close;
 	}
 	}
-	if(Class != Job_Novice) {
-		if(Class == Job_Thief) {
-			mes "[Thief Guildsman]";
+	mes "[Thief Guildsman]";
+	if(BaseJob != Job_Novice) {
+		if(BaseJob == Job_Thief) {
 			mes "Hey~ if you have any trouble, get it out to me anytime, huh?";
 			mes "Hey~ if you have any trouble, get it out to me anytime, huh?";
 			close;
 			close;
 		}else{
 		}else{
+			mes "What the heck...?";
 			if(Sex) {
 			if(Sex) {
-				mes "[Thief Guildsman]";
-				mes "What the heck...?";
-				mes "Huh.. you are a "+jobname(Class)+" blockhead...!";
+				mes "Huh... you are a "+jobname(Class)+", blockhead!";
 				next;
 				next;
 				mes "[Thief Guildsman]";
 				mes "[Thief Guildsman]";
 				mes "Hey, brother.";
 				mes "Hey, brother.";
-				mes "Why are you here? Go back to your place~ go back~~";
-				close;
 			}else{
 			}else{
-				mes "[Thief Guildsman]";
-				mes "What the heck...?";
 				next;
 				next;
 				mes "[Thief Guildsman]";
 				mes "[Thief Guildsman]";
 				mes "Hey, lady.";
 				mes "Hey, lady.";
-				mes "Why are you here? Go back to your place~ go back~~";
-				close;
 			}
 			}
+			mes "Why are you here? Go back to your place~ go back~~";
+			close;
 		}
 		}
 	}
 	}
-	mes "[Thief Guildsman]";
 	mes "Ehh... Seems like a beloved "+(Sex?"son":"daughter")+" of a rich family, but why are you here in this dirty place?";
 	mes "Ehh... Seems like a beloved "+(Sex?"son":"daughter")+" of a rich family, but why are you here in this dirty place?";
 	next;
 	next;
 	if(select("I want to be a Thief.:Nothing.") == 2) {
 	if(select("I want to be a Thief.:Nothing.") == 2) {
 		mes "[Thief Guildsman]";
 		mes "[Thief Guildsman]";
-		mes "You know you cannot be a thief without an application.....";
-		mes "What's on your mind..?";
+		mes "You know you cannot be a thief without an application...";
+		mes "What's on your mind...?";
 		close;
 		close;
 	}
 	}
 	mes "[Thief Guildsman]";
 	mes "[Thief Guildsman]";
@@ -169,9 +164,9 @@ moc_prydb1,42,133,2	script	Thief Guildsman#thief	118,{
 		mes "[Commander of Thief Guild]";
 		mes "[Commander of Thief Guild]";
 		mes "'"+strcharinfo(0)+".'";
 		mes "'"+strcharinfo(0)+".'";
 		mes "'For those who are ready, the moonlight shall open the way. Now you are fully ready, I now officially allow you to become a member of the Thief Guild.'";
 		mes "'For those who are ready, the moonlight shall open the way. Now you are fully ready, I now officially allow you to become a member of the Thief Guild.'";
-		jobchange Job_Thief;
+		callfunc "Job_Change",Job_Thief;
 		set q_job_thief,0;
 		set q_job_thief,0;
-		getitem 13041,1; // N_Main_Gauche
+		getitem 13041,1;	// N_Main_Gauche
 		next;
 		next;
 		mes "[Commander of Thief Guild]";
 		mes "[Commander of Thief Guild]";
 		mes "'Congratulations on becoming a Thief.'";
 		mes "'Congratulations on becoming a Thief.'";
@@ -189,8 +184,8 @@ moc_prydb1,42,133,2	script	Thief Guildsman#thief	118,{
 		mes "See you again.";
 		mes "See you again.";
 		close;
 		close;
 	}
 	}
-	if(Class != Job_Novice) {
-		if(Class == Job_Thief) {
+	if(BaseJob != Job_Novice) {
+		if(BaseJob == Job_Thief) {
 			mes "[Brad]";
 			mes "[Brad]";
 			mes "I don't have any special events now. So go on your way and come back later.";
 			mes "I don't have any special events now. So go on your way and come back later.";
 		}else{
 		}else{

+ 9 - 7
npc/re/jobs/3-1/guillotine_cross.txt

@@ -3,7 +3,7 @@
 //===== By: ================================================== 
 //===== By: ================================================== 
 //= Muad_Dib
 //= Muad_Dib
 //===== Current Version: ===================================== 
 //===== Current Version: ===================================== 
-//= 1.1
+//= 1.2
 //===== Compatible With: ===================================== 
 //===== Compatible With: ===================================== 
 //= rAthena SVN r16945+
 //= rAthena SVN r16945+
 //===== Description: ========================================= 
 //===== Description: ========================================= 
@@ -14,6 +14,7 @@
 //= 1.0a Added 'npcskill' command. [Euphy]
 //= 1.0a Added 'npcskill' command. [Euphy]
 //= 1.0b Moved warps to separate file. [Euphy]
 //= 1.0b Moved warps to separate file. [Euphy]
 //= 1.1 Fixed some minor bugs. [Euphy]
 //= 1.1 Fixed some minor bugs. [Euphy]
+//= 1.2 Moved "Girl" NPC off ve_fild05. [Euphy]
 //============================================================
 //============================================================
 
 
 que_job01,75,96,3	script	Guild Member#3rdgc01	997,{
 que_job01,75,96,3	script	Guild Member#3rdgc01	997,{
@@ -2646,7 +2647,8 @@ ra_in01,175,196,3	script	Oresa Rava#3rdgc13	866,{
 	}
 	}
 }
 }
 
 
-ve_fild05,327,308,3	script	Girl#3rdgc14	466,{
+//Pre-RE: ve_fild05 (327,308)
+ve_fild02,330,384,3	script	Girl#3rdgc14	466,{
 	if (job_3rd_gc > 14 && job_3rd_gc < 18) {
 	if (job_3rd_gc > 14 && job_3rd_gc < 18) {
 		mes "[Renzak]";
 		mes "[Renzak]";
 		if (job_3rd_gc == 15) {
 		if (job_3rd_gc == 15) {
@@ -2744,7 +2746,7 @@ OnTouch:
 	} else {
 	} else {
 		mes "You don't have to come here.";
 		mes "You don't have to come here.";
 		close2;
 		close2;
-		warp "ve_fild05",341,303;
+		warp "ve_fild02",330,379;	//Pre-RE: ve_fild05 (341,303)
 		set $@3rdgc_room02, 0;
 		set $@3rdgc_room02, 0;
 	}
 	}
 	end;
 	end;
@@ -2752,7 +2754,7 @@ OnTimer900000:
 	mapannounce "job3_guil03","Renzak : Withdraw!",bc_map,"0xA8A8A8"; //FW_NORMAL 12 0 0
 	mapannounce "job3_guil03","Renzak : Withdraw!",bc_map,"0xA8A8A8"; //FW_NORMAL 12 0 0
 	end;
 	end;
 OnTimer901000:
 OnTimer901000:
-	mapwarp "job3_guil03","ve_fild05",341,303;
+	mapwarp "job3_guil03","ve_fild02",330,379;	//Pre-RE: ve_fild05 (341,303)
 	end;
 	end;
 OnTimer902000:
 OnTimer902000:
 	donpcevent "#3rdgc_event_master::OnReset";
 	donpcevent "#3rdgc_event_master::OnReset";
@@ -3444,7 +3446,7 @@ job3_guil03,111,51,7	script	Priest from Rachel	928,{
 	mes "Who are you?";
 	mes "Who are you?";
 	mes "Get out of here.";
 	mes "Get out of here.";
 	close2;
 	close2;
-	warp "ve_fild05",341,303;
+	warp "ve_fild02",330,379;	//Pre-RE: ve_fild05 (341,303)
 	end;
 	end;
 OnInit:
 OnInit:
 OnDisable:
 OnDisable:
@@ -3471,7 +3473,7 @@ OnTimer40000:
 	mapannounce "job3_guil03","Renzak : Don't lag!",bc_map,"0x4d4dff"; //FW_NORMAL 12 0 0
 	mapannounce "job3_guil03","Renzak : Don't lag!",bc_map,"0x4d4dff"; //FW_NORMAL 12 0 0
 	end;
 	end;
 OnTimer60000:
 OnTimer60000:
-	mapwarp "job3_guil03","ve_fild05",341,303;
+	mapwarp "job3_guil03","ve_fild02",330,379;	//Pre-RE: ve_fild05 (341,303)
 	end;
 	end;
 OnTimer61000:
 OnTimer61000:
 	donpcevent "#3rdgc_guard::OnStop";
 	donpcevent "#3rdgc_guard::OnStop";
@@ -3902,7 +3904,7 @@ job3_guil03,1,8,0	script	#GMhelper02_gc	844,{
 				donpcevent "#3rdgc_event01::OnEnable";
 				donpcevent "#3rdgc_event01::OnEnable";
 				set $@3rdgc_room02, 0;
 				set $@3rdgc_room02, 0;
 				close2;
 				close2;
-				mapwarp "job3_guil03","ve_fild05",341,303;
+				mapwarp "job3_guil03","ve_fild02",330,379;	//Pre-RE: ve_fild05 (341,303)
 				end;
 				end;
 			}
 			}
 		case 2:
 		case 2:

+ 27 - 48
npc/re/quests/quests_dicastes.txt

@@ -597,7 +597,7 @@ dic_in01,51,270,7	script	Supply Dept. 1 Manager	449,{
 		mes "Cannot proceed because the weight of your items is too heavy. Let's try again after you get rid of some weight.";
 		mes "Cannot proceed because the weight of your items is too heavy. Let's try again after you get rid of some weight.";
 		close;
 		close;
 	}
 	}
-	if (!isequipped(2782) < 1) {
+	if (!isequipped(2782)) {
 		mes "□ⅲ◆";
 		mes "□ⅲ◆";
 		mes "■▲◇ ⅲ ■●★ ※ ○⒉ⅲ";
 		mes "■▲◇ ⅲ ■●★ ※ ○⒉ⅲ";
 		next;
 		next;
@@ -878,7 +878,7 @@ dic_in01,40,193,1	script	Papyrus#0001	453,{
 		mes "Your inventory is too heavy.";
 		mes "Your inventory is too heavy.";
 		close;
 		close;
 	}
 	}
-	if (isequipped(2782)) {
+	if (!isequipped(2782)) {
 		mes "□ⅲ◆";
 		mes "□ⅲ◆";
 		mes "■▲◇ ⅲ ■●★ ※ ○⒉ⅲ";
 		mes "■▲◇ ⅲ ■●★ ※ ○⒉ⅲ";
 		next;
 		next;
@@ -6669,7 +6669,7 @@ man_in01,315,52,3	script	Guard Captain Avalanche	450,{
 	}
 	}
 	else if (ep13_3_invite == 6) {
 	else if (ep13_3_invite == 6) {
 		mes "[Avalanche]";
 		mes "[Avalanche]";
-		mes "Oh.. You have the Light of El Dicastes.";
+		mes "Oh... You have the Light of El Dicastes.";
 		mes "it would be helpful for your travel.";
 		mes "it would be helpful for your travel.";
 		next;
 		next;
 		mes "[Avalanche]";
 		mes "[Avalanche]";
@@ -6687,7 +6687,7 @@ man_in01,315,52,3	script	Guard Captain Avalanche	450,{
 	next;
 	next;
 	mes "[Avalanche]";
 	mes "[Avalanche]";
 	mes "Always take care of yourself at all times.";
 	mes "Always take care of yourself at all times.";
-	mes "Haha.. but then you humans are very strong.";
+	mes "Haha... but then you humans are very strong.";
 	close;
 	close;
 }
 }
 
 
@@ -6942,8 +6942,7 @@ dic_in01,42,264,3	script	Adventurer Clerk#ep133	453,{
 			mes "But of course, since this is adding spells on top of its original magic, I cannot guarantee that you will get what you want on one try.";
 			mes "But of course, since this is adding spells on top of its original magic, I cannot guarantee that you will get what you want on one try.";
 			close;
 			close;
 		}
 		}
-		if (countitem(2844) < 1) //Luz de El Dicastes
-		{
+		if (countitem(2844) < 1) {
 			mes "[Kareka]";
 			mes "[Kareka]";
 			mes "Either you are not wearing or don't have the equipment to upgrade on you.";
 			mes "Either you are not wearing or don't have the equipment to upgrade on you.";
 			close;
 			close;
@@ -7320,8 +7319,9 @@ dic_fild01,228,159,4	script	Jahbong#pa0829	496,{
 	mes "Why are you here?";
 	mes "Why are you here?";
 	mes "Jahbong will exchange ^8000801 Sapha Certification^000000 for ^8000801 item^000000!";
 	mes "Jahbong will exchange ^8000801 Sapha Certification^000000 for ^8000801 item^000000!";
 	next;
 	next;
-	switch(select("Just came to see what you have.:I want the Feral Boots!:Give me the Feral Tail!:Give me the Golden Bell!:How much to buy you?")) {
-		case 1:
+	set .@i, select("Just came to see what you have.:I want the Feral Boots!:Give me the Feral Tail!:Give me the Golden Bell!:How much to buy you?")-1;
+	switch (.@i) {
+		case 0:
 			mes "[Jahbong]";
 			mes "[Jahbong]";
 			mes "Meow!";
 			mes "Meow!";
 			next;
 			next;
@@ -7337,46 +7337,7 @@ dic_fild01,228,159,4	script	Jahbong#pa0829	496,{
 			mes "[Jahbong]";
 			mes "[Jahbong]";
 			mes "There are some crazy adventurers asking if they can purchase me! Jahbong is not for sale! I'll just bite you if you ask!!";
 			mes "There are some crazy adventurers asking if they can purchase me! Jahbong is not for sale! I'll just bite you if you ask!!";
 			close;
 			close;
-		case 2:
-			mes "[Jahbong]";
-			mes "Are you really buying something?!";
-			next;
-			if(select("Nope:Give me!!!")==1) {
-				mes "[Jahbong]";
-				mes "Okay!";
-				close; }
-			mes "[Jahbong]";
-			mes "Here you go!";
-			delitem 6304,1;
-			getitem 2463,1;
-			close;
-		case 3:
-			mes "[Jahbong]";
-			mes "Are you really buying something?!";
-			next;
-			if(select("Nope:Give me!!!")==1) {
-				mes "[Jahbong]";
-				mes "Okay!";
-				close; }
-			mes "[Jahbong]";
-			mes "Here you go!";
-			delitem 6304,1;
-			getitem 2564,1;
-			close;
 		case 4:
 		case 4:
-			mes "[Jahbong]";
-			mes "Are you really buying something?!";
-			next;
-			if(select("Nope:Give me!!!")==1) {
-				mes "[Jahbong]";
-				mes "Okay!";
-				close; }
-			mes "[Jahbong]";
-			mes "Here you go!";
-			delitem 6304,1;
-			getitem 2843,1;
-			close;
-		case 5:
 			mes "[Jahbong]";
 			mes "[Jahbong]";
 			mes "Meooooooooooow!!!!!!!!~~ Meooooooooow!!!!!";
 			mes "Meooooooooooow!!!!!!!!~~ Meooooooooow!!!!!";
 			next;
 			next;
@@ -7387,7 +7348,25 @@ dic_fild01,228,159,4	script	Jahbong#pa0829	496,{
 			next;
 			next;
 			mes "- He may react extremely, but Jahbong doesn't seem to be really angry. -";
 			mes "- He may react extremely, but Jahbong doesn't seem to be really angry. -";
 			close;
 			close;
-		}
+		default:
+			break;
+	}
+	mes "[Jahbong]";
+	mes "Are you really buying something?!";
+	next;
+	switch(select("Nope:Give me!!!")) {
+		case 1:
+			mes "[Jahbong]";
+			mes "Okay!";
+			close;
+		case 2:
+			setarray .@items[1],2463,2564,2843;
+			mes "[Jahbong]";
+			mes "Here you go!";
+			delitem 6304,1;
+			getitem .@items[.@i],1;
+			close;
+	}
 }
 }
 
 
 // Cat Hand Agent
 // Cat Hand Agent

+ 15 - 0
npc/re/quests/quests_veins.txt

@@ -0,0 +1,15 @@
+//===== rAthena Script ======================================= 
+//= Quest NPCs located in Veins
+//===== By: ================================================== 
+//= Euphy
+//===== Current Version: ===================================== 
+//= 1.0
+//===== Compatible With: ===================================== 
+//= rAthena SVN
+//===== Description: ========================================= 
+//= Quests related to Veins.
+//===== Additional Comments: ================================= 
+//= 1.0 First version.
+//============================================================ 
+
+ve_fild02,337,314,4	duplicate(WincingOldMan_veins)	Wincing Old Man#ve	945

+ 1 - 0
npc/re/scripts_athena.conf

@@ -81,3 +81,4 @@ npc: npc/re/quests/quests_dicastes.txt
 npc: npc/re/quests/quests_izlude.txt
 npc: npc/re/quests/quests_izlude.txt
 npc: npc/re/quests/quests_lighthalzen.txt
 npc: npc/re/quests/quests_lighthalzen.txt
 npc: npc/re/quests/quests_malangdo.txt
 npc: npc/re/quests/quests_malangdo.txt
+npc: npc/re/quests/quests_veins.txt