From 620e60eebce2c1f35c5c9a82f6ca365b316587f5 Mon Sep 17 00:00:00 2001 From: Valaris Date: Sun, 29 Jan 2006 16:10:48 +0000 Subject: AS OF SVN REV. 5901, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK. IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. EVERYTHING ELSE GOES INTO TRUNK AND WILL BE MERGED INTO STABLE BY VALARIS AND WIZPUTER. -- VALARIS git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5094 54d463be-8e91-2dee-dedb-b68131a5f0ec --- npc/kafras/functions_kafras.txt | 393 ++++++++++++++++++++++++++++++++++++++++ npc/kafras/kafras_alb.txt | 67 +++++++ npc/kafras/kafras_alde.txt | 52 ++++++ npc/kafras/kafras_com.txt | 61 +++++++ npc/kafras/kafras_dungeons.txt | 132 ++++++++++++++ npc/kafras/kafras_gef.txt | 101 +++++++++++ npc/kafras/kafras_izl.txt | 40 ++++ npc/kafras/kafras_mor.txt | 100 ++++++++++ npc/kafras/kafras_new.txt | 142 +++++++++++++++ npc/kafras/kafras_pay.txt | 71 ++++++++ npc/kafras/kafras_pron.txt | 103 +++++++++++ npc/kafras/kafras_yun.txt | 71 ++++++++ 12 files changed, 1333 insertions(+) create mode 100644 npc/kafras/functions_kafras.txt create mode 100644 npc/kafras/kafras_alb.txt create mode 100644 npc/kafras/kafras_alde.txt create mode 100644 npc/kafras/kafras_com.txt create mode 100644 npc/kafras/kafras_dungeons.txt create mode 100644 npc/kafras/kafras_gef.txt create mode 100644 npc/kafras/kafras_izl.txt create mode 100644 npc/kafras/kafras_mor.txt create mode 100644 npc/kafras/kafras_new.txt create mode 100644 npc/kafras/kafras_pay.txt create mode 100644 npc/kafras/kafras_pron.txt create mode 100644 npc/kafras/kafras_yun.txt (limited to 'npc/kafras') diff --git a/npc/kafras/functions_kafras.txt b/npc/kafras/functions_kafras.txt new file mode 100644 index 000000000..0e6431e04 --- /dev/null +++ b/npc/kafras/functions_kafras.txt @@ -0,0 +1,393 @@ +//===== eAthena Script ======================================= +//= Kafra Functions +//===== By: ================================================== +//= Lotsa People (1.0) +//= eAthena Dev Team +//= Darlskies, Darkchild, Syrus22, Lupus, kobra_k88 (2.0) +//===== Current Version: ===================================== +//= 3.2 +//===== Compatible With: ===================================== +//= eAthena 1.0 +//===== Description: ========================================= +//= These functions handle save, storage, cart rental, teleport, +//= and Kafra pass options for all Kafra NPCs. +//===== Additional Comments: ================================= +//= v1.1 Now using functions v2.1 Added Cart Rent for Classes: Whitesmith, Professor. +//= Replaced checkoption(x) into checkcart(0) [Lupus] v2.1b Added Fix Kafra Pass Func [Kobra_k88] +//= 2.2 Final fix of the Kafra Pass Exploit! [Lupus] a -Izlude[4] fix +//= 2.2a Minor changes to function calls. Using agruments. Added Guild options. [kobra_k88] +//= 2.2b This version uses arrays for the teleport option. Rearranged next statements to make menu transitions smoother. [kobra_k88] +//= 2.3 Removed SAVE from Niflheim. [Lupus] +//= 2.3 removed "fix" by HawkMoon RTFM and check supernovice.txt . There's a SPECIAL Kafra which gives CARTS to SN for a special proce. [Lupus] +//= 2.4 Added Baby Class Support (Baby Novice check) Removed annoying storage feature where u had to close dialog window to be able to use your storage [Lupus] +//= 2.5 Added Louyang official Kafra, fixes some Kafras, not letting you to Save your position [Lupus] +//= 2.6 Reverted Dungeons Kafras (they should offer only Storage). Added temp Ayothaya Kafra +//= 2.7 Added correct Ayothaya, Louyang & Amatsu Kafras. [Lupus] +//= 2.8 Fixed Amatsu Storage problems [Lupus] 2.9 Fixed spelling mistakes. [Nexon] +//= 3.0 Added special "not working teleport menu" for Einbroch Kafras [Lupus] +//= 3.1 Removed callfunc Is_####_Class in favor of baseClass [Silentdragon] +//= 3.2 Fixed an exploit [Lupus] +//============================================================ + + +// Main Function =========================================================== +//= arg(0): Used to determine which welcome message to show. +//= arg(1): Used to determine which menu to display. +//= arg(2): Used to determine if the info menu is shown in F_KafInfo. +//========================================================================== +function script F_Kafra { + set @kafPass, 0; + mes "[Kafra]"; + if(getarg(0)==0) mes "Welcome to Kafra Corp. We will stay with you wherever you go."; + //Niflheim + if(getarg(0)==1) mes "Welcome... Kafra Services.... Will be with you even if you die....."; + //Guilds Castles + if(getarg(0)==2) mes "Welcome, ^5533FF" + GetGuildName(@GID) + "^000000 members. We will stay with you wherever you go"; + //Amatsu + if(getarg(0)==3) mes "So, have you come from a faraway land to study our culture, or are you just sightseeing?"; + if(getarg(0)==3) mes "In either case, why not stay awhile?"; + if(getarg(0)==3) mes "The air is eternally heavy with the"; + if(getarg(0)==3) mes "scent of pleasant wildflowers."; + //Louyang, Ayothaya + if(getarg(0)==4) mes "With our many Kafra"; + if(getarg(0)==4) mes "service locations, you're never"; + if(getarg(0)==4) mes "far from home."; + next; + + M_Menu: +//Guilds Kafra + if(getarg(0)==2) menu "-Use Storage",M_FStorage, "-Use Guild Storage",M_GStorage, "-Rent a Cart",M_Cart, "-Use Teleport Service",M_Teleport, "-Cancel",M_End; +//only Save & Storage + if(getarg(1)==1) menu "-Save",M_Save,"-Use Storage",M_Storage, "-Cancel",M_End; +//only Storage + if(getarg(1)==2) menu "-Use Storage",M_Storage, "-Cancel",M_End; +//Common w/o teleport + if(getarg(1)==3) menu "-Save",M_Save, "-Use Storage",M_Storage, "-Rent a Cart",M_Cart, "-Kafra Pass",M_Pass, + "-Other Information Check",M_Info, "-Cancel",M_End; +//Common Kafra (with Teleport Notice in Einbroch) + if(getarg(1)==4) menu "-Save",M_Save, "-Use Storage",M_Storage, "-Use Teleport Service",M_NoTeleport, "-Rent a Cart",M_Cart, "-Kafra Pass",M_Pass, + "-Other Information Check",M_Info, "-Cancel",M_End; +//Common Kafra + menu "-Save",M_Save, "-Use Storage",M_Storage, "-Use Teleport Service",M_Teleport, "-Rent a Cart",M_Cart, "-Kafra Pass",M_Pass, + "-Other Information Check",M_Info, "-Cancel",M_End; + + M_Save: + return; + M_Storage: + callfunc "F_KafStor",0; + next; + goto M_Menu; + M_GStorage: + callfunc "F_KafStor",1; + next; + goto M_Menu; + //Don't charge for a common Kafra Storage in your Castle + M_FStorage: + callfunc "F_KafStor",2; + next; + goto M_Menu; + M_Teleport: + callfunc "F_KafTele",getarg(0); + goto M_Menu; + M_Cart: + if(callfunc("F_KafCart",getarg(0)) == 1) next; + goto M_Menu; + M_Pass: + if(callfunc("F_KafPass") == 1) next; + goto M_Menu; + M_Info: + callfunc "F_KafInfo",getarg(2); + goto M_Menu; + M_End: + callfunc "F_KafEnd",getarg(0),0; + end; + M_NoTeleport: + mes "[Kafra]"; + mes "Because of the ^FF0000Limited Transport Agreement^000000, the Kafra Corporation cannot provide Teleport Services in the Schwarzwald Republic."; + next; + mes "[Kafra]"; + mes "We ask that you please"; + mes "use the Airship Service"; + mes "instead. Thank you for your"; + mes "understanding and cooperation."; + next; + goto M_Menu; +} + + +// Storage Function ======================================================= +function script F_KafStor { + if(getarg(0) == 1) goto L_Guild; + if(basicskillcheck(0) > 0 && getskilllv(1) < 6) goto sL_JbLvl; + if(BaseJob == Job_Novice) set @fee, 30; + if(BaseJob != Job_Novice) set @fee, 60; + if(@kafPass==1 || getarg(0) == 2) set @fee, 0; + if(Zeny<@fee) goto sL_Zeny; + set Zeny, Zeny-@fee; + set RESRVPTS, RESRVPTS + (@fee/5); + + mes "[Kafra]"; + mes "Close this window to open your storage."; + mes "We hope to see you again soon."; + close2; + openstorage; + cutin "", 255; + close; + end; + + sL_JbLvl: + mes "[Kafra]"; + mes "I am sorry but you have to be at least Novice level 6 if you want to use the storage."; + return; + sL_Zeny: + mes "[Kafra]"; + mes "Dear you don't have enough money. The Storage fee is "+@fee+" Zeny."; + return; +L_Guild: + if(guildopenstorage(0) == 1) goto L_InUse; + cutin "", 255; + close; + + L_InUse: + mes "[Kafra]"; + mes "I'm sorry but another guild member is using the guild storage"; + mes "right now. Please wait until that person is finished."; + close2; + cutin "", 255; + close; + end; + +} + + +// Teleport Function ================================================== +function script F_KafTele { + mes "[Kafra]"; + if (@kafPass==1) mes "Since you're using a Kafra Pass, any warp is free!"; + mes "Please set your destination."; + next; + + menu @wrpC$[0],M_Wrp0, @wrpC$[1],M_Wrp1, @wrpC$[2],M_Wrp2, @wrpC$[3],M_Wrp3, + @wrpC$[4],M_Wrp4, @wrpC$[5],M_Wrp5, @wrpC$[6],M_Wrp6; + + M_Wrp0: + set @num, 0; + goto L_Warp; + M_Wrp1: + set @num, 1; + goto L_Warp; + M_Wrp2: + set @num, 2; + goto L_Warp; + M_Wrp3: + set @num, 3; + goto L_Warp; + M_Wrp4: + set @num, 4; + goto L_Warp; + M_Wrp5: + set @num, 5; + goto L_Warp; + M_Wrp6: + set @num, 6; + + L_Warp: + if (@wrpC$[@num] == "Cancel") return; + if (@kafPass==1) set @wrpP[@num], 0; + if (Zeny<@wrpP[@num]) goto sL_CantTele; + set Zeny, Zeny-@wrpP[@num]; + if (@kafPass==0) set RESRVPTS, RESRVPTS + (@wrpP[@num]/16); + + if (@wrpD$[@num] == "Alberta") warp "alberta.gat", 117, 56; + if (@wrpD$[@num] == "Al De Baran") warp "aldebaran.gat",143,110; + if (@wrpD$[@num] == "Comodo") warp "comodo.gat", 207, 144; + if (@wrpD$[@num] == "Izlude") warp "izlude.gat", 91, 105; + if (@wrpD$[@num] == "Geffen") warp "geffen.gat", 120, 39; + if (@wrpD$[@num] == "Morroc") warp "morocc.gat", 156, 46; + if (@wrpD$[@num] == "Payon") warp "payon.gat", 168, 103; + if (@wrpD$[@num] == "Prontera") warp "prontera.gat", 116, 72; + if (@wrpD$[@num] == "Coal Mine(Dead Pit)") warp "mjolnir_02.gat", 82, 347; + if (@wrpD$[@num] == "Comodo Pharos Lighthouse") warp "cmd_fild07.gat", 127, 134; + if (@wrpD$[@num] == "Orc Dungeon") warp "gef_fild10.gat", 52, 326; + if (@wrpD$[@num] == "Umbala") warp "umbala.gat", 130, 130; + if (@wrpD$[@num] == "Yuno") warp "yuno.gat", 157, 123; + close2; // this part safegaurds against errors/typos + set zeny, zeny + @wrpP[@num]; + cutin "", 255; + close; + end; + + sL_CantTele: + mes "[Kafra]"; + mes "Dear you don't have enough money. Please check your funds again."; + close2; + cutin "", 255; + close; + end; +} + + +// Cart Function ======================================================== +function script F_KafCart { + if(baseClass != Job_Merchant) goto sL_CantRent; + if(getskilllv(39)==0) goto sL_NeedSkill; + if(checkcart(0) == 1) goto sL_GotCart; + if(getarg(0) == 2) goto L_Guild; + mes "[Kafra]"; + if(@kafPass==0) mes "The Cart Fee is 800 Zeny. Do you want to Rent a Cart?"; + if(@kafPass==1) mes "Since you're using a Kafra Pass, you can rent a cart for free!"; + next; + menu "-Rent a Cart.",-, "-Cancel.",M_End; + + if(Zeny<800 && kafPass==0) goto sL_CartFee; + if(@kafPass==0) set Zeny,Zeny-800; + if(@kafPass==0) set RESRVPTS, RESRVPTS + 48; + L_Guild: + setcart; + mes "[Kafra]"; + mes "Here is your cart."; + return 1; + + sL_CantRent: + mes "[Kafra]"; + mes "I'm sorry dear. The Cart service is only provided for the Merchant and Blacksmith Class."; + return 1; + sL_NeedSkill: + mes "[Kafra]"; + mes "I'm sorry but you need the skill ^0000FF'Pushcart'^000000 to rent a cart."; + return 1; + sL_GotCart: + mes "[Kafra]"; + mes "Excuse me... but you already have a cart...."; + emotion 4; + return 1; + sL_CartFee: + mes "[Kafra]"; + mes "Dear, you don't have enough Money. You need 800 Zeny."; + return 1; + M_End: + return 0; +} + + +// Pass Function =============================================================== +function script F_KafPass { + + sM_Menu: + menu "Use a Kafra Pass.",-, "What is a Kafra Pass?",sM_PassInfo, "Cancel",sM_End; + + mes "[Kafra]"; + mes "Let me just check your pass....."; + next; + if(usedKafPass==0 && countitem(1084)<1) goto sL_NeedPass; + set @kafPass,1; + set usedKafPass, usedKafPass + 1; + if(usedKafPass>=3) goto sL_PassExpire; + if(usedKafPass > 1) goto L_Cont; //fixed Lupus + delitem 1084,1; + mes "(you hand her your pass)"; + next; + mes "[Kafra]"; + mes "Great! Everything seems to be in order. Now that your pass is activated, you may rent a cart or use the teleport services for free."; + mes "Your pass number has been entered into our database so you no longer need it."; + next; + + L_Cont: + mes "[Kafra]"; + mes "You will be able to use the Cart Rental and Teleport services free of charge ^5533FF"+(3 - usedKafPass)+"^000000 more times with any Kafra service agent you choose."; + return 1; + + sL_NeedPass: + mes "[Kafra]"; + mes "I'm sorry but you don't have a kafra pass to use...."; + next; + goto sM_Menu; + sL_PassExpire: + mes "[Kafra]"; + mes "This is going to be the 3rd and final time you use this pass, therefore it is now expired."; + next; + set usedKafPass,0; + mes "[Kafra]"; + mes "You may now use the Teleport and Cart Rental services for free."; + return 1; + sM_PassInfo: + mes "[Kafra]"; + mes "A ^5533FFKafra Pass^000000 is a unique voucher that lets you use Kafra services for free!"; + mes "The Kafra services that you may use for free are the ^FF3355Teleport^000000 service and the ^FF3355Cart Rental^000000 service."; + next; + mes "[Kafra]"; + mes "Kafra passes can be purchased at the Kafra Corp. Main office in Al De Baran."; + next; + mes "[Kafra]"; + mes "To use a Kafra Pass, simply choose the option to 'Use a Kafra Pass', when speaking with a Kafra agent such as myself."; + mes "Your pass number will be entered into our database, and you will then be able to use the Teleport, and Cart Rental Kafra services free of charge."; + next; + mes "[Kafra]"; + mes "Once you have finished using the desired services, and have stopped interacting with the Kafra, your 'free use' session will end."; + mes "You will have a total of ^5533FF 3 'free use' sessions^000000 available upon activation of your Kafra Pass."; + next; + mes "[Kafra]"; + mes "To begin another 'free use' session, simply select the 'Use a Kafra Pass' option when speaking with a Kafra Agent."; + next; + mes "[Kafra]"; + mes "Believe me when I say that the Kafra Pass is a great bargain!!"; + mes "With the Kafra Pass, we hope to give players some incentive to use our great services."; + next; + goto sM_Menu; + + sM_End: + return 0; +} + +// Special Reserve Points Function =========================================== +function script F_KafInfo { + + sM_Menu: + if(getarg(0) == 0) menu "-Special Reserve Check",sM_ResChk, "-Kafra Locations",sM_KafLoc, "-Cancel",sM_End; + + sM_ResChk: + mes "[Kafra]"; + mes "Here is your current amount of special reserve points:"; + mes "^0000ff"+RESRVPTS+"^000000."; + next; + mes "[Kafra]"; + mes "Remember to continue using Kafra services such as Storage and Teleport, to earn more special reserve points."; + next; + mes "[Kafra]"; + mes "You can trade them in at the Kafra Main Office in Al De Baran for useful items and cool prizes."; + next; + if(getarg(0) == 1) return; + goto sM_Menu; + sM_KafLoc: + mes "[Kafra]"; + mes "The flashing signals on your mini-map point to the locations of all of the Kafra Agents in this city."; + viewpoint 1,@viewpX[0],@viewpY[0],1,0xFF00FF; + viewpoint 1,@viewpX[1],@viewpY[1],2,0xFF00FF; + viewpoint 1,@viewpX[2],@viewpY[2],3,0xFF00FF; + viewpoint 1,@viewpX[3],@viewpY[3],4,0xFF00FF; + next; + viewpoint 2,@viewpX[0],@viewpY[0],1,0xFF00FF; + viewpoint 2,@viewpX[1],@viewpY[1],2,0xFF00FF; + viewpoint 2,@viewpX[2],@viewpY[2],3,0xFF00FF; + viewpoint 2,@viewpX[3],@viewpY[3],4,0xFF00FF; + goto sM_Menu; + sM_End: + return; +} + + +// End Function ===================================================== +// arg(0): used to determine what message to display. +// arg(1): used to determine if save message is displayed. +//=================================================================== +function script F_KafEnd { + mes "[Kafra]"; + if(getarg(1)==1) mes "Your respawn point has been saved."; // only shown when a player uses save + if(getarg(0)!=1) mes "Thank you for using Kafra Services. We hope to see you again soon."; + if(getarg(0)==1) mes "We, Kafra Corporation.... Will be with you.... whenever.... wherever... therefore.... please don't forget us....."; + close2; + cutin "", 255; + emotion 15; + close; + end; +} diff --git a/npc/kafras/kafras_alb.txt b/npc/kafras/kafras_alb.txt new file mode 100644 index 000000000..29645bbc1 --- /dev/null +++ b/npc/kafras/kafras_alb.txt @@ -0,0 +1,67 @@ +//===== eAthena Script ============ +//= Alberta Kafras +//===== By: ========================= +//= eAthena Dev Team +//===== Current Version: =================== +//= 2.2 +//===== Compatible With: ===================== +//= eAthena 1.0 +//===== Description: ============================================ +//= Description of argument settings for callfunc "F_Kafra". +//= arg(0): When set at 0 the default Kafra message is displayed. +//= When set to 1 the Niflhiem Kafra message is displayed. +//= When set to 2 the Guild Kafra message is displayed. +//= arg(1): Set to 1 to disable teleport menu option. Otherwise set to 0. +//= arg(2): Set to 1 to disable info menu. Otherwise set to 0. +//===== Additional Comments: ========================================== +//= v1.1 Now using functions :) +//= v2.1b Minor changes to function calls. Using arguments. +//= This version uses arrays .[kobra_k88] +//= 2.2 New Teleport list and prices [Lupus] +//===================================================================== + + +// NorthWest ----------------------------------------------------------------- +alberta.gat,28,229,8 script Kafra 115,{ + cutin "kafra_03",2; + callfunc "F_KafSetAlb"; + callfunc "F_Kafra",0,0,0; + + M_Save: + menu "-Save Outside City.",sM_Out, "-Save inside City",sM_In; + + sM_Out: + savepoint "pay_fild03.gat",386,76; + callfunc "F_KafEnd",0,1; + sM_In: + savepoint "alberta.gat",31,231; + callfunc "F_KafEnd",0,1; +} + +// South --------------------------------------------------------------------- +alberta.gat,113,60,5 script Kafra 112,{ + cutin "kafra_06",2; + callfunc "F_KafSetAlb"; + callfunc "F_Kafra",0,0,0; + + M_Save: + savepoint "alberta.gat",117,57; + callfunc "F_KafEnd",0,1; +} + + +// Function: Sets variables for Ablerta Kafras ------------------------------- +function script F_KafSetAlb { + setarray @wrpP[0], 1200, 1800, 1800; + setarray @wrpD$[0], "Payon", "Morroc", "Prontera"; + set @wrpC$[0], @wrpD$[0]+" -> "+@wrpP[0]; + set @wrpC$[1], @wrpD$[1]+" -> "+@wrpP[1]; + set @wrpC$[2], @wrpD$[2]+" -> "+@wrpP[2]; + set @wrpC$[3], "Cancel"; + set @wrpC$[4], ""; + set @wrpC$[5], ""; + set @wrpC$[6], ""; + setarray @viewpX[0], 28, 113, 0, 0; + setarray @viewpY[0], 229, 60, 0, 0; + return; +} diff --git a/npc/kafras/kafras_alde.txt b/npc/kafras/kafras_alde.txt new file mode 100644 index 000000000..2cb3bbeaf --- /dev/null +++ b/npc/kafras/kafras_alde.txt @@ -0,0 +1,52 @@ +//===== eAthena Script ======================================= +//= Al De Baran Kafras +//===== By: ============================ +//= eAthena Dev Team +//===== Current Version: ======================= +//= 2.2 +//===== Compatible With: ============================ +//= eAthena 1.0 +//===== Description: ============================================ +//= Description of argument settings for callfunc "F_Kafra". +//= arg(0): When set at 0 the default Kafra message is displayed. +//= When set to 1 the Niflhiem Kafra message is displayed. +//= When set to 2 the Guild Kafra message is displayed. +//= arg(1): Set to 1 to disable teleport menu option. Otherwise set to 0. +//= arg(2): Set to 1 to disable info menu. Otherwise set to 0. +//===== Additional Comments: ========================================== +//= v1.1 Now using functions :) +//= v2.1b Minor changes to function calls. Using arguments. +//= This version uses arrays .[kobra_k88] +//= 2.2 New teleport destinations, prices [Lupus] +//===================================================================== + + +// Kafra Main Office (Kafra Leilah) ------------------------------------ +aldeba_in.gat,96,181,4 script Kafra Leilah 113,{ + cutin "kafra_05",2; + callfunc "F_Kafra",0,2,1; + + M_Save: + savepoint "aldeba_in.gat",96,179; + callfunc "F_KafEnd",0,1; + +} + +// South -------------------------------------------------- +aldebaran.gat,143,119,4 script Kafra 113,{ + cutin "kafra_05",2; + setarray @wrpP[0], 1200, 1200, 1800, 1700; + setarray @wrpD$[0], "Geffen", "Yuno" , "Izlude", "Coal Mine(Dead Pit)"; + set @wrpC$[0], @wrpD$[0]+" -> "+@wrpP[0]; + set @wrpC$[1], @wrpD$[1]+" -> "+@wrpP[1]; + set @wrpC$[2], @wrpD$[2]+" -> "+@wrpP[2]; + set @wrpC$[3], @wrpD$[3]+" -> "+@wrpP[3]; + set @wrpC$[4], "Cancel"; + set @wrpC$[5], ""; + set @wrpC$[6], ""; + callfunc "F_Kafra",0,0,1; + + M_Save: + savepoint "aldebaran.gat",143,109; + callfunc "F_KafEnd",0,1; +} diff --git a/npc/kafras/kafras_com.txt b/npc/kafras/kafras_com.txt new file mode 100644 index 000000000..c317c7728 --- /dev/null +++ b/npc/kafras/kafras_com.txt @@ -0,0 +1,61 @@ +//===== eAthena Script =============== +//= Comodo Kafras +//===== By: ============================ +//= eAthena Dev Team +//===== Current Version: ======================= +//= 2.2 +//===== Compatible With: ============================ +//= eAthena 1.0 +//===== Description: ============================================ +//= Description of argument settings for callfunc "F_Kafra". +//= arg(0): When set at 0 the default Kafra message is displayed. +//= When set to 1 the Niflhiem Kafra message is displayed. +//= When set to 2 the Guild Kafra message is displayed. +//= arg(1): Set to 1 to disable teleport menu option. Otherwise set to 0. +//= arg(2): Set to 1 to disable info menu. Otherwise set to 0. +//===== Additional Comments: ========================================== +//= v1.1 Now using functions :) +//= v2.1b Minor changes to function calls. Using arguments. +//= This version uses arrays .[kobra_k88] +//= Corrected savepoint for in town kafra.[kobra_k88] +//= 2.2 New teleport destinations, prices [Lupus] +//===================================================================== + + +// In Town ==============================================>\\ +comodo.gat,200,148,4 script Kafra 721,{ + cutin "kafra_07",2; + setarray @wrpD$[0], "Morroc", "Comodo Pharos Lighthouse", "Umbala"; + setarray @wrpP[0], 1800, 1200, 1800; + set @wrpC$[0], @wrpD$[0]+" -> "+@wrpP[0]; + set @wrpC$[1], @wrpD$[1]+" -> "+@wrpP[1]; + set @wrpC$[2], @wrpD$[2]+" -> "+@wrpP[2]; + set @wrpC$[3], "Cancel"; + set @wrpC$[4], ""; + set @wrpC$[5], ""; + set @wrpC$[6], ""; + callfunc "F_Kafra",0,0,1; + + M_Save: + savepoint "comodo.gat",204,143; + callfunc "F_KafEnd",0,1; +} + +// Comodo Pharos Lighthouse (Beacon Island) ===================>\\ +cmd_fild07.gat,135,134,4 script Kafra 721,{ + cutin "kafra_07",2; + setarray @wrpD$[0], "Comodo", "Morroc"; + setarray @wrpP[0], 1200, 1800; + set @wrpC$[0], @wrpD$[0]+" -> "+@wrpP[0]; + set @wrpC$[1], @wrpD$[1]+" -> "+@wrpP[1]; + set @wrpC$[2], "Cancel"; + set @wrpC$[3], ""; + set @wrpC$[4], ""; + set @wrpC$[5], ""; + set @wrpC$[6], ""; + callfunc "F_Kafra",0,0,1; + + M_Save: + savepoint "cmd_fild07.gat",127,134; + callfunc "F_KafEnd",0,1; +} diff --git a/npc/kafras/kafras_dungeons.txt b/npc/kafras/kafras_dungeons.txt new file mode 100644 index 000000000..e8c8ef2fb --- /dev/null +++ b/npc/kafras/kafras_dungeons.txt @@ -0,0 +1,132 @@ +//===== eAthena Script ================ +//= Kafras in Dungeons and Fields +//===== By: ============================ +//= eAthena Dev Team +//===== Current Version: ======================= +//= 2.4 +//===== Compatible With: ============================ +//= eAthena 1.0 +//===== Description: ============================================ +//= Description of argument settings for callfunc "F_Kafra". +//= arg(0): When set at 0 the default Kafra message is displayed. +//= When set to 1 the Niflhiem Kafra message is displayed. +//= When set to 2 the Guild Kafra message is displayed. +//= arg(1): Set to 1 to disable teleport menu option. Otherwise set to 0. +//= arg(2): Set to 1 to disable info menu. Otherwise set to 0. +//===== Additional Comments: ================================= +//= v1.1 Now using functions. Added teleport service for Orc Dungeon +//= and Coal Mine Kafras. +//= v2.1 Fixed bug with Merc job quest kafra.[Lupus] +//= v2.1b Minor changes to function calls. Using arguments. +//= Added ant hell kafras. This version uses arrays .[kobra_k88] +//= Fixed Kafras, not giving you Save menu [Lupus] +//= 2.3 Removed SAVE menu from dungeons Kafras [Lupus] +//= 2.4 Now Baby Merchant can pass Merch Job Quest w/o probs [Lupus] +//=============================================================== + + +//<============================= Ant Hell ==============================>\\ +// Mocfild04 ----------------------------------------- +moc_fild04.gat,230,329,3 script Kafra 115,{ + + cutin "kafra_03",2; + callfunc "F_Kafra",0,2,1; + + M_Save: + savepoint "moc_fild04.gat",231,339; + callfunc "F_KafEnd",0,1; +} + +// Mocfild15 -------------------------------------------- +moc_fild15.gat,264,260,3 script Kafra 115,{ + + cutin "kafra_03",2; + callfunc "F_Kafra",0,2,1; + + M_Save: + savepoint "moc_fild15.gat",266,271; + callfunc "F_KafEnd",0,1; +} + +//<============================= Byalan Island ============================>\\ +izlu2dun.gat,106,58,8 script Kafra 115,{ + + cutin "kafra_03",2; + if(BaseJob==Job_Novice && job_merchant_q3>0) callfunc "F_MercKafra"; //F_MercKafra found in merchant.txt + callfunc "F_Kafra",0,2,1; + + M_Save: + savepoint "izlu2dun.gat",87,170; + callfunc "F_KafEnd",0,1; +} + + +//<============================ Culvert Sewers ============================>\\ +prt_fild05.gat,290,224,1 script Kafra 114,{ + cutin "kafra_04",2; + callfunc "F_Kafra",0,2,1; + + M_Save: + savepoint "prt_fild05.gat",274,243; + callfunc "F_KafEnd",0,1; +} + + +//<=========================== Coal Mine (Dead Pitt) =======================>\\ +mjolnir_02.gat,83,361,4 script Kafra 114,{ + cutin "kafra_04",2; + callfunc "F_KafSetOrcCoal"; + callfunc "F_Kafra",0,0,1; + + M_Save: + savepoint "mjolnir_02.gat",98,352; + callfunc "F_KafEnd",0,1; +} + + +//<=============================== Morroc Ruins ============================>\\ +moc_ruins.gat,61,156,5 script Kafra 114,{ + cutin "kafra_04",2; + callfunc "F_Kafra",0,2,1; + + M_Save: + savepoint "moc_ruins.gat",41,141; + callfunc "F_KafEnd",0,1; +} + + +//<================================ Orc Dungeon ============================>\\ +gef_fild10.gat,73,340,4 script Kafra 115,{ + cutin "kafra_03",2; + callfunc "F_KafSetOrcCoal"; + callfunc "F_Kafra",0,0,1; + + M_Save: + savepoint "gef_fild10.gat",54,326; + callfunc "F_KafEnd",0,1; +} + +// Function: Sets variables for Kafras at the Orc Dungeon and the Coal Mines +function script F_KafSetOrcCoal { + setarray @wrpD$[0], "Prontera", "Geffen"; + setarray @wrpP[0], 3000, 3000; + set @wrpC$[0], @wrpD$[0]+" -> "+@wrpP[0]; + set @wrpC$[1], @wrpD$[1]+" -> "+@wrpP[1]; + set @wrpC$[2], "Cancel"; + set @wrpC$[3], ""; + set @wrpC$[4], ""; + set @wrpC$[5], ""; + set @wrpC$[6], ""; + return; +} + + +//<============================== Treasure Island ==========================>\\ +alb2trea.gat,59,69,1 script Kafra 117,{ + cutin "kafra_01",2; + callfunc "F_Kafra",0,2,1; + + M_Save: + savepoint "alb2trea.gat",92,64; + callfunc "F_KafEnd",0,1; +} diff --git a/npc/kafras/kafras_gef.txt b/npc/kafras/kafras_gef.txt new file mode 100644 index 000000000..afd211a50 --- /dev/null +++ b/npc/kafras/kafras_gef.txt @@ -0,0 +1,101 @@ +//===== eAthena Script ======================================= +//= Geffen Kafras +//===== By: ========================= +//= eAthena Dev Team +//===== Current Version: =================== +//= 2.1b +//===== Compatible With: ===================== +//= eAthena 1.0 +//===== Description: ============================================ +//= Description of argument settings for callfunc "F_Kafra". +//= arg(0): When set at 0 the default Kafra message is displayed. +//= When set to 1 the Niflhiem Kafra message is displayed. +//= When set to 2 the Guild Kafra message is displayed. +//= arg(1): Set to 1 to disable teleport menu option. Otherwise set to 0. +//= arg(2): Set to 1 to disable info menu. Otherwise set to 0. +//===== Additional Comments: ========================================== +//= v1.1 Now using functions :) +//= v2.1b Minor changes to function calls. Using arguments. +//= This version uses arrays .[kobra_k88] +//===================================================================== + + +// South ===================================== +geffen.gat,120,62,8 script Kafra 115,{ + cutin "kafra_03",2; + callfunc "F_KafSetGef"; + callfunc "F_Kafra",0,0,0; + + M_Save: + savepoint "geffen.gat",119,40; + callfunc "F_KafEnd",0,1; +} + +// East ============================================== +geffen.gat,203,123,3 script Kafra 114,{ + cutin "kafra_04",2; + callfunc "F_KafSetGef"; + callfunc "F_Kafra",0,0,0; + + M_Save: + menu "-Save outside city.",sM_Out, "-Save inside city.",sM_In; + + sM_Out: + savepoint "gef_fild00.gat",51,194; + callfunc "F_KafEnd",0,1; + sM_In: + savepoint "geffen.gat",200,124; + callfunc "F_KafEnd",0,1; +} + +// North ============================================== +geffen.gat,116,202,3 script Kafra 116,{ + cutin "kafra_02",2; + callfunc "F_KafSetGef"; + callfunc "F_Kafra",0,0,0; + + M_Save: + menu "-Save outside city.",sM_Out, "-Save inside city.",sM_In; + + sM_Out: + savepoint "gef_fild04.gat",192,49; + callfunc "F_KafEnd",0,1; + sM_In: + savepoint "geffen.gat",110,199; + callfunc "F_KafEnd",0,1; +} + +// West ========================================= +geffen.gat,37,116,6 script Kafra 117,{ + cutin "kafra_01",2; + callfunc "F_KafSetGef"; + callfunc "F_Kafra",0,0,0; + + M_Save: + menu "-Save outside city.",sM_Out, "-Save inside city.",sM_In; + + sM_Out: + savepoint "gef_fild07.gat",330,192; + callfunc "F_KafEnd",0,1; + sM_In: + savepoint "geffen.gat",43,108; + callfunc "F_KafEnd",0,1; +} + + +// Function: Sets variables for Geffen Kafras ------------------- +function script F_KafSetGef { + + setarray @wrpD$[0], "Prontera", "Payon", "Al De Baran", "Morroc"; + setarray @wrpP[0], 1400, 1800, 1800, 2200; + set @wrpC$[0], @wrpD$[0]+" -> "+@wrpP[0]; + set @wrpC$[1], @wrpD$[1]+" -> "+@wrpP[1]; + set @wrpC$[2], @wrpD$[2]+" -> "+@wrpP[2]; + set @wrpC$[3], @wrpD$[3]+" -> "+@wrpP[3]; + set @wrpC$[4], "Cancel"; + set @wrpC$[5], ""; + set @wrpC$[6], ""; + setarray @viewpX[0], 120, 203, 116, 37; + setarray @viewpY[0], 62, 123, 202, 116; + return; +} diff --git a/npc/kafras/kafras_izl.txt b/npc/kafras/kafras_izl.txt new file mode 100644 index 000000000..851876856 --- /dev/null +++ b/npc/kafras/kafras_izl.txt @@ -0,0 +1,40 @@ +//===== eAthena Script ======================================= +//= Izlude Kafras +//===== By: ========================= +//= eAthena Dev Team +//===== Current Version: =================== +//= 2.2 +//===== Compatible With: ===================== +//= eAthena 1.0 +//===== Description: ============================================ +//= Description of argument settings for callfunc "F_Kafra". +//= arg(0): When set at 0 the default Kafra message is displayed. +//= When set to 1 the Niflhiem Kafra message is displayed. +//= When set to 2 the Guild Kafra message is displayed. +//= arg(1): Set to 1 to disable teleport menu option. Otherwise set to 0. +//= arg(2): Set to 1 to disable info menu. Otherwise set to 0. +//===== Additional Comments: ========================================== +//= v1.1 Now using functions :) +//= v2.1b Minor changes to function calls. Using arguments. +//= This version uses arrays .[kobra_k88] +//= 2.2 New teleport destinations, prices [Lupus] +//===================================================================== + + +izlude.gat,134,87,3 script Kafra 117,{ + cutin "kafra_01",2; + setarray @wrpD$[0], "Geffen", "Payon", "Morroc", "Al De Baran"; + setarray @wrpP[0], 1200, 1200, 1200, 1800; + set @wrpC$[0], @wrpD$[0]+" -> "+@wrpP[0]; + set @wrpC$[1], @wrpD$[1]+" -> "+@wrpP[1]; + set @wrpC$[2], @wrpD$[2]+" -> "+@wrpP[2]; + set @wrpC$[3], @wrpD$[3]+" -> "+@wrpP[3]; + set @wrpC$[4], "Cancel"; + set @wrpC$[5], ""; + set @wrpC$[6], ""; + callfunc "F_Kafra",0,0,1; + + M_Save: + savepoint "izlude.gat",96,107; + callfunc "F_KafEnd",0,1; +} diff --git a/npc/kafras/kafras_mor.txt b/npc/kafras/kafras_mor.txt new file mode 100644 index 000000000..b690b2606 --- /dev/null +++ b/npc/kafras/kafras_mor.txt @@ -0,0 +1,100 @@ +//===== eAthena Script ======================================= +//= Morroc Kafras +//===== By: ========================= +//= eAthena Dev Team +//===== Current Version: =================== +//= 2.2 +//===== Compatible With: ===================== +//= eAthena 1.0 +//===== Description: ============================================ +//= Description of argument settings for callfunc "F_Kafra". +//= arg(0): When set at 0 the default Kafra message is displayed. +//= When set to 1 the Niflhiem Kafra message is displayed. +//= When set to 2 the Guild Kafra message is displayed. +//= arg(1): Set to 1 to disable teleport menu option. Otherwise set to 0. +//= arg(2): Set to 1 to disable info menu. Otherwise set to 0. +//===== Additional Comments: ========================================== +//= v1.1 Now using functions :) +//= v2.1b Minor changes to function calls. Using arguments. +//= This version uses arrays .[kobra_k88] +//= 2.2 New teleport destinations, prices [Lupus] +//===================================================================== + + +// South ================================ +morocc.gat,156,97,4 script Kafra 115,{ + cutin "kafra_03",2; + callfunc "F_KafSetMoc"; + callfunc "F_Kafra",0,0,0; + + M_Save: + savepoint "morocc.gat",156,46; + callfunc "F_KafEnd",0,1; +} + +// North ================================= +morocc.gat,162,271,4 script Kafra 114,{ + cutin "kafra_04",2; + callfunc "F_KafSetMoc"; + callfunc "F_Kafra",0,0,0; + + M_Save: + menu "-Save outside city.",sM_Out,"-Save inside city.",sM_In; + + sM_Out: + savepoint "moc_fild07.gat",212,30; + callfunc "F_KafEnd",0,1; + sM_In: + savepoint "morocc.gat",157,272; + callfunc "F_KafEnd",0,1; +} + +// West ================================= +morocc.gat,28,167,6 script Kafra 116,{ + cutin "kafra_02",2; + callfunc "F_KafSetMoc"; + callfunc "F_Kafra",0,0,0; + + M_Save: + menu "-Save outside city.",sM_Out,"-Save inside city.",sM_In; + + sM_Out: + savepoint "moc_fild19.gat",164,107; + callfunc "F_KafEnd",0,1; + sM_In: + savepoint "morocc.gat",31,164; + callfunc "F_KafEnd",0,1; +} + +// East ================================= +morocc.gat,292,211,4 script Kafra 112,{ + cutin "kafra_06",2; + callfunc "F_KafSetMoc"; + callfunc "F_Kafra",0,0,0; + + M_Save: + menu "-Save outside city.",sM_Out,"-Save inside city.",sM_In; + + sM_Out: + savepoint "moc_fild10.gat",24,107; + callfunc "F_KafEnd",0,1; + sM_In: + savepoint "morocc.gat",294,207; + callfunc "F_KafEnd",0,1; +} + +// Function: Sets variables for Morroc Kafras -------------------------------- +function script F_KafSetMoc { + setarray @wrpD$[0], "Prontera", "Payon", "Alberta", "Comodo", "Comodo Pharos Lighthouse"; + setarray @wrpP[0], 1200, 1200, 1800, 1800, 1200; + set @wrpC$[0], @wrpD$[0]+" -> "+@wrpP[0]; + set @wrpC$[1], @wrpD$[1]+" -> "+@wrpP[1]; + set @wrpC$[2], @wrpD$[2]+" -> "+@wrpP[2]; + set @wrpC$[3], @wrpD$[3]+" -> "+@wrpP[3]; + set @wrpC$[4], @wrpD$[4]+" -> "+@wrpP[4]; + set @wrpC$[5], "Cancel"; + set @wrpC$[6], ""; + setarray @viewpX[0], 156, 163, 28, 292; + setarray @viewpY[0], 97, 260, 167, 211; + return; +} diff --git a/npc/kafras/kafras_new.txt b/npc/kafras/kafras_new.txt new file mode 100644 index 000000000..6ecaceadd --- /dev/null +++ b/npc/kafras/kafras_new.txt @@ -0,0 +1,142 @@ +//===== eAthena Script =========== +//= New Kafras +//===== By: ========================= +//= eAthena Dev Team +//===== Current Version: =================== +//= 2.6 +//===== Compatible With: ===================== +//= eAthena 1.0 +//===== Description: ============================================ +//= Description of argument settings for callfunc "F_Kafra". +//= arg(0): When set at 0 the default Kafra message is displayed. +//= When set to 1 the Niflhiem Kafra message is displayed. +//= When set to 2 the Guild Kafra message is displayed. +//= arg(1): Set to 1 to disable teleport menu option. Otherwise set to 0. +//= arg(2): Set to 1 to disable info menu. Otherwise set to 0. +//===== Additional Comments: ============================================== +//= v1.1 Now using functions +//= v2.1 Added Niflheim Kafra by Dizzy +//= v2.1b Minor changes to function calls. Using arguments. +//= This version uses arrays .[kobra_k88] +//= 2.2 Added Louyang Kafra, fixed other kafras not saving players coords [Lupus] +//= 2.3 Added temp Amatsu + Ayothaya Kafra (wrong coords and sprite) [Lupus] +//= 2.4 Added correct Ayothaya, Louyang & Amatsu Kafras. [Lupus] +//= 2.5 Added 2 Einbroch Kafras. [Lupus] +//= 2.6 Added the Einbech Kafra [MasterOfMuppets] +//= 2.7 Added the Lighthalzen Kafras [MasterOfMuppets] +//= 2.7b Chanced the Sprite of the Einbech Kafra. [Poki#3] +//========================================================================== + +// Amatsu ------------------------------------------------------------------ +amatsu.gat,102,149,4 script Kafra 116,{ + cutin "kafra_02",2; + callfunc "F_Kafra",3,3,1; + + M_Save: + savepoint "amatsu.gat",116,94; + callfunc "F_KafEnd",0,1; +} + +// Ayothaya ---------------------------------------------------------------- +ayothaya.gat,212,169,5 script Kafra 116,{ + cutin "kafra_02",2; + callfunc "F_Kafra",4,3,1; + + M_Save: + savepoint "ayothaya.gat",149,69; + callfunc "F_KafEnd",0,1; +} + +// Einbech ----------------------------------------------------------------- + +einbech.gat,181,131,5 script Kafra 860,{ + cutin "kafra_08",2; + callfunc "F_Kafra",0,4,1; + + M_Save: + savepoint "einbech.gat",181,124; + callfunc "F_KafEnd",0,1; +} + +// Einbroch (North-East) --------------------------------------------------- +einbroch.gat,242,205,4 script Kafra 115,{ + cutin "kafra_03",2; + callfunc "F_Kafra",0,4,1; + + M_Save: + savepoint "einbroch.gat",240,197; + callfunc "F_KafEnd",0,1; +} + +// Einbroch (East) --------------------------------------------------------- +einbroch.gat,59,203,4 script Kafra 117,{ + cutin "kafra_01",2; + callfunc "F_Kafra",0,4,1; + + M_Save: + savepoint "einbroch.gat",240,197; + callfunc "F_KafEnd",0,1; +} + +// Gonryun ----------------------------------------------------------------- +gonryun.gat,159,122,4 script Kafra 116,{ + cutin "kafra_02",2; + callfunc "F_KafSetYun"; + callfunc "F_Kafra",0,0,1; + + M_Save: + savepoint "gonryun.gat",160,62; + callfunc "F_KafEnd",0,1; +} + +// Lighthalzen-------------------------------------------------------------- + +//Outside the hotel +lighthalzen.gat,164,100,3 script Kafra 860,{ + cutin "kafra_08",2; + callfunc "F_Kafra",0,4,1; + + M_Save: + savepoint "lighthalzen.gat",162,82; + callfunc "F_KafEnd",0,1; +} + +//Inside the hotel +lhz_in02.gat,237,284,4 script Kafra 861,{ + cutin "kafra_09",2; + callfunc "F_Kafra",0,4,1; + + M_Save: + savepoint "lighthalzen.gat",162,82; + callfunc "F_KafEnd",0,1; +} + +// Louyang ----------------------------------------------------------------- +louyang.gat,210,104,5 script Kafra 117,{ + cutin "kafra_01",2; + callfunc "F_Kafra",4,3,1; + + M_Save: + savepoint "louyang.gat",217,92; + callfunc "F_KafEnd",0,1; +} + +// Umbala Kafra ------------------------------------------------------------ +umbala.gat,128,133,4 script Kafra 115,{ + cutin "kafra_03",2; + callfunc "F_KafSetYun"; + callfunc "F_Kafra",0,0,1; + + M_Save: + savepoint "umbala.gat",126,131; + callfunc "F_KafEnd",0,1; +} + +// Niflheim ---------------------------------------------------------------- +niflheim.gat,202,180,3 script Kafra 791,{ + callfunc "F_Kafra",1,2,1; +//this SAVE isn't used. Niflheim Kafra doesn't SAVE + M_Save: + savepoint "niflheim.gat",192,182; + callfunc "F_KafEnd",1,1; +} diff --git a/npc/kafras/kafras_pay.txt b/npc/kafras/kafras_pay.txt new file mode 100644 index 000000000..ce4467544 --- /dev/null +++ b/npc/kafras/kafras_pay.txt @@ -0,0 +1,71 @@ +//===== eAthena Script ======================================= +//= Payon Kafras +//===== By: ========================= +//= eAthena Dev Team +//===== Current Version: =================== +//= 2.3 +//===== Compatible With: ===================== +//= eAthena 1.0 +//===== Description: ============================================ +//= Description of argument settings for callfunc "F_Kafra". +//= arg(0): When set at 0 the default Kafra message is displayed. +//= When set to 1 the Niflhiem Kafra message is displayed. +//= When set to 2 the Guild Kafra message is displayed. +//= arg(1): Set to 1 to disable teleport menu option. Otherwise set to 0. +//= arg(2): Set to 1 to disable info menu. Otherwise set to 0. +//===== Additional Comments: ============================================== +//= v1.1 Now using functions +//= v2.1b Minor changes to function calls. Using arguments. +//= This version uses arrays .[kobra_k88] +//= v2.2 New Payon Locations. [Darkchild] +//= 2.3 1 New Kafra, fixed save menus +//========================================================================== + + +// Main Town, South ---------------------------------------------------------- +payon.gat,181,104,4 script Kafra 113,{ + cutin "kafra_05",2; + callfunc "F_KafSetPay"; + callfunc "F_Kafra",0,0,1; + + M_Save: + savepoint "payon.gat",160,58; + callfunc "F_KafEnd",0,1; +} + +// Main Town, Middle North -------------------------------------------------- +payon.gat,175,226,4 script Kafra 116,{ + cutin "kafra_02",2; + callfunc "F_KafSetPay"; + callfunc "F_Kafra",0,0,1; + + M_Save: + savepoint "payon.gat",257,242; + callfunc "F_KafEnd",0,1; +} + +// Archer Village ------------------------------------------------------------ +pay_arche.gat,55,123,8 script Kafra 115,{ + cutin "kafra_03",2; + callfunc "F_KafSetPay"; + callfunc "F_Kafra",0,0,1; + + M_Save: + savepoint "pay_arche.gat",49,144; + callfunc "F_KafEnd",0,1; +} + + +// Function: Sets variables for Payon Kafras --------------------------------- +function script F_KafSetPay { + setarray @wrpD$[0], "Alberta", "Prontera", "Morroc"; + setarray @wrpP[0], 1200, 1800, 2000; + set @wrpC$[0], @wrpD$[0]+" -> "+@wrpP[0]; + set @wrpC$[1], @wrpD$[1]+" -> "+@wrpP[1]; + set @wrpC$[2], @wrpD$[2]+" -> "+@wrpP[2]; + set @wrpC$[3], "Cancel"; + set @wrpC$[4], ""; + set @wrpC$[5], ""; + set @wrpC$[6], ""; + return; +} diff --git a/npc/kafras/kafras_pron.txt b/npc/kafras/kafras_pron.txt new file mode 100644 index 000000000..ff61a5c85 --- /dev/null +++ b/npc/kafras/kafras_pron.txt @@ -0,0 +1,103 @@ +//===== eAthena Script ======================================= +//= Prontera Kafras +//===== By: ========================= +//= eAthena Dev Team +//===== Current Version: =================== +//= 2.4 +//===== Compatible With: ===================== +//= eAthena 1.0 +//===== Description: ============================================ +//= Description of argument settings for callfunc "F_Kafra". +//= arg(0): When set at 0 the default Kafra message is displayed. +//= When set to 1 the Niflhiem Kafra message is displayed. +//= When set to 2 the Guild Kafra message is displayed. +//= arg(1): Set to 1 to disable teleport menu option. Otherwise set to 0. +//= arg(2): Set to 1 to disable info menu. Otherwise set to 0. +//===== Additional Comments: ========================================== +//= v1.1 Now using functions :) +//= v2.1b Minor changes to function calls. Using arguments. +//= This version uses arrays .[kobra_k88] +//= 2.2 North Kafra allows you save your position +//= 2.3 New Teleport list, new prices, 2.3a fixed Alberta Teleport [Lupus] +//= 2.3b One Kafra's been moved to Prontera, thx to Vicious_Pucca [Lupus] +//= 2.4 Updated Kafras locations for the mini-map [Lupus] +//===================================================================== + + +// North ================================== +prontera.gat,152,326,4 script Kafra 112,{ + cutin "kafra_06",2; + callfunc "F_Kafra",0,1,1; + +M_Save: + savepoint "prontera.gat",157,327; + callfunc "F_KafEnd",0,1; +} + +// SOUTH ====================================== +prontera.gat,151,29,8 script Kafra 116,{ + cutin "kafra_02",2; + callfunc "F_KafSetPront"; + callfunc "F_Kafra",0,0,0; + + M_Save: + menu "-Save outside city.",sM_Out,"-Save inside city.",sM_In; + + sM_Out: + savepoint "prt_fild08.gat",170,369; + callfunc "F_KafEnd",0,1; + sM_In: + savepoint "prontera.gat",150,33; + callfunc "F_KafEnd",0,1; +} + +//WEST========================================= +prontera.gat,29,207,6 script Kafra 113,{ + cutin "kafra_05",2; + callfunc "F_KafSetPront"; + callfunc "F_Kafra",0,0,0; + + M_Save: + menu "-Save outside city.",sM_Out,"-Save inside city.",sM_In; + + sM_Out: + savepoint "prt_fild05.gat",367,205; + callfunc "F_KafEnd",0,1; + sM_In: + savepoint "prontera.gat",33,208; + callfunc "F_KafEnd",0,1; +} + +// East =========================================== +prontera.gat,282,200,4 script Kafra 115,{ + cutin "kafra_03",2; + callfunc "F_KafSetPront"; + callfunc "F_Kafra",0,0,0; + + M_Save: + menu "-Save outside city.",sM_Out,"-Save inside city.",sM_In; + + sM_Out: + savepoint "prt_fild06.gat",31,192; + callfunc "F_KafEnd",0,1; + sM_In: + savepoint "prontera.gat",281,203; + callfunc "F_KafEnd",0,1; +} + + +// Function: Sets variables for Prontera Kafras ---------------------------- +function script F_KafSetPront { + setarray @wrpD$[0], "Izlude", "Geffen", "Payon", "Morroc", "Orc Dungeon", "Alberta"; + setarray @wrpP[0], 600, 1200, 1200, 1200, 1700, 1800; + set @wrpC$[0], @wrpD$[0]+" -> "+@wrpP[0]; + set @wrpC$[1], @wrpD$[1]+" -> "+@wrpP[1]; + set @wrpC$[2], @wrpD$[2]+" -> "+@wrpP[2]; + set @wrpC$[3], @wrpD$[3]+" -> "+@wrpP[3]; + set @wrpC$[4], @wrpD$[4]+" -> "+@wrpP[4]; + set @wrpC$[5], @wrpD$[5]+" -> "+@wrpP[5]; + set @wrpC$[6], "Cancel"; + setarray @viewpX[0], 151, 29, 282, 152; + setarray @viewpY[0], 29, 207, 200, 326; + return; +} diff --git a/npc/kafras/kafras_yun.txt b/npc/kafras/kafras_yun.txt new file mode 100644 index 000000000..3116f74ae --- /dev/null +++ b/npc/kafras/kafras_yun.txt @@ -0,0 +1,71 @@ +//===== eAthena Script ======================================= +//= Yuno Kafras +//===== By: ========================= +//= eAthena Dev Team +//===== Current Version: =================== +//= 2.1b +//===== Compatible With: ===================== +//= eAthena 1.0 +//===== Description: ============================================ +//= Description of argument settings for callfunc "F_Kafra". +//= arg(0): When set at 0 the default Kafra message is displayed. +//= When set to 1 the Niflhiem Kafra message is displayed. +//= When set to 2 the Guild Kafra message is displayed. +//= arg(1): Set to 1 to disable teleport menu option. Otherwise set to 0. +//= arg(2): Set to 1 to disable info menu. Otherwise set to 0. +//===== Additional Comments: ========================================== +//= v1.1 Now using functions :) +//= v2.1b Minor changes to function calls. Using arguments. +//= This version uses arrays .[kobra_k88] +//===================================================================== + + +// Center ------------------------------------------------------------------ +yuno.gat,153,187,6 script Kafra 114,{ + cutin "kafra_04",2; + callfunc "F_KafSetYun"; + callfunc "F_Kafra",0,0,0; + + M_Save: + savepoint "yuno.gat",332,107; + callfunc "F_KafEnd",0,1; +} + +// South East -------------------------------------------------------------- +yuno.gat,328,108,6 script Kafra 113,{ + cutin "kafra_05",2; + callfunc "F_KafSetYun"; + callfunc "F_Kafra",0,0,0; + + M_Save: + savepoint "yuno.gat",332,107; + callfunc "F_KafEnd",0,1; +} + +// East -------------------------------------------------------------------- +yuno.gat,278,221,6 script Kafra 117,{ + cutin "kafra_01",2; + callfunc "F_KafSetYun"; + callfunc "F_Kafra",0,0,0; + + M_Save: + savepoint "yuno.gat",332,107; + callfunc "F_KafEnd",0,1; +} + + +// Function: Sets variables for Yuno Kafras ------------ +function script F_KafSetYun { + setarray @wrpD$[0], "Izlude", "Geffen", "Payon", "Morroc", "Orc Dungeon", "Comodo"; + setarray @wrpP[0], 1000, 1400, 1700, 1800, 2500, 3000; + set @wrpC$[0], @wrpD$[0]+" -> "+@wrpP[0]; + set @wrpC$[1], @wrpD$[1]+" -> "+@wrpP[1]; + set @wrpC$[2], @wrpD$[2]+" -> "+@wrpP[2]; + set @wrpC$[3], @wrpD$[3]+" -> "+@wrpP[3]; + set @wrpC$[4], @wrpD$[4]+" -> "+@wrpP[4]; + set @wrpC$[5], @wrpD$[5]+" -> "+@wrpP[5]; + set @wrpC$[6], "Cancel"; + setarray @viewpX[0], 328, 278, 153, 0; + setarray @viewpY[0], 108, 221, 187, 0; + return; +} -- cgit v1.2.3-70-g09d2