瀏覽代碼

Fixes some bug in npc/cities folder and corrected syntax
Corrected some npc view

Atemo 9 年之前
父節點
當前提交
befc6123be

+ 173 - 176
npc/cities/alberta.txt

@@ -1,14 +1,14 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Alberta Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= DZeroX
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 1.6
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= Town-specific Alberta NPCs
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= 1.0 Converted from Aegis 10.4 [DZeroX]
 //= 1.1 Optimized, missing next, REMOVED .GATs! again [Lupus]
 //= 1.2 Implemented progression fixes provided by $ephiroth. [L0ne_W0lf]
@@ -17,6 +17,7 @@
 //= 1.4 Removed "Fastidious Old Man" duplicate. [L0ne_W0lf]
 //= 1.5 Updated to match AEGIS script. [Kisuka]
 //= 1.6 Added Izlude RE coordinates. [Euphy]
+//= 1.7 Bug fixes and syntax. [Capuche]
 //============================================================
 
 alberta,97,51,0	script	Fabian	84,{
@@ -48,7 +49,7 @@ alberta,53,39,0	script	Steiner	100,{
 	close;
 }
 
-alberta,20,183,0	script	Chad	49,{
+alberta_in,20,183,0	script	Chad	1_M_03,{
 	mes "[Chad]";
 	mes "People say the legendary weapon Gungnir never misses its target. I wonder if it's possibly true...";
 	next;
@@ -63,50 +64,50 @@ alberta,20,183,0	script	Chad	49,{
 	close;
 }
 
-alberta,131,139,2	script	Drunken Old Man	54,{
+alberta,131,139,2	script	Drunken Old Man	1_M_JOBGUIDER,{
 	mes "[Deagle]";
 	mes "^666666*Hiccup*^000000";
 	mes "Wh-what are you";
 	mes "staring at? Get lost!!";
 	next;
 	switch(select("Say nothing.","Leave him alone.")) {
+	case 1:
+		mes "[Deagle]";
+		mes "Hahahaha ^666666*hiccup*^000000... You've got some nerve. I may look worthless now, but I used to be a sailor on the 'Going Mary.'";
+		next;
+		switch(select("Never heard of it.","Really? No kidding!")) {
 		case 1:
 			mes "[Deagle]";
-			mes "Hahahaha ^666666*hiccup*^000000... You've got some nerve. I may look worthless now, but I used to be a sailor on the 'Going Mary.'";
+			mes "Never heard of it?! Everybody knows th'notorious pirate ship 'Going Mary!' ^666666*Hiccup~*^000000";
 			next;
-			switch(select("Never heard of it.","Really? No kidding!")) {
-				case 1:
-					mes "[Deagle]";
-					mes "Never heard of it?! Everybody knows th'notorious pirate ship 'Going Mary!' ^666666*Hiccup~*^000000";
-					next;
-					mes "[Deagle]";
-					mes "Ah~ The ol'days. If only... If only we hadn't run into that STORM...^666666*hiccup*^000000";
-					next;
-					mes "[Deagle]";
-					mes "AH~ Captain. I miss our cap'n more than anything... No foe survived before cap'n's sword.";
-					close;
-				case 2:
-					mes "[Deagle]";
-					mes "That's right! NOBODY meshes with the crew of the 'Going Mary!' And nobody can beat out cap'n in a sword fight!";
-					next;
-					mes "[Deagle]";
-					mes "CAPTAIN~!!! ^666666*HICCUP~*^000000 He would swing his sword like this, then... THEN!!";
-					next;
-					mes "[Deagle]";
-					mes "The bastard the captain was fighting, and anyone of his friends near him, were surrounded in flame!";
-					next;
-					mes "[Deagle]";
-					mes "Man, that sword must have had some sort of mysterious power, or the captain was just that good...!";
-					next;
-					mes "[Deagle]";
-					mes "Phew~~ ^666666*Sob* *Sob...*^000000 God, I miss everyone! Now I'm depressed! Please, go away now.";
-					close;
-			}
+			mes "[Deagle]";
+			mes "Ah~ The ol'days. If only... If only we hadn't run into that STORM...^666666*hiccup*^000000";
+			next;
+			mes "[Deagle]";
+			mes "AH~ Captain. I miss our cap'n more than anything... No foe survived before cap'n's sword.";
+			close;
 		case 2:
 			mes "[Deagle]";
-			mes "That's right!";
-			mes "Go AWAY~";
+			mes "That's right! NOBODY meshes with the crew of the 'Going Mary!' And nobody can beat out cap'n in a sword fight!";
+			next;
+			mes "[Deagle]";
+			mes "CAPTAIN~!!! ^666666*HICCUP~*^000000 He would swing his sword like this, then... THEN!!";
+			next;
+			mes "[Deagle]";
+			mes "The bastard the captain was fighting, and anyone of his friends near him, were surrounded in flame!";
+			next;
+			mes "[Deagle]";
+			mes "Man, that sword must have had some sort of mysterious power, or the captain was just that good...!";
+			next;
+			mes "[Deagle]";
+			mes "Phew~~ ^666666*Sob* *Sob...*^000000 God, I miss everyone! Now I'm depressed! Please, go away now.";
 			close;
+		}
+	case 2:
+		mes "[Deagle]";
+		mes "That's right!";
+		mes "Go AWAY~";
+		close;
 	}
 }
 
@@ -194,52 +195,52 @@ alberta,93,174,2	script	Grandmother Alma	103,{
 	close;
 }
 
-alberta,189,151,5	script	Fisk	100,{
+alberta,189,151,5	script	Fisk	4W_SAILOR,{
 	mes "[Fisk]";
 	mes "Ahoy mate,";
 	mes "where'd ya";
 	mes "wanna go?";
 	next;
 	switch(select("Sunken Ship -> 250 zeny.","Izlude Marina -> 500 zeny.","Never mind.")) {
-		case 1:
-			if (Zeny < 250) {
-				mes "[Fisk]";
-				mes "Hey now, don't try to cheat me! I said 250 zeny!";
-				close;
-			}
-			set Zeny,Zeny - 250;
-			warp "alb2trea",43,53;
-			end;
-		case 2:
-			if (Zeny < 500) {
-				mes "[Fisk]";
-				mes "Ain't no way yer getting there without the 500 zeny first!";
-				close;
-			}
-			set Zeny,Zeny - 500;
-			if(checkre(0))
-				warp "izlude",195,212;
-			else
-				warp "izlude",176,182;
-			end;
-		case 3:
+	case 1:
+		if (Zeny < 250) {
+			mes "[Fisk]";
+			mes "Hey now, don't try to cheat me! I said 250 zeny!";
+			close;
+		}
+		Zeny = Zeny - 250;
+		warp "alb2trea",43,53;
+		end;
+	case 2:
+		if (Zeny < 500) {
 			mes "[Fisk]";
-			mes "Alright...";
-			mes "Landlubber.";
+			mes "Ain't no way yer getting there without the 500 zeny first!";
 			close;
+		}
+		Zeny = Zeny - 500;
+		if (checkre(0))
+			warp "izlude",195,212;
+		else
+			warp "izlude",176,182;
+		end;
+	case 3:
+		mes "[Fisk]";
+		mes "Alright...";
+		mes "Landlubber.";
+		close;
 	}
 }
 
-alb2trea,39,50,6	script	Fisk#a2t	100,{
+alb2trea,39,50,6	script	Fisk#a2t	4W_SAILOR,{
 	mes "[Fisk]";
 	mes "So you wanna head back to the mainland in Alberta, eh?";
 	next;
-	if(select("Yes please.","I changed my mind.")==1)
+	if (select("Yes please.","I changed my mind.") == 1)
 		warp "alberta",192,169;
 	close;
 }
 
-alberta,195,151,2	script	Paul	86,{
+alberta,195,151,2	script	Paul	4_M_04,{
 	mes "[Paul]";
 	mes "Good day~";
 	mes "Would you like";
@@ -258,30 +259,28 @@ alberta,195,151,2	script	Paul	86,{
 	mes "200 Zeny.";
 	next;
 	switch(select("Sign me up!","Uh, no thanks.")) {
-		case 1:
-			if (Zeny < 200) {
-				mes "[Paul]";
-				mes "It seems you don't have the money, my friend. But please come back when you're able to pay.";
-				close;
-			} else {
-				set Zeny,Zeny - 200;
-				warp "alb2trea",62,69;
-				close;
-			}
-		case 2:
+	case 1:
+		if (Zeny < 200) {
 			mes "[Paul]";
-			mes "Alright, well...";
-			mes "I'll be around";
-			mes "if you change";
-			mes "your mind.";
+			mes "It seems you don't have the money, my friend. But please come back when you're able to pay.";
 			close;
+		}
+		Zeny = Zeny - 200;
+		warp "alb2trea",62,69;
+		close;
+	case 2:
+		mes "[Paul]";
+		mes "Alright, well...";
+		mes "I'll be around";
+		mes "if you change";
+		mes "your mind.";
+		close;
 	}
 }
 
-alberta,190,173,4	script	Phelix	85,{
-	set .@weight,MaxWeight-Weight;
+alberta,190,173,4	script	Phelix	4_M_03,{
 	mes "[Phelix]";
-	if ((.@weight) < 10000) {
+	if ((MaxWeight - Weight) < 10000) {
 		mes "Wait a moment!!";
 		mes "You have brought too many things!";
 		mes "You cannot accept any more items!";
@@ -299,113 +298,111 @@ alberta,190,173,4	script	Phelix	85,{
 		next;
 		mes "[Phelix]";
 		mes "If you're interested in my offer, get me the stuff I mentioned.";
-		set @event_zelopy,1;
+		@event_zelopy = 1;
 		close;
-	} else {
-		mes "Hmm.. you want to exchange jellopies for Red Potions or some Carrots eh? Well.. which one?";
+	}
+	mes "Hmm.. you want to exchange jellopies for Red Potions or some Carrots eh? Well.. which one?";
+	next;
+	switch(select("Red Potions please.","Carrots please.")) {
+	case 1:
+		mes "[Phelix]";
+		mes "Alright...";
+		mes "Let's see";
+		mes "what'cha got...";
 		next;
-		switch(select("Red Potions please.","Carrots please.")) {
-		case 1:
-			mes "[Phelix]";
-			mes "Alright...";
-			mes "Let's see";
-			mes "what'cha got...";
+		mes "[Phelix]";
+		if (countitem(909) < 10) {
+			mes "Hey! Weren't you listening?. I said 10 jellopies for 1 Red Potion.. are ya deaf?";
+			close;
+		} else {
+			.@max = countitem(909)/10;
+			mes "Hmm, not bad...";
+			mes "How many potions";
+			mes "do you want to get?";
 			next;
-			mes "[Phelix]";
-			if (countitem(909) < 10) {
-				mes "Hey! Weren't you listening?. I said 10 jellopies for 1 Red Potion.. are ya deaf?";
-				close;
-			} else {
-				set .@max,countitem(909)/10;
-				mes "Hmm, not bad...";
-				mes "How many potions";
-				mes "do you want to get?";
+			switch(select("As many as I can, please.","I want this many.","Never mind, I like my jellopy.")) {
+			case 1:
+				delitem 909,.@max*10;// Jellopy
+				getitem 501,.@max;// Red_Potion
+				break;
+			case 2:
+				mes "[Phelix]";
+				mes "I'm not giving you more then 100 at a time so don't bother, OK? If you don't want any, just say '0'.";
+				mes "Right now, the most you can get is " + .@max + " but remember, 100 at most, you want to break my back?.";
+				input .@amount;
 				next;
-				switch(select("As many as I can, please.","I want this many.","Never mind, I like my jellopy.")) {
-				case 1:
-					delitem 909,.@max*10;	// Jellopy
-					getitem 501,.@max;	// Red_Potion
-					break;
-				case 2:
-					mes "[Phelix]";
-					mes "I'm not giving you more then 100 at a time so don't bother, OK? If you don't want any, just say '0'.";
-					mes "Right now, the most you can get is " + .@max + " but remember, 100 at most, you want to break my back?.";
-					input .@amount;
-					next;
-					mes "[Phelix]";
-					if (.@amount <= 0) {
-						mes "Much obliged, come again anytime.";
-						close;
-					}
-					if (.@amount > 100) {
-						mes "Hey, what'd I say? 100 at a time at most, you're trying to kill me aren't you!";
-						close;
-					}
-					if (countitem(909) < .@amount*10) {
-						mes "Hmm, it looks like you don't have enough. Go get more jellopies if you want anything else from me.";
-						close;
-					}
-					delitem 909,.@amount*10;	// Jellopy
-					getitem 501,.@amount;	// Red_Potion
-					break;
-				case 3:
-					mes "[Phelix]";
-					mes "No problem,";
-					mes "see you next time.";
+				mes "[Phelix]";
+				if (.@amount <= 0) {
+					mes "Much obliged, come again anytime.";
+					close;
+				}
+				if (.@amount > 100) {
+					mes "Hey, what'd I say? 100 at a time at most, you're trying to kill me aren't you!";
+					close;
+				}
+				if (countitem(909) < .@amount*10) {
+					mes "Hmm, it looks like you don't have enough. Go get more jellopies if you want anything else from me.";
 					close;
 				}
+				delitem 909,.@amount*10;// Jellopy
+				getitem 501,.@amount;// Red_Potion
+				break;
+			case 3:
 				mes "[Phelix]";
-				mes "There you go! As I promised. Don't go suckin' them all down at once.";
+				mes "No problem,";
+				mes "see you next time.";
 				close;
 			}
+			mes "[Phelix]";
+			mes "There you go! As I promised. Don't go suckin' them all down at once.";
+			close;
+		}
+	case 2:
+		mes "[Phelix]";
+		mes "Alright, let's see what ya got...";
+		next;
+		mes "[Phelix]";
+		if (countitem(909) < 3) {
+			mes "Hmm, look pansy ass, I said 3 jellopies for 1 Carrot.. got it?";
+			close;
+		}
+		.@max = countitem(909)/3;
+		mes "Not too bad pansy...";
+		mes "How many do you want?";
+		next;
+		switch(select("As many as I can get, please","I want this many.","Never mind, I like my jellopy.")) {
+		case 1:
+			delitem 909,.@max*3;// Jellopy
+			getitem 515,.@max;// Carrot
+			break;
 		case 2:
 			mes "[Phelix]";
-			mes "Alright, let's see what ya got...";
+			mes "Right I'm not giving you more then 100 at a time so don't bother, okay? If you don't want any, just say '0'.";
+			input .@amount;
 			next;
 			mes "[Phelix]";
-			if (countitem(909) < 3) {
-				mes "Hmm, look pansy ass, I said 3 jellopies for 1 Carrot.. got it?";
+			if (.@amount == 0) {
+				mes "Alright then, see you next time.";
 				close;
-			} else {
-				set .@max,countitem(909)/3;
-				mes "Not too bad pansy...";
-				mes "How many do you want?";
-				next;
-				switch(select("As many as I can get, please","I want this many.","Never mind, I like my jellopy.")) {
-				case 1:
-					delitem 909,.@max*3;	// Jellopy
-					getitem 515,.@max;	// Carrot
-					break;
-				case 2:
-					mes "[Phelix]";
-					mes "Right I'm not giving you more then 100 at a time so don't bother, okay? If you don't want any, just say '0'.";
-					input .@amount;
-					next;
-					mes "[Phelix]";
-					if (.@amount == 0) {
-						mes "Alright then, see you next time.";
-						close;
-					}
-					if (.@amount > 100) {
-						mes "Hey pansy ass, I said 100 at most, no more then that! I'm not going to break my back for the likes of you!";
-						close;
-					}
-					if (countitem(909) < .@amount*10) {
-						mes "Seems you don't have enough. Go get some more if you want anything else.";
-						close;
-					}
-					delitem 909,.@amount*3;	// Jellopy
-					getitem 515,.@amount;	// Carrot
-					break;
-				case 3:
-					mes "[Phelix]";
-					mes "Catch'ya later.";
-					close;
-				}
-				mes "[Phelix]";
-				mes "There you go~! As I promised. Try not to stuff yer face.";
+			}
+			if (.@amount > 100) {
+				mes "Hey pansy ass, I said 100 at most, no more then that! I'm not going to break my back for the likes of you!";
+				close;
+			}
+			if (countitem(909) < .@amount*3) {
+				mes "Seems you don't have enough. Go get some more if you want anything else.";
 				close;
 			}
+			delitem 909,.@amount*3;// Jellopy
+			getitem 515,.@amount;// Carrot
+			break;
+		case 3:
+			mes "[Phelix]";
+			mes "Catch'ya later.";
+			close;
 		}
+		mes "[Phelix]";
+		mes "There you go~! As I promised. Try not to stuff yer face.";
+		close;
 	}
 }

+ 425 - 323
npc/cities/aldebaran.txt

@@ -1,19 +1,19 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Al De Baran Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= rAthena Dev Team; L0ne_W0lf
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 2.3
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= [Official Conversion]
 //= Al De Baran Town NPCs
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= 1.1 Added RS125 NPC.  Added another Kafra Reserve points agent.
 //=     The 2nd reserve points agent is not complete yet.
 //= 1.2 Lottery input number fix [Lupus], 1.2a - label typo fixed
-//= 1.3 Gatekeeper's bug fixed (wrong check and wrong item ID 
+//= 1.3 Gatekeeper's bug fixed (wrong check and wrong item ID
 //=     for underground), fixed some typos [Lupus]
 //= 1.4 Fixed Typos & Spellcheck [massdriller]
 //= 1.5 Finally added the Special Reserve 2 Lotto 8))
@@ -29,6 +29,7 @@
 //= 2.1 Rescripted most NPCs to Aegis 10.3 standards. [L0ne_W0lf]
 //= 2.2 Corrected NPC names to fall within proper resctrictions. [L0ne_W0lf]
 //= 2.3 Fixed exploit with kafra pass
+//= 2.4 Updated Kafra Reserve to official dialog. [Capuche]
 //============================================================
 
 // Al De Baran
@@ -1050,343 +1051,444 @@ aldeba_in,91,244,4	script	Kafra Service#4alde	112,{
 // Kafra Special Reserve Point NPCs
 //============================================================
 // Special Reserve ----------------------------------------------
-aldeba_in,79,161,6	script	Kafra#04	115,{
-	cutin "kafra_03",2;
-	mes "[Kafra]";
-	mes "Welcome, ^6666FF" + strcharinfo(0) + "^000000.  This is where you can trade in your special reserve points for useful items and cool prizes.";
-	next;
-	mes "[Kafra]";
-	mes "Each Kafra will allow you to trade in reserve points of varying amounts.  I can trade in reserve points starting from ^2222FF100 pts up to 3000 pts^000000.";
+aldeba_in,79,161,7	script	Kafra Employee#reserve1	4_F_KAFRA3,{
+	if (checkweight(1201,1) == 0) {
+		mes "^3355FFWait a minute! Right now,";
+		mes "you're carrying too many items";
+		mes "in your inventory. Please come";
+		mes "back after storing some of";
+		mes "your things in Kafra Storage.";
+		close;
+	}
+	mes "[Kafra Employee]";
+	mes "Welcome, "+ strcharinfo(0) +"~";
+	mes "Here, you can exchange";
+	mes "the Special Reserve Points";
+	mes "you've earned by using the";
+	mes "Kafra Services for some";
+	mes "neat and useful prizes~";
 	next;
-	mes "[Kafra]";
-	mes "The amount of special reserve points that you have is: ^FF0000"+RESRVPTS+"^000000 pts.  Please make a choice based on your point total.";
-M_Menu:
+	mes "[Kafra Employee]";
+	mes "Please remember that each window has a different amount of special reserve points you can Use";
+	mes "You can use ^7D0781from 100p to 3000p^000000 in here.";
 	next;
-	menu 	"100- Potato 7 ea",M_1a, "200- Potato 15 ea",M_1b, "300- Potato 25 ea",M_1c, "400- Potato 35 ea",M_1d,
-		"500- Potato 50 ea",M_1e, "600- Potato 60 ea",M_1f, "700- Potato 75 ea",M_1g, "800- Potato 85 ea",M_1h,
-		"900- Potato 100 ea",M_1i, "1000- 1st Lottery Chance!",M_1j, "Next items",M_2, "Cancel",M_End;
-
-	M_1a:
-		if(RESRVPTS < 100) goto sL_LowPts1;
-		mes "[Kafra]";
-		mes "Here you are.";
-		getitem 516, 7;
-		set RESRVPTS, RESRVPTS - 100;
-		close;
-	M_1b:
-		if(RESRVPTS < 200) goto sL_LowPts1;
-		mes "[Kafra]";
-		mes "Here you are.";
-		getitem 516, 15;
-		set RESRVPTS, RESRVPTS - 200;
-		close;
-	M_1c:
-		if(RESRVPTS < 300) goto sL_LowPts1;
-		mes "[Kafra]";
-		mes "Here you are.";
-		getitem 516, 25;
-		set RESRVPTS, RESRVPTS - 300;
-		close;
-	M_1d:
-		if(RESRVPTS < 400) goto sL_LowPts1;
-		mes "[Kafra]";
-		mes "Here you are.";
-		getitem 516, 35;
-		set RESRVPTS, RESRVPTS - 400;
-		close;
-	M_1e:
-		if(RESRVPTS < 500) goto sL_LowPts1;
-		mes "[Kafra]";
-		mes "Here you are.";
-		getitem 516, 50;
-		set RESRVPTS, RESRVPTS - 500;
-		close;
-	M_1f:
-		if(RESRVPTS < 600) goto sL_LowPts1;
-		mes "[Kafra]";
-		mes "Here you are.";
-		getitem 516, 60;
-		set RESRVPTS, RESRVPTS - 600;
-		close;
-	M_1g:
-		if(RESRVPTS < 700) goto sL_LowPts1;
-		mes "[Kafra]";
-		mes "Here you are.";
-		getitem 516, 75;
-		set RESRVPTS, RESRVPTS - 700;
-		close;
-	M_1h:
-		if(RESRVPTS < 800) goto sL_LowPts1;
-		mes "[Kafra]";
-		mes "Here you are.";
-		getitem 516, 85;
-		set RESRVPTS, RESRVPTS - 800;
+	mes "[Kafra Employee]";
+	if ((MaxWeight - Weight) < 11000) {
+		mes "Um, but I don't think";
+		mes "you're able to carry";
+		mes "very much right now.";
+		mes "It looks like you have";
+		mes "too much stuff inside";
+		mes "your inventory.";
+		next;
+		mes "[Kafra Employee]";
+		mes "Please put some of";
+		mes "your things into Kafra";
+		mes "Storage. To use this";
+		mes "service, we ask that you";
+		mes "have about ^FF00001,100^000000 free units";
+		mes "of weight in your inventory.";
 		close;
-	M_1i:
-		if(RESRVPTS < 900) goto sL_LowPts1;
-		mes "[Kafra]";
-		mes "Here you are.";
-		getitem 516, 100;
-		set RESRVPTS, RESRVPTS - 900;
-		close;
-	M_1j:
-		if(RESRVPTS < 1000) goto sL_LowPts1;
-		set RESRVPTS, RESRVPTS - 1000;
-		mes "[Kafra]";
-		mes "^0000FF1st Lottery Opportunity!!^000000";
-		set @Lotto, 1;
-		next;
-		callfunc "F_Lottery";
-		goto M_End;
-
-	sL_LowPts1:
-		mes "[Kafra]";
-		mes "I'm sorry but you do not have enough reserve points for that selection.";
-		goto M_Menu;
-
-	M_2:
-		menu 	"1100- Red Potion 7 ea",M_2a, "1300- Red Potion 15 ea",M_2b, "1500- Red Potion 25 ea",M_2c,
-			"1700- Red Potion 35 ea",M_2d, "1900- Red Potion 50 ea",M_2e, "2100- Red Potion 60 ea",M_2f,
-			"2300- Red Potion 75 ea",M_2g, "2500- Red Potion 85 ea",M_2h, "2800- Red Potion 100 ea",M_2i,
-			"3000- 2nd Lotery Chance!",M_2j, "Previous List",M_Menu, "Cancel",M_End;
-		
-		M_2a:
-			if(RESRVPTS < 1100) goto sL_LowPts2;
-			mes "[Kafra]";
-			mes "Here you are.";
-			getitem 501, 7;
-			set RESRVPTS, RESRVPTS - 1100;
-			close;
-		M_2b:
-			if(RESRVPTS < 1300) goto sL_LowPts2;
-			mes "[Kafra]";
-			mes "Here you are.";
-			getitem 501, 15;
-			set RESRVPTS, RESRVPTS - 1300;
-			close;
-		M_2c:
-			if(RESRVPTS < 1500) goto sL_LowPts2;
-			mes "[Kafra]";
-			mes "Here you are.";
-			getitem 501, 25;
-			set RESRVPTS, RESRVPTS - 1500;
-			close;
-		M_2d:
-			if(RESRVPTS < 1700) goto sL_LowPts2;
-			mes "[Kafra]";
-			mes "Here you are.";
-			getitem 501, 35;
-			set RESRVPTS, RESRVPTS - 1700;
-			close;
-		M_2e:
-			if(RESRVPTS < 1900) goto sL_LowPts2;
-			mes "[Kafra]";
-			mes "Here you are.";
-			getitem 501, 50;
-			set RESRVPTS, RESRVPTS - 1900;
-			close;
-		M_2f:
-			if(RESRVPTS < 2100) goto sL_LowPts2;
-			mes "[Kafra]";
-			mes "Here you are.";
-			getitem 501, 60;
-			set RESRVPTS, RESRVPTS - 2100;
-			close;
-		M_2g:
-			if(RESRVPTS < 2300) goto sL_LowPts2;
-			mes "[Kafra]";
-			mes "Here you are.";
-			getitem 501, 75;
-			set RESRVPTS, RESRVPTS - 2300;
-			close;
-		M_2h:
-			if(RESRVPTS < 2500) goto sL_LowPts2;
-			mes "[Kafra]";
-			mes "Here you are.";
-			getitem 501, 85;
-			set RESRVPTS, RESRVPTS - 2500;
-			close;
-		M_2i:
-			if(RESRVPTS < 2800) goto sL_LowPts2;
-			mes "[Kafra]";
-			mes "Here you are.";
-			getitem 501, 100;
-			set RESRVPTS, RESRVPTS - 2800;
+	}
+	.@total = RESRVPTS;
+	mes "Let's see...";
+	mes strcharinfo(0) +"...";
+	mes "Ah, you have a total of";
+	mes .@total +" Special Reserve Points.";
+	mes "Now what you would like";
+	mes "to exchange them for?";
+	next;
+	setarray .@select_price[0], 516, 100,7, 200,15, 300,25, 400,35, 500,50, 600,60, 700,75, 800,85, 900,100, 1000;// <item_id>,<points required>,<item quantity>
+	.@s = select( "100 = Potato 7 ea", "200 = Potato 15 ea", "300 = Potato 25 ea", "400 = Potato 35 ea", "500 = Potato 50 ea", "600 = Potato 60 ea", "700 = Potato 75 ea",
+		"800 = Potato 85 ea", "900 = Potato 100 ea", "1000 = 1st Lottery Chance!", "Next Articles", "Cancel" );
+	if (.@s == 11) {
+		setarray .@select_price[0], 501, 1100,7, 1300,15, 1500,25, 1700,35, 1900,50, 2100,60, 2300,75, 2500,85, 2800,100, 3000;
+		.@s = select( "1100 = Red Potion 7 ea:1300 = Red Potion 15 ea:1500 = Red Potion 25 ea:1700 = Red Potion 35 ea:1900 = Red Potion 50 ea:2100 = Red Potion 60 ea:" +
+			"2300 = Red Potion 75 ea:2500 = Red Potion 85 ea:2800 = Red Potion 100 ea:3000 = 2nd Lotery Chance!::Cancel" );
+		.@choose_sub_select = 1;
+	}
+	if (.@s != 12) {// cancel
+		mes "[Kafra Employee]";
+		.@index_points = .@s * 2 - 1;
+		.@index_quantity = .@s * 2;
+		if (.@total < .@select_price[.@index_points]) {
+			.@points = .@select_price[.@index_points] - .@total;
+			mes "I'm sorry, but you don't";
+			mes "enough Special Reserve";
+			mes "Points to exchange for this";
+			mes "reward. You need at least";
+			mes "^0000FF"+ .@points +"^000000 more points.";
 			close;
-		M_2j:
-			if(RESRVPTS < 3000) goto sL_LowPts2;
-			set RESRVPTS, RESRVPTS - 3000;
-			mes "[Kafra]";
-			mes "^0000FF2nd Lottery Opportunity!!^000000";
-			set @Lotto, 2;
-			next;
-			callfunc "F_Lottery";
-			goto M_End;
-
-		sL_LowPts2:
-			mes "[Kafra]";
-			mes "I'm sorry but you do not have enough reserve points for that selection.";
+		}
+		.@total = .@total - .@select_price[.@index_points];
+		mes "After receiving this";
+		mes "reward, you'll have";
+		mes "^AC0000"+ .@total +"^000000 Special Reserve";
+		mes "Points left. Would you";
+		mes "like to redeem your";
+		mes "points for this reward?";
+		next;
+		if (select( "Exchange.", "Cancel" ) == 1) {
+			RESRVPTS = .@total;
+			if (.@s < 10)
+				getitem .@select_price[0], .@select_price[.@index_quantity];
+			else {
+				mes "[Kafra Employee]";
+				if (.@choose_sub_select == 0) {
+					mes "^0000FF1st Lottery Chance!!^000000";
+					mes "It's time to test out";
+					mes "your luck. Get ready!";
+				}
+				else {
+					mes "Uh oh...";
+					mes "It's that time again~";
+					mes "It's Kafra Lottery Time!";
+					mes "Let's see how good your";
+					mes "luck is today. Ready?";
+				}
+				next;
+				mes "[Kafra Employee]";
+				mes "How many times";
+				mes "would you like to spin";
+				mes "the lottery machine?";
+				mes "You can spin it 1 to 5 times.";
+				next;
+				while( input(.@input,1,5) != 0 ) {
+					mes "[Kafra Employee]";
+					mes "Excuse me...?";
+					mes "Please choose";
+					mes "a number from 1 to 5.";
+					next;
+				}
+				.@choose_prize = rand(1,20);
+				while( .@input != .@random_while ) {
+					.@sound_word = rand(1,3);
+					if (.@sound_word == 1) {
+						mes "^3355FFDrrrrrrrrrrrrrrrrrr...";
+						mes "Tuum tuum tuum!^000000";
+					}
+					else if (.@sound_word == 2) {
+						mes "^3355FFChika chika chika";
+						mes "Shooooooooooom~^000000";
+					}
+					else if (.@sound_word == 3) {
+						mes "^3355FFTuk tuk tuk tuk";
+						mes "Flaaaaaavaaaaah~^000000";
+					}
+					next;
+					.@random_while++;
+				}
+				mes "[Kafra Employee]";
+				if (.@choose_sub_select == 0) {
+					mes "Ooh, something";
+					mes "came out! Let's see";
+					mes "what you've won~";
+					mes "Oh goodness, it's...!";
+					next;
+					mes "[Kafra Employee]";
+					if (.@choose_prize <= 10) {
+						getitem 516,100;// Sweet_Potato
+						mes "Hm? F-fourth prize?";
+						mes "You got the 4th prize!!";
+						mes "Well, that's not too bad.";
+						mes "That's 100 Potatoes!";
+						mes "When they're sliced, then fried, they make a great snack when";
+						mes "drinking with your friends~";
+					}
+					else if (.@choose_prize <= 15) {
+						getitem 602,4;// Wing_Of_Butterfly
+						mes "It's Third Prize!";
+						mes "4 Butterfly Wings~";
+						mes "When you're in trouble,";
+						mes "just wave one of these";
+						mes "to take you away...";
+						mes "To your safe place.";
+					}
+					else if (.@choose_prize <= 19) {
+						getitem 2403,1;// Shoes
+						mes "Second Prize!";
+						mes "A brand new shiny pair";
+						mes "of Shoes! Its elegant design";
+						mes "and durability comes with our";
+						mes "highest recommendation. We";
+						mes "hope you enjoy your new shoes~";
+					}
+					else if (.@choose_prize == 20) {
+						getitem 2328,1;// Wooden_Mail
+						mes "Whoa...!";
+						mes "First Prize!";
+						mes "Your very own";
+						next;
+						mes "set of Wooden Mail!";
+						mes "Today must be your";
+						mes "lucky day, adventurer!";
+					}
+				}
+				else {
+					mes "It looks like";
+					mes "something came";
+					mes "out! What could it be?";
+					mes "Ooh, you just won...";
+					next;
+					mes "[Kafra Employee]";
+					if (.@choose_prize <= 10) {
+						getitem 501,100;// Red_Potion
+						mes "F-fourth prize...?!";
+						mes "Boooo! 100 Red Potions.";
+						mes "Wait.. That's actually pretty";
+						mes "good! Yaaaaaay~ Now you";
+						mes "can look like a high roller by";
+						mes "sharing them with your friends!";
+					}
+					else if (.@choose_prize <= 16) {
+						getitem 2201,1;// Sunglasses
+						mes "Third Prize!";
+						mes "Your very own pair";
+						mes "of suave Sunglasses!";
+						mes "It'll give you an edge in";
+						mes "the war of looking cool,";
+						mes "or when playing poker~";
+					}
+					else if (.@choose_prize <= 19) {
+						getitem 2226,1;// Cap
+						mes "Second Prize!";
+						mes "A... Cap? Hmmm,";
+						mes "these have pretty good";
+						mes "Defense, but I'm not so";
+						mes "sure of how fashionable";
+						mes "this hat is. Oh well...";
+					}
+					else if (.@choose_prize == 20) {
+						getitem 505,3;// Blue_Potion
+						mes "Oh wow...!";
+						mes "First Prize!";
+						mes "3 Blue Potions~";
+						mes "With enough of these,";
+						mes "you can use your skills";
+						mes "with a bit more impunity~";
+					}
+				}
+			}
 			next;
-			goto M_2;
-
-	M_End:
-		mes "[Kafra]";
-		mes "Please come back anytime when you have more reserve points.";
-		cutin "",255;
-		close;
-}
-
-// Special Reserve 2 ----------------------------------------------
-aldeba_in,88,161,3	script	Kafra#05	115,{
-	cutin "kafra_03",2;
-	mes "[Kafra]";
-	mes "Welcome ^5577FF"+strcharinfo(0)+"^000000.  We are currently having a special event for our customers.";
-	mes "You can get free gifts by using your ^FF5533special reserve points^000000 in the ^3355FFSpecial Kafra Gift Event^000000!!";
-	next;
-	mes "[Kafra]";
-	mes "Would you like to use your points?";
-	next;
-	menu "Yes I would.",-, "Maybe next time.",M_End;
-
-		mes "[Kafra]";
-		mes "You have the following amount of special reserve points: ^5544FF"+RESRVPTS+"^000000.";
-		mes "Make a choice and test your luck!";
-		next;
-		menu "5000pts = 1st Lottery Chance!",sM_1st, "7000pts = 2nd Lottery Chance!",sM_2nd, "10000pts = 3rd Lottery Chance!",sM_3rd, "Cancel",M_End; 
-
-		sM_1st:
-			if(RESRVPTS < 5000) goto sL_NotEnuf;
-			set RESRVPTS, RESRVPTS - 5000;
-			set @Lotto, 3;
-			callfunc "F_Lottery";
-			goto M_End;
-		sM_2nd:
-			if(RESRVPTS < 7000) goto sL_NotEnuf;
-			set RESRVPTS, RESRVPTS - 7000;
-			set @Lotto, 4;
-			callfunc "F_Lottery";
-			goto M_End;
-		sM_3rd:
-			if(RESRVPTS < 10000) goto sL_NotEnuf;
-			set RESRVPTS, RESRVPTS - 10000;
-			set @Lotto, 5;
-			callfunc "F_Lottery";
-			goto M_End;
-
-			sL_NotEnuf:
-				mes "[Kafra]";
-				mes "I'm sorry dear but you do not have enough points for this selection.";
-				cutin "",255;
-				close;
-	M_End:
-		mes "[Kafra]";
-		mes "No problem.  Collect more and more special reserve points by using the Kafra Services found throughout Rune Midgard.";
-		mes "Thank you for using Kafra Corp. services.";
-		cutin "",255;
-		close;
+		}
+	}
+	mes "[Kafra Employee]";
+	mes "Alright then. Please";
+	mes "use our services to";
+	mes "collect more and more";
+	mes "Special Reserve Points";
+	mes "for even better rewards.";
+	mes "Thank you for your patronage.";
+	close;
 }
 
-// Function F_Lottery ------------------------------------------------------------------------------------------
-function	script	F_Lottery	{
-	mes "[Kafra]";
-	mes "You have the unique opportunity to win a prize sent down from the heavens themselves!!";
-	next;
-	mes "[Kafra]";
-	mes "Don't miss this one and only chance! Now dear, are you ready?";
+aldeba_in,88,161,3	script	Kafra Employee#reserve2	4_F_KAFRA3,{
+	mes "[Kafra Employee]";
+	mes "Welcome~ "+ strcharinfo(0) +".";
+	mes "Currently, we, Kafra Center is having a special event for our customers.";
 	next;
-	mes "[Kafra]";
-	mes "How many times do you want the Lottery Machine to spin? You can choose up to 5 times.";
+	mes "[Kafra Employee]";
+	mes "You can get free gifts by using special reserve points with ^FF0000Special Kafra ^529DFFGift Event!^000000";
+	mes "Kafra Corporation added new gifts in this event.";
 	next;
-	input @input;
-	if(@input < 1 || @input > 5) set @input, rand(1,5); //Lupus's fix
-	callsub sF_Spin;
-	mes "[Kafra]";
-	mes "Ok~ Let me check the results~ guess what it is?";
+	mes "[Kafra Employee]";
+	mes "Do you want to use your points?";
 	next;
-	mes "[Kafra]";
-	mes "^FF0000Lets see.... This is...!!^000000";
-	next;
-	if(@temp <  1) goto sL_Prize1;
-	if(@temp <  2) goto sL_Prize2;
-	if(@temp <  3) goto sL_Prize3;
-	if(@temp <=  4) goto sL_Prize4;
-	goto sL_Prize5;
-
-	sL_Prize1:
-		mes "[Kafra]";
-		mes "WOW!!!!..... You win!!! 1st Prize~! Congratulations~~ You got the 1st prize~~";
-		if(@Lotto == 1) getitem 2328,1;//Items: Wooden_Mail,
-		if(@Lotto == 2) getitem 2307,1;//Items: Mantle,
-		if(@Lotto == 3) getitem 657,10;//Items: Berserk_Potion,
-		if(@Lotto == 4) {
-			getitem 607,2;//Items: Yggdrasilberry,
-			getitem 608,1;//Items: Yggdrasil_Seed,
+	if (select( "Yes, I do","Maybe in next time" ) == 1) {
+		mes "[Kafra Employee]";
+		if ((MaxWeight - Weight) < 11000) {
+			mes "....Oh dear... What are you carrying so many things...?";
+			mes "I don't think you can keep the received items~";
+			next;
+			mes "[Kafra Employee]";
+			mes "I'm sorry~ but~";
+			mes "Please, visit Kafra warehouse and store your items until you have free space of ^0000FF1100^000000 and come back.";
+			mes "I appolize for inconvinence~";
+			close;
 		}
-		if(@Lotto == 5) getitem 607,3;//Items: Yggdrasilberry,
-		return;
-	sL_Prize2:
-		mes "[Kafra]";
-		mes "Oh! WOW! You've won the 2nd prize! Congratulations!!";
-		if(@Lotto == 1) getitem 2403,1;//Items: Shoes,
-		if(@Lotto == 2) getitem 2226,1;//Items: Cap,
-		if(@Lotto == 3) getitem 2201,1;//Items: Sunglasses,
-		if(@Lotto == 4) getitem 526,3;//Items: Royal_Jelly,
-		if(@Lotto == 5) {
-			getitem 608,1;//Items: Yggdrasil_Seed,
-			getitem 526,10;//Items: Royal_Jelly,
+		mes "Your special reserve points are ^FF0000"+ RESRVPTS +"^000000~";
+		mes "Choose a category to test your luck.";
+		next;
+		setarray .@points[1],5000,7000,10000;
+		.@s = select( "5000p = 1st Lottery Chance!", "7000p = 2nd Lottery Chance!", "10000p = 3rd Lottery Chance!", "Cancel" );
+		if (.@s != 4) {
+			mes "[Kafra Employee]";
+			if (RESRVPTS < .@points[.@s]) {
+				mes "I'm sorry~ dear~";
+				mes "You can't choose the selected chance because you do not have enough special reserve points.";
+				mes "Please check your special reserve points and choose another one~";
+				close;
+			}
+			RESRVPTS = RESRVPTS - .@points[.@s];
+			mes "^0000FF"+ F_GetNumSuffix(.@s) +" Lottery Chance!!^000000";
+			next;
+			mes "[Kafra Employee]";
+			mes "It's time to try your luck.";
+			next;
+			mes "[Kafra Employee]";
+			mes "Let's see how lucky you are. Now! Get ready!";
+			next;
+			.@sound_word = rand(1,3);
+			if (.@sound_word == 1)
+				mes "'Drrrrrr~ Drrrrrr~'";
+			else if (.@sound_word == 2)
+				mes "'Rrrrrrr...'";
+			else if (.@sound_word == 3)
+				mes "'Boing.. Boing.. Clink!'";
+			next;
+			mes "[Kafra Employee]";
+			mes "Something has come out~ Let's see what you got~";
+			mes "G~ U~ E~ S~ S~ W~ H~ A~ T~";
+			next;
+			mes "[Kafra Employee]";
+			mes "^FF0000Oh, my goodness! It's!!^000000";
+			next;
+			mes "[Kafra Employee]";
+			.@choose_prize = rand(1,20);
+			if (.@s == 1) {
+				if (.@choose_prize < 15) {
+					getitem 501,150;// Red_Potion
+					mes "What a pity!";
+					mes "You got the 4th prize!!";
+					mes "The prize is ^00FF00150 Red Potions~^000000";
+					next;
+					mes "[Kafra Employee]";
+					mes "Whoa~ 150 potions! It is enough to share with your friends~";
+				}
+				else if (.@choose_prize < 18) {
+					getitem 645,15;// Center_Potion
+					mes "The 3rd~~";
+					mes "The 3rd prize!";
+					mes "The prize is ^00FF0015 Concentration Potion~^000000";
+					next;
+					mes "[Kafra Employee]";
+					mes "We always use this when we need to concentrate on something.";
+					mes "However, overdose is not good for your body~";
+				}
+				else if (.@choose_prize < 20) {
+					getitem 505,3;// Blue_Potion
+					mes "The 2nd~~";
+					mes "The 3rd prize~~";
+					mes "The prize is ^00FF003 Blue Potions~^000000";
+					next;
+					mes "[Kafra Employee]";
+					mes "Try these when your spiritual power is low~";
+				}
+				else if (.@choose_prize == 20) {
+					getitem 608,1;// Seed_Of_Yggdrasil
+					mes "Whoa~!! The first... The First!!!";
+					mes "Congratulations~~ You got the 1st prize~";
+					mes "The prize is ^00FF001 Yggdrasil Seed~^000000";
+					next;
+					mes "[Kafra Employee]";
+					mes "I guess you spent entire luck for this lottery chance~";
+				}
+			}
+			else if (.@s == 2) {
+				if (.@choose_prize < 15) {
+					getitem 504,10;// White_Potion
+					mes "What a pity!";
+					mes "You got the 4th prize!!";
+					mes "The prize is ^00FF0010 White Potions~^000000";
+					next;
+					mes "[Kafra Employee]";
+					mes "The greatest among potions! Use it before you fall into faint~";
+				}
+				else if (.@choose_prize < 18) {
+					getitem 656,15;// Awakening_Potion
+					mes "The 3rd~~";
+					mes "The 3rd prize!";
+					mes "The prize is ^00FF0015 Awakening Potions~^000000";
+					next;
+					mes "[Kafra Employee]";
+					mes "An awakening potion is better than a concentration potion!";
+					mes "Overdose is not good for your body~";
+				}
+				else if (.@choose_prize < 20) {
+					getitem 657,10;// Berserk_Potion
+					mes "The 2nd~~";
+					mes "The 3rd prize~~";
+					mes "The prize is ^00FF0010 Berserk Potions~^000000";
+					next;
+					mes "[Kafra Employee]";
+					mes "Overdose may cause madness~";
+				}
+				else if (.@choose_prize == 20) {
+					getitem 608,1;// Seed_Of_Yggdrasil
+					getitem 607,1;// Yggdrasilberry
+					mes "Whoa~!! The first... The First!!!";
+					mes "Congratulations~~ You got the 1st prize~";
+					mes "The prize is ^00FF001 Yggdrasilberry~^000000";
+					mes "The prize is ^00FF001 Yggdrasil Seed~^000000";
+					next;
+					mes "[Kafra Employee]";
+					mes "I guess you spent entire luck for this lottery chance~";
+				}
+			}
+			else if (.@s == 3) {
+				if (.@choose_prize < 15) {
+					getitem 504,30;// White_Potion
+					mes "What a pity!";
+					mes "You got the 4th prize!!";
+					mes "The prize is ^00FF00White_Potion 30°³~^000000";
+					next;
+					mes "[Kafra Employee]";
+					mes "The greatest among potions! Use it before you fall into faint~";
+				}
+				else if (.@choose_prize < 18) {
+					getitem 505,10;// Blue_Potion
+					mes "The 3rd~~";
+					mes "The 3rd prize!";
+					mes "The prize is ^00FF0010 Blue Potions~^000000";
+					next;
+					mes "[Kafra Employee]";
+					mes "Try these when your spiritual power is low~";
+				}
+				else if (.@choose_prize < 20) {
+					getitem 608,1;// Seed_Of_Yggdrasil
+					getitem 526,10;// Royal_Jelly
+					mes "The 2nd~~";
+					mes "The 3rd prize~~";
+					mes "The prize is ^00FF001 Yggdrasil Seed~^000000";
+					mes "The prize is ^00FF0010 Royal Jellies~^000000";
+					next;
+					mes "[Kafra Employee]";
+					mes "What a gift set~";
+					mes "These are very healthy food so ~";
+				}
+				else if (.@choose_prize == 20) {
+					getitem 607,3;// Yggdrasilberry
+					getitem 608,2;// Seed_Of_Yggdrasil
+					mes "Whoa~!! The first... The First!!!";
+					mes "Congratulations~~ You got the 1st prize~";
+					mes "The prize is ^00FF003 Yggdrasilberries~^000000";
+					mes "The prize is ^00FF002 Yggdrasil Seeds~^000000";
+					next;
+					mes "[Kafra Employee]";
+					mes "I guess you spent entire luck for this lottery chance~";
+				}
+			}
+			mes "Congratulations~~";
+			close;
 		}
-		return;
-	sL_Prize3:
-		mes "[Kafra]";
-		mes "Congratulations! You've won the 3rd prize.";
-		if(@Lotto == 1) getitem 602,4;//Items: Butterfly_Wing,
-		if(@Lotto == 2) getitem 505,3;//Items: Blue_Potion,
-		if(@Lotto == 3) getitem 2203,1;//Items: Glasses,
-		if(@Lotto == 4) getitem 504,15;//Items: White_Potion,
-		if(@Lotto == 5) getitem 504,30;//Items: White_Potion,
-		return;
-	sL_Prize4:
-		mes "[Kafra]";
-		mes "You've won the 4th prize.";
-		if(@Lotto == 1) getitem 516,100;//Items: Sweet_Potato,
-		if(@Lotto == 2) getitem 501,150;//Items: Red_Potion,
-		if(@Lotto == 3) getitem 502,150;//Items: Orange_Potion,
-		if(@Lotto == 4) getitem 505,5;//Items: Blue_Potion,
-		if(@Lotto == 5) getitem 505,10;//Items: Blue_Potion,
-		return;
-	sL_Prize5:
-		mes "[Kafra]";
-		mes "You've won the 5th prize.";
-		if(@Lotto == 1) getitem 516,50;//Items: Sweet_Potato,
-		if(@Lotto == 2) getitem 501,100;//Items: Red_Potion,
-		if(@Lotto == 3) getitem 501,200;//Items: Red_Potion,
-		if(@Lotto == 4) getitem 501,250;//Items: Red_Potion,
-		if(@Lotto == 5) getitem 501,300;//Items: Red_Potion,
-		return;
-
-sF_Spin:
-	mes "[Lottery Machine]";
-	mes "Number of spins remaining: "+@input;
-	next;
-	mes "[Lottery Machine]";
-	mes "(rumble~rumble~rumble~)...";
-	next;
-	set @temp, rand(10);
-	set @input, @input -1;
-	if(@input <= 0) return;
-	goto sF_Spin;
+	}
+	mes "[Kafra Employee]";
+	mes "No Problem~";
+	mes "Collect more~ and more~ special reserve points~";
+	mes "Thank you for using Kafra Corporation's services~~";
+	close;
 }
 
 // Inside Clock Tower
 //============================================================
 c_tower3,10,249,4	script	Gatekeeper#ct	84,{
 	//Key_Of_Clock_Tower
-	callfunc "F_ClockTowerGate","4th",7026,"c_tower4",185,44; 
+	callfunc "F_ClockTowerGate","4th",7026,"c_tower4",185,44;
 }
 
 alde_dun03,264,16,4	script	Gatekeeper#ct1	101,{
 	//Underground_Key
-	callfunc "F_ClockTowerGate","B4th",7027,"alde_dun04",79,267; 
+	callfunc "F_ClockTowerGate","B4th",7027,"alde_dun04",79,267;
 }
 
 function	script	F_ClockTowerGate	{
@@ -1468,7 +1570,7 @@ function	script	F_ClockTowerGate	{
 			mes "Please,You may enter.";
 			mes "May God bless you ..";
 			close2;
-			delitem .@item_req,1; 
+			delitem .@item_req,1;
 			warp getarg(2),getarg(3),getarg(4);
 			end;
 		}

+ 17 - 17
npc/cities/amatsu.txt

@@ -1,15 +1,15 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Amatsu Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= rAthena Dev Team
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 1.4
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= [Official Conversion]
 //= Amatsu Town Script
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= 1.3 Rescripted to Aegis 10.3 Standards. [L0ne_W0lf]
 //=     Moved elemental stone trader to 'elemental_trader.txt'
 //= 1.4 Moved Alberta NPC to pre-re/re paths. [Euphy]
@@ -167,7 +167,7 @@ amatsu,230,160,3	script	Well-side Maiden#ama	757,{
 	mes "It really gives me the creeps.";
 	close;
 }
-	
+
 amatsu,179,107,4	script	John#ama	86,{
 	mes "[John]";
 	mes "Yo~";
@@ -224,7 +224,7 @@ amatsu,179,107,4	script	John#ama	86,{
 	mes "I guess it's over...";
 	close;
 }
-	
+
 amatsu,205,163,3	script	Mimi#ama	759,{
 	mes "[Mimi]";
 	mes "Puhuhu~!";
@@ -242,7 +242,7 @@ amatsu,205,163,3	script	Mimi#ama	759,{
 	mes "A lady can always use a little more makeup.";
 	close;
 }
-	
+
 amatsu,185,115,3	script	Drunken Man#ama	765,{
 	mes "[Kosake]";
 	mes "*Hiccup*...My wife is just like,";
@@ -282,7 +282,7 @@ amatsu,185,115,3	script	Drunken Man#ama	765,{
 	mes "If you buy me a drink, I will think about it...Hehehe...*Hiccup*..";
 	close;
 }
-	
+
 amatsu,217,179,1	script	Grandma#ama	760,{
 	mes "[Hatsue]";
 	mes "I'm worried about my husband.";
@@ -294,7 +294,7 @@ amatsu,217,179,1	script	Grandma#ama	760,{
 	mes "went to the bar and starts drinking again? The man just doesn't have any backbone. *Phew*";
 	close;
 }
-	
+
 amatsu,287,266,3	script	Jyaburo#ama	766,{
 	mes "[Jyaburo]";
 	mes "This place is special to me.";
@@ -374,7 +374,7 @@ amatsu,269,221,1	script	Propose Girl#ama	758,{
 	mes "happy things will happen, if you do.";
 	close;
 }
-	
+
 amatsu,243,202,3	script	Drama Teacher#ama	760,{
 	set jap_tree,2;
 	mes "[Garakame sensei]";
@@ -419,7 +419,7 @@ amatsu,243,202,3	script	Drama Teacher#ama	760,{
 	mes "someday when you are ready.";
 	close;
 }
-	
+
 amatsu,283,203,1	script	Bonubonu#ama1	1323,{
 	end;
 }
@@ -453,7 +453,7 @@ amatsu,283,203,1	script	Bonubonu#ama2	111,{
 	mes "It is really a miraculous and gracious tree...";
 	close;
 }
-	
+
 amatsu,274,178,7	script	Veterinarian#ama	735,{
 	set jap_tree,4;
 	mes "[Sakura Seiichi]";
@@ -506,7 +506,7 @@ amatsu,274,178,7	script	Veterinarian#ama	735,{
 	mes "Finally, I couldn't even hear anything. I can't even recall what he was trying to tell me...^000000";
 	close;
 }
-	
+
 amatsu,262,197,1	script	Legendary Tree	111,{
 	if (jap_tree == 1) {
 		mes "^3355FFAs she mentioned, this tree";
@@ -586,9 +586,9 @@ amatsu,262,197,1	script	Legendary Tree	111,{
 	close;
 }
 
-//============================================================ 
+//============================================================
 // Old changelog
-//============================================================ 
+//============================================================
 //= Amatsu Town NPCs : Revision 2 (Fox quest fix)
 //= Translated by Makenshi and dj
 //= Revisions and edits by Valaris and Darkchild

+ 16 - 16
npc/cities/ayothaya.txt

@@ -1,20 +1,20 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Ayotaya Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= MasterOfMuppets
 //===== Current Version: =====================================
 //= 1.9
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= [Official Conversion]
 //= Ayotaya Town Script
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= 1.6 Rescripted to Aegis 10.3 standards. [L0ne_W0lf]
 //= 1.7 Fixed character's anme bugs [Lupus]
 //= 1.8 Moved Alberta NPC to pre-re/re paths. [Euphy]
 //= 1.9 Updated Renewal warp coordinates.
-//============================================================ 
+//============================================================
 
 // Ayothaya Transportation
 //============================================================
@@ -122,7 +122,7 @@ ayothaya,189,120,3	script	Young Man#Thang	843,{
 	mes "I think.";
 	close;
 }
-	
+
 ayothaya,171,152,5	script	Girl#Lalitha	838,{
 	set .@sit,rand(1,5);
 	if (.@sit > 0 && .@sit < 3) {
@@ -193,7 +193,7 @@ ayothaya,171,152,5	script	Girl#Lalitha	838,{
 	mes "What's up?";
 	close;
 }
-	
+
 ayothaya,143,102,5	script	Old Man#ayothaya	842,{
 	mes "[Villager]";
 	mes "Ummm.";
@@ -238,7 +238,7 @@ ayothaya,143,102,5	script	Old Man#ayothaya	842,{
 	mes "at least once.";
 	close;
 }
-	
+
 ayothaya,197,189,5	script	Young Man#1ayothaya	841,{
 	mes "[Kwan]";
 	mes "Phew, isn't it";
@@ -264,7 +264,7 @@ ayothaya,197,189,5	script	Young Man#1ayothaya	841,{
 	mes "Well, anyway, it's still a really good idea to stay away from that place. I hope you enjoy visiting Ayotaya, and that you keep safe~";
 	close;
 }
-	
+
 ayothaya,214,142,5	script	Young Man#5ayothaya	843,{
 	mes "[Detzi]";
 	mes "In Ayotaya, we have our own traditional martial arts. We, the young men of the village, practice our traditional martial arts in order to become strong.";
@@ -273,7 +273,7 @@ ayothaya,214,142,5	script	Young Man#5ayothaya	843,{
 	mes "Why don't you learn our martial arts? I guarantee that it will help you greatly in your travels.";
 	close;
 }
