Browse Source

Eclage update with minor error fix and added optimizations.

Skormie 10 years ago
parent
commit
03249a0430

+ 2 - 2
npc/re/cities/eclage.txt

@@ -3,14 +3,14 @@
 //===== By: ================================================== 
 //===== By: ================================================== 
 //= Dastgir
 //= Dastgir
 //===== Current Version: ===================================== 
 //===== Current Version: ===================================== 
-//= 1.0
+//= 1.0.1
 //===== Compatible With: ===================================== 
 //===== Compatible With: ===================================== 
 //= rAthena Project
 //= rAthena Project
 //===== Description: ========================================= 
 //===== Description: ========================================= 
 //= Eclage Town NPC
 //= Eclage Town NPC
 //===== Additional Comments: ================================= 
 //===== Additional Comments: ================================= 
 //= 1.0 Generic NPC place holders. [Euphy]
 //= 1.0 Generic NPC place holders. [Euphy]
-//= 1.0a Converted from the official Aegis script. [Dastgir]
+//= 1.0.1 Converted from the official Aegis script. [Dastgir]
 //============================================================ 
 //============================================================ 
 
 
 ecl_in02,96,22,3	script	sign#prison_inn	545,{
 ecl_in02,96,22,3	script	sign#prison_inn	545,{

+ 39 - 39
npc/re/guides/guides_eclage.txt

@@ -1,51 +1,51 @@
-//===== rAthena Script ======================================
-//= Eclage Guide
-//===== By: ==================================================
+//===== rAthena Script ======================================= 
+//= Eclage Guides
+//===== By: ================================================== 
 //= Euphy
 //= Euphy
-//===== Current Version: =====================================
+//===== Current Version: ===================================== 
 //= 1.0
 //= 1.0
 //===== Compatible With: ===================================== 
 //===== Compatible With: ===================================== 
 //= rAthena Project
 //= rAthena Project
-//===== Description: =========================================
+//===== Description: ========================================= 
 //= Guides for the city of Eclage.
 //= Guides for the city of Eclage.
-//===== Additional Comments: =================================
+//===== Additional Comments: ================================= 
 //= 1.0 First version. [Euphy]
 //= 1.0 First version. [Euphy]
-//============================================================
+//============================================================ 
 
 
 ecl_in01,48,60,5	script	Eclage Guard#obb	447,{
 ecl_in01,48,60,5	script	Eclage Guard#obb	447,{
 	mes "[Eclage Guard]";
 	mes "[Eclage Guard]";
 	mes "Welcome, Adventurer. This is the plaza of Eclage, a great and sacred tree. How can I help you?";
 	mes "Welcome, Adventurer. This is the plaza of Eclage, a great and sacred tree. How can I help you?";
 	next;
 	next;
