You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

167 lines
6.1 KiB
Plaintext

//===== rAthena Script =======================================
//= Eden Group Quests - Mission [11 - 25]
//===== By: ==================================================
//= L0ne_W0lf
//===== Current Version: =====================================
//= 1.5
//===== Compatible With: =====================================
//= rAthena Project
//===== Description: =========================================
//= Repetable Quests for Players between Baselevel 11 - 25.
//===== Additional Comments: =================================
//= 1.0 First Version.
//= 1.1 Some little optimization here and there. [Masao]
//= 1.2 Optimized. [Euphy]
//= 1.3 Bug fixes. [Capuche]
//= 1.4 Added support to Para_Team_Mark_ in Eden Group. [Ragno]
//= 1.5 Added use of F_HasEdenGroupMark function. [Ragno]
//============================================================
moc_para01,36,38,3 script Mission [11 - 25]#Tuto 4_BOARD3,{
if (!callfunc("F_HasEdenGroupMark")) {
mes "- You need to have an -";
mes "- ^4d4dff'Eden Group Mark'^000000 -";
mes "- to receive these missions. -";
close;
}
for ( .@i = 11124; .@i < 11134; .@i++ )
if (checkquest(.@i,PLAYTIME) == 2) erasequest .@i;
for( .@i = 11114; .@i < 11124; .@i++ ) {
.@j = checkquest(.@i,HUNTING);
if (.@j == 2) {
mes " - You must collect your - ";
mes " - reward before starting - ";
mes " - a new mission. - ";
mes " ";
mes " - Manager : Spike - ";
close;
}
else if (.@j >= 0) {
mes " - You can only request - ";
mes " - one mission at a time. - ";
mes " ";
mes " - Manager : Spike - ";
close;
}
}
if (BaseLevel < 11) {
mes " - There are no tasks - ";
mes " - open for you right now. - ";
close;
}
if (BaseLevel > 25) {
mes " - These missions are too - ";
mes " - easy for your caliber - ";
mes " - search for a more level - ";
mes " - appropriate mission. - ";
close;
}
mes " - Mission bulletin board -";
mes " - for beginners. -";
mes " ";
mes " - Manager : Spike -";
next;
switch(select("Hornet Hunting:Condor Hunting:Grasshopper's Leg:Worm Tail Hunting:Spore Hunting:Pest Control:Muka Hunting:Familiar Hunting:Collect Feathers:Collect Poison Spores:Cancel")) {
case 1: callsub L_Quest,11114,"Hornet Hunting"," - Hunt 10 ^4d4dff'Hornets'^000000 - "," - northwest of Prontera. - ";
case 2: callsub L_Quest,11115,"Condor Hunting"," - Hunt 20 ^4d4dff'Condors'^000000 - "," - south of Morocc. - ";
case 3: callsub L_Quest,11116,"Grasshopper's Leg"," - Hunt 10 ^4d4dff'Rockers'^000000 - "," - southwest of Prontera and - "," - bring 10 ^4d4dffGrasshopper's Legs^000000. - ";
case 4: callsub L_Quest,11117,"Worm Tail Hunting"," - Hunt 20 ^4d4dff'Worm Tails'^000000 - "," - southeast of Payon.- ";
case 5: callsub L_Quest,11118,"Spore Hunting"," - Hunt 30 ^4d4dff'Spores'^000000 - "," - around Payon. - ";
case 6: callsub L_Quest,11119,"Pest Control"," - Hunt 20 ^4d4dffThief Bug Eggs^000000 - "," - in the Prontera Culvert - "," - and bring 10 ^4d4dffChrysalis^000000. - ";
case 7: callsub L_Quest,11120,"Muka Hunting"," - Hunt 20 ^4d4dff'Muka'^000000 - "," - south of Prontera. - ";
case 8: callsub L_Quest,11121,"Familiar Hunting"," - Hunt 20 ^4d4dffFamiliar^000000 - "," - in the Culvert Sewers - "," - west of Prontera. - ";
case 9: callsub L_Quest,11122,"Collect Feathers"," - Hunt 30 ^4d4dff'Peco Pecos'^000000 - "," - south of Prontera. - ";
case 10: callsub L_Quest,11123,"Collect Poison Spores"," - Hunt 30 ^4d4dffPoison Spores^000000 - "," - inside the Geffen Tower and - "," - bring 5 ^4d4dffPoison Spores^000000. - ";
case 11:
mes " - Stop reading the bulletin board. - ";
close;
}
L_Quest:
.@quest_status = checkquest(getarg(0)+10,PLAYTIME);
if (.@quest_status == 0 || .@quest_status == 1) {
mes " - Mission ^4d4dff"+ getarg(1) +"^000000 - ";
mes " - is already finished for today. - ";
mes " ";
mes " - Manager : Spike - ";
close;
}
mes " - Mission '"+ getarg(1) +"' - ";
for ( .@i = 2; .@i < getargcount(); .@i++ )
mes getarg(.@i);
mes " ";
mes " - Manager : Spike - ";
next;
if (select("I will do this mission.:Look for other missions.") == 2) {
mes " - Let's search for -";
mes " - other missions. - ";
close;
}
for ( .@i = 2; .@i < getargcount(); .@i++ )
mes getarg(.@i);
setquest getarg(0);
close;
}
moc_para01,32,30,6 script Spike 4_F_CHILD,{
for( .@i = 11114; .@i < 11124; .@i++ ) {
.@j = checkquest(.@i,HUNTING);
if (.@j == 2) {
switch(.@i) {
case 11114: callsub L_Quest,.@i,"Hornet Hunting",900;
case 11115: callsub L_Quest,.@i,"Condor Hunting",1800;
case 11116: callsub L_Quest,.@i,"Grasshopper's Leg",1400,940,10;
case 11117: callsub L_Quest,.@i,"Worm Tail Hunting",2600;
case 11118: callsub L_Quest,.@i,"Spore Hunting",3900;
case 11119: callsub L_Quest,.@i,"Extirpate Insects",2900,915,10;
case 11120: callsub L_Quest,.@i,"Muka Hunting",3200;
case 11121: callsub L_Quest,.@i,"Familiar Hunting",3200;
case 11122: callsub L_Quest,.@i,"Collect Feathers",5400;
case 11123: callsub L_Quest,.@i,"Collect Poison Spores",6000,7033,5;
}
}
else if (.@j >= 0) {
mes "[Spike]";
mes "You haven't finished your mission yet.";
mes "Keep up the good work. You are almost done.";
close;
}
}
mes "[Spike]";
mes "Are you looking for a job?";
mes "We always have lots of work to do.";
next;
mes "[Spike]";
mes "Why don't you look around and find some interesting tasks?";
close;
L_Quest:
.@quest_id = getarg(0);
if (checkquest(.@quest_id,HUNTING) == 2) {
.@item_req = getarg(3,0);
.@req_amount = getarg(4,0);
if (.@item_req) {
if (countitem(.@item_req) < .@req_amount) {
mes "[Spike]";
mes "You don't have enough "+ getitemname(.@item_req) +".";
mes "You need to bring "+ .@req_amount +" "+ getitemname(.@item_req) +".";
close;
}
}
mes "[Spike]";
mes "Hmm... let me see~";
mes "You have completed the '"+ getarg(1) +"' mission.";
next;
mes "[Spike]";
mes "Good work~!!";
mes "Our client is so happy with your work. He will appreciate what you have done.";
mes "Please help us again. Thanks!";
if (.@item_req)
delitem .@item_req,.@req_amount;
erasequest .@quest_id;
setquest .@quest_id+10;
getexp getarg(2),0;
close;
}
}