-	
+
 ayothaya,241,264,5	script	Young Man#5ayothaya2	843,{
 	mes "[Eik]";
 	mes "Hey...";
@@ -298,13 +298,13 @@ ayothaya,241,264,5	script	Young Man#5ayothaya2	843,{
 	close;
 }
 
-//============================================================ 
+//============================================================
 // Old changelog
-//============================================================ 
+//============================================================
 //= 0.1 Added a Sailor NPC to get back to Alberta [ZoDIaC]
 //= 0.2 fixed coords, dialogues
-//= 0.3 Fixed Warp name, ayotaya doesn't exist, even though iRO 
-//=     decided to call it Ayotaya, it really is Ayothaya, like 
+//= 0.3 Fixed Warp name, ayotaya doesn't exist, even though iRO
+//=     decided to call it Ayotaya, it really is Ayothaya, like
 //=     that Yuno/Juno thing
 //= 0.4 Added the official warp npc for Ayothaya. [MasterOfMuppets]
 //= 1.0 Added most of the official npcs. The following quests were added: [MasterOfMuppets]
@@ -316,4 +316,4 @@ ayothaya,241,264,5	script	Young Man#5ayothaya2	843,{
 //= 1.3 Removed Duplicates [Silent]
 //= 1.4 Moved quests to quests/quests_ayothaya.txt [Evera]
 //= 1.5 Moved a few NPC's to quests/quests_ayothaya.txt [MasterOfMuppets]