-	switch (select("Palace:Orb:Store:Prison:Clinic:Residential Area:Finish the conversation")) {
-		case 1:
-			mes "[Eclage Guard]";
-			mes "Our great king, courageous generals, and scholars are all staying at the palace.";
-			mes "The palace is located at the top of Eclage. We usually fly there, but I see you don't have wings. Follow the path on your right then. It will lead you to the palace.";
-			close;
-		case 2:
-			mes "[Eclage Guard]";
-			mes "The Orb behind me is like a symbol of us Laphines.";
-			mes "It's filled with great and mysterious power. We always keep an eye on it and guard it carefully.";
-			close;
-		case 3:
-			mes "[Eclage Guard]";
-			mes "This is the plaza of Eclage. You'll find everything you need around here. ";
-			close;
-		case 4:
-			mes "[Eclage Guard]";
-			mes "Prison is a place for criminals. Why would an adventurer like you go there?";
-			mes "Well, it's a little suspicious...but I'll tell you the location. Follow the path on your left. They don't let anyone in though.";
-			close;
-		case 5:
-			mes "[Eclage Guard]";
-			mes "All your pain and weariness melt away in the arms of nature. Restore your mind and body at Eclage Clinic.";
-			mes "Follow the path on your left";
-			close;
-		case 6:
-			mes "[Eclage Guard]";
-			mes "Haven't you seen our decorations for Yai? Take a trip outside. You'll see our residential area.";
-			close;
-		case 7:
-			close;
+	switch(select("Palace:Orb:Store:Prison:Clinic:Residential Area:Finish the conversation")) {
+	case 1:
+		mes "[Eclage Guard]";
+		mes "Our great king, courageous generals, and scholars are all staying at the palace.";
+		mes "The palace is located at the top of Eclage. We usually fly there, but I see you don't have wings. Follow the path on your right then. It will lead you to the palace.";
+		close;
+	case 2:
+		mes "[Eclage Guard]";
+		mes "The Orb behind me is like a symbol of us Laphines.";
+		mes "It's filled with great and mysterious power. We always keep an eye on it and guard it carefully.";
+		close;
+	case 3:
+		mes "[Eclage Guard]";
+		mes "This is the plaza of Eclage. You'll find everything you need around here.";
+		close;
+	case 4:
+		mes "[Eclage Guard]";
+		mes "Prison is a place for criminals. Why would an adventurer like you go there?";
+		mes "Well, it's a little suspicious...but I'll tell you the location. Follow the path on your left. They don't let anyone in though.";
+		close;
+	case 5:
+		mes "[Eclage Guard]";
+		mes "All your pain and weariness melt away in the arms of nature. Restore your mind and body at Eclage Clinic.";
+		mes "Follow the path on your left.";
+		close;
+	case 6:
+		mes "[Eclage Guard]";
+		mes "Haven't you seen our decorations for Yai? Take a trip outside. You'll see our residential area.";
+		close;
+	case 7:
+		close;
 	}
 	}
-}
+}

+ 31 - 46
npc/re/instances/EclageInterior.txt

@@ -16,14 +16,8 @@
 ecl_hub01,132,12,3	script	Chief of Staff#tl02	435,{
 ecl_hub01,132,12,3	script	Chief of Staff#tl02	435,{
 	.@party_id = getcharid(1);
 	.@party_id = getcharid(1);
 	.@md_name$ = "Eclage Interior";
 	.@md_name$ = "Eclage Interior";
-	if (!.@party_id){
-		mes "-! Warning !-";
-		mes "This current quest will be held at Memorial dungeon.";
-		mes "Only the party leader will enter. Please create your party.";
-		close;
-	}
 	
 	
-	if (getpartyleader(.@party_id,2) != getcharid(0)) {
+	if (.@party_id == 0 || getpartyleader(.@party_id,2) != getcharid(0)){
 		mes "-! Warning !-";
 		mes "-! Warning !-";
 		mes "This current quest will be held at Memorial dungeon.";
 		mes "This current quest will be held at Memorial dungeon.";
 		mes "Only the party leader will enter. Please create your party.";
 		mes "Only the party leader will enter. Please create your party.";
@@ -65,47 +59,40 @@ ecl_hub01,130,15,0	script	It is closed shut.	844,{
 		mes "This door connects to the plaza's ceiling.";
 		mes "This door connects to the plaza's ceiling.";
 		mes "It's also a place where the lighting is set up to make Orb seem more beautiful.";
 		mes "It's also a place where the lighting is set up to make Orb seem more beautiful.";
 		next;
 		next;
-		switch (select("Enter it.:Forget it.")) {
-			case 1:
-				.@party_id = getcharid(1);
-				
-				/*if (has_instance("1@ecl") == "") {
-					mes "It is closed shut.";
-					close;
-				}*/
-				if (.@party_id) {
-					.@md_name$ = "Eclage Interior";
-					if (getpartyleader(.@party_id,2) != getcharid(0)){
-						mes "-! Warning !-";
-						mes "This current quest will be held at Memorial dungeon.";
-						mes "Only the party leader will enter. Please create your party.";
-						close;
-					}
-					if (gettimetick(2) >= ecl_interior_time){
-						mes "[Shenime]";
-						mes "Looks like the soldiers inside are really tense.";
-						mes "It is pretty difficult to guide an outsider like you.";
-						close;
-					}
-					close2;
-					mapannounce "ecl_hub01",getpartyname(.@party_id) + " Party leader " + strcharinfo(0) + " is entering " + .@md_name$,bc_map,"0x00ff99";
-					instance_enter(.@md_name$);
-					end;
-				}
+		if (select("Enter it.:Forget it.") == 1) {
+			.@party_id = getcharid(1);
+			.@md_name$ = "Eclage Interior";
+			if (.@party_id == 0 || getpartyleader(.@party_id,2) != getcharid(0)) {
 				mes "-! Warning !-";
 				mes "-! Warning !-";
 				mes "This current quest will be held at Memorial dungeon.";
 				mes "This current quest will be held at Memorial dungeon.";
 				mes "Only the party leader will enter. Please create your party.";
 				mes "Only the party leader will enter. Please create your party.";
 				close;
 				close;
-				
-			case 2:
+			}
+			if (gettimetick(2) >= ecl_interior_time){
+				mes "[Shenime]";
+				mes "Looks like the soldiers inside are really tense.";
+				mes "It is pretty difficult to guide an outsider like you.";
 				close;
 				close;
-		}
+			}
+			switch ( instance_enter(.@md_name$) ) {
+				case 3:
+					mes "An unknown error has occurred.";
+					close;
+				case 2:
+					mes "It is closed shut.";
+					close;
+				case 0:
+					mapannounce "ecl_hub01",getpartyname(.@party_id) + " Party leader " + strcharinfo(0) + " is entering " + .@md_name$,bc_map,"0x00ff99";
+					end;
+				default:
+			}
+		} else
+			close;
 	}
 	}
 	mes "This door connects to the plaza's ceiling.";
 	mes "This door connects to the plaza's ceiling.";
 	mes "It's also a place where the lighting is set up to make Orb seem more beautiful.";
 	mes "It's also a place where the lighting is set up to make Orb seem more beautiful.";
 	mes "It is closed shut.";
 	mes "It is closed shut.";
 	close;
 	close;
-	end;
 }
 }
 
 
 
 
