Eclage update with minor error fix and added optimizations.

This commit is contained in:
Skormie 2015-01-13 20:38:22 -05:00
parent a4cac34dc6
commit 03249a0430
4 changed files with 115 additions and 113 deletions

View File

@ -3,14 +3,14 @@
//===== By: ==================================================
//= Dastgir
//===== Current Version: =====================================
//= 1.0
//= 1.0.1
//===== Compatible With: =====================================
//= rAthena Project
//===== Description: =========================================
//= Eclage Town NPC
//===== Additional Comments: =================================
//= 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,{

View File

@ -1,51 +1,51 @@
//===== rAthena Script ======================================
//= Eclage Guide
//===== By: ==================================================
//===== rAthena Script =======================================
//= Eclage Guides
//===== By: ==================================================
//= Euphy
//===== Current Version: =====================================
//===== Current Version: =====================================
//= 1.0
//===== Compatible With: =====================================
//= rAthena Project
//===== Description: =========================================
//===== Description: =========================================
//= Guides for the city of Eclage.
//===== Additional Comments: =================================
//===== Additional Comments: =================================
//= 1.0 First version. [Euphy]
//============================================================
//============================================================
ecl_in01,48,60,5 script Eclage Guard#obb 447,{
mes "[Eclage Guard]";
mes "Welcome, Adventurer. This is the plaza of Eclage, a great and sacred tree. How can I help you?";
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;
}
}
}

View File

@ -16,14 +16,8 @@
ecl_hub01,132,12,3 script Chief of Staff#tl02 435,{
.@party_id = getcharid(1);
.@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 "This current quest will be held at Memorial dungeon.";
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 "It's also a place where the lighting is set up to make Orb seem more beautiful.";
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 "This current quest will be held at Memorial dungeon.";
mes "Only the party leader will enter. Please create your party.";
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;
}
}
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 "It's also a place where the lighting is set up to make Orb seem more beautiful.";
mes "It is closed shut.";
close;
end;
}
@ -164,7 +151,7 @@ OnInstanceInit:
end;
OnInstanceInit:
.mob_summoned = 0;
'mob_summoned = 0;
disablenpc instance_npcname(strnpcinfo(0));
end;
@ -200,7 +187,7 @@ OnMyMobDead:
end;
OnTouch:
if (.mob_summoned) end;
if ('mob_summoned) end;
mes "Upon eliminating the intruders near the Orb, another strange-looking creatures appeared.";
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.";
@ -234,14 +221,14 @@ OnTouch:
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$,50,60,"Subordinate of the King of Demons",2376,1,.@sndmaster$+"::OnMyMobDead";
.mob_summoned = 1;
'mob_summoned = 1;
close;
}
1@ecl,57,65,0 script #event 139,5,5,{
end;
OnTouch:
if (.mob_summoned) end;
if ('mob_summoned) end;
.@eclmap$ = instance_mapname("1@ecl");
.@eventname$ = instance_npcname("#event");
mes "An empty room with nothing inside.";
@ -270,7 +257,7 @@ OnTouch:
monster .@eclmap$,43,67,"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";
.mob_summoned = 1;
'mob_summoned = 1;
close;
OnMyMobDead:
if (mobcount(instance_mapname("1@ecl"),instance_npcname("#event")+"::OnMyMobDead") == 0) {
@ -279,7 +266,7 @@ OnMyMobDead:
}
end;
OnInstanceInit:
.mob_summoned = 0;
'mob_summoned = 0;
end;
}
@ -492,8 +479,6 @@ OnInstanceInit:
mes "Let's go." + strcharinfo(0) + ".";
ep14_2_mylord = 30;
changequest 7450,7451;
erasequest 7450;
setquest 7451;
close2;
cutin "",255;
warp "ecl_in03",57,76;

View File

@ -3,7 +3,7 @@
//===== By: ==================================================
//= rAthena Dev Team
//===== Current Version: =====================================
//= 1.2a
//= 1.2.1
//===== Compatible With: =====================================
//= rAthena Project
//===== Description: =========================================
@ -13,7 +13,7 @@
//= 1.0 First version. [Euphy/Lemongrass]
//= 1.1 Added remaining Malangdo traders. [Euphy/Lemongrass]
//= 1.2 Added Eclage traders (not fully complete). [Euphy]
//= 1.2a Completed Eclage Traders. [Dastgir]
//= 1.2.1 Completed Eclage Traders. [Dastgir]
//============================================================
// 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 "What would you need?";
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 "^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 "^3131FFSlot:0^000000";
mes "^3131FFWeight:10^000000";
mes "^3131FFSlot: 0^000000";
mes "^3131FFWeight: 10^000000";
mes "are the characteristic options.";
next;
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.";
}
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,{