-//============================================================ 
+//============================================================

+ 28 - 32
npc/cities/comodo.txt

@@ -1,15 +1,15 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Comodo Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= rAthena Dev Team
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 2.0
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= [Official Conversion]
 //= Comodo Town NPCs
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= Not complete.
 //= 1.1 Rolled back from the wrong Kashy's fix
 //= Implemented the 'Cheese'/Stone of Awakening quest.  Re-organized stuff. [kobra_k88]
@@ -200,9 +200,8 @@ cmd_in02,174,126,4	script	Loyar#cmd	83,{
 }
 
 cmd_in02,57,62,4	script	Moo#cmd	109,{
-	set mooz,rand(1,10);
-	if (mooz == 1) {
-		mes "[Moo]";
+	mes "[Moo]";
+	if (rand(1,10) == 1) {
 		mes "Those cheating punks!";
 		mes "They'll never show their";
 		mes "faces here again: otherwise";
@@ -211,29 +210,26 @@ cmd_in02,57,62,4	script	Moo#cmd	109,{
 		mes "see you there~ Hahahaha~";
 		close;
 	}
-	else {
-		mes "[Moo]";
-		mes "Greetings, I am Moo,";
-		mes "manager of the Comodo";
-		mes "Casino. We pride ourselves in";
-		mes "serving all of our customers'";
-		mes "needs, doing all we can so that your visit here is unforgettable.";
-		next;
-		mes "[Moo]";
-		mes "All of our guests can enjoy";
-		mes "our general gaming area, and";
-		mes "we also provide a VIP area";
-		mes "where high rollers can play";
-		mes "exciting high stakes games.";
-		next;
-		mes "[Moo]";
-		mes "We always welcome all of";
-		mes "your suggestions, and are";
-		mes "always seeking to improve";
-		mes "your experience here in";
-		mes "the Comodo Casino.";
-		close;
-	}
+	mes "Greetings, I am Moo,";
+	mes "manager of the Comodo";
+	mes "Casino. We pride ourselves in";
+	mes "serving all of our customers'";
+	mes "needs, doing all we can so that your visit here is unforgettable.";
+	next;
+	mes "[Moo]";
+	mes "All of our guests can enjoy";
+	mes "our general gaming area, and";
+	mes "we also provide a VIP area";
+	mes "where high rollers can play";
+	mes "exciting high stakes games.";
+	next;
+	mes "[Moo]";
+	mes "We always welcome all of";
+	mes "your suggestions, and are";
+	mes "always seeking to improve";
+	mes "your experience here in";
+	mes "the Comodo Casino.";
+	close;
 }
 
 // Comodo Field