@@ -164,7 +151,7 @@ OnInstanceInit:
 	end;
 	end;
 	
 	
 OnInstanceInit:
 OnInstanceInit:
-	.mob_summoned = 0;
+	'mob_summoned = 0;
 	disablenpc instance_npcname(strnpcinfo(0));
 	disablenpc instance_npcname(strnpcinfo(0));
 	end;
 	end;
 	
 	
@@ -200,7 +187,7 @@ OnMyMobDead:
 	end;
 	end;
 	
 	
 OnTouch:
 OnTouch:
-	if (.mob_summoned) end;
+	if ('mob_summoned) end;
     mes "Upon eliminating the intruders near the Orb, another strange-looking creatures appeared.";
     mes "Upon eliminating the intruders near the Orb, another strange-looking creatures appeared.";
     next;
     next;
     mes "We couldn't communicate with them either, and one of them seemed furious after looking around and finding out that its fellows are defeated.";
     mes "We couldn't communicate with them either, and one of them seemed furious after looking around and finding out that its fellows are defeated.";
@@ -234,14 +221,14 @@ OnTouch:
 	monster .@eclmap$,42,69,"Subordinate of the King of Demons",2376,1,.@sndmaster$+"::OnMyMobDead";
 	monster .@eclmap$,42,69,"Subordinate of the King of Demons",2376,1,.@sndmaster$+"::OnMyMobDead";
 	monster .@eclmap$,47,64,"Subordinate of the King of Demons",2376,1,.@sndmaster$+"::OnMyMobDead";
 	monster .@eclmap$,47,64,"Subordinate of the King of Demons",2376,1,.@sndmaster$+"::OnMyMobDead";
 	monster .@eclmap$,50,60,"Subordinate of the King of Demons",2376,1,.@sndmaster$+"::OnMyMobDead";
 	monster .@eclmap$,50,60,"Subordinate of the King of Demons",2376,1,.@sndmaster$+"::OnMyMobDead";
-	.mob_summoned = 1;
+	'mob_summoned = 1;
     close;
     close;
 }
 }
 
 
 1@ecl,57,65,0	script	#event	139,5,5,{
 1@ecl,57,65,0	script	#event	139,5,5,{
 	end;
 	end;
 OnTouch:
 OnTouch:
