Vicious 2ccf291664 eACC scripts.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5429 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-02 18:50:09 +00:00

1509 lines
52 KiB
Plaintext

//===== eAthena Script =======================================
//= Kafra Express - Dungeon Warps Module
//===== By: ==================================================
//= Skotlex
//===== Current Version: =====================================
//= 3.1
//===== Compatible With: =====================================
//= eAthena SVN R3424+, RO Episode 8+ (LightHalzen)
//===== Description: =========================================
//= Part of the Kafra Express Script Package.
//= Offers warping to dungeons.
//===== Additional Comments: =================================
//= See config.txt for configuration.
//============================================================
- script keInit_warpDungeon {
OnInit: //Load Config
donpcevent "keConfig::OnLoadWarpDungeon";
end;
}
function script F_keDungeonWarps {
function SF_abyssLake;
function SF_amatsu;
function SF_antHell;
function SF_ayothaya;
function SF_byalan;
function SF_comodo;
function SF_clockTower;
function SF_coalMine;
function SF_culvert;
function SF_einbech;
function SF_gefenia;
function SF_geffen;
function SF_glastHeim;
function SF_gonRyun;
function SF_hiddenTemple;
function SF_juperos;
function SF_lightHalzen;
function SF_louYang;
function SF_magma;
function SF_orcs;
function SF_payon;
function SF_pyramid;
function SF_sphinx;
function SF_sunkenShip;
function SF_thanatosTower;
function SF_toyFactory;
function SF_turtleIsland;
function SF_umbala;
do {
set @discount,callfunc("F_keCost",100,$@kewd_discount);
if ($@kewd_showOnline) {
set @kmenu, select (
"- Cancel",
"- Abyss Lake ("+$@kewd_abyssLake*@discount/100+"z/"+(getmapusers("abyss_01.gat")
+getmapusers("abyss_02.gat")+getmapusers("abyss_03.gat"))+" "+$@ked_users$+")",
"- Amatsu Dungeon ("+$@kewd_amatsu*@discount/100+"z/"+(getmapusers("ama_dun01.gat")
+getmapusers("ama_dun02.gat")+getmapusers("ama_dun03.gat"))+" "+$@ked_users$+")",
"- Ant Hell ("+$@kewd_antHell*@discount/100+"z/"+(getmapusers("anthell01.gat")
+getmapusers("anthell02.gat"))+" "+$@ked_users$+")",
"- Ayothaya Ancient Shrine ("+$@kewd_ayothaya*@discount/100+"z/"+(getmapusers("ayo_dun01.gat")
+getmapusers("ayo_dun02.gat"))+" "+$@ked_users$+")",
"- Byalan Dungeon ("+$@kewd_byalan*@discount/100+"z/"+(getmapusers("iz_dun00.gat")
+getmapusers("iz_dun01.gat")+getmapusers("iz_dun02.gat")+getmapusers("iz_dun03.gat")
+getmapusers("iz_dun04.gat"))+" "+$@ked_users$+")",
"- Comodo Caves ("+$@kewd_comodo*@discount/100+"z/"+(getmapusers("beach_dun.gat")
+getmapusers("beach_dun2.gat")+getmapusers("beach_dun3.gat"))+" "+$@ked_users$+")",
"- Clock Tower ("+$@kewd_clockTower*@discount/100+"z/"+(getmapusers("c_tower1.gat")
+getmapusers("c_tower2.gat")+getmapusers("c_tower3.gat")+getmapusers("c_tower4.gat")
+getmapusers("alde_dun01.gat")+getmapusers("alde_dun02.gat")+getmapusers("alde_dun03.gat")
+getmapusers("alde_dun04.gat"))+" "+$@ked_users$+")",
"- Coal Mine ("+$@kewd_coalMines*@discount/100+"z/"+(getmapusers("mjo_dun01.gat")
+getmapusers("mjo_dun02.gat")+getmapusers("mjo_dun03.gat"))+" "+$@ked_users$+")",
"- Culvert ("+$@kewd_culvert*@discount/100+"z/"+(getmapusers("prt_sewb1.gat")+getmapusers("prt_sewb2.gat")
+getmapusers("prt_sewb3.gat")+getmapusers("prt_sewb4.gat"))+" "+$@ked_users$+")",
"- Einbroch Station ("+$@kewd_einbech*@discount/100+"z/"+(getmapusers("ein_dun01.gat")
+getmapusers("ein_dun02.gat"))+" "+$@ked_users$+")",
"- Gefenia ("+$@kewd_gefenia*@discount/100+"z/"+(getmapusers("gefenia01.gat")+getmapusers("gefenia02.gat")
+getmapusers("gefenia03.gat")+getmapusers("gefenia04.gat"))+" "+$@ked_users$+")",
"- Geffen Dungeon ("+$@kewd_geffen*@discount/100+"z/"+(getmapusers("gef_dun00.gat")
+getmapusers("gef_dun01.gat")+getmapusers("gef_dun02.gat")+getmapusers("gef_dun03.gat"))+" "+$@ked_users$+")",
"- Glast Heim ("+$@kewd_glastHeim*@discount/100+"z/"+(getmapusers("gl_cas02.gat")+getmapusers("gl_church.gat")
+getmapusers("gl_chyard.gat")+getmapusers("gl_dun01.gat")+getmapusers("gl_dun02.gat")
+getmapusers("gl_in01.gat")+getmapusers("gl_knt01.gat")+getmapusers("gl_knt02.gat")
+getmapusers("gl_prison.gat")+getmapusers("gl_prison1.gat")+getmapusers("gl_sew01.gat")
+getmapusers("gl_sew02.gat")+getmapusers("gl_sew03.gat")+getmapusers("gl_sew04.gat")
+getmapusers("gl_step.gat")+getmapusers("glast_01.gat"))+" "+$@ked_users$+")",
"- Gon Ryun Dungeon ("+$@kewd_gonRyun*@discount/100+"z/"+(getmapusers("gon_dun01.gat")
+getmapusers("gon_dun02.gat")+getmapusers("gon_dun03.gat"))+" "+$@ked_users$+")",
"- Hidden Temple ("+$@kewd_hiddenTemple*@discount/100+"z/"+(getmapusers("prt_maze01.gat")
+getmapusers("prt_maze02.gat")+getmapusers("prt_maze03.gat"))+" "+$@ked_users$+")",
"- Juperos ("+$@kewd_juperos*@discount/100+"z/"+(getmapusers("juperos_01.gat")+getmapusers("juperos_02.gat")
+getmapusers("jupe_area1.gat")+getmapusers("jupe_area2.gat")+getmapusers("jupe_core.gat")
+getmapusers("jupe_gate.gat")+getmapusers("jupe_area1.gat"))+" "+$@ked_users$+")",
"- LightHalzen Rekkenber ("+$@kewd_lightHalzen*@discount/100+"z/"+(getmapusers("lhz_dun01.gat")
+getmapusers("lhz_dun02.gat")+getmapusers("lhz_dun03.gat"))+" "+$@ked_users$+")",
"- Lou Yang Royal Tomb ("+$@kewd_louYang*@discount/100+"z/"+(getmapusers("lou_dun01.gat")
+getmapusers("lou_dun02.gat")+getmapusers("lou_dun03.gat"))+" "+$@ked_users$+")",
"- Magma Dungeon ("+$@kewd_magma*@discount/100+"z/"+(getmapusers("mag_dun01.gat")
+getmapusers("mag_dun02.gat"))+" "+$@ked_users$+")",
"- Orc Dungeon ("+$@kewd_orc*@discount/100+"z/"+(getmapusers("orcsdun01.gat")
+getmapusers("orcsdun02.gat"))+" "+$@ked_users$+")",
"- Payon Dungeon ("+$@kewd_payon*@discount/100+"z/"+(getmapusers("pay_dun00.gat")
+getmapusers("pay_dun01.gat")+getmapusers("pay_dun02.gat")+getmapusers("pay_dun03.gat")
+getmapusers("pay_dun04.gat"))+" "+$@ked_users$+")",
"- Pyramid ("+$@kewd_pyramid*@discount/100+"z/"+(getmapusers("moc_pryd01.gat")+getmapusers("moc_pryd02.gat")
+getmapusers("moc_pryd03.gat")+getmapusers("moc_pryd04.gat")+getmapusers("moc_pryd05.gat")
+getmapusers("moc_pryd06.gat")+getmapusers("moc_prydb1.gat"))+" "+$@ked_users$+")",
"- Sphinx ("+$@kewd_sphinx*@discount/100+"z/"+(getmapusers("in_sphinx1.gat")
+getmapusers("in_sphinx2.gat")+getmapusers("in_sphinx3.gat")+getmapusers("in_sphinx4.gat")
+getmapusers("in_sphinx5.gat"))+" "+$@ked_users$+")",
"- Sunken Ship ("+$@kewd_sunkenShip*@discount/100+"z/"+(getmapusers("treasure01.gat")
+getmapusers("treasure02.gat"))+" "+$@ked_users$+")",
"- Thanatos Tower ("+$@kewd_thanatosTower*@discount/100+"z/"+(getmapusers("tha_t01.gat")
+getmapusers("tha_t02.gat")+getmapusers("tha_t03.gat")+getmapusers("tha_t04.gat")
+getmapusers("tha_t05.gat")+getmapusers("tha_t06.gat")+getmapusers("tha_t07.gat")
+getmapusers("tha_t08.gat")+getmapusers("tha_t09.gat")+getmapusers("tha_t10.gat")
+getmapusers("tha_t11.gat")+getmapusers("tha_t12.gat")+getmapusers("thana_step.gat")
+getmapusers("thana_boss.gat"))+" "+$@ked_users$+")",
"- Toy Factory ("+$@kewd_toyFactory*@discount/100+"z/"+(getmapusers("xmas_dun01.gat")
+getmapusers("xmas_dun02.gat"))+" "+$@ked_users$+")",
"- Turtle Island ("+$@kewd_turtleIsland*@discount/100+"z/"+(getmapusers("tur_dun01.gat")
+getmapusers("tur_dun02.gat")+getmapusers("tur_dun03.gat")+getmapusers("tur_dun04.gat")
+getmapusers("tur_dun05.gat")+getmapusers("tur_dun06.gat"))+" "+$@ked_users$+")",
"- Umbala Dungeon ("+$@kewd_umbala*@discount/100+"z/"+(getmapusers("um_dun01.gat")
+getmapusers("um_dun02.gat"))+" "+$@ked_users$+")"
);
} else {
set @kmenu, select(
"- Cancel",
"- Abyss Lake ("+$@kewd_abyssLake*@discount/100+"z)",
"- Amatsu Dungeon ("+$@kewd_amatsu*@discount/100+"z)",
"- Ant Hell ("+$@kewd_antHell*@discount/100+"z)",
"- Ayothaya Ancient Shrine ("+$@kewd_ayothaya*@discount/100+"z)",
"- Byalan Dungeon ("+$@kewd_byalan*@discount/100+"z)",
"- Comodo Caves ("+$@kewd_comodo*@discount/100+"z)",
"- Clock Tower ("+$@kewd_clockTower*@discount/100+"z)",
"- Coal Mine ("+$@kewd_coalMines*@discount/100+"z)",
"- Culvert ("+$@kewd_culvert*@discount/100+"z)",
"- Einbroch Mine ("+$@kewd_einbech*@discount/100+"z)",
"- Gefenia ("+$@kewd_gefenia*@discount/100+"z)",
"- Geffen Dungeon ("+$@kewd_geffen*@discount/100+"z)",
"- Glast Heim ("+$@kewd_glastHeim*@discount/100+"z)",
"- Gon Ryun Dungeon ("+$@kewd_gonRyun*@discount/100+"z)",
"- Hidden Temple ("+$@kewd_hiddenTemple*@discount/100+"z)",
"- Juperos ("+$@kewd_juperos*@discount/100+"z)",
"- LightHalzen Rekkenber ("+$@kewd_lightHalzen*@discount/100+"z)",
"- Lou Yang Royal Tomb ("+$@kewd_louYang*@discount/100+"z)",
"- Magma Dungeon ("+$@kewd_magma*@discount/100+"z)",
"- Orcs Dungeon ("+$@kewd_orc*@discount/100+"z)",
"- Payon Dungeon ("+$@kewd_payon*@discount/100+"z)",
"- Pyramid ("+$@kewd_pyramid*@discount/100+"z)",
"- Sphinx ("+$@kewd_sphinx*@discount/100+"z)",
"- Sunken Ship ("+$@kewd_sunkenShip*@discount/100+"z)",
"- Thanatos Tower ("+$@kewd_thanatosTower*@discount/100+"z)",
"- Toy Factory ("+$@kewd_toyFactory*@discount/100+"z)",
"- Turtle Island ("+$@kewd_turtleIsland*@discount/100+"z)",
"- Umbala Dungeon ("+$@kewd_umbala*@discount/100+"z)"
);
}
switch (@kmenu) {
case 2:
SF_abyssLake();
break;
case 3:
SF_amatsu();
break;
case 4:
SF_antHell();
break;
case 5:
SF_ayothaya();
break;
case 6:
SF_byalan();
break;
case 7:
SF_comodo();
break;
case 8:
SF_clockTower();
break;
case 9:
SF_coalMine();
break;
case 10:
SF_culvert();
break;
case 11:
SF_einbech();
break;
case 12:
SF_gefenia();
break;
case 13:
SF_geffen();
break;
case 14:
SF_glastHeim();
break;
case 15:
SF_gonRyun();
break;
case 16:
SF_hiddenTemple();
break;
case 17:
SF_juperos();
break;
case 18:
SF_lightHalzen();
break;
case 19:
SF_louYang();
break;
case 20:
SF_magma();
break;
case 21:
SF_orcs();
break;
case 22:
SF_payon();
break;
case 23:
SF_pyramid();
break;
case 24:
SF_sphinx();
break;
case 25:
SF_sunkenShip();
break;
case 26:
SF_thanatosTower();
break;
case 27:
SF_toyFactory();
break;
case 28:
SF_turtleIsland();
break;
case 29:
SF_umbala();
break;
default:
return;
}
} while (@kmenu > 1);
return;
//Subfunction SF_check(flag1, flag2, cost, floor-count, player-map, dungeon-map#, map#1, map#2, ...)
//If kewd_travel is set, both flags need to be one to be able to work there.
//Floor count is the amount of levels the dungeon needs a price for,
//dungeon-map# is the number of maps passed that need to be checked against
//the player's map to see if they are warping from within the entrance.
function SF_check {
if ($@kewd_travel && getarg(0) == 0 && getarg(1) == 0) {
callfunc "F_keIntro", e_sry, "Sorry, but we can only warp you to dungeons you have saved in before.";
return 0;
}
set @cost, getarg(2);
set @discount,100;
set @map$, getarg(4);
set @mapI, getarg(5);
while (@mapI > 0)
{
if (@map$ == getarg(5+@mapI)) {
set @discount,100-$@kewd_entryDiscount;
break;
}
set @mapI, @mapI-1;
}
set @discountKP, callfunc("F_keCost",100,$@kewd_discount);
set @discount,@discount*@discountKP/100;
set @cost,@cost*@discount/100;
set @inc,@cost*$@kewd_levelCost/100;
//@discountKP is used to reverse the price to before the KP discount takes place
if (@discountKP == 0)
set @discountKP,1;
if ($@kewd_deep == 0)
return 1;
switch (getarg(3)) {
case 9:
set @cost9, @cost +8*@inc;
case 8:
set @cost8, @cost +7*@inc;
case 7:
set @cost7, @cost +6*@inc;
case 6:
set @cost6, @cost +5*@inc;
case 5:
set @cost5, @cost +4*@inc;
case 4:
set @cost4, @cost +3*@inc;
case 3:
set @cost3, @cost +2*@inc;
case 2:
set @cost2, @cost +@inc;
}
return 1;
}
function SF_abyssLake {
if (!(SF_check(kewd_abyss, #kewd_abyss, $@kewd_abyssLake, 3, getarg(0), 1, "hu_fild05.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Abyss Lake",
"- Entrance ("+@cost+"z/"+getmapusers("abyss_01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("abyss_02.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("abyss_03.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Abyss Lake",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"hu_fild05.gat",173,308;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"abyss_02.gat",272,270;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"abyss_03.gat",116,29;
break;
}
}
function SF_amatsu {
if (!(SF_check(kewd_amatsu, #kewd_amatsu, $@kewd_amatsu, 3, getarg(0), 1, "ama_in02.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Amatsu Dungeon",
"- Entrance ("+@cost+"z/"+getmapusers("ama_dun01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("ama_dun02.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("ama_dun03.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Amatsu Dungeon",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"ama_in02.gat",120,181;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"ama_dun02.gat",34,41;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"ama_dun03.gat",119,14;
break;
}
}
function SF_antHell {
if (!(SF_check(kewd_antHell, #kewd_antHell, $@kewd_antHell, 1, getarg(0), 2, "moc_fild04.gat","moc_fild15.gat")))
return;
if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Ant Hell",
"- Northern Entrance ("+@cost+"z/"+getmapusers("anthell01.gat")+" "+$@ked_users$+")",
"- Southern Entrance ("+@cost+"z/"+getmapusers("anthell02.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Ant Hell",
"- Northern Entrance ("+@cost+"z)",
"- Southern Entrance ("+@cost+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"moc_fild04.gat",232,322;
break;
case 3:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"moc_fild15.gat",246,251;
break;
}
}
function SF_ayothaya {
if (!(SF_check(kewd_ayothaya, #kewd_ayothaya, $@kewd_ayothaya, 2, getarg(0), 1, "ayo_fild02.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to the Ancient Shrine",
"- Entrance ("+@cost+"z/"+getmapusers("ayo_dun01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("ayo_dun02.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to the Ancient Shrine",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"ayo_fild02.gat",273,150;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"ayo_dun02.gat",24,28;
break;
}
}
function SF_byalan {
if (!(SF_check(kewd_byalan, #kewd_byalan, $@kewd_byalan, 5, getarg(0), 1, "izlu2dun.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Undersea Tunnel",
"- Entrance ("+@cost+"z/"+getmapusers("iz_dun00.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("iz_dun01.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("iz_dun02.gat")+" "+$@ked_users$+")",
"- Level 4 ("+@cost4+"z/"+getmapusers("iz_dun03.gat")+" "+$@ked_users$+")",
"- Level 5 ("+@cost5+"z/"+getmapusers("iz_dun04.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Undersea Tunnel",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)",
"- Level 4 ("+@cost4+"z)",
"- Level 5 ("+@cost5+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"izlu2dun.gat",114,84;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"iz_dun01.gat",253,252;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"iz_dun02.gat",236,204;
break;
case 5:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"iz_dun03.gat",32,63;
break;
case 6:
callfunc "F_keWarp",@cost5*100/@discountKP,$@kewd_discount,e_hmm,"iz_dun04.gat",26,27;
break;
}
}
function SF_comodo {
if (!(SF_check(kewd_comodo, #kewd_comodo, $@kewd_comodo, 1, getarg(0), 2, "comodo.gat","cmd_fild01.gat")))
return;
if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Comodo Caves",
"- Mao, The Eastern Cave ("+@cost+"z/"+getmapusers("beach_dun3.gat")+" "+$@ked_users$+")",
"- Karu, The Western Cave ("+@cost+"z/"+getmapusers("beach_dun.gat")+" "+$@ked_users$+")",
"- Ruande, The Northern Cave ("+@cost+"z/"+getmapusers("beach_dun2.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Comodo Caves",
"- Mao, The Eastern Cave ("+@cost+"z)",
"- Karu, The Western Cave ("+@cost+"z)",
"- Ruande, The Northern Cave ("+@cost+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"cmd_fild01.gat",34,325;
break;
case 3:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"comodo.gat",32,209;
break;
case 4:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"comodo.gat",180,352;
break;
}
}
function SF_clockTower {
if (!(SF_check(kewd_clockTower, #kewd_clockTower, $@kewd_clockTower, 5, getarg(0), 1, "aldebaran.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Clock Tower",
"- Entrance ("+@cost+"z/"+getmapusers("c_tower1.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("c_tower2.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("c_tower3.gat")+" "+$@ked_users$+")",
"- Level 4 ("+@cost4+"z/"+getmapusers("c_tower4.gat")+" "+$@ked_users$+")",
"- Basement 1 ("+@cost2+"z/"+getmapusers("alde_dun01.gat")+" "+$@ked_users$+")",
"- Basement 2 ("+@cost3+"z/"+getmapusers("alde_dun02.gat")+" "+$@ked_users$+")",
"- Basement 3 ("+@cost4+"z/"+getmapusers("alde_dun03.gat")+" "+$@ked_users$+")",
"- Basement 4 ("+@cost5+"z/"+getmapusers("alde_dun04.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Clock Tower",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)",
"- Level 4 ("+@cost4+"z)",
"- Basement 1 ("+@cost2+"z)",
"- Basement 2 ("+@cost3+"z)",
"- Basement 3 ("+@cost4+"z)",
"- Basement 4 ("+@cost5+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"aldebaran.gat",140,130;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"c_tower2.gat",268,26;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"c_tower3.gat",68,146;
break;
case 5:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"c_tower4.gat",185,44;
break;
case 6:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"alde_dun01.gat",297,25;
break;
case 7:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"alde_dun02.gat",43,24;
break;
case 8:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"alde_dun03.gat",18,267;
break;
case 9:
callfunc "F_keWarp",@cost5*100/@discountKP,$@kewd_discount,e_hmm,"alde_dun04.gat",82,267;
break;
}
}
function SF_coalMine {
if (!(SF_check(kewd_coalMines, #kewd_coalMines, $@kewd_coalMines, 3, getarg(0), 1, "mjolnir_02.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to the Mjolnir Dead Pit",
"- Entrance ("+@cost+"z/"+getmapusers("mjo_dun01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("mjo_dun02.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("mjo_dun03.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to the Mjolnir Dead Pit",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"mjolnir_02.gat",89,358;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"mjo_dun02.gat",376,342;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"mjo_dun03.gat",305,260;
break;
}
}
function SF_culvert {
if (!(SF_check(kewd_culvert, #kewd_culvert, $@kewd_culvert, 4, getarg(0), 1, "prt_fild05.gat")))
return;
if ($@kewd_deep == 0) {
set @submenu, 2;
} else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to the Prontera Culvert",
"- Entrance ("+@cost+"z/"+getmapusers("prt_sewb1.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("prt_sewb2.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("prt_sewb3.gat")+" "+$@ked_users$+")",
"- Level 4 ("+@cost4+"z/"+getmapusers("prt_sewb4.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to the Prontera Culvert",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)",
"- Level 4 ("+@cost4+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"prt_fild05.gat",274,208;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"prt_sewb2.gat",19,19;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"prt_sewb3.gat",180,169;
break;
case 5:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"prt_sewb4.gat",100,92;
break;
}
}
function SF_einbech {
if (!(SF_check(kewd_einbech, #kewd_einbech, $@kewd_einbech, 2, getarg(0), 1, "einbech.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to the Einbroch Mines",
"- Entrance ("+@cost+"z/"+getmapusers("ein_dun01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("ein_dun02.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to the Einbech Mines",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"einbech.gat",138,244;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"ein_dun02.gat",290,285;
break;
}
}
function SF_geffen {
if (!(SF_check(kewd_geffen, #kewd_geffen, $@kewd_geffen, 4, getarg(0), 1, "gef_tower.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Geffen Dungeon",
"- Entrance ("+@cost+"z/"+getmapusers("gef_dun00.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("gef_dun01.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("gef_dun02.gat")+" "+$@ked_users$+")",
"- Level 4 ("+@cost4+"z/"+getmapusers("gef_dun03.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Geffen Dungeon",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)",
"- Level 4 ("+@cost4+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"gef_tower.gat",147,35;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"gef_dun01.gat",115,236;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"gef_dun02.gat",106,132;
break;
case 5:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"gef_dun03.gat",203,200;
break;
}
}
function SF_gefenia {
if (!(SF_check(kewd_gefenia, #kewd_gefenia, $@kewd_gefenia, 2, getarg(0), 4, "gefenia01.gat","gefenia02.gat","gefenia03.gat","gefenia04.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Gefenia",
"- Level 1 ("+@cost+"z/"+getmapusers("gefenia01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("gefenia02.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost2+"z/"+getmapusers("gefenia03.gat")+" "+$@ked_users$+")",
"- Level 4 ("+@cost+"z/"+getmapusers("gefenia04.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Gefenia",
"- Level 1 ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost2+"z)",
"- Level 4 ("+@cost+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"gefenia01.gat",60,169;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"gefenia02.gat",116,116;
break;
case 4:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"gefenia03.gat",119,277;
break;
case 5:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"gefenia04.gat",129,86;
break;
}
}
function SF_glastHeim {
if (!(SF_check(kewd_glastHeim, #kewd_glastHeim, $@kewd_glastHeim, 7, getarg(0), 1, "glast_01.gat")))
return;
if ($@kewd_deep == 0) {
if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Glast Heim",
"- Church Entrance ("+@cost+"z/"+getmapusers("gl_church.gat")+" "+$@ked_users$+")",
"- Castle Terrace ("+@cost+"z/"+(getmapusers("gl_cas01.gat")+getmapusers("gl_cas02.gat"))+" "+$@ked_users$+")",
"- Staircase Entrance ("+@cost+"z/"+getmapusers("gl_step.gat")+" "+$@ked_users$+")",
"- Chivalry Entrance ("+@cost+"z/"+getmapusers("gl_knt01.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Glast Heim",
"- Church Entrance ("+@cost+"z)",
"- Castle Terrace ("+@cost+"z)",
"- Staircase Entrance ("+@cost+"z)",
"- Chivalry Entrance ("+@cost+"z)"
);
}
if (@submenu > 2) //Churchyard is index 3.
set @submenu, @submenu+1;
} else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Glast Heim",
"- Church Entrance ("+@cost+"z/"+getmapusers("gl_church.gat")+" "+$@ked_users$+")",
"- Churchyard ("+@cost2+"z/"+getmapusers("gl_chyard.gat")+" "+$@ked_users$+")",
"- Castle Terrace ("+@cost+"z/"+(getmapusers("gl_cas01.gat")+getmapusers("gl_cas02.gat"))+" "+$@ked_users$+")",
"- Staircase Entrance ("+@cost+"z/"+getmapusers("gl_step.gat")+" "+$@ked_users$+")",
"- Chivalry Entrance ("+@cost+"z/"+getmapusers("gl_knt01.gat")+" "+$@ked_users$+")",
"- Chivalry Level 2 ("+@cost2+"z/"+getmapusers("gl_knt02.gat")+" "+$@ked_users$+")",
"- Underground Prison 1 ("+@cost2+"z/"+getmapusers("gl_prison.gat")+" "+$@ked_users$+")",
"- Underground Prison 2 ("+@cost3+"z/"+getmapusers("gl_prison1.gat")+" "+$@ked_users$+")",
"- Culvert Level 1 ("+@cost4+"z/"+getmapusers("gl_sew01.gat")+" "+$@ked_users$+")",
"- Culvert Level 2 ("+@cost3+"z/"+getmapusers("gl_sew02.gat")+" "+$@ked_users$+")",
"- Culvert Level 3 ("+@cost4+"z/"+getmapusers("gl_sew03.gat")+" "+$@ked_users$+")",
"- Culvert Level 4 ("+@cost5+"z/"+getmapusers("gl_sew04.gat")+" "+$@ked_users$+")",
"- Underground Cave 1 ("+@cost6+"z/"+getmapusers("gl_dun01.gat")+" "+$@ked_users$+")",
"- Underground Cave 2 ("+@cost7+"z/"+getmapusers("gl_dun02.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Glast Heim",
"- Church Entrance ("+@cost+"z)",
"- Churchyard ("+@cost2+"z)",
"- Castle Terrace ("+@cost+"z)",
"- Staircase Entrance ("+@cost+"z)",
"- Chivalry Entrance ("+@cost+"z)",
"- Chivalry Level 2 ("+@cost2+"z)",
"- Underground Prison Level 1 ("+@cost2+"z)",
"- Underground Prison Level 2 ("+@cost3+"z)",
"- Culvert Level 1 ("+@cost4+"z)",
"- Culvert Level 2 ("+@cost3+"z)",
"- Culvert Level 3 ("+@cost4+"z)",
"- Culvert Level 4 ("+@cost5+"z)",
"- Underground Cave Level 1 ("+@cost6+"z)",
"- Underground Cave Level 2 ("+@cost7+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"glast_01.gat",206,136;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"gl_chyard.gat",147,15;
break;
case 4:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"glast_01.gat",199,335;
break;
case 5:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"glast_01.gat",62,107;
break;
case 6:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"glast_01.gat",69,193;
break;
case 7:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"gl_knt02.gat",157,287;
break;
case 8:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"gl_prison.gat",14,70;
break;
case 9:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"gl_prison1.gat",150,14;
break;
case 10:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"gl_sew01.gat",258,255;
break;
case 11:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"gl_sew02.gat",108,291;
break;
case 12:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"gl_sew03.gat",171,283;
break;
case 13:
callfunc "F_keWarp",@cost5*100/@discountKP,$@kewd_discount,e_hmm,"gl_sew04.gat",68,277;
break;
case 14:
callfunc "F_keWarp",@cost6*100/@discountKP,$@kewd_discount,e_hmm,"gl_dun01.gat",133,271;
break;
case 15:
callfunc "F_keWarp",@cost7*100/@discountKP,$@kewd_discount,e_hmm,"gl_dun02.gat",224,274;
break;
}
}
function SF_gonRyun {
if (!(SF_check(kewd_gonRyun, #kewd_gonRyun, $@kewd_gonRyun, 3, getarg(0), 1, "gonryun.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Gon Ryun Dungeon",
"- Entrance ("+@cost+"z/"+getmapusers("gon_dun01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("gon_dun02.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("gon_dun03.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Gon Ryun Dungeon",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"gonryun.gat",161,195;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"gon_dun02.gat",22,114;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"gon_dun03.gat",68,11;
break;
}
}
function SF_hiddenTemple {
if (!(SF_check(kewd_hiddenTemple, #kewd_hiddenTemple, $@kewd_hiddenTemple, 3, getarg(0), 1, "prt_fild01.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to the Laberynth Forest",
"- Entrance ("+@cost+"z/"+getmapusers("prt_maze01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("prt_maze02.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("prt_maze03.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to the Laberynth Forest",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"prt_fild01.gat",136,361;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"prt_maze02.gat",106,62;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"prt_maze03.gat",23,8;
break;
}
}
function SF_juperos {
if (!(SF_check(kewd_juperos, #kewd_juperos, $@kewd_juperos, 3, getarg(0), 1, "jupe_cave.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Juperos",
"- Entrance ("+@cost+"z/"+getmapusers("juperos_01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("juperos_02.gat")+" "+$@ked_users$+")",
"- Core ("+@cost3+"z/"+getmapusers("jupe_core.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to the Laberynth Forest",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Core ("+@cost3+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"jupe_cave.gat",55,52;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"juperos_02.gat",37,63;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"jupe_gate.gat",-1,-1;
break;
}
}
function SF_lightHalzen {
if (!(SF_check(kewd_lightHalzen, #kewd_lightHalzen, $@kewd_lightHalzen, 3, getarg(0), 1, "lighthalzen.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to the Rekkenber",
"- Entrance ("+@cost+"z/"+getmapusers("lou_dun01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("lou_dun02.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("lou_dun03.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to the Rekkenber",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"lighthalzen.gat",74,72;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"lhz_dun02.gat",154,18;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"lhz_dun03.gat",141,132;
break;
}
}
function SF_louYang {
if (!(SF_check(kewd_louYang, #kewd_louYang, $@kewd_louYang, 3, getarg(0), 1, "louyang.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to the Royal Tomb",
"- Entrance ("+@cost+"z/"+getmapusers("lou_dun01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("lou_dun02.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("lou_dun03.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to the Royal Tomb",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)"
);
};
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"louyang.gat",41,267;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"lou_dun02.gat",281,20;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"lou_dun03.gat",165,39;
break;
}
}
function SF_magma {
if (!(SF_check(kewd_magma, #kewd_magma, $@kewd_magma, 2, getarg(0), 1, "yuno_fild03.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Nogg Road",
"- Entrance ("+@cost+"z/"+getmapusers("mag_dun01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("mag_dun02.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Nogg Road",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"yuno_fild03.gat",35,135;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"mag_dun02.gat",47,30;
break;
}
}
function SF_orcs {
if (!(SF_check(kewd_orc, #kewd_orc, $@kewd_orc, 2, getarg(0), 1, "gef_fild10.gat")))
return;
if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Orcs Dungeon",
"- Front Entrance ("+@cost+"z/"+getmapusers("orcsdun01.gat")+" "+$@ked_users$+")",
"- Back Entrance ("+@cost+"z/"+getmapusers("orcsdun02.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Orcs Dungeon",
"- Front Entrance ("+@cost+"z)",
"- Back Entrance ("+@cost+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"in_orcs01.gat",34,165;
break;
case 3:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"in_orcs01.gat",112,99;
break;
}
}
function SF_payon {
if (!(SF_check(kewd_payon, #kewd_payon, $@kewd_payon, 5, getarg(0), 1, "pay_arche.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to the Payon Cave",
"- Entrance ("+@cost+"z/"+getmapusers("pay_dun00.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("pay_dun01.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("pay_dun02.gat")+" "+$@ked_users$+")",
"- Level 4 ("+@cost4+"z/"+getmapusers("pay_dun03.gat")+" "+$@ked_users$+")",
"- Level 5 ("+@cost5+"z/"+getmapusers("pay_dun04.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to the Payon Cave",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)",
"- Level 4 ("+@cost4+"z)",
"- Level 5 ("+@cost5+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"pay_arche.gat",41,133;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"pay_dun01.gat",19,33;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"pay_dun02.gat",19,63;
break;
case 5:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"pay_dun03.gat",155,159;
break;
case 6:
callfunc "F_keWarp",@cost5*100/@discountKP,$@kewd_discount,e_hmm,"pay_dun04.gat",34,202;
break;
}
}
function SF_pyramid {
if (!(SF_check(kewd_pyramid, #kewd_pyramid, $@kewd_pyramid, 4, getarg(0),1, "moc_ruins.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to the Pyramid",
"- Entrance ("+@cost+"z/"+getmapusers("moc_pryd01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("moc_pryd02.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("moc_pryd03.gat")+" "+$@ked_users$+")",
"- Level 4 ("+@cost4+"z/"+getmapusers("moc_pryd04.gat")+" "+$@ked_users$+")",
"- Basement 1 ("+@cost2+"z/"+getmapusers("moc_pryd05.gat")+" "+$@ked_users$+")",
"- Basement 2 ("+@cost3+"z/"+getmapusers("moc_pryd06.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to the Pyramid",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)",
"- Level 4 ("+@cost4+"z)",
"- Basement 1 ("+@cost2+"z)",
"- Basement 2 ("+@cost3+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"moc_ruins.gat",62,162;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"moc_pryd02.gat",10,192;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"moc_pryd03.gat",100,92;
break;
case 5:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"moc_pryd04.gat",18,187;
break;
case 6:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"moc_pryd05.gat",94,96;
break;
case 7:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"moc_pryd06.gat",192,11;
break;
}
}
function SF_sphinx {
if (!(SF_check(kewd_sphinx, #kewd_sphinx, $@kewd_sphinx, 5, getarg(0), 1, "moc_fild19.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to the Sphinx",
"- Entrance ("+@cost+"z/"+getmapusers("in_sphinx1.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("in_sphinx2.gat")+" "+$@ked_users$+")",
"- Level 3 ("+@cost3+"z/"+getmapusers("in_sphinx3.gat")+" "+$@ked_users$+")",
"- Level 4 ("+@cost4+"z/"+getmapusers("in_sphinx4.gat")+" "+$@ked_users$+")",
"- Level 5 ("+@cost5+"z/"+getmapusers("in_sphinx5.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to the Sphinx",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)",
"- Level 3 ("+@cost3+"z)",
"- Level 4 ("+@cost4+"z)",
"- Level 5 ("+@cost5+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"moc_fild19.gat",107,100;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"in_sphinx2.gat",149,81;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"in_sphinx3.gat",210,54;
break;
case 5:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"in_sphinx4.gat",10,222;
break;
case 6:
callfunc "F_keWarp",@cost5*100/@discountKP,$@kewd_discount,e_hmm,"in_sphinx5.gat",100,99;
break;
}
}
function SF_sunkenShip {
if (!(SF_check(kewd_sunkenShip, #kewd_sunkenShip, $@kewd_sunkenShip, 2, getarg(0), 1, "alb2trea.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Sunken Ship",
"- Entrance ("+@cost+"z/"+getmapusers("treasure01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("treasure02.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Sunken Ship",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"alb2trea.gat",87,103;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"treasure02.gat",102,27;
break;
}
}
function SF_thanatosTower {
if (!(SF_check(kewd_thanatosTower, #kewd_thanatosTower, $@kewd_thanatosTower, 9, getarg(0), 1, "tha_t01.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Thanatos Tower",
"- Entrance ("+@cost+"z/"+getmapusers("tha_t01.gat")+" "+$@ked_users$+")",
"- Floor 2 ("+@cost2+"z/"+getmapusers("tha_t02.gat")+" "+$@ked_users$+")",
"- Floor 3 ("+@cost3+"z/"+getmapusers("tha_t03.gat")+" "+$@ked_users$+")",
"- Floor 4 ("+@cost4+"z/"+getmapusers("tha_t04.gat")+" "+$@ked_users$+")",
"- Floor 5 ("+@cost5+"z/"+getmapusers("tha_t05.gat")+" "+$@ked_users$+")",
"- Floor 6 ("+@cost6+"z/"+getmapusers("tha_t06.gat")+" "+$@ked_users$+")",
"- Floor 7 ("+@cost7+"z/"+getmapusers("tha_t07.gat")+" "+$@ked_users$+")",
"- Floor 8 ("+@cost8+"z/"+getmapusers("tha_t08.gat")+" "+$@ked_users$+")",
"- Floor 9 ("+@cost9+"z/"+getmapusers("tha_t09.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Thanatos Tower",
"- Entrance ("+@cost+"z)",
"- Floor 2 ("+@cost2+"z)",
"- Floor 3 ("+@cost3+"z)",
"- Floor 4 ("+@cost4+"z)",
"- Floor 5 ("+@cost5+"z)",
"- Floor 6 ("+@cost6+"z)",
"- Floor 7 ("+@cost7+"z)",
"- Floor 8 ("+@cost8+"z)",
"- Floor 9 ("+@cost9+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"tha_t01.gat",149,40;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"tha_t02.gat",149,136;
break;
case 4:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"tha_t03.gat",220,159;
break;
case 5:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"tha_t04.gat",59,144;
break;
case 6:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"tha_t05.gat",62,9;
break;
case 7:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"tha_t06.gat",120,225;
break;
case 8:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"tha_t07.gat",32,166;
break;
case 9:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"tha_t08.gat",108,44;
break;
case 10:
callfunc "F_keWarp",@cost4*100/@discountKP,$@kewd_discount,e_hmm,"tha_t09.gat",87,145;
break;
}
}
function SF_toyFactory {
if (!(SF_check(kewd_toyFactory, #kewd_toyFactory, $@kewd_toyFactory, 2, getarg(0), 1, "xmas.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Toy Factory",
"- Entrance ("+@cost+"z/"+getmapusers("xmas_dun01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("xmas_dun02.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Toy Factory",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"xmas.gat",144,306;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"xmas_dun02.gat",129,133;
break;
}
}
function SF_turtleIsland {
if (!(SF_check(kewd_turtleIsland, #kewd_turtleIsland, $@kewd_turtleIsland, 3, getarg(0), 1, "tur_dun01.gat")))
return;
if ($@kewd_deep == 0) {
if ($@kewd_turtleCave)
set @submenu, 3;
else
set @submenu, 2;
} else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Turtle Island",
"- Island Entrance ("+@cost+"z/"+getmapusers("tur_dun01.gat")+" "+$@ked_users$+")",
"- Cave Entrance ("+@cost+"z/"+getmapusers("tur_dun02.gat")+" "+$@ked_users$+")",
"- Cave Level 2 ("+@cost2+"z/"+getmapusers("tur_dun03.gat")+" "+$@ked_users$+")",
"- Cave Level 3 ("+@cost3+"z/"+getmapusers("tur_dun04.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Turtle Island",
"- Island Entrance ("+@cost+"z)",
"- Cave Entrance ("+@cost+"z)",
"- Cave Level 2 ("+@cost2+"z)",
"- Cave Level 3 ("+@cost3+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"tur_dun01.gat",153,47;
break;
case 3:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"tur_dun01.gat",155,234;
break;
case 4:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"tur_dun03.gat",132,189;
break;
case 5:
callfunc "F_keWarp",@cost3*100/@discountKP,$@kewd_discount,e_hmm,"tur_dun04.gat",100,192;
break;
}
}
function SF_umbala {
if (!(SF_check(kewd_umbala, #kewd_umbala, $@kewd_umbala, 2, getarg(0), 1, "umbala.gat")))
return;
if ($@kewd_deep == 0)
set @submenu, 2;
else if ($@kewd_showOnline) {
set @submenu, select(
"- Cancel warp to Umbala Dungeon",
"- Entrance ("+@cost+"z/"+getmapusers("um_dun01.gat")+" "+$@ked_users$+")",
"- Level 2 ("+@cost2+"z/"+getmapusers("um_dun02.gat")+" "+$@ked_users$+")"
);
} else {
set @submenu, select(
"- Cancel warp to Umbala Dungeon",
"- Entrance ("+@cost+"z)",
"- Level 2 ("+@cost2+"z)"
);
}
switch (@submenu) {
case 2:
callfunc "F_keWarp",@cost*100/@discountKP,$@kewd_discount,e_hmm,"umbala.gat",113,282;
break;
case 3:
callfunc "F_keWarp",@cost2*100/@discountKP,$@kewd_discount,e_hmm,"um_dun02.gat",48,31;
break;
}
}
}
//Invoked when we want to add a map to the list of travelled-to dungeons
function script F_keAddTravelDungeon {
set @map$, getarg(0);
if ($@kewd_travel > 1) {
if (@map$ == "hu_fild05.gat" || kewd_abyss)
set #kewd_abyss,1;
if (@map$ == "ama_in02.gat" || kewd_amatsu)
set #kewd_amatsu,1;
if (@map$ == "moc_fild04.gat" || @map$ == "moc_fild15.gat" || kewd_antHell)
set #kewd_antHell,1;
if (@map$ == "ayo_fild02.gat" || kewd_ayothaya)
set #kewd_ayothaya,1;
if (@map$ == "izlu2dun.gat" || kewd_byalan)
set #kewd_byalan,1;
if (@map$ == "comodo.gat" || @map$ == "cmd_fild01.gat" || kewd_comodo)
set #kewd_comodo,1;
if (@map$ == "aldebaran.gat" || kewd_clockTower)
set #kewd_clockTower,1;
if (@map$ == "mjolnir_02.gat" || kewd_coalMines)
set #kewd_coalMines,1;
if (@map$ == "prt_fild05.gat" || kewd_culvert)
set #kewd_culvert,1;
if (@map$ == "einbech.gat" || kewd_einbech)
set #kewd_einbech,1;
if (@map$ == "gef_tower.gat" || kewd_geffen)
set #kewd_geffen,1;
if (@map$ == "glast_01.gat" || kewd_glastHeim)
set #kewd_glastHeim,1;
if (@map$ == "gonryun.gat" || kewd_gonRyun)
set #kewd_gonRyun,1;
if (@map$ == "prt_fild01.gat" || kewd_hiddenTemple)
set #kewd_hiddenTemple,1;
if (@map$ == "jupe_cave.gat" || kewd_juperos)
set #kewd_juperos,1;
if (@map$ == "lighthalzen.gat" || kewd_lightHalzen)
set #kewd_lightHalzen,1;
if (@map$ == "louyang.gat" || kewd_louYang)
set #kewd_louYang,1;
if (@map$ == "yuno_fild03.gat" || kewd_magma)
set #kewd_magma,1;
if (@map$ == "in_orcs01.gat" || kewd_orc)
set #kewd_orc,1;
if (@map$ == "pay_arche.gat" || kewd_payon)
set #kewd_payon,1;
if (@map$ == "moc_ruins.gat" || kewd_pyramid)
set #kewd_pyramid,1;
if (@map$ == "moc_fild19.gat" || kewd_sphinx)
set #kewd_sphinx,1;
if (@map$ == "alb2trea.gat" || kewd_sunkenShip)
set #kewd_sunkenShip,1;
if (@map$ == "tha_t01.gat" || kewd_thanatosTower)
set #kewd_thanatosTower,1;
if (@map$ == "xmas.gat" || kewd_toyFactory)
set #kewd_toyFactory,1;
if (@map$ == "tur_dun01.gat" || kewd_turtleIsland)
set #kewd_turtleIsland,1;
if (@map$ == "umbala.gat" || kewd_umbala)
set #kewd_umbala,1;
} else {
if (@map$ == "hu_fild05.gat")
set kewd_abyss,1;
if (@map$ == "ama_in02.gat")
set kewd_amatsu,1;
if (@map$ == "moc_fild04.gat" || @map$ == "moc_fild15.gat")
set kewd_antHell,1;
if (@map$ == "ayo_fild02.gat")
set kewd_ayothaya,1;
if (@map$ == "izlu2dun.gat")
set kewd_byalan,1;
if (@map$ == "comodo.gat" || @map$ == "cmd_fild01.gat")
set kewd_comodo,1;
if (@map$ == "aldebaran.gat")
set kewd_clockTower,1;
if (@map$ == "mjolnir_02.gat")
set kewd_coalMines,1;
if (@map$ == "prt_fild05.gat")
set kewd_culvert,1;
if (@map$ == "einbech.gat")
set kewd_einbech,1;
if (@map$ == "gef_tower.gat")
set kewd_geffen,1;
if (@map$ == "glast_01.gat")
set kewd_glastHeim,1;
if (@map$ == "gonryun.gat")
set kewd_gonRyun,1;
if (@map$ == "prt_fild01.gat")
set kewd_hiddenTemple,1;
if (@map$ == "jupe_cave.gat")
set kewd_juperos,1;
if (@map$ == "lighthalzen.gat")
set kewd_lightHalzen,1;
if (@map$ == "louyang.gat")
set kewd_louYang,1;
if (@map$ == "yuno_fild03.gat")
set kewd_magma,1;
if (@map$ == "in_orcs01.gat")
set kewd_orc,1;
if (@map$ == "pay_arche.gat")
set kewd_payon,1;
if (@map$ == "moc_ruins.gat")
set kewd_pyramid,1;
if (@map$ == "moc_fild19.gat")
set kewd_sphinx,1;
if (@map$ == "alb2trea.gat")
set kewd_sunkenShip,1;
if (@map$ == "tha_t01.gat")
set kewd_thanatosTower,1;
if (@map$ == "xmas.gat")
set kewd_toyFactory,1;
if (@map$ == "tur_dun01.gat")
set kewd_turtleIsland,1;
if (@map$ == "umbala.gat")
set kewd_umbala,1;
}
return;
}