+ 9 - 9
npc/cities/einbech.txt

@@ -1,14 +1,14 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Einbech Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= Muad_Dib
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 1.5
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= Einbech Town Script
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= 0.1  Started writing Einbech npc's. [Muad_Dib]
 //= 0.1a Conversion to eA format [MasterOfMuppets]
 //= 0.1b Added missing tabs. [Mass Zero] 0.1c more missing tabs [Lupus]
@@ -431,7 +431,7 @@ ein_in01,279,92,3	script	Tavern Lady#ein	854,{
 	mes "freshly knit doilies?";
 	close;
 }
-	
+
 ein_in01,277,95,7	script	Ryan Danger#air#einbech	855,{
 	mes "[R.D. Kim]";
 	mes "Oooh...";
@@ -483,7 +483,7 @@ ein_in01,277,95,7	script	Ryan Danger#air#einbech	855,{
 	mes "of his freakin' mind!)";
 	close;
 }
-	
+
 ein_in01,281,85,3	script	Drunken Man#einbech	849,{
 	mes "[Drunken Man]";
 	mes "...^333333*Hiccup*^000000...";
@@ -742,7 +742,7 @@ einbech,46,107,6	script	Shena#ein::EinMonsters	846,{
 		close;
 	}
 }
-	
+
 einbech,48,107,4	duplicate(EinMonsters)	Luda#ein	850,{
 
 einbech,148,242,5	script	Jung#ein	855,{