-	if (.mob_summoned) end;
+	if ('mob_summoned) end;
 	.@eclmap$ = instance_mapname("1@ecl");
 	.@eclmap$ = instance_mapname("1@ecl");
 	.@eventname$ = instance_npcname("#event");
 	.@eventname$ = instance_npcname("#event");
 	mes "An empty room with nothing inside.";
 	mes "An empty room with nothing inside.";
@@ -270,7 +257,7 @@ OnTouch:
 	monster .@eclmap$,43,67,"Suspicious Creature",2375,1,.@eventname$+"::OnMyMobDead";
 	monster .@eclmap$,43,67,"Suspicious Creature",2375,1,.@eventname$+"::OnMyMobDead";
 	monster .@eclmap$,55,80,"Suspicious Creature",2375,1,.@eventname$+"::OnMyMobDead";
 	monster .@eclmap$,55,80,"Suspicious Creature",2375,1,.@eventname$+"::OnMyMobDead";
 	monster .@eclmap$,60,75,"Suspicious Creature",2375,1,.@eventname$+"::OnMyMobDead";
 	monster .@eclmap$,60,75,"Suspicious Creature",2375,1,.@eventname$+"::OnMyMobDead";
-	.mob_summoned = 1;
+	'mob_summoned = 1;
 	close;
 	close;
 OnMyMobDead:
 OnMyMobDead:
 	if (mobcount(instance_mapname("1@ecl"),instance_npcname("#event")+"::OnMyMobDead") == 0) {
 	if (mobcount(instance_mapname("1@ecl"),instance_npcname("#event")+"::OnMyMobDead") == 0) {
@@ -279,7 +266,7 @@ OnMyMobDead:
 	}
 	}
 	end;
 	end;
 OnInstanceInit:
 OnInstanceInit:
-	.mob_summoned = 0;
+	'mob_summoned = 0;
 	end;
 	end;
 }
 }
 
 
@@ -492,8 +479,6 @@ OnInstanceInit:
 	mes "Let's go." + strcharinfo(0) + ".";
 	mes "Let's go." + strcharinfo(0) + ".";
 	ep14_2_mylord = 30;
 	ep14_2_mylord = 30;
 	changequest 7450,7451;
 	changequest 7450,7451;
-	erasequest 7450;
-	setquest 7451;
 	close2;
 	close2;
 	cutin "",255;
 	cutin "",255;
 	warp "ecl_in03",57,76;
 	warp "ecl_in03",57,76;

+ 43 - 26
npc/re/merchants/coin_exchange.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //===== By: ==================================================
 //= rAthena Dev Team
 //= rAthena Dev Team
 //===== Current Version: =====================================
 //===== Current Version: =====================================
-//= 1.2a
+//= 1.2.1
 //===== Compatible With: ===================================== 
 //===== Compatible With: ===================================== 
 //= rAthena Project
 //= rAthena Project
 //===== Description: =========================================
 //===== Description: =========================================
@@ -13,7 +13,7 @@
 //= 1.0 First version. [Euphy/Lemongrass]
 //= 1.0 First version. [Euphy/Lemongrass]
 //= 1.1 Added remaining Malangdo traders. [Euphy/Lemongrass]
 //= 1.1 Added remaining Malangdo traders. [Euphy/Lemongrass]
 //= 1.2 Added Eclage traders (not fully complete). [Euphy]
 //= 1.2 Added Eclage traders (not fully complete). [Euphy]
-//= 1.2a Completed Eclage Traders. [Dastgir]
+//= 1.2.1 Completed Eclage Traders. [Dastgir]
 //============================================================
 //============================================================
 
 
 // Malangdo
 // Malangdo
@@ -843,16 +843,49 @@ ecl_in01,66,95,3	script	Armor Merchant Naphara#e	436,{
 	mes "Hello, this is Naphara's store, a place of high class goods.";
 	mes "Hello, this is Naphara's store, a place of high class goods.";
 	mes "What would you need?";
 	mes "What would you need?";
 	next;
 	next;