+ 56 - 68
npc/cities/einbroch.txt

@@ -1,14 +1,14 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Einbroch Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= Everybody mentioned in the comments
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 1.7
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= Einbroch Town Script
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= 0.2 Added some NPCs [MasterOfMuppets]
 //= 0.3 Added a few npcs by reddozen [MasterOfMuppets]
 //= 0.4 Added a crappy quest, have fun guys... [MasterOfMuppets]
@@ -33,66 +33,7 @@
 //============================================================
 
 einbroch,218,198,5	script	Mark#ein	855,{
-	callfunc "EinTower","Mark";
-	end;
-}
-
-einbroch,175,196,5	script	Morei#ein	854,{
-	mes "[Morei]";
-	mes "Greetings,";
-	mes "I am Morei,";
-	mes "Assistant Guide";
-	mes "of Einbroch Tower.";
-	next;
-	mes "[Morei]";
-	mes "If you wish to return";
-	mes "to the ground floor,";
-	mes "please let me know.";
-	mes "Would you like to go";
-	mes "back to ground level?";
-	next;
-	switch(select("Yes.:No.")) {
-	case 1:
-		mes "[Morei]";
-		mes "I see.";
-		mes "Let me lead you";
-		mes "to the ground floor.";
-		mes "Thank you for using";
-		mes "our services.";
-		close2;
-		switch(rand(1,3)) {
-		case 1:
-			warp "einbroch",170,229;
-			end;
-		case 2:
-			warp "einbroch",216,188;
-			end;
-		case 3:
-			warp "einbroch",178,167;
-			end;
-		}
-	case 2:
-		mes "[Morei]";
-		mes "I see.";
-		mes "I hope you";
-		mes "enjoy your time";
-		mes "in Einbroch Tower.";
-		close;
-	}
-}
-
-einbroch,173,229,5	script	Oberu#ein	855,{
-	callfunc "EinTower","Oberu";
-	end;
-}
-einbroch,176,172,5	script	Khemko#ein	855,{
-	callfunc "EinTower","Khemko";
-	end;
-}
-
-function	script	EinTower	{
-	.@npc_name$ = getarg(0);
-
+	.@npc_name$ = strnpcinfo(1);
 	mes "["+ .@npc_name$ +"]";
 	mes "Good day~";
 	mes "I'm "+ .@npc_name$ +", your";
@@ -183,6 +124,53 @@ function	script	EinTower	{
 	}
 }
 
+einbroch,175,196,5	script	Morei#ein	854,{
+	mes "[Morei]";
+	mes "Greetings,";
+	mes "I am Morei,";
+	mes "Assistant Guide";
+	mes "of Einbroch Tower.";
+	next;
+	mes "[Morei]";
+	mes "If you wish to return";
+	mes "to the ground floor,";
+	mes "please let me know.";
+	mes "Would you like to go";
+	mes "back to ground level?";
+	next;
+	switch(select("Yes.:No.")) {
+	case 1:
+		mes "[Morei]";
+		mes "I see.";
+		mes "Let me lead you";
+		mes "to the ground floor.";
+		mes "Thank you for using";
+		mes "our services.";
+		close2;
+		switch(rand(1,3)) {
+		case 1:
+			warp "einbroch",170,229;
+			end;
+		case 2:
+			warp "einbroch",216,188;
+			end;
+		case 3:
+			warp "einbroch",178,167;
+			end;
+		}
+	case 2:
+		mes "[Morei]";
+		mes "I see.";
+		mes "I hope you";
+		mes "enjoy your time";
+		mes "in Einbroch Tower.";
+		close;
+	}
+}
+
+einbroch,173,229,5	duplicate(Mark#ein)	Oberu#ein	855
+einbroch,176,172,5	duplicate(Mark#ein)	Khemko#ein	855
+
 einbroch,232,272,3	script	Train Station Staff#ein1::EinbrochTrain	852,{
 	mes "[Staff]";
 	mes "Welcome to";
@@ -241,7 +229,7 @@ einbroch,232,272,3	script	Train Station Staff#ein1::EinbrochTrain	852,{
 		close;
 	}
 }
-	
+
 einbroch,252,301,3	duplicate(EinbrochTrain)	Train Station Staff#ein2	852
 
 einbroch,259,326,3	script	Leslie#ein_1	846,{
@@ -289,7 +277,7 @@ einbroch,236,191,3	script	Tan#ein	855,{
 	mes "you should carry one with you.";
 	close;
 }
-	
+
 einbroch,228,121,5	script	Little Toby#ein-1	855,{
 	mes "[Little Toby]";
 	mes "Excuse me...";

+ 5 - 5
npc/cities/geffen.txt

@@ -79,7 +79,7 @@ geffen_in,164,109,0	script	Wizard Stanza	64,{
 	}
 	else if (Class == Job_Novice)
 		mes "Although you may not be able to use magic or any other kind of powerful skills for now, this knowledge may be helpful in the future, young Novice...";
-	else 
+	else
 		mes "Although you are not formally trained in the use of magic, you use skills which draw upon otherworldly energies, whether you know it or not...";
 	next;
 	mes "[Stanza]";
@@ -183,7 +183,7 @@ geffen,111,48,0	script	Stacey	101,{
 		close;
 	}
 }
-	
+
 geffen_in,34,170,0	script	Theodore	47,{
 	mes "[Theodore]";
 	mes "Hello!";
@@ -874,7 +874,7 @@ geffen_in,79,76,2	script	Merchant Daven	120,{
 	}
 	close;
 }
-	
+
 geffen_in,114,73,5	script	Hadenheim	709,{
 	mes "[Hans Hadenheim]";
 	mes "Man, the Rune-Midgard continent sure is big! How's it going, youngster?";
@@ -1337,7 +1337,7 @@ geffen_in,39,127,2	script	Psychic Advisor	704,{
 		close;
 	}
 }
-	
+
 geffen_in,109,72,2	script	Monster Scholar	90,{
 	mes "[Estheres]";
 	mes "Hello, I'm the resident expert of Monsterology here in Geffen. Is there anything in particular that you're curious about?";
@@ -1353,7 +1353,7 @@ geffen_in,109,72,2	script	Monster Scholar	90,{
 		mes "[Estheres]";
 		if (BaseLevel > 40)
 			mes "You look strong enough for that kind of challenge. But if you see anyone more reckless cross the Western bridge, you might want to give them a warning.";
-		else 
+		else
 			mes "Um, but if you're planning to go there, you better not go alone. I really recommend that you be well prepared if you're gonna fight those kinds of monsters.";
 		break;
 	case 2:

+ 9 - 9
npc/cities/gonryun.txt

@@ -1,15 +1,15 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Kunlun Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= x[tsk], KarLaeda
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 1.6
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= [Official Conversion]
 //= Kunlun Town Script
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= 1.5 Rescripted to Aegis 10.3 standards. [L0ne_W0lf]
 //=     Moved Lost Knife mini-quest to quest file.
 //= 1.6 Moved Alberta NPC to pre-re/re paths. [Euphy]
@@ -291,7 +291,7 @@ gon_in,73,82,5	script	Ji Chung Zhe#gon	778,{
 		close;
 	}
 	if (nakha == 3) {
-		set cha,1;
+		// set cha,1;// unused
 		mes "[Ji Chung Zhe]";
 		mes "I am Ji Chung Zhe, a renown brewer";
 		mes "of teas. Everyday, I put all my";
@@ -412,9 +412,9 @@ gonryun,169,71,3	script	Guidev#gon	770,{
 	close;
 }
 
-//============================================================ 
+//============================================================
 // Old changelog
-//============================================================ 
+//============================================================
 // May be missing npc's and dialogue.
 //= 1.1 Fixed Typos [Nexon]
 //= 1.2 Removed Duplicates [Silent]

+ 2 - 2
npc/cities/hugel.txt

@@ -57,7 +57,7 @@ hugel,126,151,3	script	Emily	90,{
 	mes "Don't you think that sounds weird?";
 	close;
 }
- 
+
 hugel,86,165,5	script	Kayplas	896,{
 	mes "[Kayplas]";
 	mes "Ooh, I really want to";
@@ -150,7 +150,7 @@ hu_in01,23,311,4	script	Party Supplies Shop	898,{
 	next;
 	switch (select("Buy:Cancel")) {
 		case 1:
-			if (Zeny < 500) { 
+			if (Zeny < 500) {
 				mes "[Shopkeeper]";
 				mes "I am sorry, but you don't have";
 				mes "enough money~";

+ 9 - 9
npc/cities/izlude.txt

@@ -1,16 +1,16 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Izlude Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= kobra_k88
 //= L0ne_W0lf
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 1.9a
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= [Official Conversion]
 //= Izlude town NPCs
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= Fully working
 //= 1.1 fixed 2 zeny bugs/checks [Lupus]
 //= 1.2 Fixed a lot of typos [Nexon]
@@ -104,7 +104,7 @@
 		mes "[Charfri]";
 		mes "You'll have to board on a ship at the port to get to Byalan Island. There are dangerous dungeons on that island, so don't go snooping around just anywhere.";
 		close;
-	Default:
+	default:
 		mes "Though it is very beautiful, Byalan Island has a mysterious dungeon that extends deep under the sea.";
 		next;
 		mes "[Charfri]";
@@ -135,7 +135,7 @@
 		mes "[Cuskoal]";
 		mes "So, whaddya say?";
 		close;
-	Default:
+	default:
 		mes "The pubs in Prontera are always full of people from local areas and from out-of-town. It can get pretty busy.";
 		next;
 		mes "[Cuskoal]";
@@ -169,7 +169,7 @@
 		mes "[Dega]";
 		mes "If you try to cast magic near it, it will notice and saunter over to smash you. So you better watch out for Golem.";
 		close;
-	Default:
+	default:
 		mes "There's a very delightful place where you can find every";
 		mes "type of Poring.";
 		next;

+ 20 - 23
npc/cities/jawaii.txt

@@ -416,7 +416,7 @@ jawaii,214,168,5	script	Honeymoon Helper#Jawaii	71,{
 		mes "[Helper]";
 		if (Zeny > 49999) {
 			set Zeny, Zeny-50000;
-			getitem 681,1; //Memory_Of_Wedding 
+			getitem 681,1;// Memory_Of_Wedding
 			mes "Thank you very much~!";
 			mes "Please remember, you";
 			mes "should use this with your";
@@ -626,7 +626,7 @@ jawaii_in,30,96,4	script	Employee#jaw6	724,{
 	}
 	mes "I hope you will have a good time.";
 	close;
-	
+
 OnWelcome:
 	emotion e_kis;
 	end;
@@ -716,7 +716,7 @@ OnTouch:
 	donpcevent "Employee#jaw1::OnSolo";
 	end;
 }
-	
+
 jawaii_in,15,104,0	script	Waitress#jawaii	80,{
 	if (checkweight(1201,1) == 0) {
 		mes "^3355FF * Wait a minute! *";
@@ -766,7 +766,7 @@ jawaii_in,15,104,0	script	Waitress#jawaii	80,{
 				mes "[Waitress]";
 				if (Zeny > 999) {
 					set Zeny, Zeny-1000;
-					getitem 503,1; //Yelow_Potion
+					getitem 503,1;// Yellow_Potion
 					mes "There you go~";
 					mes "Enjoy your meal~!";
 					close;
@@ -839,9 +839,8 @@ jawaii_in,28,124,0	script	Bartender#jaw	46,{
 	mes "like to drink?";
 	next;
 	if (Zeny < 99) {
-		set .@r_jaw,rand(1,100);
 		mes "[Bartender]";
-		if (.@r_jaw > 29) {
+		if (rand(1,100) > 29) {
 			mes "Hm, I'm sorry";
 			mes "but you do not";
 			mes "have enough";
@@ -866,7 +865,7 @@ jawaii_in,28,124,0	script	Bartender#jaw	46,{
 		percentheal -100,0;
 		end;
 	}
-	while (1) {
+	while(1) {
 		switch(select("Follow Bartender's Recommendation.:I want a Gunslinger.:I want a Cobo.:I want a Bomb.:I want a Boogieman.")) {
 		case 1:
 			set .@roof_jaw,.@roof_jaw+3;
@@ -1000,7 +999,7 @@ jawaii_in,28,124,0	script	Bartender#jaw	46,{
 			}
 			break;
 		case 2:
-			callsub S_KillChar,2;
+			callsub S_KillChar,2,.@roof_jaw;
 			mes "When you want to look super cool, this will be the best drink for you. It's a strong drink with a particular scent, so people who drink Gunslingers are usually seen as having impressive of taste.";
 			next;
 			mes "^3355FFYou received a simple glass containing a gray liquid. Although it smells faintly sweet, it looks like industrial strength liquor. It's time to summon your courage and take a sip~";
@@ -1022,7 +1021,7 @@ jawaii_in,28,124,0	script	Bartender#jaw	46,{
 			break;
 
 		case 3:
-			callsub S_KillChar,2;
+			callsub S_KillChar,2,.@roof_jaw;
 			mes "People say that the more you drink a mixed Cobo, the tastier it will be. It grows on you, kind of like the company of an old friend. This is a nice drink to have with anyone at anytime.";
 			next;
 			mes "^3355FFThe Bartender brought a beautifully engraved glass holding a cobalt blue liquid and placed it in front of you. It smells pleasantly sweet and sour.";
@@ -1046,7 +1045,7 @@ jawaii_in,28,124,0	script	Bartender#jaw	46,{
 			break;
 
 		case 4:
-			callsub S_KillChar,2;
+			callsub S_KillChar,2,.@roof_jaw;
 			mes "This is for one who wants to relive wild, youthful days, honor those who have fought for justice and liberty, or just to drink alcohol until they vomit stomach acid.";
 			mes "for one who wants to remember people fighting for liberty...";
 			next;
@@ -1066,7 +1065,7 @@ jawaii_in,28,124,0	script	Bartender#jaw	46,{
 			break;
 
 		case 5:
-			callsub S_KillChar,1;
+			callsub S_KillChar,1,.@roof_jaw;
 			mes "There are not many people who like this drink. But the ones that do like this drink, love it.";
 			next;
 			mes "[Bartender]";
@@ -1096,6 +1095,7 @@ jawaii_in,28,124,0	script	Bartender#jaw	46,{
 	end;
 
 S_KillChar:
+	.@roof_jaw = getarg(1);
 	if (.@roof_jaw > 8) {
 		mes "[Bartender]";
 		mes "It's on me.";
@@ -1115,11 +1115,11 @@ S_KillChar:
 	mes "[Bartender]";
 	return;
 }
-	
+
 jawaii_in,43,115,0	script	Customer#jaw_1	97,{
+	mes "[Buchi]";
 	if (!getpartnerid()) {
 		if (Zeny > 99) {
-			mes "[Buchi]";
 			mes "Grrrr...";
 			mes "Damn! I don't";
 			mes "like this place!";
@@ -1133,8 +1133,8 @@ jawaii_in,43,115,0	script	Customer#jaw_1	97,{
 			mes "Grrrr...";
 			mes "Bartender!";
 			mes "Give me one more!";
+			close;
 		}
-		mes "[Buchi]";
 		mes "Hey, why aren't you drinking?";
 		mes "I guess you're all out of dough.";
 		mes "But I know how you feel. Disgusted with all the lovey dovey around this place, aren't you?";
@@ -1155,10 +1155,10 @@ jawaii_in,43,115,0	script	Customer#jaw_1	97,{
 		mes "the one who laughs last!";
 		next;
 		mes "^3355FFYou drank to your fill.^000000";
-		close;
+		close2;
 		percentheal -100,0;
+		end;
 	}
-	mes "[Buchi]";
 	mes "You look happy...";
 	mes "I hope you'll be";
 	mes "able to feel that";
@@ -1256,12 +1256,11 @@ prt_in,173,13,4	script	Customer#SoloHan	86,{
 		mes "^3355FF* Gulp Gulp Gulp *^000000";
 		percentheal -10,0;
 		next;
-		set .@jaw_roof,1;
 		mes "[SoloHan]";
 		mes "So, what do you say?";
 		mes "Let's go somewhere";
 		mes "with some real liquor.";
-		while (1) {
+		while(1) {
 			next;
 			if (select("...One more drink.:...What kind of place is it?") == 1) {
 				mes "[SoloHan]";
@@ -1306,8 +1305,7 @@ prt_in,173,13,4	script	Customer#SoloHan	86,{
 					mes "Man.";
 					mes "So, you spoil parties";
 					mes "like this all the time, eh?";
-					close2;
-					end;
+					close;
 				}
 			}
 			if (.@jaw_roof > 6) {
@@ -1329,8 +1327,7 @@ prt_in,173,13,4	script	Customer#SoloHan	86,{
 				mes "Oh...";
 				mes "Man.";
 				mes "No wonder you're single. You can't even recognize a good time when it's right in front of you.";
-				close2;
-				end;
+				close;
 			}
 			set .@jaw_roof,.@jaw_roof+3;
 			mes "[SoloHan]";
@@ -1390,7 +1387,7 @@ prt_in,173,13,4	script	Customer#SoloHan	86,{
 	mes "Is this the third time this week I've gotten plastered? Bachewcca, help me count!";
 	close;
 }
-	
+
 prt_in,170,14,0	script	Customer#Bachewcca	89,{
 	mes "[Bachewcca]";
 	mes "..............";

+ 7 - 35
npc/cities/lighthalzen.txt

@@ -1,12 +1,12 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Lighthalzen City
-//===== By: ================================================== 
+//===== By: ==================================================
 //=  erKURITA, Au{R}oN (Translated by Alan), $ephiroth
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 2.2
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= Lighthalzen NPCs (Temporal names for now) [erKURITA]
 //===== Additional Comments: ==================================
 //= 0.1 Placed temporal names, why there weren't on the SVN before? [erKURITA]
@@ -29,7 +29,7 @@
 //= 1.5 Fixed bad NPC header data to comply with rev. 11603. [L0ne_W0lf]
 //= 1.6 Massive NPC clean up, includes corrected dialogs and [L0ne_W0lf]
 //=     added missing dialogs, fixed indentation, corrected some NPC
-//=     facing positions, NPC names are more unique now. Removed 
+//=     facing positions, NPC names are more unique now. Removed
 //=     whitespace (empty lines after header and before end curly)
 //=     reduced usage of the command "goto", grammatical corrections.
 //=     Added additional missing NPCs.
@@ -1236,7 +1236,7 @@ OnTouch:
 }
 
 lighthalzen,311,194,3	script	Reuben#lhz_02	870,{
-	if (rand(1,2)) {
+	if (rand(1,2) == 1) {
 		mes "[Reuben]";
 		mes "Someday...";
 		mes "Someday I just gotta";
@@ -1331,28 +1331,6 @@ lighthalzen,330,276,3	script	Nun#light	79,{
 	close;
 }
 
-lighthalzen,337,296,3	script	Employee	867,{
-	if (hg_tre > 54) {
-		mes "[Rekenber Employee]";
-		mes "Greetings. As part of our";
-		mes "effort to relieve the poor,";
-		mes "Rekenber is providing job";
-		mes "opportunities targeted for";
-		mes "citizens of the slum areas.";
-		next;
-		mes "[Rekenber Employee]";
-		mes "You can choose to work";
-		mes "from home, or undergo a";
-		mes "little bit of training for more";
-		mes "professional positions. This";
-		mes "is a great chance to make a";
-		mes "difference... and some money~";
-		emotion e_no1;
-		close;
-	}
-	end;
-}
-
 lhz_in01,134,38,3	script	Bankri Kun#kagun	798,{
 	mes "[Bankri Kun]";
 	mes "Must work...";
@@ -2202,8 +2180,6 @@ lhz_in02,147,222,3	script	Officer Guo#06::off_guo	85,{
 
 lhz_in02,142,222,6	duplicate(off_guo)	Suspect#6	870
 
-// New ----------------------------------------------------------------------- 
-
 lhz_in01,14,28,3	script	Banquet Staff	109,{
 	mes "[Banquet Staff]";
 	mes "This Banquet Hall is used";
@@ -3209,7 +3185,3 @@ lhz_in01,221,131,7	script	Scientist#li_01	865,{
 		end;
 	}
 }
-
-// Lighthalzen Mushroom.
-// Don't really understand why it's there, but it's funny regardless.
-lhz_in01,157,54,0,0	monster	Red Mushroom	1085,1,120000,100000,0

+ 9 - 9
npc/cities/louyang.txt

@@ -1,20 +1,20 @@
-//===== rAthena Script ======================================= 
-//= Louyang City NPCs 
-//===== By: ================================================== 
+//===== rAthena Script =======================================
+//= Louyang City NPCs
+//===== By: ==================================================
 //= Vidar (1.0)
 //= Mass Zero (1.1)
 //= Dino9021, roughly translated by Celest (1.2)
 //= Mass Zero (1.3)
 //= MasterOfMuppets (2.0)
 //= rAthena Dev Team
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 3.0
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= [Official Conversion]
 //= Louyang Town Script
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= 2.9 Rescripted to Aegis 10.3 Standards. [L0ne_W0lf]
 //= 3.0 Moved Alberta NPC to pre-re/re paths. [Euphy]
 //============================================================
@@ -325,9 +325,9 @@ louyang,84,254,0	script	Exit#lou	111,{
 	close;
 }
 
-//============================================================ 
+//============================================================
 // Old changelog
-//============================================================ 
+//============================================================
 //= Originally made for Vidar
 //= 1.2 Added official warp NPC's
 //= 1.3 Fixed gramatical errors. (Like wtf's with the weird

+ 18 - 19
npc/cities/lutie.txt

@@ -1,18 +1,18 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Lutie Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= rAthena Dev Team
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 1.7
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= Lutie - City NPCs
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= 1.1 Edited some text and updated/enabled some triggers
 //=     for the quest.[kobra_k88]
 //= 1.2 Fixed exploit. Checked for Bard Job Quest compatibility [Lupus]
-//= 1.3 Fixed typos [Nexon] 
+//= 1.3 Fixed typos [Nexon]
 //= 1.4 Fixed exploit [Lupus]
 //= 1.5 Fixed a bug that could reset Lutie quest state [Lupus]
 //= 1.6 Heavy optimization to all the NPCs [DZeroX]
@@ -326,8 +326,8 @@ xmas,176,236,4	script	Uncle Hairy	712,{
 			mes "[Cantata]";
 			mes "Oh? Y-y-you've got the stuff? Goooooooood. It's been so long since I've been able to have some of this... G-give it to me!";
 			next;
-			delitem 1024,1; // Chinese_Ink
-			delitem 938,1; // Sticky_Mucus
+			delitem 1024,1;// Chinese_Ink
+			delitem 938,1;// Sticky_Mucus
 			mes "^3355FFYou quickly handed him the Squid Ink and Sticky Mucus and watched with a little disgust as he relished the flavor.^000000";
 			next;
 			mes "[Cantata]";
@@ -657,12 +657,11 @@ xmas,134,112,4	script	Snowman	710,{
 				mes "^3355FFYou gingerly stir";
 				mes "your hand around in";
 				mes "Snowysnow's magical gift bag^000000.";
-				set .@snownow,rand(1,8);
 				next;
-				switch(.@snownow) {
+				switch(rand(1,8)) {
 				case 1:
 					set xmas_npc,11;
-					getitem 529,5; // Candy
+					getitem 529,5;// Candy
 					cutin "rutie_snownow02.bmp",2;
 					mes "[Snowysnow]";
 					mes "Wow~!";
@@ -671,7 +670,7 @@ xmas,134,112,4	script	Snowman	710,{
 					break;
 				case 2:
 					set xmas_npc,11;
-					getitem 529,10; // Candy
+					getitem 529,10;// Candy
 					cutin "rutie_snownow02.bmp",2;
 					mes "[Snowysnow]";
 					mes "Ooh~!";
@@ -679,7 +678,7 @@ xmas,134,112,4	script	Snowman	710,{
 					break;
 				case 3:
 					set xmas_npc,11;
-					getitem 530,5; // Candy_Striper
+					getitem 530,5;// Candy_Striper
 					cutin "rutie_snownow02.bmp",2;
 					mes "[Snowysnow]";
 					mes "Hoooraaaay~!";
@@ -687,7 +686,7 @@ xmas,134,112,4	script	Snowman	710,{
 					break;
 				case 4:
 					set xmas_npc,11;
-					getitem 530,10; // Candy_Striper
+					getitem 530,10;// Candy_Striper
 					cutin "rutie_snownow02.bmp",2;
 					mes "[Snowysnow]";
 					mes "Wow, that's so great!";
@@ -695,7 +694,7 @@ xmas,134,112,4	script	Snowman	710,{
 					break;
 				case 5:
 					set xmas_npc,11;
-					getitem 539,1; // Piece_Of_Cake
+					getitem 539,1;// Piece_Of_Cake
 					cutin "rutie_snownow02.bmp",2;
 					mes "[Snowysnow]";
 					mes "Aren't you lucky!";
@@ -703,7 +702,7 @@ xmas,134,112,4	script	Snowman	710,{
 					break;
 				case 6:
 					set xmas_npc,11;
-					getitem 539,2; // Piece_Of_Cake
+					getitem 539,2;// Piece_Of_Cake
 					cutin "rutie_snownow02.bmp",2;
 					mes "[Snowysnow]";
 					mes "Now, isn't that nice?";
@@ -711,7 +710,7 @@ xmas,134,112,4	script	Snowman	710,{
 					break;
 				case 7:
 					set xmas_npc,11;
-					getitem 538,5; // Well_Baked_Cookie
+					getitem 538,5;// Well_Baked_Cookie
 					cutin "rutie_snownow02.bmp",2;
 					mes "[Snowysnow]";
 					mes "Oh woooooow~!";
@@ -719,7 +718,7 @@ xmas,134,112,4	script	Snowman	710,{
 					break;
 				case 8:
 					set xmas_npc,11;
-					getitem 538,10; // Well_Baked_Cookie
+					getitem 538,10;// Well_Baked_Cookie
 					cutin "rutie_snownow02.bmp",2;
 					mes "[Snowysnow]";
 					mes "*Gasp!* Ooh~";

+ 6 - 7
npc/cities/manuk.txt

@@ -1,15 +1,15 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Manuk Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= L0ne_W0lf
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 1.3
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= [Official Conversion]
 //= Town-specific NPCs for Manuk.
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= 1.0 First Version.
 //= 1.1 Added more town NPCs
 //= 1.2 Added more town NPCs
@@ -221,7 +221,6 @@ manuk,286,147,3	script	Piom#ep13_2_2	454,{
 }
 
 manuk,183,185,5	script	Piom#ep13_2_3	454,{
-	set tongyeok,Ring_Of_Wise_King;
 	if ((isequipped(2782) == 1) && (ep13_2_rhea == 100)) {
 		mes "[Piom]";
 		mes "Our lives exist for Saphas.";

+ 6 - 6
npc/cities/morocc.txt

@@ -1,15 +1,15 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Morroc Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= kobra_k88; L0ne_W0lf
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 2.2
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= [Official Conversion]
 //= Morroc Town NPCs
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= Fully working
 //= Fixed Lapidary sprite, Implemented ANTHELL trigger
 //= (in both NPC/Warps) [Lupus]. Removed it from NPC and put in Warp

+ 7 - 7
npc/cities/moscovia.txt

@@ -1,14 +1,14 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Moscovia Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= Kisuka
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 1.2
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= Moscovia Town Script
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= 1.0 First Version. [Kisuka]
 //= 1.1 Removed villagers (they are part of a quest). [Kisuka]
 //= 1.2 Moved Alberta NPC to pre-re/re paths. [Euphy]
@@ -48,7 +48,7 @@
 			mes "I'll help you to have a nice trip";
 			mes "to Moscovia!";
 			close;
-			
+
 		case 2:
 			mes "[Moscovia P.R. Officer]";
 			mes "Ok then, let us start now.";

+ 8 - 8
npc/cities/niflheim.txt

@@ -1,13 +1,13 @@
-//===== rAthena Script ======================================= 
-//= Niflheim Script 
-//===== By: ================================================== 
+//===== rAthena Script =======================================
+//= Niflheim Script
+//===== By: ==================================================
 //= Fyrien, Dizzy, PKGINGO
 //= Official NPCs translated and re-edited by Celest
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 1.5
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= [Official Conversion]
 //= Official NPC's for Niflheim
 //= 1.01 Splitted file(guides, shops). Fixed rand() bugs,
@@ -18,7 +18,7 @@
 //=     fixed zeny/item, exploit in Sairin, some optimizations [Lupus]
 //= 1.06 some typos in some variables fixed (thx 2 Dr.Evil) [Lupus]
 //= 1.07 Fixed typos [Nexon]
-//= 1.08 Commented "Traveler" out as it is not official & we have correct Bungee quest in. 
+//= 1.08 Commented "Traveler" out as it is not official & we have correct Bungee quest in.
 //=     Also removed TODO, as they are already done. [Vicious_Pucca]
 //= 1.1 Replaced nif_q_done with MISC_QUEST & 32. nif_t -> @nif_t [Lupus]
 //= 1.2 Removed Duplicates [Silent]
@@ -26,7 +26,7 @@
 //= 1.4 Rescripted to Aegis 10.3 standards. [L0ne_W0lf]
 //=     Removed Cursed Spirits as they were custom.
 //= 1.5 Added dummy "OnMyMobDead" event to Cursed Spirit. [L0ne_W0lf]
-//============================================================ 
+//============================================================
 
 niflheim,52,147,3	script	Keedz#nif	796,{
 	mes "[Keedz]";

+ 10 - 10
npc/cities/payon.txt

@@ -1,15 +1,15 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Payon City
-//===== By: ================================================== 
+//===== By: ==================================================
 //= Muad Dib (1.0) Darkchild (1.1) Muad Dib (1.2)
 //= Darkchild (1.3) DracoRPG (1.5) L0ne_W0lf (2.1)
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 2.1c
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= Payon City Npcs
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= Most Credits To Muad Dib, Some Stuff By Me
 //= 1.4 Corrected a few typos
 //= 1.5 Rescripted old NPCs + scripted new ones (from iRO Sak) [DracoRPG]
@@ -26,10 +26,10 @@
 //=     Moved Fortune Teller to /other/fortune.txt
 //= 2.1b Added a missing close in the Monster Scholar. [L0ne_W0lf]
 //= 2.1c Minor bug fixes. [Euphy]
-//============================================================ 
+//============================================================
 
 // Payon
-//============================================================ 
+//============================================================
 payon,246,154,0	script	Lady#payon	90,{
 	mes "[Lady]";
 	mes "A long time ago,";
@@ -372,7 +372,7 @@ payon,132,235,3	script	Monster Scholar#02	98,{
 }
 
 // Inside Payon
-//============================================================ 
+//============================================================
 payon_in01,180,7,2	script	Waitress#payon	90,{
 	mes "[Pub Lady]";
 	mes "This place is always bustling with busy people. Little Novices come and go to become Archers, and everyone else is buying arrows while I have to stay here in this small shop.";
@@ -991,7 +991,7 @@ payon_in03,102,185,5	script	Guard#payon	708,{
 }
 
 // Payon Archer Village
-//============================================================ 
+//============================================================
 pay_arche,77,131,2	script	Archer Joe#payon	88,{
 	mes "[Archer Joe]";
 	mes "Payon!";

+ 30 - 55
npc/cities/prontera.txt

@@ -1,15 +1,15 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Prontera Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= kobra_k88
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 2.1
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= [Official Conversion]
 //= NPCs in Prontera
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= Fully working
 //= +AntiNovice exploit fix [Lupus] 1.2 added baby novice check
 //= Spellchecked [massdriller]
@@ -306,9 +306,8 @@ prt_in,180,20,2	script	Bartender#pront	61,{
 	next;
 	mes "[Bartender]";
 	mes "I can't keep my business busy without my special menu 'Crunch Crunch Sour' and 'Savory Yum Yum'...*Sigh*";
-	next;
-	set .@drink,1;
-	while(.@drink) {
+	while(1) {
+		next;
 		switch(select("'Cunch Crunch Sour'?:'Savory Yum Yum'?:Cancel.")) {
 		case 1:
 			mes "[Bartender]";
@@ -317,8 +316,7 @@ prt_in,180,20,2	script	Bartender#pront	61,{
 			next;
 			mes "[Bartender]";
 			mes "*Sigh*...I am afraid that my business days are numbered now.";
-			next;
-			break;
+			continue;
 		case 2:
 			mes "[Bartender]";
 			mes "Savory Yum Yum's basic ingredients are the grasshoppers romping in a place over the west forest. Yeah, it is the best selling menu ever.";
@@ -326,16 +324,12 @@ prt_in,180,20,2	script	Bartender#pront	61,{
 			next;
 			mes "[Bartender]";
 			mes "*Sigh*...I am afraid that my business days are numbered now.";
-			next;
-			break;
+			continue;
 		case 3:
 			mes "[Bartender]";
 			mes "Take care of yourself~.";
-			close2;
-			set .@drink,0;
-			break;
+			close;
 		}
-
 	}
 	end;
 
@@ -552,9 +546,8 @@ prt_church,103,76,0	script	Garnet#pront	67,{
 	next;
 	mes "[Garnet]";
 	mes "Go and ahead and ask if you have any questions about skills for Acolytes and Priests.";
-	next;
-	set .@SkillChat,1;
-	while(.@SkillChat) {
+	while(1) {
+		next;
 		switch(select("About Heal:About Cure:About Increase AGI:About Angelus:About Blessing:About Warp Portal:End Conversation")) {
 		case 1:
 			mes "[Garnet]";
@@ -571,24 +564,21 @@ prt_church,103,76,0	script	Garnet#pront	67,{
 			next;
 			mes "[Garnet]";
 			mes "Priests use ^6666CCSantuary^000000 to create an area which will restore the HP of you and your friends if you rest within the Sanctuary's area.";
-			next;
-			break;
+			continue;
 		case 2:
 			mes "[Garnet]";
 			mes "Once you reach ^6666CCLevel 2 Heal^000000 as an Acolyte, you can learn ^6666CCCure^000000, which can be used to treat abnormal statuses.";
 			next;
 			mes "[Garnet]";
 			mes "This skill can be such a life saver, since almost every abnormal status can be cured with the Cure skill. Just remember that you need ^6666CCLevel 2 Heal^000000 before you can learn Cure.";
-			next;
-			break;
+			continue;
 		case 3:
 			mes "[Garnet]";
 			mes "Now, the ^6666CCIncrease AGI^000000 skill can be used on you or your friends. For a while your AGI stat is increased, making you attack faster and dodge monster attacks more easily.";
 			next;
 			mes "[Garnet]";
 			mes "If you're an Acolyte that wants to learn ^6666CCIncrease AGI^000000, you need to learn ^6666CCLevel 3 Heal^000000 first.";
-			next;
-			break;
+			continue;
 		case 4:
 			mes "[Garnet]";
 			mes "You can use ^6666CCAngelus^000000 to increase your Defense, as well as the Defense of other party members. Remember though, you can only use ^6666CCAngelus^000000 on other people if they are in your party.";
@@ -598,16 +588,14 @@ prt_church,103,76,0	script	Garnet#pront	67,{
 			next;
 			mes "[Garnet]";
 			mes "Also, if you keep learning Angelus, you'll eventually be able to learn ^6666CCKyrie Eleison^000000. That skill helps you evade initial attacks automatically.";
-			next;
-			break;
+			continue;
 		case 5:
 			mes "[Garnet]";
 			mes "^6666CCBlessing^000000 temporarily increases STR, DEX and INT. This skill will give you and your friends a great advantage in battle!";
 			next;
 			mes "[Garnet]";
 			mes "Before you can learn Blessing, you must first learn ^6666CCLevel 5 Divine Protection^000000.";
-			next;
-			break;
+			continue;
 		case 6:
 			mes "[Garnet]";
 			mes "^6666CCWarp Portal^000000 is a pretty complex skill, and you need to know some other skills before you can learn it.";
@@ -626,15 +614,12 @@ prt_church,103,76,0	script	Garnet#pront	67,{
 			next;
 			mes "[Garnet]";
 			mes "Just so you know, you can't save a Warp Point inside of a dungeon. Oh, and don't forget, each time you make a Warp Portal, you must use 1 ^6666CCBlue Gemstone^000000 as a Catalyst.";
-			next;
-			break;
+			continue;
 		case 7:
 			mes "["+ strcharinfo(0) +"]";
 			mes "Alright, I've";
 			mes "heard enough.";
-			close2;
-			set .@SkilLChat,0;
-			break;
+			close;
 		}
 	}
 	end;
@@ -649,9 +634,8 @@ prt_church,103,71,0	script	Henson#pront	120,{
 	next;
 	mes "[Henson]";
 	mes "Did you have any questions about Acolyte and Priest skills?";
-	next;
-	set .@SkillChat,1;
-	while(.@Skillchat) {
+	while(1) {
+		next;
 		switch(select("About Divine Protection:About Demon Bane:About Decrease AGI:About Signum Crusis :About Pneuma:About Ruwach:About Teleport:End conversation.")) {
 		case 1:
 			mes "[Henson]";
@@ -665,8 +649,7 @@ prt_church,103,71,0	script	Henson#pront	120,{
 			next;
 			mes "[Henson]";
 			mes "With ^6666CCDemon Bane^000000, the damage of your attacks against the Undead will be increased. Permanently.";
-			next;
-			break;
+			continue;
 		case 2:
 			mes "[Henson]";
 			mes "^6666CCDemon Bane^000000 increases the damage you will inflict upon the Undead. Permanently.";
@@ -676,16 +659,14 @@ prt_church,103,71,0	script	Henson#pront	120,{
 			next;
 			mes "[Henson]";
 			mes "When you learn ^6666CCLevel 3 Demon Bane^000000, you will be able to learn ^6666CCSignum Crusis^000000, which lowers the Defense of Undead monsters, as well as monsters with the Dark property.";
-			next;
-			break;
+			continue;
 		case 3:
 			mes "[Henson]";
 			mes "Using ^6666CCDecrease AGI^000000 on monsters will slow their movement, attack speed, and the rate at which they can evade your own attacks. That way, you can maim them properly.";
 			next;
 			mes "[Henson]";
 			mes "Remember, you must first learn ^6666CCLevel 2 Increase AGI^000000 if you want to be able to learn the Decrease AGI skill.";
-			next;
-			break;
+			continue;
 		case 4:
 			mes "[Henson]";
 			mes "The ^6666CCSignum Crusis^000000 skill lowers the Defense of monsters with the Undead or Dark properties. It has a wide range and can be quite powerful.";
@@ -695,24 +676,21 @@ prt_church,103,71,0	script	Henson#pront	120,{
 			next;
 			mes "[Henson]";
 			mes "When it does work, it will give you a great battle advantage. Remember, you will ^6666CCLevel 3 Demon Bane^000000 to acquire this skill.";
-			next;
-			break;
+			continue;
 		case 5:
 			mes "[Henson]";
 			mes "The ^6666CCPneuma^000000 allows you to generate a barrier that will block all long-range attacks in a certain range, creating a zone that will protect you from monsters that attack from a distance.";
 			next;
 			mes "[Henson]";
 			mes "In order to become ready to learn Pneuma, you must first completely master the ^6666CCWarp Portal^000000 skill.";
-			next;
-			break;
+			continue;
 		case 6:
 			mes "[Henson]";
 			mes "Nothing can escape the eyes of the Holy! ^6666CCRuwach^000000 allows you to see monsters, as well as other adventurers, that are hidden or invisible.";
 			next;
 			mes "[Henson]";
 			mes "Once you learn Ruwach, you will be able to learn the ^6666CCTeleport^000000 skill.";
-			next;
-			break;
+			continue;
 		case 7:
 			mes "[Henson]";
 			mes "First, you must learn the ^6666CCRuwach^000000 skill in order to learn how to Teleport.";
@@ -725,14 +703,11 @@ prt_church,103,71,0	script	Henson#pront	120,{
 			next;
 			mes "[Henson]";
 			mes "When Teleport is mastered, you can also learn the ^6666CCWarp Portal^000000 skill. Ask Garnet if you wish to know more about Warp Portal.";
-			next;
-			break;
+			continue;
 		case 8:
 			mes "[Henson]";
 			mes "If you wish to understand more about an Acolyte or Priest skill, you are welcome to visit me at any time.";
-			close2;
-			set .@SkilLChat,0;
-			break;
+			close;
 		}
 	}
 	end;

+ 2 - 2
npc/cities/rachel.txt

@@ -11,7 +11,7 @@
 //= [Partial Official Conversion]
 //= Arunafeltz NPCs
 //===== Additional Comments: =================================
-//= 0.5 Text translated from Korean > English, incomplete, 
+//= 0.5 Text translated from Korean > English, incomplete,
 //= possibly missing some NPCs and missing all quests.
 //= 0.6 Removed Inn Keeper (it's in inn.txt), name duplicates [Lupus]
 //= 0.7 Total update of most if not all NPCs. [L0ne_W0lf]
@@ -632,7 +632,7 @@ ra_temple,172,113,5	script	Child Follower#6	921,{
 	close;
 }
 
-airplane,238,54,7	script	Adventurer	59,{
+airplane,238,54,7	script	Adventurer	4_M_ORIENT01,{
 	if ($rachel_donate < 10000) {
 		mes "[Adventurer]";
 		mes "You know that the temple";

+ 6 - 6
npc/cities/splendide.txt

@@ -1,15 +1,15 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Splendide Town
-//===== By: ================================================== 
+//===== By: ==================================================
 //= L0ne_W0lf
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 1.2
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= [Official Conversion]
 //= Town-specific NPCs for Splendide.
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= 1.0 First Version.
 //= 1.1 Added more town NPCs
 //= 1.2 Added more town NPCs

+ 11 - 11
npc/cities/umbala.txt

@@ -134,7 +134,7 @@ comodo,171,137,1	script	Haith#um	92,{
 	mes "[Haith]";
 	mes "Bah! Whatever~";
 	emotion e_hmm;
-	emotion e_hmm;
+	emotion e_hmm,0,"La Ed#um";
 	close;
 }
 
@@ -277,7 +277,7 @@ umbala,70,106,3	script	Utan Kid#um	781,{
 			if (Zeny > 1000) {
 				set Zeny, Zeny-1000;
 				if (checkweight(517,1)) {
-					getitem 517,1; //Meat
+					getitem 517,1;// Meat
 				}
 				emotion e_swt2;
 			}
@@ -338,7 +338,7 @@ umbala,70,106,3	script	Utan Kid#um	781,{
 			if (Zeny > 1000) {
 				set Zeny, Zeny-1000;
 				if (checkweight(517,1)) {
-					getitem 517,1; //Meat
+					getitem 517,1;// Meat
 				}
 				emotion e_swt2;
 			}
@@ -378,10 +378,10 @@ umbala,59,243,5	script	Utan Kid#1	787,{
 				mes "Whoa, are you really giving me";
 				mes "Meat? Thanks! I will pay you";
 				mes "back with these.";
-				delitem 517,1; //Meat
-				getitem 909,2; //Jellopy
-				getitem 914,2; //Fluff
-				getitem 705,2; //Clover
+				delitem 517,1;// Meat
+				getitem 909,2;// Jellopy
+				getitem 914,2;// Fluff
+				getitem 705,2;// Clover
 				emotion e_scissors;
 				close;
 			}
@@ -415,10 +415,10 @@ umbala,59,243,5	script	Utan Kid#1	787,{
 				mes "[???]";
 				mes "Umbaumbaumbabababah.";
 				mes "Umbababahum.";
-				delitem 517,1; //Meat
-				getitem 909,2; //Jellopy
-				getitem 914,2; //Fluff
-				getitem 705,2; //Clover
+				delitem 517,1;// Meat
+				getitem 909,2;// Jellopy
+				getitem 914,2;// Fluff
+				getitem 705,2;// Clover
 				emotion e_scissors;
 				close;
 			}

+ 2 - 2
npc/cities/veins.txt

@@ -15,7 +15,7 @@
 //============================================================
 
 // Veins
-//============================================================ 
+//============================================================
 veins,162,34,5	script	Towner#ve1	943,{
 	mes "[Towner]";
 	mes "I love cacti. They're";
@@ -535,7 +535,7 @@ veins,157,123,3	script	Towner#ve15	946,{
 }
 
 // Inside Veins
-//============================================================ 
+//============================================================
 ve_in,119,386,3	script	Prisoner#ve1	946,{
 	mes "[Prisoner]";
 	mes "Unbelievable!";

+ 10 - 10
npc/cities/yuno.txt

@@ -1,15 +1,15 @@
-//===== rAthena Script ======================================= 
+//===== rAthena Script =======================================
 //= Juno City
-//===== By: ================================================== 
+//===== By: ==================================================
 //= KitsuneStarwind, kobra_k88, L0ne_W0lf
-//===== Current Version: ===================================== 
+//===== Current Version: =====================================
 //= 1.5
-//===== Compatible With: ===================================== 
+//===== Compatible With: =====================================
 //= rAthena Project
-//===== Description: ========================================= 
+//===== Description: =========================================
 //= [Official Conversion]
 //= NPCs for the City of Juno
-//===== Additional Comments: ================================= 
+//===== Additional Comments: =================================
 //= Added additional npcs.  Added Metto quest. [kobra_k88]
 //= Moved item quest to quest folder. Re-edited a majority of the npcs. [kobra_k88]
 //=a Removed duplicate npcs already found in the sage quest.
@@ -22,10 +22,10 @@
 //= 1.4a Corrected a Typo error (bugreport:716) [Samuray22]
 //= 1.5 Added Renewal coordinates for Payon and Izlude. [Euphy]
 //=     Split Soldier NPCs into Pre-RE/RE (sprite change).
-//============================================================ 
+//============================================================
 
 // Juno
-//============================================================ 
+//============================================================
 yuno,184,173,4	script	Freidrich#juno	729,{
 	if (rand(1,5) == 1) {
 		mes "[Freidrich]";
@@ -58,7 +58,7 @@ yuno,184,173,4	script	Freidrich#juno	729,{
 		close;
 	}
 }
-	
+
 yuno,337,227,4	script	Juno Granny#juno	103,{
 	mes "[Granny]";
 	if (rand(1,50) == 1) {
@@ -197,7 +197,7 @@ yuno,165,111,4	script	Juno Sage#juno	123,,{
 		close;
 	}
 }
-	
+
 yuno,157,205,4	script	Juno Artisan#juno	54,{
 	mes "[Artisan]";
 	mes "*Mumble mumble...*";

+ 2 - 2
npc/guild/agit_main.txt

@@ -386,7 +386,7 @@ OnRecvCastle:
 					end;
 				}
 				set Zeny, Zeny - 200;
-				set RESRVPTS,RESRVPTS+2;
+				set RESRVPTS,RESRVPTS+20;
 				close2;
 				warp .@destination$[1],.@coordinates[0],.@coordinates[1];
 				end;
@@ -436,7 +436,7 @@ OnRecvCastle:
 					cutin "",255;
 					end;
 				}
-				set RESRVPTS,RESRVPTS+8;
+				set RESRVPTS,RESRVPTS+80;
 				set Zeny, Zeny - 800;
 				setcart;
 				close2;

+ 1 - 1
npc/kafras/dts_warper.txt

@@ -690,7 +690,7 @@ yuno,162,191,4	script	Kafra Voting Staff#yuno	861,{
 prontera,164,125,4	script	Kafra Voting Staff#prt	116,{
 	callfunc "F_VoteKafra",2;
 }
-moc_ruins,97,133,4	script	Kafra Voting Staff#moc	116,{
+moc_ruins,97,133,4	script	Kafra Voting Staff#moc	4_M_ZONDAMAN,{
 	callfunc "F_VoteKafra",2;
 }
 geffen,122,37,4	script	Kafra Voting Staff#gef	116,{

+ 3 - 3
npc/kafras/kafras.txt

@@ -214,7 +214,7 @@ payon,175,226,4	script	Kafra Employee::kaf_payon2	116,{
 	callfunc "F_KafEnd",0,1,"in the city of Payon";
 }
 
-pay_arche,55,123,0	script	Kafra Employee::kaf_payon3	115,{
+pay_arche,55,123,0	script	Kafra Employee::kaf_payon3	4_F_KAFRA1,{
 	cutin "kafra_03",2;
 	callfunc "F_KafSet";
 	mes "[Kafra Employee]";
@@ -558,7 +558,7 @@ lhz_in02,237,284,4	script	Kafra Employee::kaf_lhz_in02	861,{
 
 // Louyang
 //============================================================
-louyang,210,104,5	script	Kafra Employee::kaf_louyang	117,{
+louyang,210,104,5	script	Kafra Employee::kaf_louyang	4_F_KAFRA2,{
 	cutin "kafra_01",2;
 	mes "[Kafra Employee]";
 	mes "Welcome to the";
@@ -598,7 +598,7 @@ niflheim,202,180,3	script	Kafra Employee::kaf_niflheim	791,{
 // Dungeons and Fields
 //============================================================
 // - Byalan Island
-izlu2dun,106,58,8	script	Kafra Employee::kaf_izlu2dun	115,{
+izlu2dun,106,58,8	script	Kafra Employee::kaf_izlu2dun	4_F_KAFRA2,{
 	cutin "kafra_03",2;
 	if (!checkre(0) && BaseJob == Job_Novice && job_merchant_q2 > 0) {
 		// Merchant Job Change Quest

+ 5 - 0
npc/mobs/towns.txt

@@ -32,3 +32,8 @@ jawaii,276,163,20,30	monster	Shellfish	1074,2,4200000,2400000,0
 jawaii_in,128,121,1,4	monster	Red Mushroom	1085,1,3000000,1200000,0
 jawaii_in,124,76,1,1	monster	Black Mushroom	1084,1,3600000,1200000,0
 jawaii_in,72,74,5,1	monster	Black Mushroom	1084,2,3000000,1200000,0
+
+//==================================================
+// Inside Lightalzen
+//==================================================
+lhz_in01,157,54,0,0	monster	Red Mushroom	1085,1,120000,100000,0

+ 1 - 1
npc/re/cities/dicastes.txt

@@ -36,7 +36,7 @@ dicastes01,194,159,5	script	Excited Galten#a	492,{
 	close;
 }
 
-dicastes01,202,86,3	script	Sentinel#a	492,{
+dicastes01,202,86,3	script	Sentinel#a	4_MAN_GALTUN,{
 	mes "[Sentinel]";
 	if (isequipped(2782)) {
 		mes "El Dicastes, the";

+ 1 - 1
npc/re/guides/guides_dewata.txt

@@ -14,7 +14,7 @@
 //= 1.1 Navigation system update. [Euphy]
 //============================================================ 
 
-dewata,202,106,4	script	Dewata Guide#dewata01	535,{
+dewata,202,106,4	script	Dewata Guide#dewata01	4_M_DEWWOMAN,{
 	mes "[Dewata Guide]";
 	mes "Welcome to ^8B4513Dewata Island^000000,";
 	mes "a place with dazzling waves and charming views it's a great place to relax.";

+ 5 - 5
npc/re/other/mercenary_rent.txt

@@ -21,8 +21,8 @@ izlude_b,47,170,4	duplicate(Mercenary Manager#main)	Mercenary Manager#Sword2	4_M
 izlude_c,47,170,4	duplicate(Mercenary Manager#main)	Mercenary Manager#Sword3	4_M_JOB_KNIGHT2
 izlude_d,47,170,4	duplicate(Mercenary Manager#main)	Mercenary Manager#Sword4	4_M_JOB_KNIGHT2
 
-izlude,55,170,4	duplicate(MercMerchant)	Mercenary Merchant#Sword	4_F_HUGRANMA
-izlude_a,55,170,4	duplicate(MercMerchant)	Mercenary Merchant#Swo_a	4_F_HUGRANMA
-izlude_b,55,170,4	duplicate(MercMerchant)	Mercenary Merchant#Swo_b	4_F_HUGRANMA
-izlude_c,55,170,4	duplicate(MercMerchant)	Mercenary Merchant#Swo_c	4_F_HUGRANMA
-izlude_d,55,170,4	duplicate(MercMerchant)	Mercenary Merchant#Swo_d	4_F_HUGRANMA
+izlude,55,170,4	duplicate(MercMerchant)	Mercenary Merchant#Sword	4_F_HUWOMAN
+izlude_a,55,170,4	duplicate(MercMerchant)	Mercenary Merchant#Swo_a	4_F_HUWOMAN
+izlude_b,55,170,4	duplicate(MercMerchant)	Mercenary Merchant#Swo_b	4_F_HUWOMAN
+izlude_c,55,170,4	duplicate(MercMerchant)	Mercenary Merchant#Swo_c	4_F_HUWOMAN
+izlude_d,55,170,4	duplicate(MercMerchant)	Mercenary Merchant#Swo_d	4_F_HUWOMAN