-	.@choice = select("Str Glove:Int Glove:Agi Glove:Vit Glove:Dex Glove:Luk Glove");
-	.@choice -= 1;
+	.@choice = select("Str Glove:Int Glove:Agi Glove:Vit Glove:Dex Glove:Luk Glove") -1;
 	mes "[Armor Merchant]";
 	mes "[Armor Merchant]";
-	mes "^3131FF" + .name$[.@choice] + " For ^000000,";
-	mes "^3131FFMHP + 100, MSP + 20^000000";
-	mes "^3131FF" + .descript$[.@choice] + "^000000";
-	mes "^3131FF" + .descript2$[.@choice] + "^000000";
+	switch(.@choice) {
+		case 0: // Str Glove
+			mes "^3131FFStr Glove^000000";
+			mes "^3131FFMHP + 100, MSP + 20^000000";
+			mes "^3131FFATK+1 increases for every STR+10^000000";
+			mes "^3131FFATK +1% added above STR 110^000000";
+			break;
+		case 1:
+			mes "^3131FFInt Glove^000000";
+			mes "^3131FFMHP + 100, MSP + 20^000000";
+			mes "^3131FFMATK+1 increases for every INT+10^000000";
+			mes "^3131FFMATK +1% added above INT 110^000000";
+			break;
+		case 2:
+			mes "^3131FFAgi Glove^000000";
+			mes "^3131FFMHP + 100, MSP + 20^000000";
+			mes "^3131FFFLEE+1 increases for every AGI+10^000000";
+			mes "^3131FFComplete Flee +1 added above AGI 110^000000";
+			break;
+		case 3:
+			mes "^3131FFVit Glove^000000";
+			mes "^3131FFMHP + 100, MSP + 20^000000";
+			mes "^3131FFMHP+50 for every VIT+10^000000";
+			mes "^3131FFMHP+1% added above VIT 110^000000";
+			break;
+		case 4:
+			mes "^3131FFDex Glove^000000";
+			mes "^3131FFMHP + 100, MSP + 20^000000";
+			mes "^3131FFHIT+1 increases for every DEX+10^000000";
+			mes "^3131FFRanged attack power +1% added above DEX 110^000000";
+			break;
+		case 5:
+			mes "^3131FFLuk Glove^000000";
+			mes "^3131FFMHP + 100, MSP + 20^000000";
+			mes "^3131FFCRI+1 increases for every LUK+10^000000";
+			mes "^3131FFCritical damage +1% added above LUK 110^000000";
+			break;
+	}
 	mes "^3131FFRequired Level: 100^000000";
 	mes "^3131FFRequired Level: 100^000000";
-	mes "^3131FFSlot:0^000000";
-	mes "^3131FFWeight:10^000000";
+	mes "^3131FFSlot: 0^000000";
+	mes "^3131FFWeight: 10^000000";
 	mes "are the characteristic options.";
 	mes "are the characteristic options.";
 	next;
 	next;
 	mes "[Armor Merchant]";
 	mes "[Armor Merchant]";
@@ -871,22 +904,6 @@ ecl_in01,66,95,3	script	Armor Merchant Naphara#e	436,{
 		mes "Great, it's yours. Thank you.";
 		mes "Great, it's yours. Thank you.";
 	}
 	}
 	close;
 	close;
-
-OnInit:
-	setarray .name$[0],"Str Glove","Int Glove","Agi Glove","Vit Glove","Dex Glove","Luk Glove";
-	setarray .descript$[0],"ATK+1 increases for every STR+10",
-							"MATK+1 increases for every INT+10",
-							"FLEE+1 increases for every AGI+10",
-							"MHP+50 for every VIT+10",
-							"HIT+1 increases for every DEX+10",
-							"CRI+1 increases for every LUK+10";
-	setarray .descript2$[0],"ATK +1% added above STR 110",
-							"MATK +1% added above INT 110",
-							"Complete Flee +1 added above AGI 110",
-							"MHP+1 added above VIT 110",
-							"Ranged attack power +1% added above DEX 110",
-							"Critical damage +1% added above LUK 110";
-	end;
 }
 }
 
 
 ecl_in01,64,97,5	script	Slot Expert Nattuer#ecl	436,{
 ecl_in01,64,97,5	script	Slot Expert Nattuer#ecl	436,{