diff --git a/db/re/item_db_etc.yml b/db/re/item_db_etc.yml index e29c336e9d..55e1b61569 100644 --- a/db/re/item_db_etc.yml +++ b/db/re/item_db_etc.yml @@ -23426,7 +23426,7 @@ Body: NoMail: true NoAuction: true - Id: 6920 - AegisName: Rune_Magic_Powder + AegisName: RuneMagicPowder Name: Rune Magic Powder Type: Etc Buy: 10 @@ -23440,7 +23440,7 @@ Body: NoMail: true NoAuction: true - Id: 6921 - AegisName: Dehumidifiers + AegisName: Desiccant Name: Dehumidifiers Type: Etc Buy: 10 @@ -23456,7 +23456,7 @@ Body: Flags: BuyingStore: true - Id: 6923 - AegisName: Bright_Fire_Lights + AegisName: Bright_Lights Name: Bright Fire Lights Type: Etc Buy: 10 @@ -23471,7 +23471,7 @@ Body: NoMail: true NoAuction: true - Id: 6924 - AegisName: Red_Eye + AegisName: Red_Eyes Name: Red Eye Type: Etc Buy: 10 @@ -23479,7 +23479,7 @@ Body: Flags: BuyingStore: true - Id: 6925 - AegisName: Letter_Of_Prisoner + AegisName: Prisoner_Letter Name: Letter Of Prisoner Type: Etc Buy: 10 @@ -23507,7 +23507,7 @@ Body: NoMail: true NoAuction: true - Id: 6927 - AegisName: Stone_That_Contained_Sea + AegisName: Filled_With_SeaStones Name: Stone That Contained Sea Type: Etc Buy: 10 @@ -23521,7 +23521,7 @@ Body: NoMail: true NoAuction: true - Id: 6928 - AegisName: Poring_Scourer + AegisName: Poring_Loofah Name: Poring Scourer Type: Etc Buy: 10 @@ -23535,7 +23535,7 @@ Body: NoMail: true NoAuction: true - Id: 6929 - AegisName: Letter_With_Stamped_Seal + AegisName: Letters_Stamped_Seal Name: Letter With Stamped Seal Type: Etc Buy: 10 @@ -23549,7 +23549,7 @@ Body: NoMail: true NoAuction: true - Id: 6930 - AegisName: Samples_New_Business_Items + AegisName: Biz_Items_Sample Name: Samples New Business Items Type: Etc Buy: 10 @@ -23620,8 +23620,8 @@ Body: NoMail: true NoAuction: true - Id: 6935 - AegisName: Advanced_Dish - Name: Advanced Dish + AegisName: Luxurious_Dish + Name: High-Class Dish Type: Etc Buy: 10 Trade: diff --git a/db/re/item_db_usable.yml b/db/re/item_db_usable.yml index 8b6f950ab0..3b2bfd1a90 100644 --- a/db/re/item_db_usable.yml +++ b/db/re/item_db_usable.yml @@ -46906,7 +46906,7 @@ Body: itemskill "AL_INCAGI",1; heal -15,0; - Id: 22901 - AegisName: Question_Old_Blue_Box + AegisName: BlueboxOfQuestions Name: Mysterious Blue Box Type: Usable Buy: 20 diff --git a/db/re/mob_db.yml b/db/re/mob_db.yml index bcbe91cb78..2fb6412c25 100644 --- a/db/re/mob_db.yml +++ b/db/re/mob_db.yml @@ -81493,7 +81493,7 @@ Body: DamageMotion: 432 Ai: 04 Drops: - - Item: Dehumidifiers + - Item: Desiccant Rate: 2000 StealProtected: true - Item: Frozenwolf_Card @@ -81565,7 +81565,7 @@ Body: DamageMotion: 480 Ai: 04 Drops: - - Item: Red_Eye + - Item: Red_Eyes Rate: 2000 StealProtected: true - Item: Watcher_Card diff --git a/db/re/quest_db.yml b/db/re/quest_db.yml index 5d5650bb4a..141b54b3d9 100644 --- a/db/re/quest_db.yml +++ b/db/re/quest_db.yml @@ -2359,7 +2359,7 @@ Body: Title: Lowly Standards Drops: - Mob: WATCHER - Item: Red_Eye + Item: Red_Eyes Rate: 2000 - Id: 5429 Title: "[Stand by]Lowly Standards" @@ -2368,7 +2368,7 @@ Body: Title: "[Repeat]Lowly Standards" Drops: - Mob: WATCHER - Item: Red_Eye + Item: Red_Eyes Rate: 2000 - Id: 5431 Title: Clean Life @@ -2392,7 +2392,7 @@ Body: Title: Refreshing Prison Life Drops: - Mob: FROZENWOLF - Item: Dehumidifiers + Item: Desiccant Rate: 2000 - Id: 5440 Title: "[Stand by]Refreshing Prison Life" @@ -2401,7 +2401,7 @@ Body: Title: "[Repeat]Refreshing Prison Life" Drops: - Mob: FROZENWOLF - Item: Dehumidifiers + Item: Desiccant Rate: 2000 - Id: 5442 Title: Suppressing Darkness @@ -6400,7 +6400,7 @@ Body: Title: Why Should I Prepare for the Banquets? Drops: - Mob: GLASS_PLATE - Item: Advanced_Dish + Item: Luxurious_Dish Rate: 3000 - Id: 11420 Title: Why Should I Prepare for the Banquets? @@ -6420,7 +6420,7 @@ Body: Title: "Banquet: Washing 15 Dishes" Drops: - Mob: GLASS_PLATE - Item: Advanced_Dish + Item: Luxurious_Dish Rate: 3000 - Id: 11427 Title: Complete Today's Dish Collecting @@ -8219,7 +8219,7 @@ Body: Title: Please Find the Token of Memory Drops: - Mob: MEDUSA - Item: Stone_That_Contained_Sea + Item: Filled_With_SeaStones Rate: 3000 - Id: 14488 Title: Please Deliver My Love @@ -8229,7 +8229,7 @@ Body: Title: My Love Once More Drops: - Mob: MEDUSA - Item: Stone_That_Contained_Sea + Item: Filled_With_SeaStones Rate: 3000 - Id: 14491 Title: I Have to Turn It Down Again @@ -8240,7 +8240,7 @@ Body: Title: Today I Feel Drops: - Mob: MEDUSA - Item: Stone_That_Contained_Sea + Item: Filled_With_SeaStones Rate: 3000 - Id: 14494 Title: I Have to Turn It Down Again diff --git a/npc/re/instances/RitualOfBlessing.txt b/npc/re/instances/RitualOfBlessing.txt index cce9d2705c..958f64732f 100644 --- a/npc/re/instances/RitualOfBlessing.txt +++ b/npc/re/instances/RitualOfBlessing.txt @@ -613,7 +613,7 @@ OnDisable: mes "There is much left for use to find out."; erasequest 7692; setquest 7693;// Surprise Attack - banquet_main_quest = 9; + ep16_royal = 9; next; mes "[Kronecker]"; mes "Whoever left here, clear out with the wounded near you!"; diff --git a/npc/re/instances/RoomOfConsciousness.txt b/npc/re/instances/RoomOfConsciousness.txt index 2f04a79e5d..0516da6016 100644 --- a/npc/re/instances/RoomOfConsciousness.txt +++ b/npc/re/instances/RoomOfConsciousness.txt @@ -744,10 +744,10 @@ OnMobDead: enablenpc instance_npcname("Iris#6mir"); enablenpc instance_npcname("Bijou#6mir"); - if (playerattached() && 'exploit_disabled && banquet_main_quest == 21) { + if (playerattached() && 'exploit_disabled && ep16_royal == 19) { erasequest 7700;// Once More! setquest 7701;// Lost Imir Heart - banquet_main_quest = 22; + ep16_royal = 20; } end; } @@ -882,10 +882,10 @@ OnStop: mes "[Fenrir]"; mes "We'd better get out of here, too! This place is too dangerous!"; close2; - if (banquet_main_quest == 21) { + if (ep16_royal == 19) { erasequest 7700;// Once More! setquest 7701;// Lost Imir Heart - banquet_main_quest = 22; + ep16_royal = 20; } warp "prt_lib_q",88,83; end; diff --git a/npc/re/mobs/prt_cas.txt b/npc/re/mobs/prt_cas.txt index f49dc29699..32d34adc6d 100644 --- a/npc/re/mobs/prt_cas.txt +++ b/npc/re/mobs/prt_cas.txt @@ -6,5 +6,5 @@ //= 1.0 First version. [Capuche] //============================================================ -// Prontera Castle -prt_cas,367,138,15,19 monster Plate 3455,15 +// Prontera Castle - GLASS_PLATE +prt_cas,367,138,16,22 monster Plate 3455,15 diff --git a/npc/re/quests/quests_16_1.txt b/npc/re/quests/quests_16_1.txt index 4575a5fb02..9e5d9480d8 100644 --- a/npc/re/quests/quests_16_1.txt +++ b/npc/re/quests/quests_16_1.txt @@ -1,11 +1,12 @@ //===== rAthena Script ======================================= //= Banquet Quests //===== Description: ========================================= -//= [Walkthrough Conversion] +//= [Official Conversion] //--- NPCs quests for Episode 16.1 //===== Changelogs: ========================================== //= 1.0 First version. [Capuche] //= 1.1 Fixed spelling mistakes [crazy-arashi] +//= 2.0 Official Conversion. [Capuche] //============================================================ function script F_Mysterious_box { @@ -32,11 +33,11 @@ function script F_Mysterious_box { // Main Quest prontera,121,72,3 script Royal Messenger#e16_pr 4_M_ZONDAOYAJI,5,5,{ - if (checkweight(501,1) == 0) { + if (checkweight(1301,5) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } - switch( banquet_main_quest ) { + switch( ep16_royal ) { case 0: if (BaseLevel < 100 || (ep13_ryu < 100 && ep13_start < 100)) {// Access to the New World pre-req (Onward to the New World Quest or Cat Paw Agent Quest) mes "[Royal Messenger]"; @@ -83,9 +84,9 @@ prontera,121,72,3 script Royal Messenger#e16_pr 4_M_ZONDAOYAJI,5,5,{ mes "[Royal Messenger]"; mes "Make sure to bring the invitation with you. Don't forget!"; mes "Why don't you go right now? ^4d4dffI can teleport you there now if you want^000000."; - getitem 6933,1;// Banquet Invitation + getitem 6933,1;// Banquet_Invitation setquest 7681;// Invitation to Royal Banquet - banquet_main_quest = 1; + ep16_royal = 1; next; if (select( "I'll go on my own.", "I'll go right away." ) == 1) { mes "[Royal Messenger]"; @@ -145,7 +146,7 @@ prontera,121,72,3 script Royal Messenger#e16_pr 4_M_ZONDAOYAJI,5,5,{ } OnTouch: - if (banquet_main_quest == 0 && BaseLevel > 99 && (ep13_ryu > 99 || ep13_start > 99)) + if (ep16_royal == 0 && BaseLevel > 99 && (ep13_ryu > 99 || ep13_start > 99)) npctalk "Wait! You must be... " + strcharinfo(0) + ". I have something to tell you!", "", bc_self; else npctalk "I am looking for the hero who returned from the expedition...", "", bc_self; @@ -162,7 +163,7 @@ yuno,162,132,3 duplicate(Royal Messenger#e16_pr) Royal Messenger#e16_yu 4_M_ZOND lighthalzen,152,100,5 duplicate(Royal Messenger#e16_pr) Royal Messenger#e16_lh 4_M_ZONDAOYAJI,5,5 prontera,150,331,4 script Royal Guard#ep16_ect01 8W_SOLDIER,4,4,{ - if (banquet_main_quest == 1) { + if (ep16_royal == 1) { mes "[Guard]"; mes "Here comes the hero!"; mes "The Banquet Hall is inside the palace. You may follow the passage to get there."; @@ -173,7 +174,7 @@ prontera,150,331,4 script Royal Guard#ep16_ect01 8W_SOLDIER,4,4,{ end; OnTouch: - if (banquet_main_quest > 0) { + if (ep16_royal > 0) { npctalk "Eternal glory to the hero of the Midgards!", "Royal Guard#ep16_ect01", bc_self; npctalk "Eternal glory to the hero of the Midgards!", "Royal Guard#ep16_ect02", bc_self; } @@ -184,18 +185,18 @@ prontera,161,331,4 duplicate(Royal Guard#ep16_ect01) Royal Guard#ep16_ect02 8W_S prt_cas,215,146,0 script #ep16_evt_01_on HIDDEN_WARP_NPC,1,1,{ end; OnTouch: - if (banquet_main_quest == 1) { + if (isbegin_quest(7681) == 1) { + cloakoffnpc "Chamberlain Bell#ep16_01", getcharid(0); setpcblock PCBLOCK_NPC, true; - classchange( 4_M_RUSMAN1, "Chamberlain Bell#ep16_0_0", bc_self ); - sleep2 2000; - npctalk "I've been waiting for you. Sir " + strcharinfo(0) + "...", "Chamberlain Bell#ep16_0_0", bc_self; + sleep2 3000; setpcblock PCBLOCK_NPC, false; + npctalk "I've been waiting for you. Sir " + strcharinfo(0) + "...", "Chamberlain Bell#ep16_01", bc_self; } end; } -prt_cas,217,150,3 script Chamberlain Bell#ep16_0_0 HIDDEN_WARP_NPC,{ - if (banquet_main_quest == 1) { +prt_cas,217,150,3 script Chamberlain Bell#ep16_01 4_M_RUSMAN1,{ + if (isbegin_quest(7681) == 1) { mes "[Chamberlain Bell]"; mes "You must be Sir " + strcharinfo(0) + "... Am I right?"; mes "You are here at last."; @@ -214,24 +215,30 @@ prt_cas,217,150,3 script Chamberlain Bell#ep16_0_0 HIDDEN_WARP_NPC,{ mes "Let me go ahead and mall all the preparations."; mes "Come with me, please."; close2; - classchange( HIDDEN_WARP_NPC, "", bc_self ); + cloakonnpc "Chamberlain Bell#ep16_01", getcharid(0); end; } + end; +OnInit: + cloakonnpc "Chamberlain Bell#ep16_01"; + cloakonnpc "Chamberlain Bell#ep16_02"; + cloakonnpc "Chamberlain Bell#ep16_03"; + end; } // Corridor left prt_cas,163,163,0 script #ep16_evt_02_on HIDDEN_WARP_NPC,3,3,{ end; OnTouch: - if (banquet_main_quest == 1) { - classchange( 4_M_RUSMAN1, "Chamberlain Bell#ep16_0_1", bc_self ); - npctalk "This way. Sir " + strcharinfo(0) + "...", "Chamberlain Bell#ep16_0_1", bc_self; + if (isbegin_quest(7681) == 1) { + cloakoffnpc "Chamberlain Bell#ep16_02", getcharid(0); + npctalk "This way. Sir " + strcharinfo(0) + "...", "Chamberlain Bell#ep16_02", bc_self; } end; } -prt_cas,155,165,4 script Chamberlain Bell#ep16_0_1 HIDDEN_WARP_NPC,{ - if (banquet_main_quest == 1) { +prt_cas,155,165,4 script Chamberlain Bell#ep16_02 4_M_RUSMAN1,{ + if (isbegin_quest(7681) == 1) { mes "[Chamberlain Bell]"; mes "The special guestroom is prepared this way."; mes "It is the ^4d4dfffirst room^000000 you'll see in there."; @@ -240,7 +247,7 @@ prt_cas,155,165,4 script Chamberlain Bell#ep16_0_1 HIDDEN_WARP_NPC,{ mes "Let me tell you the story in detail after moving into the room."; mes "Come this way."; close2; - classchange( HIDDEN_WARP_NPC, "", bc_self ); + cloakonnpc "Chamberlain Bell#ep16_02", getcharid(0); } end; } @@ -248,29 +255,37 @@ prt_cas,155,165,4 script Chamberlain Bell#ep16_0_1 HIDDEN_WARP_NPC,{ prt_cas_q,150,8,0 script #ep16_evt_03_on HIDDEN_WARP_NPC,1,1,{ end; OnTouch: - if (banquet_main_quest == 1) { - classchange( 4_M_RUSMAN1, "Chamberlain Bell#ep16_0_2", bc_self ); - npctalk "This way. Sir " + strcharinfo(0) + "...", "Chamberlain Bell#ep16_0_2", bc_self; + if (isbegin_quest(7681) == 1) { + cloakoffnpc "Chamberlain Bell#ep16_03", getcharid(0); + npctalk "This way. Sir " + strcharinfo(0) + "...", "Chamberlain Bell#ep16_03", bc_self; } end; } -prt_cas_q,135,10,4 script Chamberlain Bell#ep16_0_2 HIDDEN_WARP_NPC,{ - if (banquet_main_quest == 1) { +prt_cas_q,135,10,4 script Chamberlain Bell#ep16_03 4_M_RUSMAN1,{ + if (isbegin_quest(7681) == 1) { mes "[Chamberlain Bell]"; mes "Let me tell you about the detailed schedule inside."; mes "Let's go inside."; - close2; - classchange( HIDDEN_WARP_NPC, "", bc_self ); } + else { + mes "[Chamberlain Bell]"; + mes "I'll be waiting for you here in this room at all times."; + mes "You may find me when you need a help."; + } + close2; + cloakonnpc "Chamberlain Bell#ep16_03", getcharid(0); end; } // Belle Room -prt_cas_q,26,30,3 script Chamberlain Bell#ep16_m 4_M_RUSMAN1,{ - switch( banquet_main_quest ) { +prt_cas_q,26,30,3 script Chamberlain Bell#ep16_main 4_M_RUSMAN1,{ + switch( ep16_royal ) { case 0: - end; + mes "[Belle]"; + mes "This is the guest room for the officially invited guest."; + mes "Since this place forbids the access of outsiders, please leave."; + close; case 1: if (countitem(6933) > 0) delitem 6933,1;// Banquet_Invitation @@ -349,17 +364,17 @@ prt_cas_q,26,30,3 script Chamberlain Bell#ep16_m 4_M_RUSMAN1,{ mes "You need to exchange greetings with the members of each families so make sure to visit them all."; erasequest 7681;// Invitation to Royal Banquet setquest 7682;// Socializing Starts from an Eye Contact - banquet_main_quest = 2; + ep16_royal = 2; close; case 2: if (isbegin_quest(7682) != 2) {// Socializing Starts from an Eye Contact - if (banquet_heine_quest < 2) .@string$ = "Heine"; - if (banquet_nerius_quest < 1) .@string$ += ( .@string$ != "" ? ", " : "" ) + "Nerius"; - if (banquet_richard_quest < 2) .@string$ += ( .@string$ != "" ? ", " : "" ) + "Richard"; - if (banquet_walther_quest < 3) .@string$ += ( .@string$ != "" ? ", " : "" ) + "Walther"; - if (banquet_wigner_quest < 2) .@string$ += ( .@string$ != "" ? ", " : "" ) + "Wigner"; - if (banquet_roegenburg_quest < 2) .@string$ += ( .@string$ != "" ? ", " : "" ) + "Roegenburg"; - if (banquet_geoborg_quest < 2) .@string$ += ( .@string$ != "" ? ", " : "" ) + "Geoborg"; + if (isbegin_quest(7683) < 2) .@string$ = "Heine"; + if (isbegin_quest(7684) < 2) .@string$ += ( .@string$ != "" ? ", " : "" ) + "Nerius"; + if (isbegin_quest(5402) < 2) .@string$ += ( .@string$ != "" ? ", " : "" ) + "Richard"; + if (ep16_wal < 2) .@string$ += ( .@string$ != "" ? ", " : "" ) + "Walther"; + if (ep16_wig < 2) .@string$ += ( .@string$ != "" ? ", " : "" ) + "Wigner"; + if (ep16_lug < 2) .@string$ += ( .@string$ != "" ? ", " : "" ) + "Roegenburg"; + if (ep16_gaobs < 2) .@string$ += ( .@string$ != "" ? ", " : "" ) + "Geoborg"; if (.@string$ == "") { // it shouldn't happen completequest 7682;// Socializing Starts from an Eye Contact @@ -411,8 +426,8 @@ prt_cas_q,26,30,3 script Chamberlain Bell#ep16_m 4_M_RUSMAN1,{ erasequest 7685;// What Is the Next Thing on the Schedule ? setquest 7687;// Participating in the Banquet getexp 300000,300000; - getitem 6919,10;// Honor_Token - banquet_main_quest = 3; + getitem 6919,10;// TokenOfHonor + ep16_royal = 3; next; mes "[Belle]"; mes "When the time comes, the Court Mage will come to guide you. You may enjoy the banquet by then."; @@ -439,33 +454,34 @@ prt_cas_q,26,30,3 script Chamberlain Bell#ep16_m 4_M_RUSMAN1,{ mes "By the way, the Court Mage has visited just before."; mes "The Court Magician will be back soon after visiting other families."; next; - npctalk "Yeah! Here comes Nillem the genius mage!", "Court Mage Nillem#ep16_1", bc_self; + cloakoffnpc "Court Mage Nillem#ep16_wiz01", getcharid(0); + npctalk "Yeah! Here comes Nillem the genius mage!", "Court Mage Nillem#ep16_wiz01", bc_self; + sleep2 1000; mes "[Belle]"; mes "There... Is the magician."; mes "The Court Mage will give you the details."; erasequest 7691;// Waiting for the Ritual setquest 7692;// Attend the Ritual - banquet_main_quest = 8; - classchange( 4_M_JOB_WIZARD, "Court Mage Nillem#ep16_1", bc_self ); + ep16_royal = 8; sleep2 3000; - npctalk "You must be the famous " + strcharinfo(0) + "!", "Court Mage Nillem#ep16_1", bc_self; + npctalk "You must be the famous " + strcharinfo(0) + "!", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "Oh, nice to meet you.", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Oh, nice to meet you.", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "There are a lot of things that I would like to talk about with you...", "Court Mage Nillem#ep16_1", bc_self; + npctalk "There are a lot of things that I would like to talk about with you...", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "But I guess we don't have enough time for that.", "Court Mage Nillem#ep16_1", bc_self; + npctalk "But I guess we don't have enough time for that.", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "Let's move to the Room of Consciousness now.", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Let's move to the Room of Consciousness now.", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "Don't be surprised by the sudden disappearance!", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Don't be surprised by the sudden disappearance!", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "Three!", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Three!", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 1000; - npctalk "Two!", "Court Mage Nillem#ep16_1", bc_self; - sleep2 1000; - npctalk "One!", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Two!", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 1000; + npctalk "One!", "Court Mage Nillem#ep16_wiz01", bc_self; + sleep2 500; warp "prt_lib",89,44; end; case 8: @@ -474,29 +490,30 @@ prt_cas_q,26,30,3 script Chamberlain Bell#ep16_m 4_M_RUSMAN1,{ case 11: case 12: case 13: - setpcblock PCBLOCK_NPC, true; npctalk "You are back already?", "", bc_self; + setpcblock PCBLOCK_NPC, true; sleep2 1000; - classchange( 4_M_JOB_WIZARD, "Court Mage Nillem#ep16_1", bc_self ); - npctalk "Oh! Here you are!", "Court Mage Nillem#ep16_1", bc_self; + cloakoffnpc "Court Mage Nillem#ep16_wiz01", getcharid(0); + npctalk "Oh! Here you are!", "Court Mage Nillem#ep16_wiz01", bc_self; + sleep2 500; npctalk "Eh?", "", bc_self; sleep2 3000; - npctalk "Oh, there must have been a mistake!", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Oh, there must have been a mistake!", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "Well, let's go back! You shouldn't be here now!", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Well, let's go back! You shouldn't be here now!", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "Let's count it as my mistake this time-", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Let's count it as my mistake this time-", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "Let's move to the Room of Consciousness now.", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Let's move to the Room of Consciousness now.", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "Are you ready?", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Are you ready?", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "Three!", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Three!", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 1000; - npctalk "Two!", "Court Mage Nillem#ep16_1", bc_self; - sleep2 1000; - npctalk "One!", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Two!", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 1000; + npctalk "One!", "Court Mage Nillem#ep16_wiz01", bc_self; + sleep2 500; setpcblock PCBLOCK_NPC, false; warp "prt_lib",89,44; end; @@ -531,7 +548,7 @@ prt_cas_q,26,30,3 script Chamberlain Bell#ep16_m 4_M_RUSMAN1,{ mes "[Belle]"; mes "She asked me to let her know as soon as you come. Shall I send her a message now?"; erasequest 7696;// What's Next? - banquet_main_quest = 15; + ep16_royal = 15; next; if (select( "I'll visit her now.", "I'll visit her later." ) == 2) { mes "[Belle]"; @@ -542,26 +559,25 @@ prt_cas_q,26,30,3 script Chamberlain Bell#ep16_m 4_M_RUSMAN1,{ mes "[Belle]"; mes "Let me send the message now."; mes "Good bye."; - banquet_main_quest = 16; setquest 7697;// Invitation from the Nerius close; case 15: - mes "[Belle]"; - mes "Would you accept the invitation from the Nerius family now?"; - next; - if (select( "I'll visit her now.", "I'll visit her later." ) == 2) { + if (isbegin_quest(7697) == 0) { mes "[Belle]"; - mes "Let me know when you are ready."; - mes "I'll send her the message then."; + mes "Would you accept the invitation from the Nerius family now?"; + next; + if (select( "I'll visit her now.", "I'll visit her later." ) == 2) { + mes "[Belle]"; + mes "Let me know when you are ready."; + mes "I'll send her the message then."; + close; + } + mes "[Belle]"; + mes "Let me send the message now."; + mes "Good bye."; + setquest 7697;// Invitation from the Nerius close; } - mes "[Belle]"; - mes "Let me send the message now."; - mes "Good bye."; - banquet_main_quest = 16; - setquest 7697;// Invitation from the Nerius - close; - case 16: mes "[Belle]"; mes "The Nerius family stays in the second room from this room."; mes "The room next to the room of the Heine family."; @@ -569,12 +585,12 @@ prt_cas_q,26,30,3 script Chamberlain Bell#ep16_m 4_M_RUSMAN1,{ mes "[Belle]"; mes "I have sent the message that you would visit them soon. You may go there anytime."; close; - case 17: + case 16: mes "[Belle]"; mes "There has been a request from the Heine family to meet you."; mes "They asked you to visit the Heine family as soon as you come back."; close; - case 18: + case 17: mes "[Belle]"; mes "Oh, you are back!"; mes "Let me call the Mage."; @@ -584,22 +600,14 @@ prt_cas_q,26,30,3 script Chamberlain Bell#ep16_m 4_M_RUSMAN1,{ mes "Court Mage Nillem opened the door and left right away."; mes "Saying, 'Where are you?' " + strcharinfo(0) + " The magician must be looking for you."; close2; + cloakoffnpc "Court Mage Nillem#ep16_wiz01", getcharid(0); + npctalk "There you are!", "Court Mage Nillem#ep16_wiz01", bc_self; setpcblock PCBLOCK_NPC, true; - sleep2 50; - classchange( 4_M_JOB_WIZARD, "Court Mage Nillem#ep16_1", bc_self ); - npctalk "There you are!", "Court Mage Nillem#ep16_1", bc_self; - sleep2 50; - npctalk "What an impeccable timing...", bc_self; + sleep2 500; setpcblock PCBLOCK_NPC, false; + npctalk "What an impeccable timing...", bc_self; end; - case 19: - case 20: - case 21: - case 22: - case 23: - case 24: - case 25: - case 26: + default: mes "[Chamberlain]"; mes "I am at your service."; next; @@ -611,32 +619,36 @@ prt_cas_q,26,30,3 script Chamberlain Bell#ep16_m 4_M_RUSMAN1,{ mes "I have just sent a message. The magician will arrive here soon."; close2; setpcblock PCBLOCK_NPC, true; - sleep2 1000; - classchange( 4_M_JOB_WIZARD, "Court Mage Nillem#ep16_1", bc_self ); - if (banquet_main_quest < 25) { - npctalk "Thank you for using the million-call ticket today!", "Court Mage Nillem#ep16_1", bc_self; + sleep2 500; + cloakoffnpc "Court Mage Nillem#ep16_wiz01", getcharid(0); + sleep2 500; + if (ep16_royal < 24) { + npctalk "Thank you for using the million-call ticket today!", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "You must have missed me so much-", "Court Mage Nillem#ep16_1", bc_self; + npctalk "You must have missed me so much-", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "I am almost falling for your merciless calls...", "Court Mage Nillem#ep16_1", bc_self; + npctalk "I am almost falling for your merciless calls...", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "Just kidding.", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Just kidding.", "Court Mage Nillem#ep16_wiz01", bc_self; sleep2 3000; - npctalk "Shall we get going now?", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Shall we get going now?", "Court Mage Nillem#ep16_wiz01", bc_self; } else { - switch( rand(4) ) { + switch( rand(5) ) { case 0: - npctalk "I was wondering when you'd call me! I knew you would-", "Court Mage Nillem#ep16_1", bc_self; + npctalk "I was wondering when you'd call me! I knew you would-", "Court Mage Nillem#ep16_wiz01", bc_self; break; case 1: - npctalk "I am thrilled that you called me so mercilessly-", "Court Mage Nillem#ep16_1", bc_self; + npctalk "I am thrilled that you called me so mercilessly-", "Court Mage Nillem#ep16_wiz01", bc_self; break; case 2: - npctalk "Haha, we are going again! To the past!", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Haha, we are going again! To the past!", "Court Mage Nillem#ep16_wiz01", bc_self; break; case 3: - npctalk "Thank you for using the million-call ticket today!", "Court Mage Nillem#ep16_1", bc_self; + npctalk "Thank you for using the million-call ticket today!", "Court Mage Nillem#ep16_wiz01", bc_self; + break; + case 4: + npctalk "Here comes Genius Mage Nillem!", "Court Mage Nillem#ep16_wiz01", bc_self; break; } } @@ -648,11 +660,22 @@ prt_cas_q,26,30,3 script Chamberlain Bell#ep16_m 4_M_RUSMAN1,{ close; case 3: mes "[Belle]"; - mes "Here is some strong mint tea mixed with milk and chocolate chips. A great after-meal treat."; + .@r = rand(1,5); + if (.@r == 1) + mes "Here are some chamomile tea and ginger cookies. They will help you take a rest and get recovered from fatigue."; + else if (.@r == 2) + mes "You seemed hungry, so I have prepared some afternoon tea, scones and clotted cream."; + else if (.@r == 3) + mes "Here are some chocolate and cinnamon-flavored rooibos tea for refreshment."; + else if (.@r == 4) + mes "Here is some strong mint tea mixed with milk and chocolate chips. A great after-meal treat."; + else + mes "Here is some cold milk with citron jelly and cream. It is a sweet and sour drink."; mes "Do you like it?"; next; specialeffect2 EF_SANCTUARY; mes "^4d4dff All HP and SP are recovered!"; + percentheal 100,100; close; case 4: mes "[Belle]"; @@ -665,7 +688,10 @@ prt_cas_q,26,30,3 script Chamberlain Bell#ep16_m 4_M_RUSMAN1,{ mes "You want the Kafra Service."; mes "Let me make a call right away."; close2; - classchange( 4_F_KAFRA2, "Kafra Employee#ep16_s01", bc_self ); + setpcblock PCBLOCK_NPC, true; + sleep2 500; + setpcblock PCBLOCK_NPC, false; + cloakoffnpc "Kafra Employee#ep16_s01", getcharid(0); npctalk "Kafra Service.", "Kafra Employee#ep16_s01", bc_self; end; case 2: @@ -673,82 +699,98 @@ prt_cas_q,26,30,3 script Chamberlain Bell#ep16_m 4_M_RUSMAN1,{ mes "You need a Giant Beast Manager."; mes "Let me make a call right away."; close2; - classchange( 8W_SOLDIER, "Giant Beast Manager#ep16_s01", bc_self ); - npctalk "I am at your service.", "Giant Beast Manager#ep16_s01", bc_self; + setpcblock PCBLOCK_NPC, true; + sleep2 500; + setpcblock PCBLOCK_NPC, false; + cloakoffnpc "Giant Beast Manager#ep16_s02", getcharid(0); + npctalk "I am at your service.", "Giant Beast Manager#ep16_s02", bc_self; end; case 3: mes "[Belle]"; mes "I see."; - close; + close2; + cloakonnpc "Kafra Employee#ep16_s01", getcharid(0); + cloakonnpc "Giant Beast Manager#ep16_s02", getcharid(0); + end; } } } } -prt_cas_q,29,30,3 script Giant Beast Manager#ep16_s01 HIDDEN_WARP_NPC,{ - if (getskilllv("KN_RIDING") < 1 || ismounting() == 1) {// ismounting custom - mes "[Giant Beast Manager]"; +prt_cas_q,29,30,3 script Giant Beast Manager#ep16_s02 8W_SOLDIER,{ + .@thirdmask = eaclass() & EAJ_THIRDMASK; + if (.@thirdmask != EAJ_RUNE_KNIGHT && .@thirdmask != EAJ_ROYAL_GUARD) { mes "I am managing the Dragons and Griffons for the Rune Knights and Royal Guards."; close; } - .@job = ( (eaclass()&EAJ_THIRDMASK) == EAJ_RUNE_KNIGHT ); mes "[Giant Beast Manager]"; - if (.@job == 1) - mes "Thank you for calling me. Shall I bring a Dragon for you?"; + if (.@thirdmask == EAJ_RUNE_KNIGHT) + .@string$ = "Dragon"; else - mes "Thank you for calling me. Shall I bring a Griffon for you?";// custom + .@string$ = "Griffon"; + mes "Thank you for calling me. Shall I bring a " + .@string$ + " for you?"; next; if (select( "Use", "Cancel" ) == 2) { mes "[Giant Beast Manager]"; mes "I see. Then, good bye."; - close; + close2; + cloakonnpc "Giant Beast Manager#ep16_s02", getcharid(0); + end; } - if (checkriding() == 1 || checkdragon() == 1) { + if (getskilllv("KN_RIDING") < 1) { mes "[Giant Beast Manager]"; - if (.@job == 1) - mes "You are already using a Dragon."; - else - mes "You are already using a Griffon."; + mes "You need to learn how to ride a " + .@string$ + " first."; close; } - if (.@job == 1) - setdragon; + if (checkriding() || checkdragon()) { + mes "[Giant Beast Manager]"; + mes "You are already using a " + .@string$ + "."; + close; + } + if (ismounting()) { + mes "[Giant Beast Manager]"; + mes "You are already riding something else."; + mes "You need to take off the ride to ride a " + .@string$ + "."; + close; + } + if (.@thirdmask == EAJ_RUNE_KNIGHT) + setdragon(); else - setriding; + setriding(); + close; } -prt_cas_q,28,30,3 script Kafra Employee#ep16_s01 HIDDEN_WARP_NPC,{ - cutin "kafra_02",2; +prt_cas_q,28,30,3 script Kafra Employee#ep16_s01 4_F_KAFRA2,{ + cutin "kafra_02.bmp",2; mes "[Kafra Employee]"; mes "Hello. This is Kafra Service."; mes "What can I do for you?"; next; switch( select( "Use Cargo Service", "Use Cart Service", "Quit" ) ) { case 1: - if (callfunc("F_CanOpenStorage") == 0) {// custom - mes "I'm sorry, but you"; - mes "need the Novice's"; - mes "Basic Skill Level 6 to"; - mes "use the Storage Service."; - close3; - } - if (countitem(7060) > 0) - delitem 7060,1;// Warp_Free_Ticket - else if (Zeny < 500) { + if (!callfunc("F_CanOpenStorage")) { mes "[Kafra Employee]"; - mes "I'm sorry, but you don't"; - mes "have enough zeny to use"; - mes "the Storage Service. Our"; - mes "Storage access fee is 500 zeny."; + mes "I am sorry, dear customer."; + mes "You need to raise the novice skill level to 6 or higher to use the cargo service."; close3; } + if (countitem(7059) == 0 && Zeny < 50) { + mes "[Kafra Employee]"; + mes "You don't have enough money."; + mes "The Cargo Service costs 50 Zeny."; + close3; + } + if (countitem(7059) != 0) + delitem 7059,1; // Cargo_Free_Ticket else - Zeny = Zeny - 500; - openstorage; + Zeny -= 50; mes "[Kafra Employee]"; mes "Let me open the warehouse for you."; mes "Thank you for using Kafra Service."; - close3; + close2; + cutin "",255; + openstorage; + end; case 2: if (BaseClass != Job_Merchant) { mes "[Kafra Employee]"; @@ -756,46 +798,50 @@ prt_cas_q,28,30,3 script Kafra Employee#ep16_s01 HIDDEN_WARP_NPC,{ mes "The Cart Service is available for Merchant classes only."; close3; } - if (getskilllv("MC_PUSHCART") == 0) {// custom - mes "[Kafra Employee]"; - mes "You can only rent a cart after"; - mes "learning the Pushcart Skill."; - close3; - } - if (checkcart() == 1) { + if (checkcart() == true) { mes "[Kafra Employee]"; mes "You are already equipped with a cart."; close3; } + if (getskilllv("MC_PUSHCART") == 0) { + mes "[Kafra Employee]"; + mes "You can use the cart after learning the 'Push Cart' skill."; + close3; + } + if (countitem(7061) > 0) { + delitem 7061,1; // Cart_Free_Ticket + setcart(); + close3; + } mes "[Kafra Employee]"; mes "The Cart Service costs 800 Zeny."; mes "Would you use it?"; next; - if (select( "Use", "Cancel" ) == 1) { - if (countitem(7061) > 0) { - delitem 7061,1;// Cart_Free_Ticket - setcart(); - } - else if (Zeny < 800) { - mes "[Kafra Employee]"; - mes "You don't have enough money, dear customer."; - mes "The Cart Service costs 800 Zeny."; - } - else { - Zeny = Zeny - 800; - setcart(); - } + if (select( "Use", "Cancel" ) == 2) + close3; + if (Zeny < 800) { + mes "[Kafra Employee]"; + mes "You don't have enough money, dear customer."; + mes "The Cart Service costs 800 Zeny."; + close3; } + RESRVPTS += 8; + Zeny -= 800; + setcart(); close3; case 3: mes "[Kafra Employee]"; mes "Thank you for using Kafra Service as always."; - close3; + close2; + cutin "",255; + cloakonnpc "Kafra Employee#ep16_s01", getcharid(0); + end; } + end; } -prt_cas_q,28,28,3 script Court Mage Nillem#ep16_1 HIDDEN_WARP_NPC,{ - if (banquet_main_quest == 18) { +prt_cas_q,28,28,3 script Court Mage Nillem#ep16_wiz01 4_M_JOB_WIZARD,{ + if (ep16_royal == 17) { mes "[Nillem]"; mes "Oh, it's you, darling! I've been waiting for you!"; next; @@ -847,7 +893,7 @@ prt_cas_q,28,28,3 script Court Mage Nillem#ep16_1 HIDDEN_WARP_NPC,{ mes "[Nillem]"; mes "I'll be here immediately like a flash of lightning-"; mes "Well, then, shall we get going?"; - banquet_main_quest = 19; + ep16_royal = 18; next; if (select( "Let's go now!", "I need to make some preparations." ) == 2) { mes "[Nillem]"; @@ -865,7 +911,7 @@ prt_cas_q,28,28,3 script Court Mage Nillem#ep16_1 HIDDEN_WARP_NPC,{ warp "prt_lib",89,44; end; } - if (banquet_main_quest > 18) { + if (ep16_royal > 17) { mes "[Nillem]"; mes "Haha, then, let's go to the Past Memories of the Royal Family!"; next; @@ -882,51 +928,65 @@ prt_cas_q,28,28,3 script Court Mage Nillem#ep16_1 HIDDEN_WARP_NPC,{ warp "prt_lib",89,44; end; } + end; +OnInit: + cloakonnpc "Court Mage Nillem#ep16_wiz01"; + cloakonnpc "Kafra Employee#ep16_s01"; + cloakonnpc "Giant Beast Manager#ep16_s02"; + end; } -prt_cas,177,164,0 script #ep16_evt_7688 HIDDEN_WARP_NPC,1,1,{ +prt_cas,177,164,0 script #ep16_evt_7688 HIDDEN_WARP_NPC,3,3,{ end; OnTouch: - if (banquet_main_quest == 3) { + if (ep16_royal == 3) { mes "I hear voices from somewhere."; + sleep2 2000; + cloakoffnpc "Mysterious Guest#ep16_01", getcharid(0); + cloakoffnpc "Chamberlain#ep16_01", getcharid(0); + npctalk "The story you just have told must be true, right?", "Mysterious Guest#ep16_01", bc_self; sleep2 3000; - classchange( 4_LGTSCIENCE, "#ep16_7689_01", bc_self ); - classchange( 1_M_01, "#ep16_7689_02", bc_self ); - npctalk "The story you just have told must be true, right?", "#ep16_7689_01", bc_self; - sleep2 2000; - npctalk "Sure. It will meet the condition you are looking for just right.", "#ep16_7689_02", bc_self; - sleep2 2000; - npctalk "Hum...", "#ep16_7689_01", bc_self; - sleep2 2000; - npctalk "He also is heir to the throne. You will get the information you want.", "#ep16_7689_02", bc_self; - sleep2 2000; - npctalk "There must be no mistake in the arrangement. He must be called here without doubt.", "#ep16_7689_01", bc_self; - sleep2 2000; - npctalk "It has all been prepared... However, let me tell you the details later.", "#ep16_7689_02", bc_self; - sleep2 2000; - npctalk "It is the time for you to join the banquet.", "#ep16_7689_02", bc_self; + npctalk "Sure. It will meet the condition you are looking for just right.", "Chamberlain#ep16_01", bc_self; sleep2 3000; - classchange( HIDDEN_WARP_NPC, "#ep16_7689_01", bc_self ); - npctalk "Right. I'll see you later. Don't you dare disappoint me.", "#ep16_7689_01", bc_self; - sleep2 4000; - npctalk "What a bossy pants...", "#ep16_7689_02", bc_self; - sleep2 2000; - classchange( HIDDEN_WARP_NPC, "#ep16_7689_02", bc_self ); + npctalk "Hum...", "Mysterious Guest#ep16_01", bc_self; + sleep2 3000; + npctalk "He also is heir to the throne. You will get the information you want.", "Chamberlain#ep16_01", bc_self; + sleep2 3000; + npctalk "There must be no mistake in the arrangement. He must be called here without doubt.", "Mysterious Guest#ep16_01", bc_self; + sleep2 3000; + npctalk "It has all been prepared... However, let me tell you the details later.", "Chamberlain#ep16_01", bc_self; + sleep2 3000; + npctalk "It is the time for you to join the banquet.", "Chamberlain#ep16_01", bc_self; + sleep2 3000; + npctalk "Right. I'll see you later. Don't you dare disappoint me.", "Mysterious Guest#ep16_01", bc_self; + sleep2 3000; + cloakonnpc "Mysterious Guest#ep16_01", getcharid(0); + sleep2 1000; + npctalk "What a bossy pants...", "Chamberlain#ep16_01", bc_self; + sleep2 1000; + cloakonnpc "Chamberlain#ep16_01", getcharid(0); next; mes "I happen to eavesdrop on a fishy conversation."; - banquet_main_quest = 4; + ep16_royal = 4; erasequest 7687;// Participating in the Banquet setquest 7688;// Suspicious Movement } end; +OnInit: + cloakonnpc "Mysterious Guest#ep16_01"; + cloakonnpc "Chamberlain#ep16_01"; + end; } -prt_cas,181,157,3 script #ep16_7689_02 HIDDEN_WARP_NPC,{ end; } -prt_cas,179,158,4 script #ep16_7689_01 HIDDEN_WARP_NPC,{ end; } +prt_cas,179,155,6 script Mysterious Guest#ep16_01 4_LGTSCIENCE,{ end; } +prt_cas,181,154,2 script Chamberlain#ep16_01 1_M_01,{ end; } // Hall function script F_banquet_main_4_spica { + .@char_id = getcharid(0); + .@char_name$ = strcharinfo(0); + mes "[Spica]"; - mes "I get to see you again. " + strcharinfo(0) + "."; + mes "I get to see you again. " + .@char_name$ + "."; mes "Chamberlain must have been a great messenger."; mes "I saw you coming this way right away."; cutin "ep16_spica_nerius01",2; @@ -934,7 +994,7 @@ function script F_banquet_main_4_spica { mes "[Spica]"; mes "I was surprised when you were introduced as a special guest. You seem to be more extraordinary than I have thought."; mes "You were introduced as..."; - unittalk getcharid(3), "" + strcharinfo(0) + " : Let's not mention that since I am embarrassed by it so much...", bc_self; + unittalk getcharid(3), "" + .@char_name$ + " : Let's not mention that since I am embarrassed by it so much...", bc_self; next; mes "[Spica]"; mes "But it is true."; @@ -982,11 +1042,11 @@ function script F_banquet_main_4_spica { mes "Oh, you are right? Nyhill! This way!"; npctalk "Nyhill?", "Spica Nerius#ep16_02", bc_self; next; - classchange( 4_EP16_NIHIL, "Nyhill M. Heine#ep16_02", bc_self ); + cloakoffnpc "Nyhill M. Heine#ep16_02", .@char_id; cutin "ep16_nihi_miseria_heine01",2; mes "[Nyhill]"; mes "You don't have to scream like that, Skia."; - mes "" + strcharinfo(0) + " is here too."; + mes "" + .@char_name$ + " is here too."; mes "Indeed, you won't be mistaken when you hang out with the people of the Nerius family."; mes "Good decision."; npctalk "Skia?", "Spica Nerius#ep16_02", bc_self; @@ -996,7 +1056,7 @@ function script F_banquet_main_4_spica { mes "Skia and Lord of the Heine family."; mes "Since when did you call each other by the first name?"; npctalk "Did you know?", "Spica Nerius#ep16_02", bc_self; - sleep2 20; + sleep2 1000; npctalk "...No, no. I didn't.", "Crux Findel#ep16_02", bc_self; next; cutin "ep16_skia_nerius01",0; @@ -1011,8 +1071,8 @@ function script F_banquet_main_4_spica { next; cutin "ep16_nihi_miseria_heine01",2; mes "[Nyhill]"; - mes "" + strcharinfo(0) + ", I visited your room to give you my apology, but you had already left for the Banquet Hall."; - unittalk getcharid(3), "" + strcharinfo(0) + " : Apology?", bc_self; + mes "" + .@char_name$ + ", I visited your room to give you my apology, but you had already left for the Banquet Hall."; + unittalk getcharid(3), "" + .@char_name$ + " : Apology?", bc_self; next; cutin "ep16_nihi_miseria_heine04",2; mes "[Nyhill]"; @@ -1021,8 +1081,8 @@ function script F_banquet_main_4_spica { mes "Please forgive me."; next; npctalk "You must have done something wrong, right?", "Spica Nerius#ep16_02", bc_self; - sleep2 20; - classchange( 4_F_RUSWOMAN1, "Violeta#ep16_02", bc_self ); + sleep2 1000; + cloakoffnpc "Violeta#ep16_02", .@char_id; npctalk "I am not surprised since it was Mijeria who had nothing!", "Violeta#ep16_02", bc_self; cutin "",255; mes "[Drunk Woman]"; @@ -1061,7 +1121,7 @@ function script F_banquet_main_4_spica { mes "[Spica]"; mes "Isn't it right? Violeta Collette Heine?"; mes "I understand your feelings for the lord, but your behavior will just bring disgrace to your family."; - unittalk getcharid(3), "" + strcharinfo(0) + " : Heine...?", bc_self; + unittalk getcharid(3), "" + .@char_name$ + " : Heine...?", bc_self; next; npctalk "...Phew... She is a collateral relative of mine...", "Nyhill M. Heine#ep16_02", bc_self; mes "[Spica]"; @@ -1080,7 +1140,7 @@ function script F_banquet_main_4_spica { mes "Well, I'll get back."; mes "Since things have turned out this way, you better go to join the Nerius family, then! He!"; next; - classchange( HIDDEN_WARP_NPC, "Violeta#ep16_02", bc_self ); + cloakonnpc "Violeta#ep16_02", .@char_id; cutin "ep16_skia_nerius01",0; mes "[Skia]"; mes "How does the story go that way?"; @@ -1108,15 +1168,16 @@ function script F_banquet_main_4_spica { cutin "",255; mes "[Nyhill]"; mes "Skia, it is the same for you. You sometimes have to become a shadow yourself."; - classchange( 1_F_PUBGIRL, "Royal Chamberlain#ep16_", bc_self ); - npctalk "Light champagne. Would you like some?", "Royal Chamberlain#ep16_", bc_self; + cloakoffnpc "Royal Chamberlain#ep16_02", .@char_id; + npctalk "Light champagne. Would you like some?", "Royal Chamberlain#ep16_02", bc_self; next; npctalk "Thanks.", "Nyhill M. Heine#ep16_02", bc_self; npctalk "May I have a glass too?", "Skia Nerius#ep16_02", bc_self; + sleep2 1000; mes "[Spica]"; mes "However, I didn't know you have been treated like that by the members of your own family."; next; - classchange( HIDDEN_WARP_NPC, "Royal Chamberlain#ep16_", bc_self ); + cloakonnpc "Royal Chamberlain#ep16_02", .@char_id; npctalk ".....", "Nyhill M. Heine#ep16_02", bc_self; cutin "ep16_nihi_miseria_heine04",2; mes "[Nyhill]"; @@ -1135,7 +1196,7 @@ function script F_banquet_main_4_spica { npctalk "It was fun!", "Skia Nerius#ep16_02", bc_self; npctalk "...Which part of it was fun...?", "Crux Findel#ep16_02", bc_self; next; - classchange( HIDDEN_WARP_NPC, "Nyhill M. Heine#ep16_02", bc_self ); + cloakonnpc "Nyhill M. Heine#ep16_02", .@char_id; cutin "ep16_spica_nerius01",2; mes "[Spica]"; mes "...Hum..."; @@ -1147,12 +1208,12 @@ function script F_banquet_main_4_spica { mes "[Spica]"; mes "And, Crux."; mes "Go dig out the Chamberlain who has given us the drink."; - sleep2 20; + sleep2 1000; npctalk "Yes, my lady.", "Crux Findel#ep16_02", bc_self; next; mes "[Spica]"; mes "No one can fool my eyes like this."; - mes "" + strcharinfo(0) + ", you take a look too."; + mes "" + .@char_name$ + ", you take a look too."; mes "Doesn't something seem strange to you?"; next; select("Well, you do seem to talk a little casually now..."); @@ -1176,7 +1237,7 @@ function script F_banquet_main_4_spica { next; cutin "ep16_spica_nerius05",2; mes "[Spica]"; - mes "" + strcharinfo(0) + "."; + mes "" + .@char_name$ + "."; mes "Don't you think something funny is about to happen now?"; mes "Oh, how suspicious."; mes "Since it seems suspicious, let's get back now."; @@ -1191,11 +1252,11 @@ function script F_banquet_main_4_spica { mes "If you are curious, you may follow him."; mes "I am well taken care of by Crux."; npctalk "Crux, let's get back to the room.", "Spica Nerius#ep16_02", bc_self; - sleep2 20; + sleep2 1000; npctalk "Yes, my lady.", "Crux Findel#ep16_02", bc_self; next; - classchange( HIDDEN_WARP_NPC, "Spica Nerius#ep16_02", bc_self ); - classchange( HIDDEN_WARP_NPC, "Crux Findel#ep16_02", bc_self ); + cloakonnpc "Spica Nerius#ep16_02", .@char_id; + cloakonnpc "Crux Findel#ep16_02", .@char_id; npctalk "How cold-hearted...", "Skia Nerius#ep16_02", bc_self; mes "[Skia]"; mes "Well, hero?"; @@ -1214,25 +1275,20 @@ function script F_banquet_main_4_spica { mes "He must have headed to the Royal Villa. Let's go that way."; erasequest 7688;// Suspicious Movement setquest 7689;// Find Nyhill - banquet_main_quest = 5; - next; - cutin "ep16_skia_nerius01",0; - mes "[Skia]"; - mes "Nyhill must have left the Banquet Hall."; - mes "He must have headed to the Royal Villa. Let's go that way."; + ep16_royal = 5; close3; } -prt_cas,107,237,2 script Nyhill M. Heine#ep16_02 HIDDEN_WARP_NPC,{ end; } -prt_cas,103,235,7 script Violeta#ep16_02 HIDDEN_WARP_NPC,{ end; } -prt_cas,108,235,2 script Royal Chamberlain#ep16_ HIDDEN_WARP_NPC,{ end; } +prt_cas,107,237,2 script Nyhill M. Heine#ep16_02 4_EP16_NIHIL,{ end; } +prt_cas,103,235,7 script Violeta#ep16_02 4_F_RUSWOMAN1,{ end; } +prt_cas,108,235,2 script Royal Chamberlain#ep16_02 1_F_PUBGIRL,{ end; } prt_cas,104,240,5 script Skia Nerius#ep16_02 4_EP16_SKIA,{ - if (banquet_main_quest < 3) { - npctalk "......", "Skia Nerius#ep16_02", bc_self; - end; - } - if (banquet_main_quest == 3) { + if (ep16_royal < 4) { + if (isbegin_quest(7684) == 0) { + npctalk "......", "Skia Nerius#ep16_02", bc_self; + end; + } cutin "ep16_skia_nerius01",0; mes "[Skia]"; mes "Iwine."; @@ -1255,16 +1311,16 @@ prt_cas,104,240,5 script Skia Nerius#ep16_02 4_EP16_SKIA,{ mes "I am sorry."; close3; } - if (banquet_main_quest == 4) + if (ep16_royal == 4) F_banquet_main_4_spica(); - if (banquet_main_quest == 5) { + if (ep16_royal == 5) { cutin "ep16_skia_nerius01",0; mes "[Skia]"; mes "Nyhill must have left the Banquet Hall."; mes "He must have headed to the Royal Villa. Let's go that way."; close3; } - if (banquet_main_quest >= 6) { + if (ep16_royal >= 6) { cutin "ep16_skia_nerius02",0; mes "[Skia]"; mes "Bad things seem to keep happening."; @@ -1273,11 +1329,11 @@ prt_cas,104,240,5 script Skia Nerius#ep16_02 4_EP16_SKIA,{ } prt_cas,106,240,3 script Spica Nerius#ep16_02 4_EP16_SPICA,{ - if (banquet_main_quest < 3) { - npctalk "...Pardon me.", "Spica Nerius#ep16_02", bc_self; - end; - } - if (banquet_main_quest == 3) { + if (ep16_royal < 4) { + if (isbegin_quest(7684) == 0) { + npctalk "...Pardon me.", "Spica Nerius#ep16_02", bc_self; + end; + } mes "[Spica]"; mes "You are here to enjoy the banquet, right?"; mes "Have you visit all other families?"; @@ -1295,9 +1351,9 @@ prt_cas,106,240,3 script Spica Nerius#ep16_02 4_EP16_SPICA,{ mes "You never know what would happen!"; close3; } - if (banquet_main_quest == 4) + if (ep16_royal == 4) F_banquet_main_4_spica(); - if (banquet_main_quest == 5) { + if (ep16_royal == 5) { mes "[Spica]"; mes "Hum? You are still here. I thought you went after the lord from the Heine family."; cutin "ep16_spica_nerius05",2; @@ -1315,7 +1371,7 @@ prt_cas,106,240,3 script Spica Nerius#ep16_02 4_EP16_SPICA,{ mes "I have advised you as so, remember."; close3; } - if (banquet_main_quest >= 6) { + if (ep16_royal >= 6) { cutin "ep16_spica_nerius02",2; mes "[Spica]"; mes "I don't like how things have been going these days."; @@ -1325,18 +1381,25 @@ prt_cas,106,240,3 script Spica Nerius#ep16_02 4_EP16_SPICA,{ } prt_cas,108,240,3 script Crux Findel#ep16_02 4_EP16_CRUX,{ - if (banquet_main_quest < 4) { - npctalk "......", "Crux Findel#ep16_02", bc_self; - end; + if (ep16_royal < 4) { + if (isbegin_quest(7684) == 0) { + npctalk "......", "Crux Findel#ep16_02", bc_self; + end; + } + cutin "ep16_crux_findel01.bmp",2; + mes "[Crux]"; + mes "Don't mind me."; + mes "I am just a bodyguard."; + close3; } - if (banquet_main_quest == 4) { + if (ep16_royal == 4) { cutin "ep16_crux_findel01",2; mes "[Crux]"; mes "I get to see you again."; mes "The lady has been waiting for you."; close3; } - if (banquet_main_quest == 5) { + if (ep16_royal == 5) { cutin "ep16_crux_findel01",2; mes "[Crux]"; mes "I am thinking about the order given by the lady."; @@ -1365,7 +1428,7 @@ prt_cas,108,240,3 script Crux Findel#ep16_02 4_EP16_CRUX,{ mes "You shouldn't worry about me."; close3; } - if (banquet_main_quest >= 6) { + if (ep16_royal >= 6) { cutin "ep16_crux_findel01",2; mes "[Crux]"; mes "I guess we won't be able to return to the head house anytime soon."; @@ -1373,17 +1436,25 @@ prt_cas,108,240,3 script Crux Findel#ep16_02 4_EP16_CRUX,{ npctalk "...Oh, good. It is a good thing.", bc_self; close3; } + end; +OnInit: + cloakonnpc "Nyhill M. Heine#ep16_02"; + cloakonnpc "Violeta#ep16_02"; + cloakonnpc "Royal Chamberlain#ep16_02"; + end; } -prt_cas,183,164,0 script #ep16_evt_7689 HIDDEN_WARP_NPC,1,1,{ +prt_cas,183,164,0 script #ep16_evt_7689 HIDDEN_WARP_NPC,2,3,{ end; OnTouch: - if (banquet_main_quest == 5) { + if (ep16_royal == 5) { + .@name$ = strcharinfo(0); + .@char_id = getcharid(0); + unittalk getcharid(3), "" + .@name$ + " : ...Hum? Who's coming?", bc_self; setpcblock PCBLOCK_NPC, true; - unittalk getcharid(3), "" + strcharinfo(0) + " : ...Hum? Who's coming?", bc_self; sleep2 2000; - classchange( 4_LGTSCIENCE, "#ep16_7689_01", bc_self ); - classchange( 1_M_01, "#ep16_7689_02", bc_self ); + cloakoffnpc "#ep16_7689_01", .@char_id; + cloakoffnpc "#ep16_7689_02", .@char_id; npctalk "How did it go?", "#ep16_7689_02", bc_self; sleep2 2000; npctalk "Hum... Not as much as I have wanted, but I seem to have a clue now.", "#ep16_7689_01", bc_self; @@ -1393,21 +1464,21 @@ OnTouch: npctalk "It has been only a while...", "#ep16_7689_02", bc_self; sleep2 3000; npctalk "The drug worked wonders. Hahah... That lord had no tolerance to it as I was told.", "#ep16_7689_01", bc_self; - sleep2 3000; - unittalk getcharid(3), "" + strcharinfo(0) + " : (Lord?)", bc_self; + sleep2 1000; + unittalk getcharid(3), "" + .@name$ + " : (Lord?)", bc_self; sleep2 3000; npctalk "What should we do now?", "#ep16_7689_02", bc_self; sleep2 3000; npctalk "Just leave him there. They will think that he is just drunk a little.", "#ep16_7689_01", bc_self; sleep2 3000; npctalk "Then, let's get prepared for the big event.", "#ep16_7689_01", bc_self; - sleep2 2000; - classchange( HIDDEN_WARP_NPC, "#ep16_7689_01", bc_self ); - classchange( HIDDEN_WARP_NPC, "#ep16_7689_02", bc_self ); - classchange( 4_EP16_SKIA, "Skia Nerius#ep16_7689", bc_self ); + sleep2 1000; + cloakonnpc "#ep16_7689_01", .@char_id; + cloakonnpc "#ep16_7689_02", .@char_id; + cloakoffnpc "Skia Nerius#ep16_7689", .@char_id; npctalk "Did you find Nyhill?", "Skia Nerius#ep16_7689", bc_self; sleep2 1000; - unittalk getcharid(3), "" + strcharinfo(0) + " : What the!", bc_self; + unittalk getcharid(3), "" + .@name$ + " : What the!", bc_self; sleep2 2000; npctalk "Why are you so surprised? What are you looking at?", "Skia Nerius#ep16_7689", bc_self; sleep2 3000; @@ -1416,28 +1487,35 @@ OnTouch: npctalk "Would Nyhill be in that room? He told me that he didn't like to stay in the Royal Villa because of grandpa archduke.", "Skia Nerius#ep16_7689", bc_self; sleep2 3000; npctalk "Let's get into that room!", "Skia Nerius#ep16_7689", bc_self; - if (banquet_main_quest == 5) { + if (ep16_royal == 5) { setquest 7690;// Where Is Nyhill? erasequest 7689;// Find Nyhill - banquet_main_quest = 6; + ep16_royal = 6; } - sleep2 2000; - classchange( HIDDEN_WARP_NPC, "Skia Nerius#ep16_7689", bc_self ); + sleep2 3000; setpcblock PCBLOCK_NPC, false; + cloakonnpc "Skia Nerius#ep16_7689", .@char_id; } end; +OnInit: + cloakonnpc "Skia Nerius#ep16_7689"; + cloakonnpc "#ep16_7689_02"; + cloakonnpc "#ep16_7689_01"; + end; } -prt_cas,186,163,3 script Skia Nerius#ep16_7689 HIDDEN_WARP_NPC,{ end; } +prt_cas,186,163,3 script Skia Nerius#ep16_7689 4_EP16_SKIA,{ end; } +prt_cas,181,157,3 script #ep16_7689_02 1_M_01,{ end; } +prt_cas,179,158,4 script #ep16_7689_01 4_LGTSCIENCE,{ end; } -prt_cas,25,35,5 script Skia Nerius#ep16_7690 HIDDEN_WARP_NPC,{ - if (banquet_main_quest == 6) { +prt_cas,25,35,5 script Skia Nerius#ep16_7690 4_EP16_SKIA,{ + if (ep16_royal == 6) { cutin "ep16_nihi_miseria_heine01",2; mes "[Nyhill]"; mes "...Who's there?"; mes "" + strcharinfo(0) + "...?"; mes "What are you doing here?"; next; - npctalk "...Ha...", "Unstable Nyhill#ep16_76", bc_self; + npctalk "...Ha...", "Unstable Nyhill#ep16_7690", bc_self; cutin "ep16_nihi_miseria_heine04",2; mes "[Nyhill]"; mes "...Am I drunk?"; @@ -1482,7 +1560,7 @@ prt_cas,25,35,5 script Skia Nerius#ep16_7690 HIDDEN_WARP_NPC,{ mes "[Nyhill]"; mes "Well, then. Please excuse me."; next; - classchange( HIDDEN_WARP_NPC, "Unstable Nyhill#ep16_76", bc_self ); + cloakonnpc "Unstable Nyhill#ep16_7690", getcharid(0); cutin "ep16_skia_nerius03",0; mes "[Skia]"; mes "Whoa! He is fast."; @@ -1495,47 +1573,38 @@ prt_cas,25,35,5 script Skia Nerius#ep16_7690 HIDDEN_WARP_NPC,{ mes "You should go back to your room."; erasequest 7690;// Where Is Nyhill? setquest 7691;// Waiting for the Ritual - banquet_main_quest = 7; + ep16_royal = 7; close3; } - if (banquet_main_quest == 7) { + else { if (strnpcinfo(0) == "Skia Nerius#ep16_7690") npctalk "We should go back too.", "Skia Nerius#ep16_7690", bc_self; end; } } -prt_cas,27,34,3 duplicate(Skia Nerius#ep16_7690) Unstable Nyhill#ep16_76 HIDDEN_WARP_NPC +prt_cas,27,34,3 duplicate(Skia Nerius#ep16_7690) Unstable Nyhill#ep16_7690 4_EP16_NIHIL prt_cas,27,43,0 script #ep16_evt_7690 HIDDEN_WARP_NPC,1,1,{ end; OnTouch: - if (banquet_main_quest == 6) { + if (ep16_royal == 6) { + cloakoffnpc "Unstable Nyhill#ep16_7690", getcharid(0); + cloakoffnpc "Skia Nerius#ep16_7690", getcharid(0); setpcblock PCBLOCK_NPC, true; - classchange( 4_EP16_NIHIL, "Unstable Nyhill#ep16_76", bc_self ); - classchange( 4_EP16_SKIA, "Skia Nerius#ep16_7690", bc_self ); sleep2 1000; - npctalk "Are you OK?", "Skia Nerius#ep16_7690", bc_self; setpcblock PCBLOCK_NPC, false; + npctalk "Are you OK?", "Skia Nerius#ep16_7690", bc_self; } end; +OnInit: + cloakonnpc "Skia Nerius#ep16_7690"; + cloakonnpc "Unstable Nyhill#ep16_7690"; + end; } // prt_lib -prt_lib,9,24,0 script prt_cas_20#prt_cas_21 WARPNPC,1,1,{ -OnTouch: - if (banquet_main_quest < 13) { - mes "[Guardian Knight]"; - mes "You cannot go that way."; - close2; - warp "prt_lib",60,61; - end; - } - warp "prt_pri00",60,127; - end; -} - -prt_lib,76,80,3 script Lindt the Librarian#ep1 1_M_01,{ - if (banquet_main_quest == 11) { +prt_lib,76,80,3 script Lindt the Librarian#ep16_lindt 1_M_01,{ + if (ep16_royal == 11) { mes "[Librarian]"; mes "Do you want to take a look at the material?"; mes "It is still here since I haven't taken it away."; @@ -1561,10 +1630,10 @@ prt_lib,76,80,3 script Lindt the Librarian#ep1 1_M_01,{ mes "[Librarian]"; mes "That's why Archduke Stoltze gave up and left."; mes "Since you have seen this, let me put this back in place."; - banquet_main_quest = 12; + ep16_royal = 12; close; } - if (banquet_main_quest == 24) { + if (ep16_royal == 22) { mes "[Librarian]"; mes "Oh, you are here."; mes "Archduke Grantz has been waiting for you for a while."; @@ -1581,7 +1650,9 @@ prt_lib,76,80,3 script Lindt the Librarian#ep1 1_M_01,{ } prt_lib,91,85,3 script Mage Nillem#ep16_warp 4_M_JOB_WIZARD,{ - switch( banquet_main_quest ) { + if (ep16_royal < 8) + end; + switch( ep16_royal ) { case 8: if (getcharid(1) == 0 || is_party_leader() == false) {// solo instance mes "^4d4dffIt is an event which proceeds as a memorial."; @@ -1599,17 +1670,17 @@ prt_lib,91,85,3 script Mage Nillem#ep16_warp 4_M_JOB_WIZARD,{ } if (instance_create("Ritual of Blessing") < 0) { mes "[Nillem]"; - mes "Oh... It doesn't work well."; - mes "Wait, phew... Let me collect my strength again..."; + mes "Hum? I don't know what is going on. We don't seem to be able to enter now."; + mes "It is a secret area which is made to open upon showing magical power."; next; mes "[Nillem]"; - mes "... I'll make it work, wait a minute."; + mes "Let's wait until it stabilizes."; close; } mes "[Nillem]"; mes "Whoa! The gate to the next area has been activated!"; mes "Well, let's get in there!"; - classchange( PORTAL, "Room of Consciousness#e", bc_self ); + cloakoffnpc "Room of Consciousness#evt_gate01", getcharid(0); close; case 9: mes "[Nillem]"; @@ -1655,7 +1726,7 @@ prt_lib,91,85,3 script Mage Nillem#ep16_warp 4_M_JOB_WIZARD,{ next; mes "[Nillem]"; mes "I'll try to find a way to reactivate the gate."; - banquet_main_quest = 11; + ep16_royal = 11; setquest 7694;// I'd Like to See that Too close; case 11: @@ -1699,16 +1770,22 @@ prt_lib,91,85,3 script Mage Nillem#ep16_warp 4_M_JOB_WIZARD,{ mes "He will guide you."; erasequest 7694;// I'd Like to See that Too setquest 7695;// Escape from the Past Memories of the Royal Family - banquet_main_quest = 13; + ep16_royal = 13; close; case 13: case 14: case 15: case 16: case 17: + mes "[Nillem]"; + mes "Although there are direct gates installed in the palace for convenience,"; + mes "There are passages you can walk directly in."; + next; + mes "[Nillem]"; + mes "This is one of the rare chances to use the secret passage."; + mes "Hahahaha..."; + close; case 18: - end; - case 19: mes "[Nillem]"; mes "Haha, shall I get ready?"; mes "Come here! ^4d4dffDimension Warper MkII^000000!!"; @@ -1718,42 +1795,40 @@ prt_lib,91,85,3 script Mage Nillem#ep16_warp 4_M_JOB_WIZARD,{ mes "I wonder what we are going to see this time!"; setquest 7700;// Once More! erasequest 7699;// To the Past - banquet_main_quest = 20; - classchange( PORTAL, "Dimension Warper MkII#e", bc_self ); + cloakoffnpc "Dimension Warper MkII#ep16_lib", getcharid(0); close; + case 19: case 20: case 21: - case 22: - case 23: mes "[Nillem]"; - mes "Haha, shall I get ready?"; - mes "Come here!^4d4dffDimension Warper MkII^000000!!"; + mes "We haven't solved all the secrets yet!"; + mes "Well, we have to go back!"; next; + cloakoffnpc "Dimension Warper MkII#ep16_lib", getcharid(0); mes "[Nillem]"; - mes "Well, let's go, dear customer."; - mes "I wonder what we are going to see this time!"; - classchange( PORTAL, "Dimension Warper MkII#e", bc_self ); + mes "Let's finish it off this time!"; close; - case 24: + case 22: mes "[Nillem]"; mes "What are you doing?"; mes "Go grill the librarian to dig out the truth!"; next; + cloakoffnpc "Kronecker G. Heine#ep16_01_lib01", getcharid(0); mes "[Nillem]"; mes "What did we go through all the trouble for?"; mes "Look, there is Archduke Grantz."; close; - case 25: + case 23: mes "[Nillem]"; mes "^4d4dffThe Heine family will get the approval to enter the 'Past Memories of the Royal Family'^000000, right?"; mes "We will see each other more often from now on then."; - mes "Haha, this must be what others call the destiny-"; + mes "Haha, this must be what others call the destiny-ยก?"; next; mes "[Nillem]"; mes "What are you doing?"; mes "Let's go see ^4d4dffDuke Friedrich to check if the approval has been issued!^000000"; close; - case 26: + default: mes "[Nillem]"; mes "Today, we are going on a secret journey together again!"; mes "Hahaha. You'd better get excited!"; @@ -1764,17 +1839,17 @@ prt_lib,91,85,3 script Mage Nillem#ep16_warp 4_M_JOB_WIZARD,{ mes "What would be waiting for us today?"; mes "I guess this would end up a failure again, though."; mes "Hahaha-"; - classchange( PORTAL, "Dimension Warper MkII#e", bc_self ); + cloakoffnpc "Dimension Warper MkII#ep16_lib", getcharid(0); close; } } -prt_lib,88,90,1 script Room of Consciousness#e HIDDEN_WARP_NPC,{ - if (banquet_main_quest == 8) { - if (getcharid(1) == 0 || is_party_leader() == false) { - mes "^4d4dffOnly the party leader can enter MD [Ritual of Blessing].^000000"; - close; - } +prt_lib,88,90,1 script Room of Consciousness#evt_gate01 PORTAL,{ + if (getcharid(1) == 0 || is_party_leader() == false) { + mes "^4d4dffOnly the party leader can enter MD [Ritual of Blessing].^000000"; + close; + } + if (ep16_royal == 8) { mes "You can move to where the ritual of blessing is held."; next; if (select( "Enter.", "Do not enter." ) == 2) { @@ -1788,23 +1863,35 @@ prt_lib,88,90,1 script Room of Consciousness#e HIDDEN_WARP_NPC,{ } switch( instance_enter("Ritual of Blessing") ) { case IE_OTHER: - mes "An unknown error occurred."; + mes "[Nillem]"; + mes "Oh, well, the movement of magic seems uneasy."; + mes "Hum, shall we try again later?"; + close; + case IE_NOINSTANCE: + mes "[Nillem]"; + mes "The gate to the place where the ritual is held is not activated officially."; + mes "Wait a minute."; close; - case IE_NOINSTANCE:// todo - end; case IE_NOMEMBER: - end; + mes "^4d4dffThis is an event proceeding through memorial."; + mes "Only the party leader can enter.^000000"; + close; case IE_OK: mapannounce "prt_lib", "Party member " + strcharinfo(0) + " of party's " + getpartyname( getcharid(1) ) + " enters Ritual of Blessing.", bc_map,0xFF99,FW_NORMAL,12; //warp "2@mir",101,12; end; } + end; } + npctalk "It cannot be used now!", "Mage Nillem#ep16_warp", bc_self; + end; +OnInit: + cloakonnpc "Room of Consciousness#evt_gate01"; end; } -prt_lib,56,61,4 script Guardian Knight#ep16_ro 4_M_CRU,{ - if (banquet_main_quest < 13) +prt_lib,56,61,4 script Guardian Knight#ep16_roomguard 4_M_CRU,{ + if (ep16_royal < 13) npctalk "On duty. No problem.", "", bc_self; else { mes "[Guardian Knight]"; @@ -1831,26 +1918,33 @@ prt_lib,56,61,4 script Guardian Knight#ep16_ro 4_M_CRU,{ prt_lib,88,80,0 script #ep16_lib_evt01 HIDDEN_WARP_NPC,1,1,{ end; OnTouch: - if (banquet_main_quest == 9) { - classchange( 4_EP16_MAX, "Maximilian Roegenburg#e_prt_lib", bc_self ); - classchange( 4_EP16_LOUVIERE, "Levuiere Wigner#ep16_li", bc_self ); - classchange( 4_EP16_GRANZ, "Kronecker G. Heine#ep16_1", bc_self ); - classchange( 4_EP16_NIHIL, "Nyhill M. Heine#ep16_li", bc_self ); - classchange( 1_M_JOBTESTER, "Ian Walther#ep16_lib01", bc_self ); + if (ep16_royal == 9) { + cloakoffnpc "Ian Walther#ep16_lib01", getcharid(0); + cloakoffnpc "Levuiere Wigner#ep16_lib01", getcharid(0); + cloakoffnpc "Maximilian Roegenburg#ep16_lib01", getcharid(0); + cloakoffnpc "Kronecker G. Heine#ep16_01_lib01", getcharid(0); + cloakoffnpc "Nyhill M. Heine#ep16_lib01", getcharid(0); setpcblock PCBLOCK_NPC, true; sleep2 2000; npctalk "You are here at last.", "Ian Walther#ep16_lib01", bc_self; sleep2 3000; - npctalk "I have something to tell you, special guest.", "Ian Walther#ep16_lib01", bc_self; setpcblock PCBLOCK_NPC, false; + npctalk "I have something to tell you, special guest.", "Ian Walther#ep16_lib01", bc_self; } - if (banquet_main_quest == 24) - classchange( 4_EP16_GRANZ, "Kronecker G. Heine#ep16_1", bc_self ); + if (ep16_royal == 22) + cloakoffnpc "Kronecker G. Heine#ep16_01_lib01", getcharid(0); + end; +OnInit: + cloakonnpc "Ian Walther#ep16_lib01"; + cloakonnpc "Levuiere Wigner#ep16_lib01"; + cloakonnpc "Maximilian Roegenburg#ep16_lib01"; + cloakonnpc "Kronecker G. Heine#ep16_01_lib01"; + cloakonnpc "Nyhill M. Heine#ep16_lib01"; end; } -prt_lib,80,79,3 script Kronecker G. Heine#ep16_1 HIDDEN_WARP_NPC,{ - if (banquet_main_quest == 24) { +prt_lib,80,79,3 script Kronecker G. Heine#ep16_01_lib01 4_EP16_GRANZ,{ + if (ep16_royal == 22) { cutin "ep16_kronecker_granz_heine",2; mes "[Kronecker]"; mes "Did you find out anything?"; @@ -1966,16 +2060,16 @@ prt_lib,80,79,3 script Kronecker G. Heine#ep16_1 HIDDEN_WARP_NPC,{ mes "It is a shame, but you are the only hope left for us."; mes "We are counting on you."; erasequest 7703;// Who Knows the Truth - getitem 6919,30;// Honor Token + getitem 6919,30;// TokenOfHonor getexp 800000,800000; setquest 7706;// Nillem Is Not Almighty - banquet_main_quest = 25; + ep16_royal = 23; next; cutin "",255; mes "^4d4dffFrom now on, you can get daily quests related to the past Room of Consciousness from Friedrich Stoltze.^000000"; close; } - if (banquet_main_quest == 25) { + if (ep16_royal > 22) { cutin "ep16_kronecker_granz_heine",2; mes "[Kronecker G. Heine]"; mes "Then, I'll entrust the matter regarding this place to you and Nillem."; @@ -1985,18 +2079,41 @@ prt_lib,80,79,3 script Kronecker G. Heine#ep16_1 HIDDEN_WARP_NPC,{ mes "Please carry out this mission in secret."; close3; } + end; +OnInit: + cloakonnpc strnpcinfo(0); + cloakonnpc "Kronecker G. Heine#ep16_01_lib02"; + cloakonnpc "Nyhill M. Heine#ep16_lib01"; + end; } -prt_lib,81,79,5 script Kronecker G. Heine#ep16_2 HIDDEN_WARP_NPC,{ end; } -prt_lib,83,80,5 script Nyhill M. Heine#ep16_li HIDDEN_WARP_NPC,{ end; } +prt_lib,81,79,5 script Kronecker G. Heine#ep16_01_lib02 4_EP16_GRANZ,{ end; } +prt_lib,83,80,5 script Nyhill M. Heine#ep16_lib01 4_EP16_NIHIL,{ end; } -prt_lib,85,82,5 script Ian Walther#ep16_lib01 HIDDEN_WARP_NPC,{ - if (banquet_main_quest == 9) { +prt_lib,85,82,5 script Ian Walther#ep16_lib01 1_M_JOBTESTER,{ + if (ep16_royal < 9) { + if (strnpcinfo(1) == "Ian Walther") { + npctalk "When you are disconcerted, you cannot find a word to say.", "Ian Walther#ep16_lib01", bc_self; + setpcblock PCBLOCK_NPC, true; + sleep2 3000; + setpcblock PCBLOCK_NPC, false; + npctalk "It describes how I feel now.", "Ian Walther#ep16_lib01", bc_self; + } + else if (strnpcinfo(1) == "Levuiere Wigner") + npctalk "...How will the things turn out from here...", "Levuiere Wigner#ep16_lib01", bc_self; + else + npctalk "Incredible.", "Maximilian Roegenburg#ep16_lib01", bc_self; + end; + } + .@char_id = getcharid(0); + if (ep16_royal == 9) { + .@name$ = strcharinfo(0); + .@account_id = getcharid(3); mes "[Ian Walther]"; mes "We have been waiting for you because..."; mes "We wonder ^4d4dffif you have ever told anyone about the ritual^000000."; next; - npctalk "...Strange, it is blank.", "Kronecker G. Heine#ep16_1", bc_self; + npctalk "...Strange, it is blank.", "Kronecker G. Heine#ep16_01_lib01", bc_self; mes "[Ian Walther]"; mes "Only few people know about the Past Memories of the Royal Family and the Ritual of Blessing..."; next; @@ -2008,8 +2125,8 @@ prt_lib,85,82,5 script Ian Walther#ep16_lib01 HIDDEN_WARP_NPC,{ mes "[Ian Walther]"; mes "Ah, it is...."; mes "That you are the only outsider who know about it, and there has been no precedent..."; - npctalk "It is just circumstantial... Hum...", "Maximilian Roegenburg#e_prt_lib", bc_self; - npctalk ".....", "Nyhill M. Heine#ep16_li", bc_self; + npctalk "It is just circumstantial... Hum...", "Maximilian Roegenburg#ep16_lib01", bc_self; + npctalk ".....", "Nyhill M. Heine#ep16_lib01", bc_self; next; mes "[Nyhill]"; mes "I don't believe so."; @@ -2023,12 +2140,12 @@ prt_lib,85,82,5 script Ian Walther#ep16_lib01 HIDDEN_WARP_NPC,{ mes "I understand how upset you all are due to this sudden incident."; mes "But, please don't suspect an innocent person."; next; - npctalk "Ha... What on earth!", "Kronecker G. Heine#ep16_1", bc_self; + npctalk "Ha... What on earth!", "Kronecker G. Heine#ep16_01_lib01", bc_self; mes "[Nyhill]"; mes "That must be..."; next; - classchange( HIDDEN_WARP_NPC, "Kronecker G. Heine#ep16_1", bc_self ); - classchange( 4_EP16_GRANZ, "Kronecker G. Heine#ep16_2", bc_self ); + cloakonnpc "Kronecker G. Heine#ep16_01_lib01", .@char_id; + cloakoffnpc "Kronecker G. Heine#ep16_01_lib02", .@char_id; mes "[Kronecker]"; mes "How troublesome."; mes "Have you seen this document before?"; @@ -2044,8 +2161,8 @@ prt_lib,85,82,5 script Ian Walther#ep16_lib01 HIDDEN_WARP_NPC,{ mes "[Kronecker]"; mes "However, ^4d4dffTerra Gloria^000000 is gone..."; npctalk "Is Terra Gloria...?", "Ian Walther#ep16_lib01", bc_self; - npctalk "Is it gone? What happened...?", "Levuiere Wigner#ep16_li", bc_self; - npctalk "!!!!!", "Maximilian Roegenburg#e_prt_lib", bc_self; + npctalk "Is it gone? What happened...?", "Levuiere Wigner#ep16_lib01", bc_self; + npctalk "!!!!!", "Maximilian Roegenburg#ep16_lib01", bc_self; next; mes "[Kronecker]"; mes "It disappeared when we were taking care of fallen Peter."; @@ -2061,7 +2178,7 @@ prt_lib,85,82,5 script Ian Walther#ep16_lib01 HIDDEN_WARP_NPC,{ mes "[Nyhill]"; mes "I am sorry to interrupt but I have something to tell you."; next; - npctalk "What are you doing? Watch your manners.", "Kronecker G. Heine#ep16_2", bc_self; + npctalk "What are you doing? Watch your manners.", "Kronecker G. Heine#ep16_01_lib02", bc_self; mes "[Nyhill]"; mes "...It is important. I was about to tell you about the cause of all these."; next; @@ -2069,14 +2186,15 @@ prt_lib,85,82,5 script Ian Walther#ep16_lib01 HIDDEN_WARP_NPC,{ mes "The cause of the incident?"; mes "You mean you know who have told the secret?"; next; - npctalk ".....", "Nyhill M. Heine#ep16_li", bc_self; + npctalk ".....", "Nyhill M. Heine#ep16_lib01", bc_self; mes "[Nyhill]"; mes "The one who told about the ritual..."; + sleep2 1000; mes "Was me."; - sleep2 20; + sleep2 500; npctalk "What?", "Ian Walther#ep16_lib01", bc_self; - npctalk "!!!", "Levuiere Wigner#ep16_li", bc_self; - npctalk "Ha!", "Maximilian Roegenburg#e_prt_lib", bc_self; + npctalk "!!!", "Levuiere Wigner#ep16_lib01", bc_self; + npctalk "Ha!", "Maximilian Roegenburg#ep16_lib01", bc_self; mes "...So..."; next; mes "[Nyhill]"; @@ -2090,7 +2208,7 @@ prt_lib,85,82,5 script Ian Walther#ep16_lib01 HIDDEN_WARP_NPC,{ mes "I believe it was me."; mes "I have this piece of memory talking to someone while I was drunk."; next; - unittalk getcharid(3), "" + strcharinfo(0) + " : (Does it mean...)", bc_self; + unittalk .@account_id, "" + .@name$ + " : (Does it mean...)", bc_self; mes "[Nyhill]"; mes "I believe it is how the story got out."; mes "I am deeply ashamed."; @@ -2099,7 +2217,7 @@ prt_lib,85,82,5 script Ian Walther#ep16_lib01 HIDDEN_WARP_NPC,{ mes "Oh my... Was it the lord of the Heine family..."; mes "Although us, the Walther family did not attend the Royal Assembly, we won't sit back and watch this matter!"; next; - unittalk getcharid(3), "" + strcharinfo(0) + " : (He must have been drugged then.)", bc_self; + unittalk .@account_id, "" + .@name$ + " : (He must have been drugged then.)", bc_self; mes "[Maximilian]"; mes "Ha, I have heard what people say about you. You really don't seem to be able to do anything right."; mes "Why did you do such a thing?"; @@ -2108,7 +2226,7 @@ prt_lib,85,82,5 script Ian Walther#ep16_lib01 HIDDEN_WARP_NPC,{ mes "Did you want to be a king so badly?"; mes "Peter is a member of your own family!"; next; - unittalk getcharid(3), "" + strcharinfo(0) + " : (They were looking for a target...)", bc_self; + unittalk .@account_id, "" + .@name$ + " : (They were looking for a target...)", bc_self; mes "[Nyhill]"; mes "........Phew..."; mes "It is not that..."; @@ -2117,7 +2235,7 @@ prt_lib,85,82,5 script Ian Walther#ep16_lib01 HIDDEN_WARP_NPC,{ mes "Speak for yourself."; mes "I need to know how useless you are."; next; - unittalk getcharid(3), "" + strcharinfo(0) + " : (It was just a misfortune that Nyhill was marked as the target...)", bc_self; + unittalk .@account_id, "" + .@name$ + " : (It was just a misfortune that Nyhill was marked as the target...)", bc_self; mes "[Nyhill]"; mes "I have nothing to say about it."; mes "However..."; @@ -2132,7 +2250,7 @@ prt_lib,85,82,5 script Ian Walther#ep16_lib01 HIDDEN_WARP_NPC,{ mes "[Nyhill]"; mes "I have told you that it isn't true!"; mes ".........."; - unittalk getcharid(3), "" + strcharinfo(0) + " : ...Oh, my...", bc_self; + unittalk .@account_id, "" + .@name$ + " : ...Oh, my...", bc_self; next; select("Wait, may I interrupt?"); mes "[Ian Walther]"; @@ -2151,7 +2269,7 @@ prt_lib,85,82,5 script Ian Walther#ep16_lib01 HIDDEN_WARP_NPC,{ mes "[Maximilian]"; mes "Do you have a proof?"; mes "You didn't just come up with the story to help him out, right?"; - unittalk getcharid(3), "" + strcharinfo(0) + " : (Skia will testify for him since we found him together.)", bc_self; + unittalk .@account_id, "" + .@name$ + " : (Skia will testify for him since we found him together.)", bc_self; next; select("Lady Nerius will testify..."); mes "[Ian Walther]"; @@ -2187,32 +2305,55 @@ prt_lib,85,82,5 script Ian Walther#ep16_lib01 HIDDEN_WARP_NPC,{ mes "[Ian Walther]"; mes "I'll see you later then."; erasequest 7693;// Surprise Attack - banquet_main_quest = 10; + ep16_royal = 10; close2; - setpcblock PCBLOCK_NPC, true; npctalk "Magician! Activate the gate.", "Ian Walther#ep16_lib01", bc_self; + setpcblock PCBLOCK_NPC, true; sleep2 2000; npctalk "Oh, yes. The gate has been activated since others used it earlier.", "Mage Nillem#ep16_warp", bc_self; sleep2 3000; npctalk "Is that so? Well, then. Please excuse me.", "Ian Walther#ep16_lib01", bc_self; - sleep2 4000; - classchange( HIDDEN_WARP_NPC, "Maximilian Roegenburg#e_prt_lib", bc_self ); - classchange( HIDDEN_WARP_NPC, "Levuiere Wigner#ep16_li", bc_self ); - classchange( HIDDEN_WARP_NPC, "Ian Walther#ep16_lib01", bc_self ); - npctalk "Nyhill, come with me.", "Kronecker G. Heine#ep16_2", bc_self; - sleep2 2000; - classchange( HIDDEN_WARP_NPC, "Kronecker G. Heine#ep16_2", bc_self ); - classchange( HIDDEN_WARP_NPC, "Nyhill M. Heine#ep16_li", bc_self ); + sleep2 3000; + cloakonnpc "Ian Walther#ep16_lib01", .@char_id; + sleep2 500; + cloakonnpc "Levuiere Wigner#ep16_lib01", .@char_id; + cloakonnpc "Maximilian Roegenburg#ep16_lib01", .@char_id; + sleep2 500; + npctalk "Nyhill, come with me.", "Kronecker G. Heine#ep16_01_lib02", bc_self; + sleep2 3000; setpcblock PCBLOCK_NPC, false; + cloakonnpc "Kronecker G. Heine#ep16_01_lib02", .@char_id; + cloakonnpc "Nyhill M. Heine#ep16_lib01", .@char_id; + end; } + mes "[Ian Walther]"; + mes "Let me fill you in with the details after proceeding with a discussion with my family."; + close2; + npctalk "Magician! Activate the gate.", "Ian Walther#ep16_lib01", bc_self; + setpcblock PCBLOCK_NPC, true; + sleep2 2000; + npctalk "Oh, yes. The gate has been activated since others used it earlier.", "Mage Nillem#ep16_warp", bc_self; + sleep2 3000; + npctalk "Is that so? Well, then. Please excuse me.", "Ian Walther#ep16_lib01", bc_self; + sleep2 3000; + cloakonnpc "Ian Walther#ep16_lib01", .@char_id; + sleep2 500; + cloakonnpc "Levuiere Wigner#ep16_lib01", .@char_id; + cloakonnpc "Maximilian Roegenburg#ep16_lib01", .@char_id; + sleep2 500; + npctalk "Nyhill, come with me.", "Kronecker G. Heine#ep16_01_lib02", bc_self; + sleep2 3000; + setpcblock PCBLOCK_NPC, false; + cloakonnpc "Kronecker G. Heine#ep16_01_lib02", .@char_id; + cloakonnpc "Nyhill M. Heine#ep16_lib01", .@char_id; end; } -prt_lib,91,78,2 duplicate(Ian Walther#ep16_lib01) Levuiere Wigner#ep16_li HIDDEN_WARP_NPC -prt_lib,91,78,2 duplicate(Ian Walther#ep16_lib01) Maximilian Roegenburg#e_prt_lib HIDDEN_WARP_NPC +prt_lib,88,83,4 duplicate(Ian Walther#ep16_lib01) Levuiere Wigner#ep16_lib01 4_EP16_LOUVIERE +prt_lib,91,78,2 duplicate(Ian Walther#ep16_lib01) Maximilian Roegenburg#ep16_lib01 4_EP16_MAX -prt_lib,94,82,3 script Dimension Warper MkII#e HIDDEN_WARP_NPC,{ - if (banquet_main_quest < 20) { +prt_lib,94,82,3 script Dimension Warper MkII#ep16_lib PORTAL,{ + if (ep16_royal < 18) { mes "[Nillem]"; mes "Wait, it is not ready yet."; mes "Do not touch that."; @@ -2236,11 +2377,14 @@ prt_lib,94,82,3 script Dimension Warper MkII#e HIDDEN_WARP_NPC,{ close2; warp "prt_lib_q",89,43; end; +OnInit: + cloakonnpc "Dimension Warper MkII#ep16_lib"; + end; } // Instance Room of conciousness, daily quest prt_lib_q,91,85,3 script Nillem#ep16_lib_q 4_M_JOB_WIZARD,{ - if (banquet_main_quest == 20) { + if (ep16_royal == 18) { mes "[Nillem]"; mes "Oh, we did it."; mes "I don't know when, but it is the ^4d4dffPast Memories of the Royal Family^000000!"; @@ -2260,7 +2404,7 @@ prt_lib_q,91,85,3 script Nillem#ep16_lib_q 4_M_JOB_WIZARD,{ npctalk "Humph-!", bc_self; specialeffect EF_BEGINSPELL; next; - classchange( 4_ENERGY_RED, "Swaying Space#evt_gate0", bc_self ); + cloakoffnpc "Swaying Space#evt_gate02", getcharid(0); mes "[Nillem]"; mes "Connect the spaces by force!"; mes "Well, let's see what has happened here."; @@ -2268,16 +2412,16 @@ prt_lib_q,91,85,3 script Nillem#ep16_lib_q 4_M_JOB_WIZARD,{ mes "[Nillem]"; mes "Are you ready?"; mes "Talk to me when you are ready-"; - banquet_main_quest = 21; + ep16_royal = 19; close; } - if (banquet_main_quest == 21) { + if (ep16_royal == 19) { + cloakoffnpc "Swaying Space#evt_gate02", getcharid(0); if (getcharid(1) == 0 || is_party_leader() == false) { mes "^4d4dffIt is an event which proceeds as a memorial."; mes "Only the party leader can proceed with a memorial event. Try again after forming a party.^000000"; close; } - classchange( 4_ENERGY_RED, "Swaying Space#evt_gate0", bc_self ); mes "[Nillem]"; mes "Then let's go and take a look what has happened in the Room of Consciousness."; mes "Since I am connecting the twisted time and space once more by force,"; @@ -2303,9 +2447,10 @@ prt_lib_q,91,85,3 script Nillem#ep16_lib_q 4_M_JOB_WIZARD,{ mes "[Nillem]"; mes "Whoa! The gate to the next area has been activated!"; mes "Well, let's get in there!"; + cloakoffnpc "Swaying Space#evt_gate02", getcharid(0); close; } - if (banquet_main_quest == 22) { + if (ep16_royal == 20) { mes "[Nillem]"; mes "You are here now!"; mes "This place has been chaotic since you were gone."; @@ -2339,16 +2484,16 @@ prt_lib_q,91,85,3 script Nillem#ep16_lib_q 4_M_JOB_WIZARD,{ mes "What are you waiting for! Let's go out there!"; erasequest 7701;// Lost Imir Heart setquest 7702;// Prontera at the Time - banquet_main_quest = 23; + ep16_royal = 21; close; } - if (banquet_main_quest == 23) { + if (ep16_royal == 21) { mes "[Nillem]"; mes "Aren't we heading out?"; mes "Let's go!"; close; } - if (banquet_main_quest == 24) { + if (ep16_royal == 22) { mes "[Nillem]"; mes "Whoa, shall we organize the thoughts now?"; next; @@ -2406,15 +2551,15 @@ prt_lib_q,91,85,3 script Nillem#ep16_lib_q 4_M_JOB_WIZARD,{ mes "[Nillem]"; mes "Well, then get ready!"; mes "Three!"; - sleep2 1000; + sleep2 2000; mes "Two!"; sleep2 1000; mes "One!"; - sleep2 1000; + close2; warp "prt_lib",88,80; - close; + end; } - if (banquet_main_quest == 26) { + if (ep16_royal > 23) { mes "[Nillem]"; mes "Hahaha, I like this place now."; mes "My darling, what do you want me to do now?"; @@ -2494,7 +2639,7 @@ prt_lib_q,91,85,3 script Nillem#ep16_lib_q 4_M_JOB_WIZARD,{ mes "[Nillem]"; mes "Whoa! The gate to the next area has been activated!"; mes "Well, let's get in there!"; - classchange( 4_ENERGY_RED, "Swaying Space#evt_gate0", bc_self ); + cloakoffnpc "Swaying Space#evt_gate02", getcharid(0); close; case 2: mes "[Nillem]"; @@ -2531,51 +2676,18 @@ prt_lib_q,91,85,3 script Nillem#ep16_lib_q 4_M_JOB_WIZARD,{ } } -prt_lib_q,88,90,1 script Swaying Space#evt_gate0 HIDDEN_WARP_NPC,{ - if (banquet_main_quest == 21) { - if (getcharid(1) == 0 || is_party_leader() == false) {// solo instance - mes "^4d4dffOnly the party leader can enter MD [Room of Consciousness].^000000"; - close; - } - mes "You can move to the place where the piece of Imir Heart was in the past."; - next; - if (select( "Enter.", "Do not enter." ) == 1) { - if (getcharid(1) == 0 || is_party_leader() == false) { - mes "^4d4dffOnly the party leader can enter MD [Room of Consciousness].^000000"; - close; - } - switch( instance_enter("Room of Consciousness") ) { - case IE_OTHER: - mes "An unknown error occurred."; - close; - case IE_NOINSTANCE: - mes "[Nillem]"; - mes "Hum, is it too difficult to connect it by force?"; - mes "Wait a minute."; - close; - case IE_NOMEMBER: - end; - case IE_OK: - mapannounce strnpcinfo(4), "Party member " + strcharinfo(0) + " of party's " + getpartyname( getcharid(1) ) + " enters Room of Consciousness.", bc_map,0xFF99,FW_NORMAL,12; - //warp "1@mir",101,10; - end; - } - } - mes "[Nillem]"; - mes "Hum, I have just torn and connected these spaces by force."; - mes "Such thing is possible since I am a genius!"; - close; - } - if (banquet_main_quest == 25) { +prt_lib_q,88,90,1 script Swaying Space#evt_gate02 4_ENERGY_RED,{ + if (checkquest(7706,PLAYTIME) > 0 || checkquest(7705,HUNTING) > 1) { mes "The uneasy flow of magical power can be sensed near the twisted space."; mes "The gap connected by force disappeared after serving its duty."; + cloakonnpc "Swaying Space#evt_gate02", getcharid(0); close; } - if (banquet_main_quest == 26) { - if (getcharid(1) == 0 || is_party_leader() == false) {// solo instance - mes "^4d4dffOnly the party leader can enter MD [Room of Consciousness].^000000"; - close; - } + if (getcharid(1) == 0 || is_party_leader() == false) {// solo instance + mes "^4d4dffOnly the party leader can enter MD [Room of Consciousness].^000000"; + close; + } + if ((ep16_royal == 19 && isbegin_quest(7700) == 1) || (ep16_royal > 19 && (checkquest(7705,HUNTING) == 0 || checkquest(7705,HUNTING) == 1))) { mes "You can move to the place where the piece of Ymir Heart was in the past."; next; if (select( "Enter.", "Do not enter." ) == 2) { @@ -2590,32 +2702,31 @@ prt_lib_q,88,90,1 script Swaying Space#evt_gate0 HIDDEN_WARP_NPC,{ } switch( instance_enter("Room of Consciousness") ) { case IE_OTHER: - mes "An unknown error occurred."; + mes "[Nillem]"; + mes "Oh, well, the movement of magic seems uneasy."; + mes "Hum, shall we try again later?"; close; - case IE_NOINSTANCE:// todo + case IE_NOINSTANCE: + mes "[Nillem]"; + mes "Hum, is it too difficult to connect it by force?"; + mes "Wait a minute."; close; case IE_NOMEMBER: - end; + mes "^4d4dffThis is an event proceeding through memorial."; + mes "Only the party leader can enter.^000000"; + close; case IE_OK: mapannounce strnpcinfo(4), "Party member " + strcharinfo(0) + " of party's " + getpartyname( getcharid(1) ) + " enters Room of Consciousness.", bc_map,0xFF99,FW_NORMAL,12; //warp "1@mir",101,10; end; } } -} - -prt_lib_q,9,25,0 script prt_cas_27#prt_cas_28 WARPNPC,1,1,{ -OnTouch: - if (banquet_main_quest < 23) { - mes "There are more to find out."; - mes "Go back to Nillem."; - close; - } - warp "prt_q",155,354; + end; +OnInit: + cloakonnpc strnpcinfo(0); end; } - prt_lib_q,110,58,4 script Document#EP161DBOOK CLEAR_NPC,{ mes "More than a half of this document is edited in black."; next; @@ -2690,64 +2801,55 @@ prt_lib_q,110,58,4 script Document#EP161DBOOK CLEAR_NPC,{ // Left side -prt_cas,213,177,5 script Royal Chef#ep16_1 1_ETC_01,3,3,{ - if (banquet_main_quest >= 2) { - if (banquet_quest_cooking == 0) { - mes "[Royal Chef]"; - mes "Hey, you! I have been looking for you!"; - mes "What are you doing here?"; - emotion ET_SURPRISE; - next; - mes "[Royal Chef]"; - mes "The Head Chef has been waiting for you. He is enraged now!"; - mes "Go to the kitchen now!"; - banquet_quest_cooking = 1; - setquest 11394;// Call of the Royal Head Chef - close; - } - if (banquet_quest_cooking == 1) { - mes "[Royal Chef]"; - mes "The Head Chef has been waiting for you. He is enraged now!"; - mes "Go to the kitchen now!"; - close; - } - if (banquet_quest_cooking == 15) { - mes "[Royal Chef]"; - mes "I am living in a whirl of business!"; - mes "I have been seeing too many people these days that I am even confused about the familiar faces now."; - next; - mes "[Royal Chef]"; - mes "I am sorry about the misunderstanding."; - mes "I have been badgered by the Head Chef too much... Haha..."; - emotion ET_PROFUSELY_SWEAT; - close; - } +prt_cas,213,177,5 script Royal Chef#ep16_1 1_ETC_01,4,4,{ + if (ep16_royal >= 2) { + if (ep16_cookbs == 0) + callsub S_Text; + } + if (ep16_cookbs == 1) { + mes "[Royal Chef]"; + mes "The Head Chef has been waiting for you. He is enraged now!"; + mes "Go to the kitchen now!"; + close; + } + if (ep16_cookbs > 22) { + mes "[Royal Chef]"; + mes "I am living in a whirl of business!"; + mes "I have been seeing too many people these days that I am even confused about the familiar faces now."; + next; + mes "[Royal Chef]"; + mes "I am sorry about the misunderstanding."; + mes "I have been badgered by the Head Chef too much... Haha..."; + emotion ET_PROFUSELY_SWEAT; + close; } mes "[Royal Chef]"; mes "I am living in a whirl of business!"; mes "I have been seeing too many people these days that I am even confused about the familiar faces now."; close; +S_Text: + mes "[Royal Chef]"; + mes "Hey, you! I have been looking for you!"; + mes "What are you doing here?"; + emotion ET_SURPRISE; + next; + mes "[Royal Chef]"; + mes "The Head Chef has been waiting for you. He is enraged now!"; + mes "Go to the kitchen now!"; + ep16_cookbs = 1; + setquest 11394;// Call of the Royal Head Chef + close; + OnTouch: - if (banquet_quest_cooking == 0 && banquet_main_quest >= 2) { - mes "[Royal Chef]"; - mes "Hey, you! I have been looking for you!"; - mes "What are you doing here?"; - emotion ET_SURPRISE; - next; - mes "[Royal Chef]"; - mes "The Head Chef has been waiting for you. He is enraged now!"; - mes "Go to the kitchen now!"; - banquet_quest_cooking = 1; - setquest 11394;// Call of the Royal Head Chef - close; - } + if (ep16_cookbs == 0 && ep16_royal >= 2) + callsub S_Text; end; } // Kitchen prt_cas,309,200,5 script Royal Head Chef#ep16_1 4_EP16_COOK,{ - if (banquet_quest_cooking == 0) { + if (ep16_royal < 2 || ep16_cookbs == 0) { mes "[Head Chef]"; mes "Argh!"; mes "When will this special assistant chef arrive here?"; @@ -2755,7 +2857,7 @@ prt_cas,309,200,5 script Royal Head Chef#ep16_1 4_EP16_COOK,{ cutin "ep16cook_king_1",2; close3; } - if (banquet_quest_cooking == 1) { + if (ep16_cookbs == 1) { mes "[Head Chef]"; mes "Argh!"; mes "When will this special's assistant chef arrive here?"; @@ -2826,10 +2928,10 @@ prt_cas,309,200,5 script Royal Head Chef#ep16_1 4_EP16_COOK,{ mes "Hurry up!"; erasequest 11394;// Call of the Royal Head Chef setquest 11395;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 2; + ep16_cookbs = 2; close3; } - if (banquet_quest_cooking == 2 || banquet_quest_cooking == 3) { + if (ep16_cookbs < 12) { mes "[Head Chef]"; mes "Isn't the sauce ready?"; mes "Go get the sauce from Oriental Oyster the sauce master!"; @@ -2841,7 +2943,7 @@ prt_cas,309,200,5 script Royal Head Chef#ep16_1 4_EP16_COOK,{ mes "Hurry up!"; close3; } - if (banquet_quest_cooking == 4) { + if (ep16_cookbs == 12) { mes "[Head Chef]"; mes "Oh!"; mes "This exquisite taste made by the master!"; @@ -2853,17 +2955,17 @@ prt_cas,309,200,5 script Royal Head Chef#ep16_1 4_EP16_COOK,{ mes "Go to the empty spot and get prepared."; erasequest 11397;// Why Should I Prepare for the Banquets? setquest 11398;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 5; + ep16_cookbs = 13; close3; } - if (banquet_quest_cooking == 5) { + if (ep16_cookbs == 13) { mes "[Head Chef]"; mes "Let's start cooking now!"; mes "Go to the empty spot and get prepared."; cutin "ep16cook_king_1",2; close3; } - if (banquet_quest_cooking == 6) { + if (ep16_cookbs == 14) { mes "[Head Chef]"; mes "Now, you can bring this to the kitchen. That is the only thing left to do!"; cutin "ep16cook_king_1",2; @@ -2876,7 +2978,7 @@ prt_cas,309,200,5 script Royal Head Chef#ep16_1 4_EP16_COOK,{ mes "A Royal Chef must be able to fill the empty plates as fast as possible!"; close3; } - if (banquet_quest_cooking >= 7 && banquet_quest_cooking <= 13) { + if (ep16_cookbs < 22) { mes "[Head Chef]"; mes "Arghhhh!"; mes "The mind for cooking!"; @@ -2888,7 +2990,12 @@ prt_cas,309,200,5 script Royal Head Chef#ep16_1 4_EP16_COOK,{ mes "I'll make the best dish!"; close3; } - if (banquet_quest_cooking == 14) { + if (ep16_cookbs == 22) { + if (checkweight(1119,3) == 0) { + mes "- You have too many items in possession."; + mes "Please organize your inventory and try again. -"; + close; + } mes "[Head Chef]"; mes "Arghhhhh!"; mes "I am sorry!"; @@ -2910,9 +3017,9 @@ prt_cas,309,200,5 script Royal Head Chef#ep16_1 4_EP16_COOK,{ mes "I hope to be able to cook with you again!"; cutin "ep16cook_king_2",2; getexp 700000,700000; - getitem 6919,10;// Honor Token + getitem 6919,10;// TokenOfHonor completequest 11420;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 15; + ep16_cookbs = 23; close3; } // daily @@ -2955,20 +3062,21 @@ prt_cas,309,200,5 script Royal Head Chef#ep16_1 4_EP16_COOK,{ } } -prt_cas,313,199,0 script #ep16_1 HIDDEN_WARP_NPC,1,1,{ +prt_cas,313,199,0 script #ep16_1 HIDDEN_WARP_NPC,2,2,{ + end; OnTouch: - if (banquet_quest_cooking < 5) { + if (ep16_royal < 2) { mes "[Head Chef]"; mes "You there!"; mes "You are getting in the way!"; cutin "ep16cook_king_1",2; close3; } - if (banquet_quest_cooking == 5) { + if (ep16_cookbs == 13) { callsub S_Dish; erasequest 11398;// Why Should I Prepare for the Banquets? setquest 11399;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 6; + ep16_cookbs = 14; close3; } if (isbegin_quest(11423) == 1) { @@ -3031,19 +3139,13 @@ S_Dish: } prt_cas,319,211,3 script Royal Sauce Master#ep16 4_M_ALCHE_B,{ - if (banquet_main_quest < 2) { + if (ep16_royal < 2) { mes "[Oriental Oyster]"; mes "Hum... How savory!"; mes "The perfect combinations is just divine..."; close; } - if (banquet_quest_cooking < 2) { - mes "[Oriental Oyster]"; - mes "I hope you don't waste your talent."; - mes "Why don't you become a master sauce maker?"; - close; - } - if (banquet_quest_cooking == 2) { + if (ep16_cookbs == 2) { mes "[Oriental Oyster]"; mes "What?"; mes "The sauce ran out?"; @@ -3064,14 +3166,43 @@ prt_cas,319,211,3 script Royal Sauce Master#ep16 4_M_ALCHE_B,{ mes "[Oriental Oyster]"; mes "I cannot stop stirring the sauce. You can bring me the ingredient as I say the name."; next; + mes "[Oriental Oyster]"; + ep16_cookbs = 4; erasequest 11395;// Why Should I Prepare for the Banquets? setquest 11396;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 3; - callsub S_Result,1; + callsub S_Sauce; + } + if (ep16_cookbs == 3 || ep16_cookbs == 25) { + mes "[Oriental Oyster]"; + mes "Oh my..."; + mes "The ingredient is like the life for a sauce."; + mes "There shouldn't be a mistake."; + next; + mes "[Oriental Oyster]"; + mes "Then, let's start over from the beginning!"; + next; + ep16_cookbs++; + callsub S_Sauce; + } + if (ep16_cookbs == 4 || ep16_cookbs == 6 || ep16_cookbs == 8 || ep16_cookbs == 10 || ep16_cookbs == 26 || ep16_cookbs == 28 || ep16_cookbs == 30 || ep16_cookbs == 32) { + mes "[Oriental Oyster]"; + mes "Bring me the ingredient!"; + mes "The Head Chef is looking at me with the set of murderous eyes!"; close; } - if (banquet_quest_cooking == 3) { - callsub S_Result; + if (ep16_cookbs == 5 || ep16_cookbs == 7 || ep16_cookbs == 9 || ep16_cookbs == 25 || ep16_cookbs == 27 || ep16_cookbs == 29 || ep16_cookbs == 31) { + mes "[Oriental Oyster]"; + mes "Hum, very good!"; + next; + ep16_cookbs++; + callsub S_Sauce; + } + if (ep16_cookbs == 11 || ep16_cookbs == 33) { + if (ep16_cookbs == 33 && checkweight(1119,3) == 0) { + mes "- You have too many items in possession."; + mes "Please organize your inventory and try again. -"; + close; + } mes "[Oriental Oyster]"; mes "Oh!"; mes "Very good!"; @@ -3081,12 +3212,20 @@ prt_cas,319,211,3 script Royal Sauce Master#ep16 4_M_ALCHE_B,{ mes "[Oriental Oyster]"; mes "You seem to be talented in sauce making."; mes "Why don't you become a master sauce maker?"; - erasequest 11396;// Why Should I Prepare for the Banquets? - setquest 11397;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 4; + if (ep16_cookbs == 11) { + erasequest 11396;// Why Should I Prepare for the Banquets? + setquest 11397;// Why Should I Prepare for the Banquets? + ep16_cookbs = 12; + } + else { + erasequest 11421;// Banquet: Unexpected Sauce + setquest 11422;// Complete Today's Sauce + getitem 6919,4;// TokenOfHonor + ep16_cookbs = 23; + } close; } - if (banquet_quest_cooking == 4) { + if (ep16_cookbs == 12) { mes "[Oriental Oyster]"; mes "Oh!"; mes "Very good!"; @@ -3097,17 +3236,9 @@ prt_cas,319,211,3 script Royal Sauce Master#ep16 4_M_ALCHE_B,{ mes "Why don't you become a master sauce maker?"; close; } - if (banquet_quest_cooking < 14) { - mes "[Oriental Oyster]"; - mes "I hope you don't waste your talent."; - mes "Why don't you become a master sauce maker?"; - close; - } - - // daily - switch( checkquest(11422,PLAYTIME) ) { - case -1: - if (isbegin_quest(11421) == 0) { + if (ep16_cookbs == 23) { + switch( checkquest(11422,PLAYTIME) ) {// daily + case -1: mes "[Oriental Oyster]"; mes "I knew you would come again!"; mes "That is the magic of the sauce!"; @@ -3115,81 +3246,34 @@ prt_cas,319,211,3 script Royal Sauce Master#ep16 4_M_ALCHE_B,{ mes "[Oriental Oyster]"; mes "How about making a fabulous sauce today?"; next; + ep16_cookbs = 26; setquest 11421;// Banquet: Unexpected Sauce - callsub S_Result,1; - close; - } - callsub S_Result; - mes "[Oriental Oyster]"; - mes "Oh!"; - mes "Very good!"; - mes "Thanks to you, I could make the perfect sauce!"; - mes "Bring it to the Head Chef now!"; - next; - mes "[Oriental Oyster]"; - mes "You seem to be talented in sauce making."; - mes "Why don't you become a master sauce maker?"; - erasequest 11421;// Banquet: Unexpected Sauce - setquest 11422;// Complete Today's Sauce - getitem 6919,4;// Honor Token - close; - case 0: - case 1: - mes "[Oriental Oyster]"; - mes "Oh my!"; - mes "The palate is very important for a chef."; - mes "When you are tired the palate doesn't work properly."; - next; - mes "[Oriental Oyster]"; - mes "You seem very tired now."; - next; - mes "[Oriental Oyster]"; - mes "If you want to make a perfect sauce, take some rest."; - close; - case 2: - mes "[Oriental Oyster]"; - mes "Oh! You are here!"; - mes "Did you take a rest? How about making the sauce again?"; - erasequest 11422;// Complete Today's Sauce - close; - } - -S_Result: - if (getarg(0,0) == 0) { - for ( .@quest_id = 11428; .@quest_id < 11432; .@quest_id++ ) { - switch( isbegin_quest(.@quest_id) ) { - case 0: - continue; - case 1: - mes "[Oriental Oyster]"; - mes "Bring me the ingredient!"; - mes "The Head Chef is looking at me with the set of murderous eyes!"; - close; - case 2: - break; - } - break; - } - if (.@quest_id == 11432) { + callsub S_Sauce; + case 0: + case 1: mes "[Oriental Oyster]"; - mes "Oh my..."; - mes "The ingredient is like the life for a sauce."; - mes "There shouldn't be a mistake."; + mes "Oh my!"; + mes "The palate is very important for a chef."; + mes "When you are tired the palate doesn't work properly."; next; mes "[Oriental Oyster]"; - mes "Then, let's start over from the beginning!"; - banquet_quest_sauce = 0; - } - else { - erasequest .@quest_id; - if (rand(100) < 30) // finished - return; + mes "You seem very tired now."; + next; mes "[Oriental Oyster]"; - mes "Hum, very good!"; + mes "If you want to make a perfect sauce, take some rest."; + close; + case 2: + mes "[Oriental Oyster]"; + mes "Oh! You are here!"; + mes "Did you take a rest? How about making the sauce again?"; + erasequest 11422;// Complete Today's Sauce + close; } - next; } - callsub S_Sauce; + mes "[Oriental Oyster]"; + mes "I hope you don't waste your talent."; + mes "Why don't you become a master sauce maker?"; + close; S_Sauce: mes "[Oriental Oyster]"; @@ -3215,12 +3299,18 @@ S_Sauce: } function script check_sauce { - .@right_quest_id = getarg(0); - for ( .@quest_id = 11428; .@quest_id < 11432 && isbegin_quest(.@quest_id) == 0; .@quest_id++ ) - continue; - if (.@quest_id == 11432) - return; - if (.@quest_id != .@right_quest_id) { + .@quest_id = getarg(0); + .@main_quest = (ep16_cookbs == 4 || ep16_cookbs == 6 || ep16_cookbs == 8 || ep16_cookbs == 10); + if (.@main_quest || ep16_cookbs == 26 || ep16_cookbs == 28 || ep16_cookbs == 30 || ep16_cookbs == 32) { + if (isbegin_quest(.@quest_id) > 0) { + mes "[Oriental Oyster]"; + mes "Yes! That's it!"; + mes "Bring it to me!"; + emotion ET_SURPRISE, getnpcid(0, "Royal Sauce Master#ep16"); + ep16_cookbs++; + erasequest .@quest_id; + close; + } mes "[Oriental Oyster]"; mes "Argh!"; mes "The sauce is ruined!"; @@ -3228,14 +3318,27 @@ function script check_sauce { mes "[Oriental Oyster]"; mes "We cannot use this sauce now!"; mes "We should start again from the beginning!"; - erasequest .@quest_id; + if (.@main_quest) + ep16_cookbs = 3; + else + ep16_cookbs = 25; + if (isbegin_quest(11428) > 0) + erasequest 11428; + if (isbegin_quest(11429) > 0) + erasequest 11429; + if (isbegin_quest(11430) > 0) + erasequest 11430; + if (isbegin_quest(11431) > 0) + erasequest 11431; close; } - mes "[Oriental Oyster]"; - mes "Yes! That's it!"; - mes "Bring it to me!"; - emotion ET_SURPRISE, getnpcid(0, "Royal Sauce Master#ep16"); - completequest .@quest_id; + return; +} + +prt_cas,303,216,5 script Muka Juice#ep16_1 4_ENERGY_BLUE,{ + check_sauce(11428); + mes "The juice made of fresh Muka"; + mes "It is refreshing."; close; } @@ -3246,13 +3349,6 @@ prt_cas,307,196,5 script Poring Jelly#ep16_1 4_ENERGY_RED,{ close; } -prt_cas,330,211,5 script Giantaurus Butter#ep16_ 4_ENERGY_YELLOW,{ - check_sauce(11431); - mes "Giantaurus Milk Butter"; - mes "It tastes surprisingly soft."; - close; -} - prt_cas,338,206,5 script Shining Plant#ep16_1 4_ENERGY_WHITE,{ check_sauce(11430); mes "The powder made of Shining Plant"; @@ -3260,31 +3356,15 @@ prt_cas,338,206,5 script Shining Plant#ep16_1 4_ENERGY_WHITE,{ close; } -prt_cas,303,216,5 script Muka Juice#ep16_1 4_ENERGY_BLUE,{ - check_sauce(11428); - mes "The juice made of fresh Muka"; - mes "It is refreshing."; +prt_cas,330,211,5 script Giantaurus Butter#ep16_ 4_ENERGY_YELLOW,{ + check_sauce(11431); + mes "Giantaurus Milk Butter"; + mes "It tastes surprisingly soft."; close; } prt_cas,302,205,5 script Dishwasher#ep16_1 4_M_ALCHE_D,{ - if (banquet_quest_cooking < 13) { - mes "[Dishwasher]"; - mes "Argh!"; - npctalk "Argh!", "Dishwasher#ep16_1", bc_self; - next; - mes "[Dishwasher]"; - mes "The housewife's eczema is back in action in my right hand!"; - npctalk "The housewife's eczema is back in action in my right hand!", "Dishwasher#ep16_1", bc_self; - next; - mes "[Dishwasher]"; - mes "Hode Cream!"; - mes "Please give me the Hode Cream!"; - mes "Arghhhhh!"; - npctalk "Please give me the Hode Cream!", "Dishwasher#ep16_1", bc_self; - close; - } - if (banquet_quest_cooking == 13) { + if (ep16_cookbs == 21) { if (countitem(6935) < 15) { mes "[Dishwasher]"; mes "I wash the dishes again... Again... Again..."; @@ -3313,77 +3393,97 @@ prt_cas,302,205,5 script Dishwasher#ep16_1 4_M_ALCHE_D,{ mes "[Dishwasher]"; mes "Oh... The Head Chef has been looking for you."; mes "Is there any problem?"; - delitem 6935,15;// High-Class Dish + delitem 6935,15;// Luxurious_Dish erasequest 11419;// Why Should I Prepare for the Banquets? setquest 11420;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 14; + ep16_cookbs = 22; close; } - if (banquet_quest_cooking == 14) { + if (ep16_cookbs == 22) { mes "[Dishwasher]"; mes "Oh... The Head Chef has been looking for you."; mes "Is there any problem?"; close; } - - switch( checkquest(11427,PLAYTIME) ) { - case -1: - if (isbegin_quest(11426) == 0) { + if (ep16_cookbs > 22) { + switch( checkquest(11427,PLAYTIME) ) { + case -1: + if (isbegin_quest(11426) == 0) { + mes "[Dishwasher]"; + mes "Oh! Are you here to help me again?"; + mes "Isn't a clean dish makes you feel clean?"; + next; + mes "[Dishwasher]"; + mes "Well, I guess it is just normal to feel that way!"; + mes "With that spirit! Please bring me 15 more dishes to wash!"; + next; + mes "[Dishwasher]"; + mes "Please be careful with them, since those are some precious dishes!"; + setquest 11426;// Banquet: Washing 15 Dishes + close; + } + if (countitem(6935) < 15) { + mes "[Dishwasher]"; + mes "I wash the dishes again... Again... Again..."; + mes "And it never ends!"; + next; + mes "[Dishwasher]"; + mes "However, this is the fate of a Dishwasher!"; + next; + mes "[Dishwasher]"; + mes "It is a fate!"; + mes "I have to endure it!"; + next; + mes "[Dishwasher]"; + mes "Please bring me!"; + mes "Please bring me about 15 more dishes to wash!"; + next; + mes "[Dishwasher]"; + mes "I'll get over it!"; + mes "My fate!"; + close; + } + if (checkweight(1119,3) == 0) { + mes "- You have too many items in possession."; + mes "Please organize your inventory and try again. -"; + close; + } mes "[Dishwasher]"; - mes "Oh! Are you here to help me again?"; - mes "Isn't a clean dish makes you feel clean?"; - next; + mes "Hahaha... It is a new plate."; + mes "I'll make it squeaky clean like this!"; + delitem 6935,15;// Luxurious_Dish + erasequest 11426;// Banquet: Washing 15 Dishes + setquest 11427;// Complete Today's Dish Collecting + getitem 6919,4;// TokenOfHonor + close; + case 0: + case 1: mes "[Dishwasher]"; - mes "Well, I guess it is just normal to feel that way!"; - mes "With that spirit! Please bring me 15 more dishes to wash!"; - next; + mes "Don't push yourself too hard."; + mes "Why don't you go take a rest and come back tomorrow?"; + close; + case 2: mes "[Dishwasher]"; - mes "Please be careful with them, since those are some precious dishes!"; - setquest 11426;// Banquet: Washing 15 Dishes + mes "Thank you for helping me last time!"; + mes "It is very important to take enough rest after work."; + erasequest 11427;// Complete Today's Dish Collecting close; } - if (countitem(6935) < 15) { - mes "[Dishwasher]"; - mes "I wash the dishes again... Again... Again..."; - mes "And it never ends!"; - next; - mes "[Dishwasher]"; - mes "However, this is the fate of a Dishwasher!"; - next; - mes "[Dishwasher]"; - mes "It is a fate!"; - mes "I have to endure it!"; - next; - mes "[Dishwasher]"; - mes "Please bring me!"; - mes "Please bring me about 15 more dishes to wash!"; - next; - mes "[Dishwasher]"; - mes "I'll get over it!"; - mes "My fate!"; - close; - } - mes "[Dishwasher]"; - mes "Hahaha... It is a new plate."; - mes "I'll make it squeaky clean like this!"; - delitem 6935,15;// High-Class Dish - erasequest 11426;// Banquet: Washing 15 Dishes - setquest 11427;// Complete Today's Dish Collecting - getitem 6919,4;// Honor Token - close; - case 0: - case 1: - mes "[Dishwasher]"; - mes "Don't push yourself too hard."; - mes "Why don't you go take a rest and come back tomorrow?"; - close; - case 2: - mes "[Dishwasher]"; - mes "Thank you for helping me last time!"; - mes "It is very important to take enough rest after work."; - erasequest 11427;// Complete Today's Dish Collecting - close; } + mes "[Dishwasher]"; + mes "Argh!"; + npctalk "Argh!", "Dishwasher#ep16_1", bc_self; + next; + mes "[Dishwasher]"; + mes "The housewife's eczema is back in action in my right hand!"; + npctalk "The housewife's eczema is back in action in my right hand!", "Dishwasher#ep16_1", bc_self; + next; + mes "[Dishwasher]"; + mes "Hode Cream!"; + mes "Please give me the Hode Cream!"; + mes "Arghhhhh!"; + npctalk "Please give me the Hode Cream!", "Dishwasher#ep16_1", bc_self; + close; } prt_cas,315,204,1 script Chef#ep16_1 4_COOK,{ @@ -3426,7 +3526,7 @@ prt_cas,313,194,3 script Chef#ep16_6 4_COOK,{ // Hall prt_cas,82,268,5 script Mark Ishar#ep16_1 4_EP16_MARK,{ - if (banquet_quest_cooking == 10) { + if (ep16_cookbs == 18) { mes "[Mark]"; mes "Hello." + strcharinfo(0) + "."; mes "Are you having a good time?"; @@ -3453,10 +3553,10 @@ prt_cas,82,268,5 script Mark Ishar#ep16_1 4_EP16_MARK,{ cutin "acact_03",2; erasequest 11416;// Why Should I Prepare for the Banquets? setquest 11417;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 11; + ep16_cookbs = 19; close3; } - if (banquet_quest_cooking == 11) { + if (ep16_cookbs == 19) { mes "[Mark]"; mes "Oh!"; mes "He..."; @@ -3473,7 +3573,7 @@ prt_cas,82,268,5 script Mark Ishar#ep16_1 4_EP16_MARK,{ cutin "acact_03",2; close3; } - if (banquet_quest_cooking == 12) { + if (ep16_cookbs == 20) { mes "[Mark]"; mes "" + strcharinfo(0) + ", please tell Tamarin that."; mes "I hope to be able to get away from the preparation duty for the banquet."; @@ -3491,14 +3591,14 @@ prt_cas,82,268,5 script Mark Ishar#ep16_1 4_EP16_MARK,{ } prt_cas,83,270,3 script Alice Ishar#ep16_1 4_F_ACOLYTE,{ - if (banquet_quest_cooking < 11) { + if (ep16_cookbs < 19) { mes "[Alice]"; mes "Mark! You shouldn't put it there. Put it here..."; mes "Since we are working at the palace, we shouldn't overlook even the tiniest thing!"; cutin "acact_01",2; close3; } - if (banquet_quest_cooking == 11) { + if (ep16_cookbs == 19) { mes "[Alice]"; mes "Hum... I know you are busy, but you shouldn't just make people work for no good reason since it is the business of the palace."; cutin "acact_03",2; @@ -3509,10 +3609,10 @@ prt_cas,83,270,3 script Alice Ishar#ep16_1 4_F_ACOLYTE,{ cutin "acact_01",2; erasequest 11417;// Why Should I Prepare for the Banquets? setquest 11418;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 12; + ep16_cookbs = 20; close3; } - if (banquet_quest_cooking == 12) { + if (ep16_cookbs == 20) { mes "[Alice]"; mes "I'll tell them about it. Would you let Tamarin know?"; mes "The preparation for the banquet doesn't end until the banquet is over."; @@ -3528,13 +3628,13 @@ prt_cas,83,270,3 script Alice Ishar#ep16_1 4_F_ACOLYTE,{ } prt_cas,111,234,3 script Magi Steen#ep16_1 4_F_PINKWOMAN,{ - if (banquet_quest_cooking <= 8) { + if (ep16_cookbs < 17) { mes "[Magi]"; mes "He... Hello..."; cutin "bu_maggi2",2; close3; } - if (banquet_quest_cooking == 9) { + if (ep16_cookbs == 17) { mes "[Magi]"; mes "Ah..."; mes "Mark must be..."; @@ -3552,10 +3652,10 @@ prt_cas,111,234,3 script Magi Steen#ep16_1 4_F_PINKWOMAN,{ cutin "bu_maggi2",2; erasequest 11415;// Why Should I Prepare for the Banquets? setquest 11416;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 10; + ep16_cookbs = 18; close3; } - if (banquet_quest_cooking == 10) { + if (ep16_cookbs == 18) { mes "[Magi]"; mes "Ah..."; mes "Mark must be..."; @@ -3574,7 +3674,7 @@ prt_cas,111,234,3 script Magi Steen#ep16_1 4_F_PINKWOMAN,{ } prt_cas,111,235,3 script Dyu Rianne#ep16_1 4_M_REDMAN,{ - if (banquet_quest_cooking < 8) { + if (ep16_cookbs < 16) { mes "[Dyu]"; mes "Yo! Who's this!"; mes "" + strcharinfo(0) + "!"; @@ -3590,7 +3690,7 @@ prt_cas,111,235,3 script Dyu Rianne#ep16_1 4_M_REDMAN,{ cutin "bu_du2",2; close3; } - if (banquet_quest_cooking == 8) { + if (ep16_cookbs == 16) { mes "[Dyu]"; mes "Yo! Who's this!"; mes "" + strcharinfo(0) + "!"; @@ -3631,10 +3731,10 @@ prt_cas,111,235,3 script Dyu Rianne#ep16_1 4_M_REDMAN,{ mes "Magi, where did we see Mark?"; erasequest 11414;// Why Should I Prepare for the Banquets? setquest 11415;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 9; + ep16_cookbs = 17; close3; } - if (banquet_quest_cooking == 9) { + if (ep16_cookbs == 17) { mes "[Dyu]"; mes "Since Mark is working here as well. Why don't we ask him?"; cutin "bu_du3",2; @@ -3653,7 +3753,7 @@ prt_cas,111,235,3 script Dyu Rianne#ep16_1 4_M_REDMAN,{ mes "Magi, where did we see Mark?"; close3; } - if (banquet_quest_cooking == 10) { + if (ep16_cookbs == 18) { mes "[Dyu]"; mes "Did you hear?"; mes "Mark is on the stairs. Go up there and see him."; @@ -3669,7 +3769,7 @@ prt_cas,111,235,3 script Dyu Rianne#ep16_1 4_M_REDMAN,{ // Dinner room prt_cas,361,142,5 script Tamarin#ep16_1 4_EP16_TAMARIN,{ - if (banquet_quest_cooking < 7) { + if (ep16_cookbs < 15) { mes "[Tamarin]"; mes "Haaaaaaa!"; mes "What is going on..."; @@ -3678,7 +3778,7 @@ prt_cas,361,142,5 script Tamarin#ep16_1 4_EP16_TAMARIN,{ cutin "tama_cook_4",2; close3; } - if (banquet_quest_cooking == 7) { + if (ep16_cookbs == 15) { mes "[Tamarin]"; mes "Haaaaaaa!"; mes "What is going on..."; @@ -3725,10 +3825,10 @@ prt_cas,361,142,5 script Tamarin#ep16_1 4_EP16_TAMARIN,{ cutin "tama_cook_3",2; erasequest 11413;// Why Should I Prepare for the Banquets? setquest 11414;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 8; + ep16_cookbs = 16; close3; } - if (banquet_quest_cooking >= 8 && banquet_quest_cooking <= 11) { + if (ep16_cookbs > 15 && ep16_cookbs < 20) { mes "[Tamarin]"; mes "I think it is too late for me..."; mes "Hahahaha..."; @@ -3740,7 +3840,7 @@ prt_cas,361,142,5 script Tamarin#ep16_1 4_EP16_TAMARIN,{ cutin "tama_cook_3",2; close3; } - if (banquet_quest_cooking == 12) { + if (ep16_cookbs == 20) { mes "[Tamarin]"; mes "...Phew, that is my sister."; mes "Well then." + strcharinfo(0) + ", why don't you come with me to enjoy the banquet..."; @@ -3757,10 +3857,10 @@ prt_cas,361,142,5 script Tamarin#ep16_1 4_EP16_TAMARIN,{ cutin "tama_cook_3",2; erasequest 11418;// Why Should I Prepare for the Banquets? setquest 11419;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 13; + ep16_cookbs = 21; close3; } - if (banquet_quest_cooking == 13) { + if (ep16_cookbs == 21) { mes "[Tamarin]"; mes "I guess we should finish what we have been doing!"; cutin "tama_cook_1",2; @@ -3771,33 +3871,35 @@ prt_cas,361,142,5 script Tamarin#ep16_1 4_EP16_TAMARIN,{ cutin "tama_cook_3",2; close3; } - if (banquet_quest_cooking == 14) { + if (ep16_cookbs == 22) { mes "[Tamarin]"; mes "Hum... What am I supposed to do next..."; cutin "tama_cook_1",2; close3; } - if (banquet_quest_cooking == 15) { - mes "[Tamarin]"; - mes "Whoa..." + strcharinfo(0) + ", thank you."; - mes "Now I have some room to breathe..."; - cutin "tama_cook_3",2; - next; - mes "[Tamarin]"; - mes "Oh... It was just impossible for me to quit..."; - mes "When I was about to leave after reporting to the Head Chef, I was caught by Mark' brother."; - cutin "tama_cook_1",2; - next; - mes "[Tamarin]"; - mes "I guess it would make my life much easier if I just give up."; - emotion ET_HNG; - cutin "tama_cook_3",2; - close3; - } + mes "[Tamarin]"; + mes "Whoa..." + strcharinfo(0) + ", thank you."; + mes "Now I have some room to breathe..."; + cutin "tama_cook_3",2; + next; + mes "[Tamarin]"; + mes "Oh... It was just impossible for me to quit..."; + mes "When I was about to leave after reporting to the Head Chef, I was caught by Mark' brother."; + cutin "tama_cook_1",2; + next; + mes "[Tamarin]"; + mes "I guess it would make my life much easier if I just give up."; + emotion ET_HNG; + cutin "tama_cook_3",2; + close3; } prt_cas,358,124,0 script Grilled Griffon#ep16_1 4_EP16_FOOD,{ - if (banquet_quest_cooking == 6) { + if (ep16_royal < 2) { + mes "A tasty-looking Grilled Griffon."; + close; + } + if (ep16_cookbs == 14) { mes "Place the dish carefully on the surface."; next; mes "[Tamarin]"; @@ -3807,30 +3909,40 @@ prt_cas,358,124,0 script Grilled Griffon#ep16_1 4_EP16_FOOD,{ cutin "tama_cook_4",2; erasequest 11399;// Why Should I Prepare for the Banquets? setquest 11413;// Why Should I Prepare for the Banquets? - banquet_quest_cooking = 7; + ep16_cookbs = 15; close3; } if (isbegin_quest(11424) == 1) { + if (checkweight(1119,3) == 0) { + mes "- You have too many items in possession."; + mes "Please organize your inventory and try again. -"; + close; + } mes "Place the dish carefully on the surface."; erasequest 11424;// Banquet: Griffin Barbecue setquest 11425;// Complete Today's Grilled Griffin - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor } mes "A tasty-looking Grilled Griffon."; close; } -prt_cas_q,30,128,0 script #ep16_evt_neriusroom HIDDEN_WARP_NPC,1,1,{ +prt_cas_q,30,128,0 script #ep16_evt_neriusroom HIDDEN_WARP_NPC,2,2,{ end; OnTouch: - if (banquet_main_quest == 16 || banquet_main_quest == 17) { - classchange( HIDDEN_WARP_NPC, "Skia Nerius#ep16_room01", bc_self ); - classchange( HIDDEN_WARP_NPC, "Spica Nerius#ep16_room01_a", bc_self ); - classchange( HIDDEN_WARP_NPC, "Bodyguard Crux#ep16_room01", bc_self ); - classchange( 4_EP16_SPICA, "Spica Nerius#ep16_room01_b", bc_self ); + if (ep16_royal == 15) { + cloakonnpc "Bodyguard Crux#ep16_room01", getcharid(0); + cloakonnpc "Spica Nerius#ep16_room01", getcharid(0); + cloakonnpc "Skia Nerius#ep16_room01", getcharid(0); + cloakoffnpc "Spica Nerius#ep16_room02", getcharid(0); } - if (banquet_main_quest > 17) - classchange( HIDDEN_WARP_NPC, "Skia Nerius#ep16_room01", bc_self ); + else if (ep16_royal > 2 && ep16_royal < 7) { + cloakonnpc "Bodyguard Crux#ep16_room01", getcharid(0); + cloakonnpc "Spica Nerius#ep16_room01", getcharid(0); + cloakonnpc "Skia Nerius#ep16_room01", getcharid(0); + } + else if (ep16_royal > 17) + cloakonnpc "Skia Nerius#ep16_room01", getcharid(0); end; } @@ -3844,14 +3956,157 @@ prt_cas_q,18,136,5 script Skia Nerius#ep16_room01 4_EP16_SKIA,{ close3; } -prt_cas_q,20,139,3 script Spica Nerius#ep16_room01_a 4_EP16_SPICA,{ - if (banquet_main_quest < 2) { +prt_cas_q,20,139,3 script Spica Nerius#ep16_room01 4_EP16_SPICA,{ + if (ep16_royal < 2) { mes "[Spica]"; mes "Are you invited to the banquet?"; mes "This place is not the Banquet Hall."; close3; } - if (banquet_main_quest == 7) { + if (ep16_royal == 2) { + switch( isbegin_quest(7684) ) { + case 0: + mes "[Spica]"; + mes "You must be " + strcharinfo(0) + " whom everyone talks about."; + mes "Thank you for visiting us."; + mes "I am Spica of the Nerius family."; + cutin "ep16_spica_nerius01",1; + next; + mes "[Skia]"; + mes "I am Skia."; + mes "Nice to meet you."; + cutin "ep16_skia_nerius01",0; + next; + mes "[Spica]"; + mes "And he is my bodyguard."; + cutin "ep16_spica_nerius01",1; + next; + mes "[Crux]"; + mes "My name is Crux Findel."; + mes "I am learning swordsmanship in the Nerius family."; + cutin "ep16_crux_findel01",2; + next; + mes "[Spica]"; + mes "Our mother, the current head of the family, is supposed to be here."; + mes "However, since many heroes like you," + strcharinfo(0) + ", are said to attend this banquet,"; + cutin "ep16_spica_nerius01",1; + next; + mes "[Spica]"; + mes "Our mother let us come here to meet and learn from them."; + next; + select("Where is the candidate for the throne?"); + cutin "ep16_spica_nerius05",1; + mes "[Spica]"; + mes "Oh, you must be invited as the observer to the ritual..."; + mes "I see."; + npctalk "He must be in the library.", "Bodyguard Crux#ep16_room01", bc_self; + next; + cutin "ep16_spica_nerius01",1; + mes "[Spica]"; + mes "Erich is in the royal library."; + mes "I guess he could be looking for blueprints of some sort which interest him."; + next; + cutin "ep16_spica_nerius02",1; + mes "[Spica]"; + mes "Nerius is not interested in the throne."; + mes "Erich didn't have to participate in the Royal Assembly."; + next; + cutin "ep16_spica_nerius01",1; + mes "[Spica]"; + mes "Since he is just a candidate merely for effect, he must be doing what he wants to do now."; + next; + select("Why aren't you interested in the throne?"); + cutin "ep16_spica_nerius05",1; + mes "[Spica]"; + mes "It is one of the characteristics of the Nerius."; + mes "The family is led by women for generations. Therefore, we turn out more queens than kings."; + next; + cutin "ep16_spica_nerius03",1; + mes "[Spica]"; + mes "If Erich hasn't come forth, one of us, Skia and I would have been elected as a candidate for the queen."; + next; + cutin "ep16_spica_nerius02",1; + mes "[Spica]"; + mes "Our mother didn't like it."; + mes "That's why Erich became a candidate for the throne. Poor cousin..."; + next; + cutin "ep16_spica_nerius01",1; + mes "[Spica]"; + mes "Well, I guess that's enough information about our family."; + mes "Have you exchanged greetings with all other families?"; + next; + mes "[Spica]"; + mes "Since freedom doesn't come often for us, I tend to enjoy it as much as possible."; + mes "So..."; + next; + cutin "ep16_skia_nerius03",0; + mes "[Skia]"; + mes "Why don't you enjoy it with us?"; + mes "I believe the lord of the Heine family would make a good friend too."; + next; + cutin "ep16_spica_nerius06",1; + mes "[Spica]"; + mes "Skia, my beloved twin."; + mes "You need to learn to speak more elegantly."; + npctalk "Gosh, stop nagging...", "Skia Nerius#ep16_room01", bc_self; + next; + npctalk "I can hear you.", "", bc_self; + cutin "ep16_spica_nerius07",1; + mes "[Spica]"; + mes "Anyways, what I want to say is that"; + mes "the Nerius family is always open to you," + strcharinfo(0) + ", so please visit us"; + mes "anytime you want."; + npctalk "......", "Bodyguard Crux#ep16_room01", bc_self; + next; + setquest 7684;// Visit the Nerius + completequest 7684;// Visit the Nerius + if (achievementinfo(130000, ACHIEVEINFO_COUNT2) == 0) + achievementupdate(130000, ACHIEVEINFO_COUNT2, 1); + break; + case 1: + completequest 7684; + break; + case 2: + if (isbegin_quest(7685) == 1) { + mes "[Spica]"; + mes "I guess other families must be ready by now and about to move soon."; + mes "We may have some time to spare."; + cutin "ep16_spica_nerius01.bmp",1; + next; + mes "[Spica]"; + mes "" + strcharinfo(0) + ", why don't you go back to your room and wait for the message?"; + close; + } + mes "[Spica]"; + mes "Why don't you go visit other families if you have not visited them all?"; + close; + } + if (isbegin_quest(7682) == 1 && isbegin_quest(5402) == 2 && isbegin_quest(7683) == 2 && isbegin_quest(7684) == 2 && ep16_wal > 1 && ep16_wig > 1 && ep16_lug > 1 && ep16_gaobs > 1) { + completequest 7682;// Socializing Starts from an Eye Contact + setquest 7685;// What Is the Next Thing on the Schedule ? + mes "[Spica]"; + mes "I guess other families must be ready by now and about to move soon."; + mes "We may have some time to spare."; + cutin "ep16_spica_nerius01.bmp",1; + next; + mes "[Spica]"; + mes "" + strcharinfo(0) + ", why don't you go back to your room and wait for the message?"; + close3; + } + cutin "ep16_spica_nerius01.bmp",1; + mes "[Spica]"; + mes "We must get prepared for the Banquet now. We need some time to dress up."; + next; + mes "[Spica]"; + mes "Why don't you go visit other families if you have not visited them all?"; + next; + mes "[Spica]"; + mes "I'll send you a formal invitation to make up for this."; + close3; + } + if (ep16_royal < 7) + end; + if (ep16_royal == 7) { mes "[Spica]"; mes "I have heard the story briefly from Skia."; mes "Lord Nyhill must have a constitutional weakness for alcohol."; @@ -3882,190 +4137,71 @@ prt_cas_q,20,139,3 script Spica Nerius#ep16_room01_a 4_EP16_SPICA,{ mes "...Anyways, I guess we have to warn the elders about this."; close3; } - if (banquet_main_quest == 16 || banquet_main_quest == 17) + if (ep16_royal < 17) end; - if (banquet_main_quest > 17) { - mes "[Spica]"; - mes "Sorry about all the trouble."; - mes "How unlucky of you to be involved in this mess."; - cutin "ep16_spica_nerius01",1; - next; - mes "[Spica]"; - mes "Well, I am not doing well either."; - mes "The royal family is focusing on finding out who is pulling the strings."; - next; - mes "[Spica]"; - mes "...All they can do is to sort out the puppets infiltrated into the palace."; - mes "But it is better than doing nothing."; - mes "Now... then."; - next; - select("Where is Skia?"); - mes "[Spica]"; - mes "She went to hang out with Lord Nyhill!"; - mes "I don't know what she sees in the pretty boy with no substance."; - cutin "ep16_spica_nerius03",1; - next; - mes "[Spica]"; - mes "Could it be..."; - mes "Could it be that?"; - mes "Is she enchanted by his looks?"; - mes "Crux, you answer me!"; - cutin "ep16_spica_nerius05",1; - next; - cutin "ep16_crux_findel03",2; - mes "[Crux]"; - mes "Wha... What? Well..."; - mes "It sounds plausible..."; - mes "By the way, Lord Nyhill is under probation so he is not supposed to leave his room."; - next; - mes "[Spica]"; - mes "Well, I stand corrected. She went to visit Nyhill in his room."; - mes "...Isn't it the same thing?"; - cutin "ep16_spica_nerius06",1; - next; - select("Crux, cheer up..."); - cutin "ep16_crux_findel03",2; - mes "[Crux]"; - mes "Oh, are you leaving now?"; - mes "It sure is wise of you to leave before the lady's head explodes."; - next; - cutin "ep16_crux_findel02",2; - mes "[Crux]"; - mes "See you later."; - close2; - setpcblock PCBLOCK_NPC, true; - cutin "",255; - npctalk "Why are you letting the guest out?", "", bc_self; - sleep2 1000; - npctalk "Yes, yes, my lady. I am at your service. Where are you?", "Bodyguard Crux#ep16_room01", bc_self; - sleep2 3000; - npctalk "You are not the one I am looking for!", "", bc_self; - sleep2 3000; - npctalk "Shall I leave too?", "Bodyguard Crux#ep16_room01", bc_self; - sleep2 3000; - npctalk "I don't mean that!", "", bc_self; - sleep2 3000; - unittalk getcharid(3), "" + strcharinfo(0) + " : (Oh my, I'd better get out now.)", bc_self; - setpcblock PCBLOCK_NPC, false; - end; - } - - if (banquet_nerius_quest == 0) { - mes "[Spica]"; - mes "You must be " + strcharinfo(0) + " whom everyone talks about."; - mes "Thank you for visiting us."; - mes "I am Spica of the Nerius family."; - cutin "ep16_spica_nerius01",1; - next; - mes "[Skia]"; - mes "I am Skia."; - mes "Nice to meet you."; - cutin "ep16_skia_nerius01",0; - next; - mes "[Spica]"; - mes "And he is my bodyguard."; - cutin "ep16_spica_nerius01",1; - next; - mes "[Crux]"; - mes "My name is Crux Findel."; - mes "I am learning swordsmanship in the Nerius family."; - cutin "ep16_crux_findel01",2; - next; - mes "[Spica]"; - mes "Our mother, the current head of the family, is supposed to be here."; - mes "However, since many heroes like you," + strcharinfo(0) + ", are said to attend this banquet,"; - cutin "ep16_spica_nerius01",1; - next; - mes "[Spica]"; - mes "Our mother let us come here to meet and learn from them."; - next; - select("Where is the candidate for the throne?"); - cutin "ep16_spica_nerius05",1; - mes "[Spica]"; - mes "Oh, you must be invited as the observer to the ritual..."; - mes "I see."; - npctalk "He must be in the library.", "Bodyguard Crux#ep16_room01", bc_self; - next; - cutin "ep16_spica_nerius01",1; - mes "[Spica]"; - mes "Erich is in the royal library."; - mes "I guess he could be looking for blueprints of some sort which interest him."; - next; - cutin "ep16_spica_nerius02",1; - mes "[Spica]"; - mes "Nerius is not interested in the throne."; - mes "Erich didn't have to participate in the Royal Assembly."; - next; - cutin "ep16_spica_nerius01",1; - mes "[Spica]"; - mes "Since he is just a candidate merely for effect, he must be doing what he wants to do now."; - next; - select("Why aren't you interested in the throne?"); - cutin "ep16_spica_nerius05",1; - mes "[Spica]"; - mes "It is one of the characteristics of the Nerius."; - mes "The family is led by women for generations. Therefore, we turn out more queens than kings."; - next; - cutin "ep16_spica_nerius03",1; - mes "[Spica]"; - mes "If Erich hasn't come forth, one of us, Skia and I would have been elected as a candidate for the queen."; - next; - cutin "ep16_spica_nerius02",1; - mes "[Spica]"; - mes "Our mother didn't like it."; - mes "That's why Erich became a candidate for the throne. Poor cousin..."; - next; - cutin "ep16_spica_nerius01",1; - mes "[Spica]"; - mes "Well, I guess that's enough information about our family."; - mes "Have you exchanged greetings with all other families?"; - next; - mes "[Spica]"; - mes "Since freedom doesn't come often for us, I tend to enjoy it as much as possible."; - mes "So..."; - next; - cutin "ep16_skia_nerius03",0; - mes "[Skia]"; - mes "Why don't you enjoy it with us?"; - mes "I believe the lord of the Heine family would make a good friend too."; - next; - cutin "ep16_spica_nerius06",1; - mes "[Spica]"; - mes "Skia, my beloved twin."; - mes "You need to learn to speak more elegantly."; - npctalk "Gosh, stop nagging...", "Skia Nerius#ep16_room01", bc_self; - next; - npctalk "I can hear you.", "", bc_self; - cutin "ep16_spica_nerius07",1; - mes "[Spica]"; - mes "Anyways, what I want to say is that"; - mes "the Nerius family is always open to you," + strcharinfo(0) + ", so please visit us"; - mes "anytime you want."; - npctalk "......", "Bodyguard Crux#ep16_room01", bc_self; - next; - setquest 7684;// Visit the Nerius - completequest 7684;// Visit the Nerius - banquet_nerius_quest = 1; - if (banquet_walther_quest >= 3 && banquet_nerius_quest >= 1 && banquet_heine_quest >= 2 && banquet_wigner_quest >= 2 && banquet_richard_quest >= 2 && banquet_geoborg_quest >= 2 && banquet_roegenburg_quest >= 2) { - completequest 7682;// Socializing Starts from an Eye Contact - setquest 7685;// What Is the Next Thing on the Schedule ? - } - cutin "ep16_spica_nerius01",1; - mes "[Spica]"; - mes "We must get prepared for the Banquet now. We need some time to dress up."; - next; - mes "[Spica]"; - mes "Why don't you go visit other families if you have not visited them all?"; - next; - mes "[Spica]"; - mes "I'll send you a formal invitation to make up for this."; - close3; - } - if (banquet_nerius_quest == 1) { - mes "[Spica]"; - mes "Why don't you go visit other families if you have not visited them all?"; - close; - } + mes "[Spica]"; + mes "Sorry about all the trouble."; + mes "How unlucky of you to be involved in this mess."; + cutin "ep16_spica_nerius01",1; + next; + mes "[Spica]"; + mes "Well, I am not doing well either."; + mes "The royal family is focusing on finding out who is pulling the strings."; + next; + mes "[Spica]"; + mes "...All they can do is to sort out the puppets infiltrated into the palace."; + mes "But it is better than doing nothing."; + mes "Now... then."; + next; + select("Where is Skia?"); + mes "[Spica]"; + mes "She went to hang out with Lord Nyhill!"; + mes "I don't know what she sees in the pretty boy with no substance."; + cutin "ep16_spica_nerius03",1; + next; + mes "[Spica]"; + mes "Could it be..."; + mes "Could it be that?"; + mes "Is she enchanted by his looks?"; + mes "Crux, you answer me!"; + cutin "ep16_spica_nerius05",1; + next; + cutin "ep16_crux_findel03",2; + mes "[Crux]"; + mes "Wha... What? Well..."; + mes "It sounds plausible..."; + mes "By the way, Lord Nyhill is under probation so he is not supposed to leave his room."; + next; + mes "[Spica]"; + mes "Well, I stand corrected. She went to visit Nyhill in his room."; + mes "...Isn't it the same thing?"; + cutin "ep16_spica_nerius06",1; + next; + select("Crux, cheer up..."); + cutin "ep16_crux_findel03",2; + mes "[Crux]"; + mes "Oh, are you leaving now?"; + mes "It sure is wise of you to leave before the lady's head explodes."; + next; + cutin "ep16_crux_findel02",2; + mes "[Crux]"; + mes "See you later."; + close2; + cutin "",255; + npctalk "Why are you letting the guest out?", "", bc_self; + setpcblock PCBLOCK_NPC, true; + sleep2 3000; + npctalk "Yes, yes, my lady. I am at your service. Where are you?", "Bodyguard Crux#ep16_room01", bc_self; + sleep2 3000; + npctalk "You are not the one I am looking for!", "", bc_self; + sleep2 3000; + npctalk "Shall I leave too?", "Bodyguard Crux#ep16_room01", bc_self; + sleep2 3000; + npctalk "I don't mean that!", "", bc_self; + sleep2 3000; + setpcblock PCBLOCK_NPC, false; + unittalk getcharid(3), "" + strcharinfo(0) + " : (Oh my, I'd better get out now.)", bc_self; + end; } prt_cas_q,21,140,3 script Bodyguard Crux#ep16_room01 4_EP16_CRUX,{ @@ -4075,8 +4211,8 @@ prt_cas_q,21,140,3 script Bodyguard Crux#ep16_room01 4_EP16_CRUX,{ close3; } -prt_cas_q,23,133,2 script Nyhill M. Heine#ep16_nr HIDDEN_WARP_NPC,{ - if (banquet_main_quest == 17) { +prt_cas_q,23,133,2 script Nyhill M. Heine#ep16_nroom01 4_EP16_NIHIL,{ + if (ep16_royal == 16) { cutin "ep16_nihi_miseria_heine01",2; mes "[Nyhill]"; mes "We'd better move now since the situation doesn't look good."; @@ -4084,8 +4220,8 @@ prt_cas_q,23,133,2 script Nyhill M. Heine#ep16_nr HIDDEN_WARP_NPC,{ } } -prt_cas_q,18,136,3 script Spica Nerius#ep16_room01_b HIDDEN_WARP_NPC,{ - if (banquet_main_quest == 16) { +prt_cas_q,18,136,3 script Spica Nerius#ep16_room02 4_EP16_SPICA,{ + if (ep16_royal == 15) { mes "[Spica]"; mes "You are rather slow-footed."; mes "It has been a while since I got the message that you came back."; @@ -4095,11 +4231,11 @@ prt_cas_q,18,136,3 script Spica Nerius#ep16_room01_b HIDDEN_WARP_NPC,{ mes "I invited you for no special reason."; mes "Since they keep calling for meetings to discuss what has happened during the ritual."; next; + cloakoffnpc "Nyhill M. Heine#ep16_nroom01", getcharid(0); mes "[Spica]"; mes "There comes lord of the Heine family."; mes "You seem to move around rather freely considering that you are under confinement."; next; - classchange( 4_EP16_NIHIL, "Nyhill M. Heine#ep16_nr", bc_self ); mes "[Nyhill]"; mes "...?"; mes "" + strcharinfo(0) + ", I have something to tell you."; @@ -4172,7 +4308,7 @@ prt_cas_q,18,136,3 script Spica Nerius#ep16_room01_b HIDDEN_WARP_NPC,{ cutin "ep16_nihi_miseria_heine04",2; mes "[Nyhill]"; mes "To be exact, I volunteered since I heard that you were visiting the Nerius family."; - npctalk "...The room was stuffy.", "Nyhill M. Heine#ep16_nr"; + npctalk "...The room was stuffy.", "Nyhill M. Heine#ep16_nroom01"; next; cutin "ep16_skia_shadow03",0; mes "[Skia]"; @@ -4202,12 +4338,12 @@ prt_cas_q,18,136,3 script Spica Nerius#ep16_room01_b HIDDEN_WARP_NPC,{ cutin "ep16_skia_shadow04",0; mes "[Skia]"; mes "" + strcharinfo(0) + ", please come to see me again later!"; - banquet_main_quest = 17; + ep16_royal = 16; setquest 7698;// Heine Now erasequest 7697;// Invitation from the Nerius close3; } - if (banquet_main_quest == 17) { + if (ep16_royal == 16) { mes "[Skia]"; mes "I have to wait for Spica's return and change clothes."; mes "I cannot leave now."; @@ -4218,116 +4354,38 @@ prt_cas_q,18,136,3 script Spica Nerius#ep16_room01_b HIDDEN_WARP_NPC,{ mes "We will be in trouble."; close3; } -} - -prt_cas_q,130,56,0 script prt_cas_30#prt_cas_31 WARPNPC,1,1,{ -OnTouch: - if (banquet_main_quest >= 3 && banquet_main_quest <= 14) { - mes "It is locked."; - close; - } - if (banquet_main_quest == 15) { - mes "Let's first reply to the servant that the invitation will be accepted."; - close; - } - warp "prt_cas_q",30,128; + end; +OnInit: + cloakonnpc strnpcinfo(0); + cloakonnpc "Nyhill M. Heine#ep16_nroom01"; end; } -prt_cas_q,23,187,3 script Mysterious Person#ep16w HIDDEN_WARP_NPC,5,5,{ +prt_cas_q,23,187,3 script Mysterious Person#ep16wal 4_M_04,{ + end; +OnInit: + cloakonnpc strnpcinfo(0); end; -OnTouch: - if (banquet_walther_quest == 1) { - classchange( 4_M_04, "Mysterious Person#ep16w", bc_self ); - mes "[Man from the Richard]"; - mes "Long time no see, Ian."; - next; - mes "[Ian]"; - mes "Why are you here? I thought we agreed ^0000cdnot to see each other ever again after the previous Royal Assembly^000000."; - next; - mes "[Man from the Richard]"; - mes "I remember that, but the heir of your family has been busy these days."; - next; - mes "[Man from the Richard]"; - mes "He has been digging around so much that the story has reached me."; - mes "No one seems to pay much attention, but you never know."; - next; - mes "[Ian]"; - mes "I told Isenhonor to ^0000cdstop investigating about his brother's death^000000."; - next; - mes "[Man from the Richard]"; - mes "He should. It would get us both in trouble if the fact that ^0000cdwe were going to kill the imperial candidate of the Geoborg family^000000 leaks out."; - next; - mes "[Ian]"; - mes "No one knows about it, you know."; - mes "The ^0000cdplan was ruined ^000000as Isenarm was killed while acting violently."; - next; - mes "[Man from the Richard]"; - mes "I am sorry about your heir."; - next; - mes "[Ian]"; - mes "I don't care who becomes the heir as long as he leads the family well."; - mes "I don't understand why Isenarm who has behaved so well acted that way though..."; - next; - mes "[Ian]"; - mes "He must have sensed something to act like than when he was about to be elected as the king... There is no way to find out now..."; - mes "Geoborg has been silent as well ever since, I hear."; - next; - mes "[Man from the Richard]"; - mes "Yes, the word has it."; - next; - mes "[Ian]"; - mes "Since Isenarm was killed by Geoborg, ^0000cdthe Walther family has been excluded from the Royal Assembly^000000 this time."; - mes "He was a great boy. It is a shame since he was the perfect candidate for the throne."; - next; - mes "[Man from the Richard]"; - mes "The important thing is that as long as we both keep silent, the truth will remain unknown forever."; - mes "Then, I guess we will never see each other again."; - next; - mes "[Man from the Richard]"; - mes "Make sure to warn your heir not to dig around the incident, no more."; - mes "If it gets out, my family can deny it."; - next; - mes "[Man from the Richard]"; - mes "However, you Ian will be in trouble as the same member of the family since there is no witness or proof left now."; - next; - mes "[Ian]"; - mes "Are you threatening me?"; - next; - mes "[Man from the Richard]"; - mes "Shh... You'd better keep your voice down. Your heir may hear you."; - mes "I mean, we should be careful."; - next; - mes "[Man from the Richard]"; - mes "Well, I cannot be absent for so long anyway. Let me head back now."; - next; - classchange( HIDDEN_WARP_NPC, "Mysterious Person#ep16w", bc_self ); - mes "[Ian]"; - mes "Argh... How dare...!"; - mes "I shouldn't have worked with him in the first place. I lost my poor nephew for nothing."; - next; - mes "[Ian]"; - mes "Are you enjoying the banquet?"; - mes "I hope you enjoy the banquet since it is held for you."; - banquet_walther_quest = 2; - setquest 14516;// Suspicious Shadow - completequest 14516;// Suspicious Shadow - close; - } } // Walther -prt_cas_q,20,184,3 script Ian Walther#ep16wal 1_M_JOBTESTER,{ - if (banquet_main_quest < 2) { - mes "[Ian]"; - mes "How did you get in here."; - mes "Only the people with permission are allowed to be here."; - next; +prt_cas_q,20,184,3 script Ian Walther#ep16wal 1_M_JOBTESTER,5,5,{ + if (BaseLevel < 100) { mes "[Ian]"; + mes "What are you doing here, you punk?"; mes "Get out of here now before I call someone to drag you out!"; close; } - if (banquet_walther_quest == 0) { + if (ep16_wal == 0) { + if (isbegin_quest(7682) != 1) { + mes "[Ian]"; + mes "How did you get in here."; + mes "Only the people with permission are allowed to be here."; + next; + mes "[Ian]"; + mes "Get out of here now before I call someone to drag you out!"; + close; + } mes "[Ian]"; mes "Are you the hero invited to the banquet? The Royal Assembly to be exact."; mes "Nice to meet you. I am ^0000cdIan Walther^000000."; @@ -4365,10 +4423,19 @@ prt_cas_q,20,184,3 script Ian Walther#ep16wal 1_M_JOBTESTER,{ mes "[" + strcharinfo(0) + "]"; mes "Yes. Thank you for sparing me some time."; setquest 14469;// Look around the Walther Family - banquet_walther_quest = 1; + ep16_wal = 1; close; } - if (banquet_walther_quest == 1) { + if (ep16_wal == 1) + callsub S_Mysterious; + mes "[Ian]"; + mes "Are you enjoying the banquet?"; + mes "I hope you enjoy the banquet since it is held for you."; + close; + +S_Mysterious: + if (isbegin_quest(14516) != 2) { + cloakoffnpc "Mysterious Person#ep16wal", getcharid(0); mes "[Man from the Richard]"; mes "Long time no see, Ian."; next; @@ -4431,24 +4498,24 @@ prt_cas_q,20,184,3 script Ian Walther#ep16wal 1_M_JOBTESTER,{ mes "[Man from the Richard]"; mes "Well, I cannot be absent for so long anyway. Let me head back now."; next; + cloakonnpc "Mysterious Person#ep16wal", getcharid(0); mes "[Ian]"; mes "Argh... How dare...!"; mes "I shouldn't have worked with him in the first place. I lost my poor nephew for nothing."; setquest 14516;// Suspicious Shadow completequest 14516;// Suspicious Shadow - banquet_walther_quest = 2; - close; - } - if (banquet_walther_quest >= 2) { - mes "[Ian]"; - mes "Are you enjoying the banquet?"; - mes "I hope you enjoy the banquet since it is held for you."; close; } + return; + +OnTouch: + if (ep16_wal == 1) + callsub S_Mysterious; + end; } -prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ - if (checkweight(501,1) == 0) { +prt_cas_q,14,184,5 script Isenhonor Walther#ep16wal 4_M_1STPRIN1,{ + if (checkweight(1304,3) == 0) { mes "[Isenhonor Walther]"; mes "You seem to have a lot of luggage. Are you OK?"; mes "It looks a lot and large."; @@ -4457,7 +4524,8 @@ prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ mes "How about cutting down some?"; close; } - if (banquet_walther_quest == 0) { + .@name$ = strcharinfo(0); + if (ep16_wal == 0) { mes "[Isenhonor]"; mes "You must be an adventurer. Thank you for visiting this gloomy place."; next; @@ -4465,20 +4533,20 @@ prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ mes "The representative of our family is over there. I hope you have a good time then."; close; } - if (banquet_walther_quest <= 2) {// can skip event in banquet_walther_quest == 1 - mes "[" + strcharinfo(0) + "]"; + if (ep16_wal == 1) { + mes "[" + .@name$ + "]"; mes "Hello?"; next; mes "[Isenhonor]"; mes "What are you doing here? The Banquet Hall is over there."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I was sorry that I didn't get the time to talk to you then."; next; mes "[Isenhonor]"; mes "What story? You mean the story of my brother being killed for his violent behavior? You seemed to hear it so eagerly. I hope you don't believe that bullshit."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Oh, well..."; next; mes "[Isenhonor]"; @@ -4487,7 +4555,7 @@ prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ mes "[Isenhonor]"; mes "My brother, he must have done it for something. No one knows the truth, but people seem to believe the gossip."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "If you want to clear the name of your brother, you can investigate on your own."; next; mes "[Isenhonor]"; @@ -4496,7 +4564,7 @@ prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ mes "[Isenhonor]"; mes "Also, it is impossible to meet ^0000cdErnst Geoborg^000000."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Wouldn't he meet you?"; next; mes "[Isenhonor]"; @@ -4505,7 +4573,7 @@ prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ mes "[Isenhonor]"; mes "The ^0000cdGuardian Knight^000000 and ^0000cdErnst Geoborg^000000 are the only people who know what has happened that day. However it is impossible to meet them. I don't know where to begin..."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "A Guardian Knight? Did your brother have a Guardian Knight?"; next; mes "[Isenhonor]"; @@ -4514,7 +4582,7 @@ prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ mes "[Isenhonor]"; mes "As you know, the sailors are not a gentle bunch and we tend to carry money with us so that we are often threatened. We all have to bring Guardian Knights with us."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Where is your Guardian Knight then, Isenhonor?"; next; mes "[Isenhonor]"; @@ -4523,7 +4591,7 @@ prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ mes "[Isenhonor]"; mes "What should I call a Guardian Knight who betrays the master and runs away?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I think it would be a good idea to start from your Guardian Knight. Since they worked together as Guardian Knight, he must know something."; next; mes "[Isenhonor]"; @@ -4534,25 +4602,25 @@ prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ mes "Oh, well, since they were so close, he could have tried to defend his friend."; mes "Why didn't I think of that..."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Let me talk to him now. If I hear anything, it would be a good thing. Even if I don't get to hear anything it would still count as a try."; next; mes "[Isenhonor]"; mes "Why would you go through such trouble?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Well, I have a hunch. As an adventurer, my instinct says that there must be something going on."; next; mes "[Isenhonor]"; mes "Do all the adventurers count on their hunch like that? This could be dangerous. It is no matter to approach with a hunch."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "That is why it is called an adventure. Adventurers where the adventures are."; next; mes "[Isenhonor]"; mes "I don't understand."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "You may call it a needless meddling out of curiosity. However, I cannot neglect anyone in distress."; next; mes "[Isenhonor]"; @@ -4561,18 +4629,20 @@ prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ mes "[Isenhonor]"; mes "If you want to meet him anyway, go to ^0000cdour manor in the south of Alberta^000000. He must be there."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Well then."; - erasequest 14469;// Look around the Walther Family + completequest 14469;// Look around the Walther Family setquest 14470;// In Search of the Guardian Knight - banquet_walther_quest = 3; - if (banquet_walther_quest >= 3 && banquet_nerius_quest >= 1 && banquet_heine_quest >= 2 && banquet_wigner_quest >= 2 && banquet_richard_quest >= 2 && banquet_geoborg_quest >= 2 && banquet_roegenburg_quest >= 2) { + ep16_wal = 2; + if (achievementinfo(130000, ACHIEVEINFO_COUNT3) == 0) + achievementupdate(130000, ACHIEVEINFO_COUNT3, 1); + if (isbegin_quest(7682) == 1 && isbegin_quest(5402) == 2 && isbegin_quest(7683) == 2 && isbegin_quest(7684) == 2 && ep16_wal > 1 && ep16_wig > 1 && ep16_lug > 1 && ep16_gaobs > 1) { completequest 7682;// Socializing Starts from an Eye Contact setquest 7685;// What Is the Next Thing on the Schedule ? } close; } - if (banquet_walther_quest < 7) { + if (ep16_wal < 6) { mes "[Isenhonor]"; mes "Adventurer, how did your meeting with the Guardian Knight in Alberta go? Not that I expect too much..."; next; @@ -4580,16 +4650,16 @@ prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ mes "However, still, I have hoped to hear a good news from you..."; close; } - if (banquet_walther_quest == 7) { + if (ep16_wal == 6) { if (countitem(6929) < 1) { mes "[Isenhonor]"; mes "Adventurer, you are back. How did it go?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes, I have something for you..."; mes "Oh? Where did it go?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I must have left it back. Let me go bring it for you."; close; } @@ -4598,7 +4668,7 @@ prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ next; mes "I told him the story of meeting the Guardian Knight of Isenarm and the conversation with him."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "This is the ^0000cdletter^000000."; next; mes "[Isenhonor]"; @@ -4610,7 +4680,7 @@ prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ mes "[Isenhonor]"; mes "My brother indeed must have done such a thing for a reason."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I guess this is all I can do you now."; next; mes "[Isenhonor]"; @@ -4621,29 +4691,28 @@ prt_cas_q,14,184,5 script Isenhonor Walther#ep16w 4_M_1STPRIN1,{ next; mes "[Isenhonor]"; mes "You are a valuable guest for us, the Walther family, from now on, dear adventurer. I'll help you anytime you want."; - delitem 6929,1;// Seal Stamped Letter + delitem 6929,1;// Letters_Stamped_Seal completequest 14474;// Report to Isenhonor - getitem 6919,10;// Honor Token + getitem 6919,10;// TokenOfHonor getexp 1000000,500000; - banquet_walther_quest = 8; - close; - } - if (banquet_walther_quest == 8) { - mes "[Isenhonor]"; - mes "Based on the piece of information you have brought me, I am collecting other information too. It is not enough year, but I believe that I can unveil the truth someday."; - next; - mes "[Isenhonor]"; - mes "I called Simon from Alberta. I need to gather all the help I can get now."; - next; - mes "[Isenhonor]"; - mes "I will see you again when the truth is revealed."; + ep16_wal = 7; close; } + mes "[Isenhonor]"; + mes "Based on the piece of information you have brought me, I am collecting other information too. It is not enough year, but I believe that I can unveil the truth someday."; + next; + mes "[Isenhonor]"; + mes "I called Simon from Alberta. I need to gather all the help I can get now."; + next; + mes "[Isenhonor]"; + mes "I will see you again when the truth is revealed."; + close; } alberta,187,147,7 script Guardian Knight#ep16wal 4_M_KNIGHT_SILVER,{ - if (banquet_walther_quest == 3) { - mes "[" + strcharinfo(0) + "]"; + .@name$ = strcharinfo(0); + if (ep16_wal == 2) { + mes "[" + .@name$ + "]"; mes "Well, I am looking for the Guardian Knight of Isenhonor. Where can I find him?"; next; mes "[Simon]"; @@ -4655,7 +4724,7 @@ alberta,187,147,7 script Guardian Knight#ep16wal 4_M_KNIGHT_SILVER,{ mes "[Simon]"; mes "Kidnapping? Injury? Robbery? Fall? What is it? Oh, I should go there now...!"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Calm down. Isenhonor is all right. Nothing happened. I am here to ask you something."; next; mes "[Simon]"; @@ -4672,7 +4741,7 @@ alberta,187,147,7 script Guardian Knight#ep16wal 4_M_KNIGHT_SILVER,{ mes "[Simon]"; mes "I don't know the whereabouts of ^0000cdKain Walther Walker^000000 who used to be the Guardian Knight of Isenarm, unfortunately."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "You both have Walther in your names. Is there a special reason for it?"; next; mes "[Simon]"; @@ -4681,14 +4750,14 @@ alberta,187,147,7 script Guardian Knight#ep16wal 4_M_KNIGHT_SILVER,{ mes "[Simon]"; mes "The name gives a sense of belonging. Also it gives us the pride to have been recognized as excellent knights."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Right. By the way, did you say that you know nothing about Kain Walther Walker?"; next; mes "[Simon]"; mes "No, I don't."; mes "However..."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "However...?"; next; mes "[Simon]"; @@ -4703,7 +4772,7 @@ alberta,187,147,7 script Guardian Knight#ep16wal 4_M_KNIGHT_SILVER,{ mes "[Simon]"; mes "I wanted to investigate myself considering the importance of the matter. But Isenhonor ordered me to go back to Alberta so I had to come back here."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "The pickpocket in the underground prison?"; next; mes "[Simon]"; @@ -4718,7 +4787,7 @@ alberta,187,147,7 script Guardian Knight#ep16wal 4_M_KNIGHT_SILVER,{ mes "[Simon]"; mes "That guy seems to have a lot of information from all over the continent. Even when his words about seen the person of the Walther family wasn't true, I felt that I could get useful information from him."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Whether the information he has is true or not, I would rather go visit him. Thank you for the information."; next; mes "[Simon]"; @@ -4727,17 +4796,17 @@ alberta,187,147,7 script Guardian Knight#ep16wal 4_M_KNIGHT_SILVER,{ mes "[Simon]"; mes "And, let him know that he can call me anytime. I would gladly go there to guard him."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes, I'll let him know for sure."; next; mes "[Simon]"; mes "Have a safe trip then!"; erasequest 14470;// In Search of the Guardian Knight setquest 14471;// To the Royal Prison - banquet_walther_quest = 4; + ep16_wal = 3; close; } - if (banquet_walther_quest == 4) { + if (ep16_wal == 3) { mes "[Simon]"; mes "How did your visit to the prison go?"; next; @@ -4748,6 +4817,20 @@ alberta,187,147,7 script Guardian Knight#ep16wal 4_M_KNIGHT_SILVER,{ mes "Didn't you hear anything else from Isenhonor? Please extend my greetings to him when you go to Prontera."; close; } + if (ep16_wal > 6) { + mes "[Simon]"; + mes "Dear adventurer! At last, Master Isenhonor called me! I am happy that I can guard my lord nearby."; + next; + mes "[" + .@name$ + "]"; + mes "Glad to hear that. Then what are you doing here now?"; + next; + mes "[Simon]"; + mes "I am waiting for the ship to Izlude. I will rush to the ship when it comes here."; + next; + mes "[Simon]"; + mes "I have a lot of questions for you, but I guess I'd better hear the story from my master. Then dear adventurer, have a safe trip!"; + close; + } mes "[Guardian Knight]"; mes "What if anything happens to my master while I am gone..."; mes "Shall I leave for Prontera now?"; @@ -4761,8 +4844,8 @@ alberta,187,147,7 script Guardian Knight#ep16wal 4_M_KNIGHT_SILVER,{ close; } -alberta,48,30,7 script Butler for the Walthers 4_M_MANAGER,{ - if (banquet_walther_quest == 3) { +alberta,48,30,7 script Butler for the Walthers#ep16wal 4_M_MANAGER,{ + if (ep16_wal == 2) { mes "[Butler for the Walthers]"; mes "What a fine day. However, the house feels to empty and lonely."; next; @@ -4803,7 +4886,7 @@ alberta,48,30,7 script Butler for the Walthers 4_M_MANAGER,{ } prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ - if (banquet_walther_quest < 4) { + if (ep16_wal < 3) { mes "[Bigfoot]"; mes "Fried chicken, baked potato, beer, fresh cheese... Ha.... I crave those ordinary dishes now that I am locked in a place like this."; mes "I would marry anyone who brings them to me."; @@ -4814,7 +4897,8 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "But I would be safe as long as I am locked in here."; close; } - if (banquet_walther_quest == 4) { + .@name$ = strcharinfo(0); + if (ep16_wal == 3) { mes "[Bigfoot]"; mes "Fried chicken, baked potato, beer, fresh cheese... Ha.... I crave those ordinary dishes now that I am locked in a place like this."; next; @@ -4825,7 +4909,7 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "[Bigfoot]"; mes "Argh! Not again! I am terrified! But I would be safe as long as I am locked in here."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Bigfoot?"; next; emotion ET_FRET; @@ -4835,7 +4919,7 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "[Bigfoot]"; mes "Bring me something I can eat! I know that I am locked in the prison, but I deserve to eat something edible!"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "There must have been a misunderstanding. I am not the warden here. I came here to meet you."; next; mes "[Bigfoot]"; @@ -4848,13 +4932,13 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "Well, it is not important. You are here to ask me something, right? You know nothing in this world is free."; next; emotion ET_SWEAT, playerattached(); - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "...What do you want?"; next; mes "[Bigfoot]"; mes "Get me out of here."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "It would be beyond my ability."; next; mes "[Bigfoot]"; @@ -4869,7 +4953,7 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "[Bigfoot]"; mes "However, you turned it down so firmly. You could at least pretend to consider or think about it."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "What do you really want then?"; next; mes "[Bigfoot]"; @@ -4878,7 +4962,7 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "[Bigfoot]"; mes "I don't offer a monthly installment plan. I only take cash. I only accept currencies older than 2 years. I'll spend it meaningfully when I get out here in the future."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I don't have much money, but I know where to spend it. I guess I should turn down the deal. Goodbye then."; next; emotion ET_HNG; @@ -4888,7 +4972,7 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "[Bigfoot]"; mes "I knew it. You give up too easily. You are still young, you know."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Please get to the point."; next; mes "[Bigfoot]"; @@ -4903,7 +4987,7 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "[Bigfoot]"; mes "What I crave the most is that. Would you do this for me at least? ^0000cdThree fried spicy dumplings and one green salad!^000000"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I can do that. Wait for me."; next; emotion ET_SMILE; @@ -4911,10 +4995,10 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "You don't have to tell me to wait. I cannot go anywhere."; erasequest 14471;// To the Royal Prison setquest 14472;// Gourmet Bigfoot - banquet_walther_quest = 5; + ep16_wal = 4; close; } - if (banquet_walther_quest == 5) { + if (ep16_wal == 4) { if (countitem(12055) < 3 || countitem(12065) < 1) { mes "[Bigfoot]"; mes "Wait, you stop there for a moment."; @@ -4930,13 +5014,13 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "[Bigfoot]"; mes "I smell it! This smell! Take out what you have brought."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Here you are."; next; mes "[Bigfoot]"; mes "Oh, my love. I'll enjoy every bite of it. Well, ask me the question now."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I heard that you saw a person of the Walther family in a foreign country. Where did you see him? How did you know that he was from the Walther family?"; next; mes "[Bigfoot]"; @@ -4946,13 +5030,13 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "[Bigfoot]"; mes "However, I saw the distinctive symbol of the family in ^0000cdVeins^000000."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Veins? Who did you see there? And how?"; next; mes "[Bigfoot]"; mes "I don't know who he is. I was working as always. You know you have to work to make ends meet."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "You mean pickpocketing?"; next; emotion ET_FRET; @@ -4965,7 +5049,7 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "[Bigfoot]"; mes "I opened the wallet in a secluded corner of the market. He turned out to be quite loaded. And I found an ^0000cdold letter^000000 in there. The one stamped with the ^0000cdseal^000000, you know."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "The fact that he had the letter doesn't prove that he was a person from the Walther family."; next; mes "[Bigfoot]"; @@ -4980,14 +5064,14 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "[Bigfoot]"; mes "There was a hidden ^0000cdsword^000000 under his cloak. The ^0000cdhandle was engraved with the symbol^000000. You see, well. Do you believe my story now?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "How did you manage to see that when you were beaten up so bad?"; next; emotion ET_FRET; mes "[Bigfoot]"; mes "Oh, have some faith. Don't you know what I do for living?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "You mean pickpocketing?"; next; emotion ET_ANGER; @@ -5005,16 +5089,16 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ mes "Well, you must have hidden your money inside the belt and your shoes. Nice work. Those are tough spots to steal from."; next; emotion ET_HUK, playerattached(); - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "OK, I guess I can trust your skill."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Anyways, it sure seems suspicious. Thank you for your information."; next; mes "[Bigfoot]"; mes "Don't you need anything else? I want to have some dessert now."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "No. This is enough."; next; mes "[Bigfoot]"; @@ -5023,32 +5107,37 @@ prt_pri00,57,119,1 script Bigfoot#ep16wal 1_M_JOBGUIDER,{ delitem 12065,1;// Green Salad erasequest 14472;// Gourmet Bigfoot setquest 14473;// To Veins - banquet_walther_quest = 6; - close; - } - if (banquet_walther_quest >= 6) { - mes "[Bigfoot]"; - mes "What is it? Did you change your mind?"; - mes "Do you want more information? I'd really like to have some Mastela Fruit Wine."; - next; - mes "[Bigfoot]"; - mes "Did you forget where to go?"; - mes "You should go to ^0000cdVeins^000000."; - next; - mes "[Bigfoot]"; - mes "Bring me some dessert when you come back!"; + ep16_wal = 5; close; } + mes "[Bigfoot]"; + mes "What is it? Did you change your mind?"; + mes "Do you want more information? I'd really like to have some Mastela Fruit Wine."; + next; + mes "[Bigfoot]"; + mes "Did you forget where to go?"; + mes "You should go to ^0000cdVeins^000000."; + next; + mes "[Bigfoot]"; + mes "Bring me some dessert when you come back!"; + close; } veins,156,160,7 script K#ep16wal 4_M_RASWORD,{ - if (banquet_walther_quest < 6) { + if (checkweight(1304,3) == 0) { + mes "[K]"; + mes "You seem to carry a heavy burden."; + mes "How about cutting down some?"; + close; + } + if (ep16_wal < 5) { mes "[K]"; mes "I want to go back..."; mes "There again..."; close; } - if (banquet_walther_quest == 6) { + if (ep16_wal == 5) { + .@name$ = strcharinfo(0); emotion ET_ANGER; mes "[K]"; mes "Who are you? Why are you staring at me? Are you after my wallet too?"; @@ -5057,27 +5146,27 @@ veins,156,160,7 script K#ep16wal 4_M_RASWORD,{ mes "[K]"; mes "I guess no such information is shared among the pickpockets. Get lost if you don't want to be sent to prison."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "You are quite quick-tempered, aren't you."; mes "^0000cdKain Walther Walker^000000."; next; mes "[K]"; mes "I don't know such name."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "The one who betrayed his master."; next; mes "[K]"; mes "Who... Who are you? Reveal yourself!"; mes "Why are you telling me such a thing?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "People say that. I don't buy it though."; next; mes "[K]"; mes "Why don't you believe it? Why? Do you know anything about it?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "You are the one who knows the truth, Kain Walther Walker."; next; mes "[K]"; @@ -5090,10 +5179,10 @@ veins,156,160,7 script K#ep16wal 4_M_RASWORD,{ mes "Well, tell me."; mes "Who are you? How did you find me? And what do you know about the death of Isenarm?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I am asked to investigate the death of Isenarm by Isenhonor."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "While carrying out the investigation, I got the information that you would be here. I came here to meet you."; next; mes "[K]"; @@ -5102,7 +5191,7 @@ veins,156,160,7 script K#ep16wal 4_M_RASWORD,{ mes "[K]"; mes "Oh, please excuse my bad manners. I am sorry. Please forgive my earlier behavior."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "That's OK. It wouldn't hurt to be careful, Kain Walther Walker."; next; mes "[K]"; @@ -5112,16 +5201,16 @@ veins,156,160,7 script K#ep16wal 4_M_RASWORD,{ mes "[K]"; mes "Is Isenhonor investigating the death of Isenarm? I will do my best to help him by his side."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Not yet. Isenhonor wants to know the truth behind his brother's death, but he is not in the position to carry out the investigation due to the circumstances."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "That's why I, who is relatively free to move around, am is doing the research for him."; next; mes "[K]"; mes "Is that so... Then what can I do to help you? I'll do whatever I can do to reveal the truth."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "You can tell me what happened when you were with Isenarm. Why you disappeared before Isenarm's death, why you are here and all."; next; mes "[K]"; @@ -5130,7 +5219,7 @@ veins,156,160,7 script K#ep16wal 4_M_RASWORD,{ mes "[K]"; mes "When I was going to go back after completing the mission, he sent me a lot of money and a ^0000cdletter^000000. It said ^0000cdnot to return to Rune-Midgarts^000000."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "And then?"; next; mes "[K]"; @@ -5145,7 +5234,7 @@ veins,156,160,7 script K#ep16wal 4_M_RASWORD,{ mes "[K]"; mes "When I became a wanted man, I wanted to back and tell the truth. However, the letter said ^0000cdnot to return no matter what^000000. I couldn't let down the last order given by my master."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I guess Isenarm didn't want you to be involved. If anything happened to him, you would have been the one in the biggest trouble."; next; mes "[K]"; @@ -5154,52 +5243,46 @@ veins,156,160,7 script K#ep16wal 4_M_RASWORD,{ mes "[K]"; mes "Please give them to Isenhonor. I hope they help him recover his brother's honor."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Keep the sword. The sword is like the life of the knight. I believe Isenarm would want you to have it."; next; mes "[K]"; mes "Then, have a safe travel."; erasequest 14473;// To Veins setquest 14474;// Report to Isenhonor - getitem 6929,1;// Seal Stamped Letter - banquet_walther_quest = 7; + getitem 6929,1;// Letters_Stamped_Seal + ep16_wal = 6; close; } - if (banquet_walther_quest >= 7) { - mes "[K]"; - mes "Did you deliver the letter and the words to Isenhonor well?"; - next; - mes "[K]"; - mes "Please let him know that I am ready to devote my life if he needs my help."; - close; - } -} - -prt_cas_q,130,32,0 script prt_cas_32#prt_cas_33 WARPNPC,1,1,{ - end; -OnTouch: - if (banquet_main_quest >= 8 && banquet_main_quest <= 16) { - mes "It is locked."; - close; - } - warp "prt_cas_q",30,78; - end; + mes "[K]"; + mes "Did you deliver the letter and the words to Isenhonor well?"; + next; + mes "[K]"; + mes "Please let him know that I am ready to devote my life if he needs my help."; + close; } prt_cas_q,30,78,0 script #ep16_heine_evt01 HIDDEN_WARP_NPC,1,1,{ end; OnTouch: - if (banquet_main_quest < 17) { - classchange( HIDDEN_WARP_NPC, "Peter Heine#ep16_02", bc_self ); // known issue : npc is not hidden since the player is not in npc visual range - classchange( 4_M_3RDPRIN1, "Peter Heine#ep16_01", bc_self ); - if (banquet_heine_quest == 0) - classchange( 4_EP16_NIHIL, "Nyhill M. Heine#ep16_01", bc_self ); + if (ep16_royal == 2 && isbegin_quest(7683) == 0) { + cloakoffnpc "Nyhill M. Heine#ep16_01", getcharid(0); + cloakoffnpc "Peter Heine#ep16_01", getcharid(0); + cloakonnpc "Peter Heine#ep16_02", getcharid(0); + } + else if (ep16_royal < 10) { + cloakoffnpc "Peter Heine#ep16_01", getcharid(0); + cloakonnpc "Peter Heine#ep16_02", getcharid(0); + } + else if (ep16_royal > 9) { + cloakonnpc "Peter Heine#ep16_01", getcharid(0); + cloakoffnpc "Peter Heine#ep16_02", getcharid(0); } end; } prt_cas_q,9,90,3 script Peter Heine#ep16_02 4_EP16_PETER,{ - if (banquet_main_quest >= 17) { + if (ep16_royal > 8) { mes "He is lying in bed, deeply wounded."; mes "It doesn't seem that he is in the state to talk."; close; @@ -5207,20 +5290,20 @@ prt_cas_q,9,90,3 script Peter Heine#ep16_02 4_EP16_PETER,{ } // Heine -prt_cas_q,21,83,3 script Friedrich S. Heine#ep16 4_EP16_STOLZ,{ - if (banquet_main_quest < 2) { +prt_cas_q,21,83,3 script Friedrich S. Heine#ep16_01 4_EP16_STOLZ,{ + if (ep16_royal < 2) { cutin "ep16_friedrich_stolz_heine",1; mes "[Friedrich]"; mes "How disrespectful of you to enter without permission."; mes "Get out of here now."; close3; } - if (banquet_main_quest == 2) { + if (ep16_royal == 2) { mes "[Friedrich]"; mes "Please, calm down."; close; } - if (banquet_main_quest < 17) { + if (ep16_royal < 8) { cutin "ep16_friedrich_stolz_heine",1; mes "[Friedrich]"; mes "Why don't you enjoy the banquet?"; @@ -5234,42 +5317,35 @@ prt_cas_q,21,83,3 script Friedrich S. Heine#ep16 4_EP16_STOLZ,{ mes "Well, I guess I shouldn't talk more."; close3; } - if (banquet_main_quest == 17) { + if (ep16_royal < 16) + end; + if (ep16_royal == 16) { cutin "ep16_friedrich_stolz_heine",1; mes "[Friedrich]"; mes "You are here at last."; mes "The archduke has been waiting for you."; close3; } - if (banquet_main_quest == 18) { + if (ep16_royal == 17) { cutin "ep16_friedrich_stolz_heine",1; mes "[Friedrich]"; mes "Nillem said he would visit your room after making all preparations. You may wait in your room."; mes "We are counting on you."; close3; } - if (banquet_main_quest < 25) + if (ep16_royal < 23) end; - if (banquet_main_quest == 25) { - switch( checkquest(7706,PLAYTIME) ) { - case -1: - end; - case 0: - case 1: - cutin "ep16_friedrich_stolz_heine",1; - mes "[Friedrich]"; - mes "I have heard the story from my father."; - mes "I have received the approval for you to access the Past Memories of the Royal Family freely."; - next; - mes "[Friedrich]"; - mes "Let's talk about the Past Memories of the Royal Family tomorrow"; - mes "Since you must be tired going through all the trouble today."; - close3; - case 2: - erasequest 7706;// Nillem Is Not Almighty - banquet_main_quest = 26; - break; - } + if (ep16_royal == 23) { + cutin "ep16_friedrich_stolz_heine",1; + mes "[Friedrich]"; + mes "I have heard the story from my father."; + mes "I have received the approval for you to access the Past Memories of the Royal Family freely."; + next; + mes "[Friedrich]"; + mes "Let's talk about the Past Memories of the Royal Family tomorrow"; + mes "Since you must be tired going through all the trouble today."; + ep16_royal = 24; + close3; } switch( checkquest(7706,PLAYTIME) ) { case -1: @@ -5317,7 +5393,7 @@ prt_cas_q,21,83,3 script Friedrich S. Heine#ep16 4_EP16_STOLZ,{ mes "I hope it works this time."; next; mes "[Friedrich]"; - mes "Please save the piece of Imir Heart from Valkyrie."; + mes "Please save the piece of Ymir Heart from Valkyrie."; setquest 7705;// Hope You Cannot Let Go close3; case 0: @@ -5363,25 +5439,25 @@ prt_cas_q,21,83,3 script Friedrich S. Heine#ep16 4_EP16_STOLZ,{ mes "See you tomorrow then."; setquest 7706;// Nillem Is Not Almighty erasequest 7705;// Hope You Cannot Let Go - getitem 6919,10;// Honor Token + getitem 6919,10;// TokenOfHonor getexp 400000,400000; close3; } } -prt_cas_q,18,83,5 script Peter Heine#ep16_01 HIDDEN_WARP_NPC,{ - if (banquet_main_quest < 2) { +prt_cas_q,18,83,5 script Peter Heine#ep16_01 4_M_3RDPRIN1,{ + if (ep16_royal < 2) { mes "[Peter]"; mes "You must be the returned hero invited to the banquet."; mes "This banquet is for you. Please enjoy."; close; } - if (banquet_main_quest == 2) { + if (ep16_royal == 2) { mes "[Peter]"; mes "Haha... The archduke must be very angry."; close; } - if (banquet_main_quest < 17) { + if (ep16_royal < 8) { cutin "ep16_petter_heine01",0; mes "[Peter]"; mes "I have participated in the Royal Assembly, but I wonder if it has been the right decision."; @@ -5401,170 +5477,184 @@ prt_cas_q,18,83,5 script Peter Heine#ep16_01 HIDDEN_WARP_NPC,{ } } -prt_cas_q,19,85,4 script Kronecker G. Heine#ep16 4_EP16_GRANZ,{ - if (banquet_main_quest < 2) { +prt_cas_q,19,85,4 script Kronecker G. Heine#ep16_01 4_EP16_GRANZ,{ + if (ep16_royal < 2) { mes "[Kronecker]"; mes "I have never allowed your visit."; close; } - if (banquet_main_quest == 2) { - if (banquet_heine_quest == 0) { - cutin "ep16_kronecker_granz_heine",2; - mes "[Kronecker]"; - mes "I am busy."; - mes "Please come back later"; - close2; - warp "prt_cas_q",134,32; - end; - } - if (banquet_heine_quest == 1) { - cutin "ep16_kronecker_granz_heine",2; - mes "[Kronecker]"; - mes "...It was a shame to cause such a scene"; - mes "In front of a guest."; - mes "I apologize on the behalf of the Heine family."; - next; - cutin "ep16_friedrich_stolz_heine",1; - mes "[Friedrich]"; - mes "Let me introduce myself."; - mes "I am the current head of the Heine family, Friedrich Stoltze Heine."; - next; - mes "[Friedrich]"; - mes "This is the former head of the family, Archduke Grantz, my father."; - next; - cutin "ep16_kronecker_granz_heine",2; - mes "[Kronecker]"; - mes "My name is Kronecker Grantz Heine."; - next; - cutin "ep16_friedrich_stolz_heine",1; - mes "[Friedrich Stoltze]"; - mes "This is Peter Heine the candidate to the throne."; - next; - cutin "ep16_petter_heine01",0; - mes "[Peter]"; - mes "Nice to meet you."; - mes "It has turned out this way."; - next; - cutin "ep16_friedrich_stolz_heine",1; - mes "[Friedrich]"; - mes "The one who has left the room, making a fool of himself, is my son, Nyhill."; - next; - mes "[Friedrich]"; - mes "He is a lineal family member of the Heine family."; - mes "But he still acts like a child like that."; - mes "Please excuse his bad manners."; - next; - cutin "ep16_kronecker_granz_heine",2; - mes "[Kronecker]"; - mes "Let him do whatever he pleases."; - mes "We cannot take care of him anymore."; - next; - cutin "ep16_petter_heine01",0; - mes "[Peter]"; - mes "...Archduke, please don't be too harsh on Nyhill."; - mes "In fact, Nyhill was supposed to be the candidate to the throne."; - next; - mes "[Peter]"; - mes "I am just a collateral member of the family after all..."; - next; - cutin "ep16_kronecker_granz_heine",2; - mes "[Kronecker]"; - mes "Stop it there. There is no need for more words."; - mes "Nyhill doesn't have what it takes to be the king."; - next; - mes "[Kronecker]"; - mes "He doesn't have any elements to meet the legitimacy of the family. He cannot be chosen as the candidate."; - mes "He doesn't even know where he stands but still seems so hungry for power."; - next; - cutin "ep16_petter_heine01",0; - mes "[Peter]"; - mes "It doesn't seem that way..."; - mes "He must have been disheartened since his right has been neglected."; - next; - cutin "ep16_kronecker_granz_heine",2; - mes "[Kronecker]"; - mes "The right of the Heine family is everything which comes with the name of Heine."; - mes "Nyhill has everything."; - next; - mes "[Kronecker]"; - mes "Why doesn't that child realize it?"; - mes "It is not appropriate to talk about the family matter in front of the guest."; - next; - mes "[Kronecker]"; - mes "Sorry about that."; - mes "Phew... I wonder what we have done to deserve a punk like that in the family."; - next; - mes "[Kronecker]"; - mes "I have heard that you are the one who would attend the ritual."; - mes "Gratefully enough, the next king might be from the Heine family."; - next; - unittalk getcharid(3), "" + strcharinfo(0) + " : You mean Peter will...?", bc_self; - mes "[Kronecker]"; - mes "In the Royal Assembly earlier in which the candidates for the throne were tested..."; - next; - cutin "ep16_friedrich_stolz_heine",1; - mes "[Friedrich]"; - mes "Isenarm of the Walther family who happened to be the strongest candidate of all threatened other candidates all of a sudden."; - mes "Ernst of the Geoborg family had to execute him."; - next; - mes "[Friedrich]"; - mes "It seemed that Ernst was going to be named the next king, but he abruptly resigned."; - mes "...I guess he obeyed the will of the queen."; - next; - mes "[Friedrich]"; - mes "Due to the course of events, the Royal Assembly would be held again."; - mes "This time, Peter will participate as the representative of the Heine family."; - next; - npctalk "I never meant to, but I'll do my best.", "Peter Heine#ep16_01", bc_self; - cutin "ep16_kronecker_granz_heine",2; - mes "[Kronecker]"; - mes "And that Nyhill is so jealous of him now."; - mes "How low can he be?"; - next; - mes "[Friedrich]"; - cutin "ep16_friedrich_stolz_heine",1; - mes "Hum... He actually is not a bad kid unlike his earlier words."; - mes "He has never acted to bring disgrace to the name of Heine."; - next; - mes "[Friedrich]"; - mes "I am not trying to defend him because he is my son."; - mes "Nyhill, he is just..."; - next; - mes "[Kronecker]"; - cutin "ep16_kronecker_granz_heine",2; - mes "Don't try to speak for him. His incompetence is a sin."; - mes "Great magical power runs in the Heine for generations."; - next; - mes "[Kronecker]"; - mes "There is a reason that he is called Mijeria."; - unittalk getcharid(3), "" + strcharinfo(0) + " : Mijeria? Misery?", bc_self; - next; - mes "[Friedrich]"; - cutin "ep16_friedrich_stolz_heine",1; - mes "Don't be overly curious of our family matter."; - mes "Phew... I guess I will see you again later."; - completequest 7683; - banquet_heine_quest = 2; - if (banquet_walther_quest >= 3 && banquet_nerius_quest >= 1 && banquet_heine_quest >= 2 && banquet_wigner_quest >= 2 && banquet_richard_quest >= 2 && banquet_geoborg_quest >= 2 && banquet_roegenburg_quest >= 2) { - completequest 7682;// Socializing Starts from an Eye Contact - setquest 7685;// What Is the Next Thing on the Schedule ? + if (ep16_royal == 2) { + switch( isbegin_quest(7685) ) { + case 0: + switch( isbegin_quest(7683) ) { + case 0: + cutin "ep16_kronecker_granz_heine",2; + mes "[Kronecker]"; + mes "I am busy."; + mes "Please come back later"; + close2; + warp "prt_cas_q",134,32; + end; + case 1: + cutin "ep16_kronecker_granz_heine",2; + mes "[Kronecker]"; + mes "...It was a shame to cause such a scene"; + mes "In front of a guest."; + mes "I apologize on the behalf of the Heine family."; + next; + cutin "ep16_friedrich_stolz_heine",1; + mes "[Friedrich]"; + mes "Let me introduce myself."; + mes "I am the current head of the Heine family, Friedrich Stoltze Heine."; + next; + mes "[Friedrich]"; + mes "This is the former head of the family, Archduke Grantz, my father."; + next; + cutin "ep16_kronecker_granz_heine",2; + mes "[Kronecker]"; + mes "My name is Kronecker Grantz Heine."; + next; + cutin "ep16_friedrich_stolz_heine",1; + mes "[Friedrich Stoltze]"; + mes "This is Peter Heine the candidate to the throne."; + next; + cutin "ep16_petter_heine01",0; + mes "[Peter]"; + mes "Nice to meet you."; + mes "It has turned out this way."; + next; + cutin "ep16_friedrich_stolz_heine",1; + mes "[Friedrich]"; + mes "The one who has left the room, making a fool of himself, is my son, Nyhill."; + next; + mes "[Friedrich]"; + mes "He is a lineal family member of the Heine family."; + mes "But he still acts like a child like that."; + mes "Please excuse his bad manners."; + next; + cutin "ep16_kronecker_granz_heine",2; + mes "[Kronecker]"; + mes "Let him do whatever he pleases."; + mes "We cannot take care of him anymore."; + next; + cutin "ep16_petter_heine01",0; + mes "[Peter]"; + mes "...Archduke, please don't be too harsh on Nyhill."; + mes "In fact, Nyhill was supposed to be the candidate to the throne."; + next; + mes "[Peter]"; + mes "I am just a collateral member of the family after all..."; + next; + cutin "ep16_kronecker_granz_heine",2; + mes "[Kronecker]"; + mes "Stop it there. There is no need for more words."; + mes "Nyhill doesn't have what it takes to be the king."; + next; + mes "[Kronecker]"; + mes "He doesn't have any elements to meet the legitimacy of the family. He cannot be chosen as the candidate."; + mes "He doesn't even know where he stands but still seems so hungry for power."; + next; + cutin "ep16_petter_heine01",0; + mes "[Peter]"; + mes "It doesn't seem that way..."; + mes "He must have been disheartened since his right has been neglected."; + next; + cutin "ep16_kronecker_granz_heine",2; + mes "[Kronecker]"; + mes "The right of the Heine family is everything which comes with the name of Heine."; + mes "Nyhill has everything."; + next; + mes "[Kronecker]"; + mes "Why doesn't that child realize it?"; + mes "It is not appropriate to talk about the family matter in front of the guest."; + next; + mes "[Kronecker]"; + mes "Sorry about that."; + mes "Phew... I wonder what we have done to deserve a punk like that in the family."; + next; + mes "[Kronecker]"; + mes "I have heard that you are the one who would attend the ritual."; + mes "Gratefully enough, the next king might be from the Heine family."; + next; + unittalk getcharid(3), "" + strcharinfo(0) + " : You mean Peter will...?", bc_self; + mes "[Kronecker]"; + mes "In the Royal Assembly earlier in which the candidates for the throne were tested..."; + next; + cutin "ep16_friedrich_stolz_heine",1; + mes "[Friedrich]"; + mes "Isenarm of the Walther family who happened to be the strongest candidate of all threatened other candidates all of a sudden."; + mes "Ernst of the Geoborg family had to execute him."; + next; + mes "[Friedrich]"; + mes "It seemed that Ernst was going to be named the next king, but he abruptly resigned."; + mes "...I guess he obeyed the will of the queen."; + next; + mes "[Friedrich]"; + mes "Due to the course of events, the Royal Assembly would be held again."; + mes "This time, Peter will participate as the representative of the Heine family."; + next; + npctalk "I never meant to, but I'll do my best.", "Peter Heine#ep16_01", bc_self; + cutin "ep16_kronecker_granz_heine",2; + mes "[Kronecker]"; + mes "And that Nyhill is so jealous of him now."; + mes "How low can he be?"; + next; + mes "[Friedrich]"; + cutin "ep16_friedrich_stolz_heine",1; + mes "Hum... He actually is not a bad kid unlike his earlier words."; + mes "He has never acted to bring disgrace to the name of Heine."; + next; + mes "[Friedrich]"; + mes "I am not trying to defend him because he is my son."; + mes "Nyhill, he is just..."; + next; + mes "[Kronecker]"; + cutin "ep16_kronecker_granz_heine",2; + mes "Don't try to speak for him. His incompetence is a sin."; + mes "Great magical power runs in the Heine for generations."; + next; + mes "[Kronecker]"; + mes "There is a reason that he is called Mijeria."; + unittalk getcharid(3), "" + strcharinfo(0) + " : Mijeria? Misery?", bc_self; + next; + mes "[Friedrich]"; + cutin "ep16_friedrich_stolz_heine",1; + mes "Don't be overly curious of our family matter."; + mes "Phew... I guess I will see you again later."; + completequest 7683; + if (achievementinfo(130000, ACHIEVEINFO_COUNT1) == 0) + achievementupdate(130000, ACHIEVEINFO_COUNT1, 1); + next; + if (isbegin_quest(7682) == 1 && isbegin_quest(5402) == 2 && isbegin_quest(7683) == 2 && isbegin_quest(7684) == 2 && ep16_wal > 1 && ep16_wig > 1 && ep16_lug > 1 && ep16_gaobs > 1) { + completequest 7682;// Socializing Starts from an Eye Contact + setquest 7685;// What Is the Next Thing on the Schedule ? + mes "[Kronecker]"; + cutin "ep16_kronecker_granz_heine.bmp",2; + mes "The Royal Assembly will be over soon, and the ritual will be carried out when the final decision is made."; + mes "Enjoy the banquet until then and participate in the ritual."; + close3; + } + cutin "ep16_kronecker_granz_heine",2; + mes "[Friedrich]"; + mes "It wouldn't long before Royal Assembly is over."; + mes "We have to prepare for it. Sorry that we cannot spend more time with you."; + next; + mes "[Friedrich]"; + mes "Go visit other families if you have not visited them all."; + close3; + case 2: + npctalk "Go visit other families if you have not visited them all."; + end; } - next; - cutin "ep16_kronecker_granz_heine",2; - mes "[Friedrich]"; - mes "It wouldn't long before Royal Assembly is over."; - mes "We have to prepare for it. Sorry that we cannot spend more time with you."; - next; - mes "[Friedrich]"; - mes "Go visit other families if you have not visited them all."; - close3; - } - if (banquet_heine_quest == 2) { - npctalk "Go visit other families if you have not visited them all."; + end; + case 1: + npctalk "Everything will be settled soon. Wait in your room until then.", "Kronecker G. Heine#ep16_01", bc_self; + end; + default: end; } } - if (banquet_main_quest < 17) { + if (ep16_royal < 8) { cutin "ep16_kronecker_granz_heine",2; mes "[Kronecker]"; mes "The Royal Assembly will be over soon."; @@ -5579,7 +5669,9 @@ prt_cas_q,19,85,4 script Kronecker G. Heine#ep16 4_EP16_GRANZ,{ mes "Enjoy the banquet and go back to your room in time."; close3; } - if (banquet_main_quest == 17) { + if (ep16_royal < 16) // door locked + end; + if (ep16_royal == 16) { cutin "ep16_kronecker_granz_heine",2; mes "[Kronecker]"; mes "I have been waiting for you."; @@ -5665,47 +5757,43 @@ prt_cas_q,19,85,4 script Kronecker G. Heine#ep16 4_EP16_GRANZ,{ mes "[Kronecker]"; mes "It must be useful to people like you."; mes "I hope it helps."; - banquet_main_quest = 18; + ep16_royal = 17; setquest 7699;// To the Past erasequest 7698;// Heine Now - getitem 6919,20;// Honor Token + getitem 6919,20;// TokenOfHonor getexp 400000,400000; close3; } - if (banquet_main_quest == 18) { + if (ep16_royal == 17) { cutin "ep16_kronecker_granz_heine",2; mes "[Kronecker]"; mes "The magician called Nillem will find you."; mes "You may wait in your room."; close3; } - if (banquet_main_quest >= 19) { - cutin "ep16_kronecker_granz_heine",2; - mes "[Kronecker]"; - mes "It is too early to lose our hope."; - mes "I believe you will do just fine."; - close3; - } + cutin "ep16_kronecker_granz_heine",2; + mes "[Kronecker]"; + mes "It is too early to lose our hope."; + mes "I believe you will do just fine."; + close3; } -prt_cas_q,22,80,3 script Nyhill M. Heine#ep16_01 HIDDEN_WARP_NPC,{ end; } +prt_cas_q,22,80,3 script Nyhill M. Heine#ep16_01 4_EP16_NIHIL,{ end; } prt_cas_q,22,77,0 script #ep16_heine_evt02 HIDDEN_WARP_NPC,2,2,{ end; OnTouch: - if (banquet_main_quest < 17) - classchange( HIDDEN_WARP_NPC, "Peter Heine#ep16_02", bc_self ); // custom - officially hidden from #ep16_heine_evt01. However the npc is not hidden when the player is not in npc visual range - if (banquet_heine_quest == 0 && banquet_main_quest == 2) { + if (ep16_royal == 2 && isbegin_quest(7683) == 0) { + npctalk "You are in no place to say such a thing!", "Kronecker G. Heine#ep16_01", bc_self; setpcblock PCBLOCK_NPC, true; - npctalk "You are in no place to say such a thing!", "Kronecker G. Heine#ep16", bc_self; sleep2 3000; npctalk "I'll go back to the head house. Please give me your permission.", "Nyhill M. Heine#ep16_01", bc_self; sleep2 3000; - npctalk "Watch your manners. You are not a child anymore.", "Friedrich S. Heine#ep16", bc_self; + npctalk "Watch your manners. You are not a child anymore.", "Friedrich S. Heine#ep16_01", bc_self; sleep2 3000; npctalk "I have no reason to be here, you know.", "Nyhill M. Heine#ep16_01", bc_self; sleep2 3000; - npctalk "It is your duty to stay here as a member of the family!", "Kronecker G. Heine#ep16", bc_self; + npctalk "It is your duty to stay here as a member of the family!", "Kronecker G. Heine#ep16_01", bc_self; sleep2 3000; npctalk "Member of the family? Since when have I been deemed as a member of the family?", "Nyhill M. Heine#ep16_01", bc_self; sleep2 3000; @@ -5713,32 +5801,38 @@ OnTouch: sleep2 3000; npctalk "Nyhill Mijeria, I am a miserable Heine who has nothing! You have given me such a name because I am useless!", "Nyhill M. Heine#ep16_01", bc_self; sleep2 3000; - npctalk "Watch your words, Nyhill.", "Friedrich S. Heine#ep16", bc_self; + npctalk "Watch your words, Nyhill.", "Friedrich S. Heine#ep16_01", bc_self; sleep2 3000; - classchange( HIDDEN_WARP_NPC, "Nyhill M. Heine#ep16_01", bc_self ); - sleep2 7000; + npctalk "You have never considered me as a member of the family.", "Nyhill M. Heine#ep16_0", bc_self; + sleep2 3000; + npctalk "However, I have to bear all the responsibilities. I can't take it anymore.", "Nyhill M. Heine#ep16_0", bc_self; + sleep2 1000; + cloakonnpc "Nyhill M. Heine#ep16_01", getcharid(0); + sleep2 500; unittalk getcharid(3), "" + strcharinfo(0) + " : Oh, he left.", bc_self; - sleep2 2000; - npctalk "...That useless punk. He doesn't do any good!", "Kronecker G. Heine#ep16", bc_self; - if (banquet_heine_quest == 0) { - banquet_heine_quest = 1; - setquest 7683;// Visit the Heines - } + sleep2 1000; setpcblock PCBLOCK_NPC, false; + npctalk "...That useless punk. He doesn't do any good!", "Kronecker G. Heine#ep16_01", bc_self; + setquest 7683; } end; +OnInit: + cloakonnpc "Nyhill M. Heine#ep16_01"; + cloakonnpc "Peter Heine#ep16_01"; + end; } -prt_cas_q,144,38,3 script Nyhill#ep16_7686 HIDDEN_WARP_NPC,{ end; } -prt_cas_q,141,39,5 script Skia#ep16_7686 HIDDEN_WARP_NPC,{ end; } +prt_cas_q,144,38,3 script Nyhill#ep16_7686 4_EP16_NIHIL,{ end; } +prt_cas_q,141,39,5 script Skia#ep16_7686 4_EP16_SKIA,{ end; } -prt_cas_q,141,36,0 script #ep16_evt_7686 HIDDEN_WARP_NPC,1,1,{ +prt_cas_q,141,36,0 script #ep16_evt_7686 HIDDEN_WARP_NPC,3,1,{ end; OnTouch: - if (banquet_heine_quest >= 1 && isbegin_quest(7686) == 0) { + if (isbegin_quest(7683) == 2 && isbegin_quest(7686) == 0) { + cloakoffnpc "Skia#ep16_7686", getcharid(0); + cloakoffnpc "Nyhill#ep16_7686", getcharid(0); setpcblock PCBLOCK_NPC, true; - classchange( 4_EP16_NIHIL, "Nyhill#ep16_7686", bc_self ); - classchange( 4_EP16_SKIA, "Skia#ep16_7686", bc_self ); + sleep2 2000; npctalk "Are you the shadow princess whom people talk about?", "Nyhill#ep16_7686", bc_self; sleep2 3000; npctalk "It must be difficult for you too. Is it your first time attending the official event?", "Nyhill#ep16_7686", bc_self; @@ -5784,23 +5878,29 @@ OnTouch: npctalk "Oh, right. I was on my way to meet the hero!", "Skia#ep16_7686", bc_self; sleep2 3000; npctalk "Please excuse me now.", "Skia#ep16_7686", bc_self; - classchange( HIDDEN_WARP_NPC, "Skia#ep16_7686", bc_self ); + sleep2 1000; + cloakonnpc "Skia#ep16_7686", getcharid(0); sleep2 3000; npctalk "...Skia... There is an interesting lady in the Nerius family.", "Nyhill#ep16_7686", bc_self; - classchange( HIDDEN_WARP_NPC, "Nyhill#ep16_7686", bc_self ); + sleep2 3000; + setpcblock PCBLOCK_NPC, false; + cloakonnpc "Nyhill#ep16_7686", getcharid(0); if (isbegin_quest(7686) == 0) { setquest 7686;// Nyhill and Skia completequest 7686;// Nyhill and Skia } - setpcblock PCBLOCK_NPC, false; } end; +OnInit: + cloakonnpc "Skia#ep16_7686"; + cloakonnpc "Nyhill#ep16_7686"; + end; } // Right Side // Roegenburg -prt_cas_q,90,186,5 script Maximilian Roegenburg#e 4_EP16_MAX,{ - if (checkweight(501,1) == 0) { +prt_cas_q,90,186,5 script Maximilian Roegenburg#ep16lug 4_EP16_MAX,{ + if (checkweight(1301,1) == 0) { mes "[Maximilian]"; mes "You seem to have a lot of luggage. Are you OK?"; mes "It looks a lot and large."; @@ -5809,14 +5909,19 @@ prt_cas_q,90,186,5 script Maximilian Roegenburg#e 4_EP16_MAX,{ mes "How about cutting down some?"; close; } - if (banquet_main_quest < 2) {// pre-req + if (BaseLevel < 100) { mes "[Maximilian]"; - mes "How could you come in here?"; - mes "Nobody can come into this place if you are not a staff. Please go outside."; + mes "The Roegenburg welcomes adventurers with various experiences, but it is somewhat early for us to work with you."; + mes "I hope I will see you later."; close; } - - if (banquet_roegenburg_quest == 0) { + if (ep16_lug == 0) { + if (isbegin_quest(7682) != 1) { + mes "[Maximilian]"; + mes "How could you come in here?"; + mes "Nobody can come into this place if you are not a staff. Please go outside."; + close; + } mes "[Maximilian]"; mes "Hello, adventurers. I am honored you have visited the ^0000cdRoegenburg^000000. I am ^0000cdMaximilian Roegenburg^000000."; next; @@ -5845,10 +5950,10 @@ prt_cas_q,90,186,5 script Maximilian Roegenburg#e 4_EP16_MAX,{ mes "[" + strcharinfo(0) + "]"; mes "Yes, it is a good opportunity, of course."; setquest 14495;// To Wolf - banquet_roegenburg_quest = 1; + ep16_lug = 1; close3; } - if (banquet_roegenburg_quest == 1) { + if (ep16_lug == 1) { mes "[Maximilian]"; mes "Did you see the children of the Roegenburg? They look like babies, but now when I see them in the palace, I am pleased that they are almost grown up."; next; @@ -5859,7 +5964,7 @@ prt_cas_q,90,186,5 script Maximilian Roegenburg#e 4_EP16_MAX,{ mes "He is in charge of all matters of the Roegenburg instead of the first son who is busy for participation in the royal assembly and protection of the border. You will hear lots of interesting stories."; close; } - if (banquet_roegenburg_quest >= 2 && banquet_roegenburg_quest <= 6) { + if (ep16_lug > 1 && ep16_lug < 7) { mes "[Maximilian]"; mes "The Roegenburg is proud that we are descents of Wilhelm, the national hero, and contributed to the foundation and development of Rune-Midgarts Kingdom."; next; @@ -5888,7 +5993,7 @@ prt_cas_q,90,186,5 script Maximilian Roegenburg#e 4_EP16_MAX,{ mes "Please forgive me grumbling and forget this old man's complaints."; close; } - if (banquet_roegenburg_quest == 7 || banquet_roegenburg_quest == 8) { + if (ep16_lug == 7 || ep16_lug == 8) { mes "[Maximilian]"; mes "Myer, Myer..."; mes "I cannot believe that Myer did that."; @@ -5907,13 +6012,13 @@ prt_cas_q,90,186,5 script Maximilian Roegenburg#e 4_EP16_MAX,{ mes "Opportunities are found in times of crisis."; close; } - if (banquet_roegenburg_quest == 9) { + if (ep16_lug == 9) { mes "[Maximilian]"; mes "Please bring Helmut. He must be in the ^0000cdcheckpoint near the border with Schwarzwald^000000. He is responsible for the patrol party."; mes "Please."; close; } - if (banquet_roegenburg_quest == 10) { + if (ep16_lug == 10) { mes "[Maximilian]"; mes "Welcome adventurer. Did you have a safe travel?"; next; @@ -5966,16 +6071,16 @@ prt_cas_q,90,186,5 script Maximilian Roegenburg#e 4_EP16_MAX,{ mes "I am willing to do so."; erasequest 14505;// I Won't go Back setquest 14506;// Things Turned out This Way - banquet_roegenburg_quest = 11; + ep16_lug = 11; close3; } - if (banquet_roegenburg_quest == 11) { + if (ep16_lug == 11) { mes "[Maximilian]"; mes "Please deliver the story of Helmut to Myer."; mes "He must be somewhere in Prontera."; close; } - if (banquet_roegenburg_quest == 12) { + if (ep16_lug == 12) { mes "[Maximilian]"; mes "Dear adventurer, welcome."; next; @@ -6019,12 +6124,12 @@ prt_cas_q,90,186,5 script Maximilian Roegenburg#e 4_EP16_MAX,{ mes "[Maximilian]"; mes "If you need a help from the Roegenburg, come to use anytime. The gate of the Roegenburg is always opened to you."; completequest 14507;// To Maximilian - getitem 6919,10;// Honor Token + getitem 6919,10;// TokenOfHonor getexp 1000000,500000; - banquet_roegenburg_quest = 13; + ep16_lug = 13; close; } - if (banquet_roegenburg_quest == 13) { + if (ep16_lug > 12) { mes "[Maximilian]"; mes "Dear adventurer, welcome."; mes "I wanted to thank you always. Thanks to your contribution, my family is returning to safety."; @@ -6039,12 +6144,12 @@ prt_cas_q,90,186,5 script Maximilian Roegenburg#e 4_EP16_MAX,{ } prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ - if (checkweight(501,1) == 0) { + if (checkweight(1301,1) == 0) { mes "[Agnes Roegenburg]"; mes "Well, you seem to have lots of luggage. How about removing some?"; close; } - if (banquet_roegenburg_quest == 0) { + if (ep16_lug == 0) { cutin "16agn_nor",2; mes "[Agnes]"; mes "Hello, nice to meet you."; @@ -6055,7 +6160,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ mes "Then, have a good time."; close3; } - if (banquet_roegenburg_quest == 1) { + if (ep16_lug == 1) { cutin "16agn_nor",2; mes "[Agnes]"; mes "Did you see my brothers?"; @@ -6066,7 +6171,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ mes "So the time for me to talk with him is quite reduced though."; close3; } - if (banquet_roegenburg_quest == 2 || banquet_roegenburg_quest == 3) { + if (ep16_lug == 2 || ep16_lug == 3) { cutin "16agn_nor",2; mes "[Agnes]"; mes "The banquet has started but I haven't yet found any body who I go with."; @@ -6097,7 +6202,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ mes "But there is no one for me to hand my handkerchiefs to..."; close3; } - if (banquet_roegenburg_quest == 4 || banquet_roegenburg_quest == 5) { + if (ep16_lug == 4 || ep16_lug == 5) { cutin "16agn_nor",2; mes "[Agnes]"; mes "Did you see him too?"; @@ -6108,7 +6213,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ mes "I am sorry that I left so early that I couldn't talk with him at all. I asked Myer who he is, but he didn't tell me."; close3; } - if (banquet_roegenburg_quest == 6) { + if (ep16_lug == 6) { cutin "16agn_nor",2; mes "[Agnes]"; mes "Dear adventurer?"; @@ -6118,7 +6223,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ mes "Why don't you visit Wolf?"; close3; } - if (banquet_roegenburg_quest == 7) { + if (ep16_lug == 7) { cutin "16agn_nor",2; mes "[Agnes]"; mes "He is my brother, but he and other brothers are so childish."; @@ -6139,7 +6244,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ mes "But I feel safe that my grandfather stays with me."; close3; } - if (banquet_roegenburg_quest >= 8 && banquet_roegenburg_quest <= 12) { + if (ep16_lug >= 8 && ep16_lug <= 12) { cutin "16agn_nor",2; mes "[Agnes]"; mes "You seem to have come to see my brothers? but there is no one in the house."; @@ -6196,10 +6301,18 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ mes "And Can I ask you to get more? I am afraid that cloth is not sufficient."; next; mes "[" + strcharinfo(0) + "]"; - mes "I guess so. I will help you to the best of my ability."; - next; - mes "[Agnes]"; - mes "You really understand me. I'm so happy."; + if( Sex == SEX_FEMALE) { + mes "I guess so. I will help you to the best of my ability."; + next; + mes "[Agnes]"; + mes "You really understand me. I'm so happy."; + } + else { + mes "Yes, I will."; + next; + mes "[Agnes]"; + mes "Thank you very much"; + } next; mes "[Agnes]"; mes "See you tomorrow. Have a nice day."; @@ -6207,8 +6320,9 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ delitem 949,50;// Feather erasequest 14508;// Jewel and Cloth setquest 14509;// Still Making It - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor getexp 200000,200000; + ep16_lug = 15; close3; case 14510: if (countitem(7166) < 15 || countitem(507) < 30 || countitem(509) < 10) { @@ -6266,7 +6380,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ delitem 509,10;// White Herb erasequest 14510;// Pink Petal-like Dress setquest 14509;// Still Making It - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor getexp 200000,200000; close3; case 14511: @@ -6325,7 +6439,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ delitem 6510,5;// Elegant Flower erasequest 14511;// Beautiful Flower Decoration setquest 14509;// Still Making It - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor getexp 200000,200000; close3; case 14512: @@ -6374,7 +6488,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ delitem 7205,20;// Piece of Black Cloth erasequest 14512;// Dress of the Night Sky setquest 14509;// Still Making It - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor getexp 200000,200000; close3; case 14513: @@ -6423,7 +6537,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ delitem 7122,20;// Burning Hair erasequest 14513;// Shawl of the Blazing Sun setquest 14509;// Still Making It - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor getexp 200000,200000; close3; case 14514: @@ -6472,7 +6586,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ delitem 6557,5;// Fancy Fairy Wing erasequest 14514;// Step of the Fairy setquest 14509;// Still Making It - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor getexp 200000,200000; close3; case 14515: @@ -6521,7 +6635,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ delitem 1001,5;// Star Dust erasequest 14515;// Sparkling Star setquest 14509;// Still Making It - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor getexp 200000,200000; close3; default: // none quest @@ -6577,10 +6691,18 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ mes "I mean I prepared a dress that I choose thinking that I would go with Myer. And now the partner has changed and I have to prepare considering him."; next; mes "[" + strcharinfo(0) + "]"; - mes "Yes, you should!!!"; - next; - mes "[Agnes]"; - mes "I expected you would agree as a woman like me."; + if (Sex == SEX_FEMALE) { + mes "Yes, you should!!!"; + next; + mes "[Agnes]"; + mes "I expected you would agree as a woman like me."; + } + else { + mes "Ah....!"; + next; + mes "[Agnes]"; + mes "Do you understand?"; + } next; mes "[Agnes]"; mes "There are so many things I have to consider, such as his hair color, eye color, clothes color and shape. I asked Myer about him, but he didn't tell me."; @@ -6595,10 +6717,18 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ mes "Therefore, I told my grandfather that I want to have some more dresses to prepare for all situations, but he said that what I have now is enough. Does it make sense?"; next; mes "[" + strcharinfo(0) + "]"; - mes "That is nonsense!"; - next; - mes "[Agnes]"; - mes "Yes!!!"; + if (Sex == SEX_FEMALE) { + mes "That is nonsense!"; + next; + mes "[Agnes]"; + mes "Yes!!!"; + } + else { + mes "You are beautiful enough with the clothes you are wearing now."; + next; + mes "[Agnes]"; + mes "Oh, no. I am not."; + } next; mes "[Agnes]"; mes "I talked with Wolf too but He said the same thing as grandfather. I should ask somebody to do me a favor unless he doesn't listen to me."; @@ -6613,18 +6743,29 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ mes "If I go out to get a dress, I may be the first princess in Rune-Midgarts who dies for a dress. So would you please save me from this situation?"; next; mes "[" + strcharinfo(0) + "]"; - mes "Of course, I'll do my best to help you."; - mes "You need cloth, accessories and dyes don't you?"; - next; - mes "[Agnes]"; - mes "Yes, you are right!"; - mes "You understand me very well! I like you very much."; - next; - mes "[Agnes]"; - mes "Can you be my friend. I have wanted a woman who understands me very much."; - next; - mes "[" + strcharinfo(0) + "]"; - mes "Of course. What do you want?"; + if (Sex == SEX_FEMALE) { + mes "Of course, I'll do my best to help you."; + mes "You need cloth, accessories and dyes don't you?"; + next; + mes "[Agnes]"; + mes "Yes, you are right!"; + mes "You understand me very well! I like you very much."; + next; + mes "[Agnes]"; + mes "Can you be my friend. I have wanted a woman who understands me very much."; + next; + mes "[" + strcharinfo(0) + "]"; + mes "Of course. What do you want?"; + } + else { + mes "Hmm.. how can I help you?"; + next; + mes "[Agnes]"; + mes "Of course, you will get cloth, accessories and dyes!"; + next; + mes "[" + strcharinfo(0) + "]"; + mes "Then which kind do you want?"; + } next; mes "[Agnes]"; mes "There is an accessory I really want to have, but it is so rare that I couldn't get it."; @@ -6667,6 +6808,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ mes "[Agnes]"; mes "The success of my banquet is in your hands. I will do my best to make it one of the best ever."; setquest 14508;// Jewel and Cloth + ep16_lug = 14; close3; case 0: case 1: @@ -6698,8 +6840,9 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ mes "I have made a decision!!"; next; mes "[Agnes]"; - switch( rand(14510,14515) ) { - case 14510: + switch( rand(1,10) ) { + case 1: + case 2: mes "I prefer the soft pink dress other than young flower petal blooming on a large field. To be like that, I think I need a very soft silk cloth."; next; mes "[Agnes]"; @@ -6719,7 +6862,8 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ erasequest 14509;// Still Making It setquest 14510;// Pink Petal-like Dress close3; - case 14511: + case 3: + case 4: mes "Flower! It a flower! Large and shining jewels are too common here in the palace."; next; mes "[Agnes]"; @@ -6739,73 +6883,7 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ erasequest 14509;// Still Making It setquest 14511;// Beautiful Flower Decoration close3; - case 14512: - mes "I like a black dress that reminds of dark night. A dress so elegant and beautiful that makes people to admire in silence."; - next; - mes "[Agnes]"; - mes "I should make a dress that is as far and mysterious as a dark night."; - next; - mes "[Agnes]"; - mes "I will go around the banquet hall like a sleek cat, concealing everything underneath the black dress."; - next; - mes "[Agnes]"; - mes "To do so, I think I need ^0000cd20 " + getitemname(7205) + "^000000."; - next; - mes "[Agnes]"; - mes "This will be beautiful dress without a decoration."; - next; - mes "[Agnes]"; - mes "Dear adventurer, my black night-like dress is up to your hands."; - erasequest 14509;// Still Making It - setquest 14512;// Dress of the Night Sky - close3; - case 14513: - mes "Have you ever watch the burning sun directly. I am sure you haven't. The sun stabs the eyes of the people who watch it so that they cannot watch it."; - next; - mes "[Agnes]"; - mes "But I wonder how many people lost their eyes after watching the sun directly. Why do people watch that burning fire? What is it?"; - next; - mes "[Agnes]"; - mes "Dear adventurer. I want to have that burning fire."; - next; - mes "[Agnes]"; - mes "I heard that there is the ^0000cdhot hair^000000 that looks burning but not hot at all, though the name sounds contradictory."; - next; - mes "[Agnes]"; - mes "I will use it to make a beautiful shawl. As soon as I enter the banquet hall, I will be able to give a strong impression."; - next; - mes "[Agnes]"; - mes "Please get me ^0000cd20 strands of " + getitemname(7122) + "^000000."; - next; - mes "[Agnes]"; - mes "My beautiful shawl burning like the sun is up to your hands."; - erasequest 14509;// Still Making It - setquest 14513;// Shawl of the Blazing Sun - close3; - case 14514: - mes "I would like to make a fairy dress! A dress so shining in golden light that anyone should admire it."; - next; - mes "[Agnes]"; - mes "Cloth is sufficient, but the problem is decoration. I heard that there is something called fairy's wing."; - next; - mes "[Agnes]"; - mes "It will make a dress as elegant as fairy and on which I can work lightly. The thought alone makes you fascinated?"; - next; - mes "[Agnes]"; - mes "Every time I step, the luxury lace will flutter, making people to imagine a fairy waling in the wood. The dress will make me better."; - next; - mes "[Agnes]"; - mes "Of course, I will not attach them as they are. I know a person who will modify them properly."; - next; - mes "[Agnes]"; - mes "Dear adventurer, Please get me ^0000cd5 " + getitemname(6557) + "^000000."; - next; - mes "[Agnes]"; - mes "My fairly-like dress is up to you hands."; - erasequest 14509;// Still Making It - setquest 14514;// Step of the Fairy - close3; - case 14515: + case 5: mes "I was thinking of how I can emphasize my pearl necklace."; next; mes "[Agnes]"; @@ -6834,12 +6912,79 @@ prt_cas_q,96,184,1 script Agnes Roegenburg#ep16lu 4_EP16_AGNES,{ erasequest 14509;// Still Making It setquest 14515;// Sparkling Star close3; + case 6: + mes "I would like to make a fairy dress! A dress so shining in golden light that anyone should admire it."; + next; + mes "[Agnes]"; + mes "Cloth is sufficient, but the problem is decoration. I heard that there is something called fairy's wing."; + next; + mes "[Agnes]"; + mes "It will make a dress as elegant as fairy and on which I can work lightly. The thought alone makes you fascinated?"; + next; + mes "[Agnes]"; + mes "Every time I step, the luxury lace will flutter, making people to imagine a fairy waling in the wood. The dress will make me better."; + next; + mes "[Agnes]"; + mes "Of course, I will not attach them as they are. I know a person who will modify them properly."; + next; + mes "[Agnes]"; + mes "Dear adventurer, Please get me ^0000cd5 " + getitemname(6557) + "^000000."; + next; + mes "[Agnes]"; + mes "My fairly-like dress is up to you hands."; + erasequest 14509;// Still Making It + setquest 14514;// Step of the Fairy + close3; + case 7: + case 8: + mes "Have you ever watch the burning sun directly. I am sure you haven't. The sun stabs the eyes of the people who watch it so that they cannot watch it."; + next; + mes "[Agnes]"; + mes "But I wonder how many people lost their eyes after watching the sun directly. Why do people watch that burning fire? What is it?"; + next; + mes "[Agnes]"; + mes "Dear adventurer. I want to have that burning fire."; + next; + mes "[Agnes]"; + mes "I heard that there is the ^0000cdhot hair^000000 that looks burning but not hot at all, though the name sounds contradictory."; + next; + mes "[Agnes]"; + mes "I will use it to make a beautiful shawl. As soon as I enter the banquet hall, I will be able to give a strong impression."; + next; + mes "[Agnes]"; + mes "Please get me ^0000cd20 strands of " + getitemname(7122) + "^000000."; + next; + mes "[Agnes]"; + mes "My beautiful shawl burning like the sun is up to your hands."; + erasequest 14509;// Still Making It + setquest 14513;// Shawl of the Blazing Sun + close3; + default: + mes "I like a black dress that reminds of dark night. A dress so elegant and beautiful that makes people to admire in silence."; + next; + mes "[Agnes]"; + mes "I should make a dress that is as far and mysterious as a dark night."; + next; + mes "[Agnes]"; + mes "I will go around the banquet hall like a sleek cat, concealing everything underneath the black dress."; + next; + mes "[Agnes]"; + mes "To do so, I think I need ^0000cd20 " + getitemname(7205) + "^000000."; + next; + mes "[Agnes]"; + mes "This will be beautiful dress without a decoration."; + next; + mes "[Agnes]"; + mes "Dear adventurer, my black night-like dress is up to your hands."; + erasequest 14509;// Still Making It + setquest 14512;// Dress of the Night Sky + close3; } } } -prt_cas_q,90,184,7 script Helmut Roegenburg#ep16l 4_EP16_HELMUT,{ - if (banquet_roegenburg_quest == 0) { +prt_cas_q,90,184,7 script Helmut Roegenburg#ep16lug 4_EP16_HELMUT,{ + if (ep16_lug == 0) { cutin "16hel",0; mes "[Helmut]"; mes "Hello."; @@ -6850,7 +6995,7 @@ prt_cas_q,90,184,7 script Helmut Roegenburg#ep16l 4_EP16_HELMUT,{ mes "He will explain better than me."; close3; } - if (banquet_roegenburg_quest <= 2) { + if (ep16_lug < 3) { cutin "16hel",0; mes "[Helmut]"; mes "Did you see my brother, ^0000cdWolf Roegenburg^000000?"; @@ -6860,7 +7005,7 @@ prt_cas_q,90,184,7 script Helmut Roegenburg#ep16l 4_EP16_HELMUT,{ mes "If you want to know about the Roegenburg, it will be a quality time."; close3; } - if (banquet_roegenburg_quest >= 3 && banquet_roegenburg_quest <= 6) { + if (ep16_lug > 2 && ep16_lug < 7) { cutin "16hel",0; mes "[Helmut]"; mes "I am glad that I come back home and can see the family members."; @@ -6876,7 +7021,7 @@ prt_cas_q,90,184,7 script Helmut Roegenburg#ep16l 4_EP16_HELMUT,{ } prt_cas_q,86,180,7 script Kalbern#ep16lug 4_M_RUSCHILD,{ - if (banquet_roegenburg_quest <= 6) { + if (ep16_lug <= 6) { mes "[Kalbern]"; mes "Dear adventurer, hello."; mes "I am ^0000cdKalbern^000000 and a chamberlain of Helmut."; @@ -6913,12 +7058,12 @@ prt_cas_q,86,180,7 script Kalbern#ep16lug 4_M_RUSCHILD,{ } prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ - if (checkweight(501,1) == 0) { + if (checkweight(1301,1) == 0) { mes "[Wolf Roegenburg]"; mes "Well, you seem to have lots of luggage. How about removing some?"; close; } - if (banquet_roegenburg_quest == 0) { + if (ep16_lug == 0) { cutin "16wol_nor",2; mes "[Wolf]"; mes "Thank you for visiting the Roegenburg."; @@ -6928,7 +7073,7 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ mes "He enjoys talking with adventurers."; close3; } - if (banquet_roegenburg_quest == 1) { + if (ep16_lug == 1) { cutin "16wol_nor",2; mes "[Wolf]"; mes "Dear adventurer, it is a honor to have you in the Roegenburg."; @@ -6957,7 +7102,7 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ mes "[Wolf]"; mes "Agnes, don't say that. it is not appropriate. We are telling the adventurer of the story of the Roegenburg..."; next; - classchange( 4_EP16_MEYER, "Myer Roegenburg#ep16lug", bc_self ); + cloakoffnpc "Myer Roegenburg#ep16lug", getcharid(0); cutin "16mye_nor",1; mes "[Myer]"; mes "Now, will my prince come with me?"; @@ -7014,7 +7159,7 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ mes "[Myer]"; mes "Yes, you are right. I think I am the unwelcome guest. I'd better leave. Agnes, I'll come back later."; next; - classchange( HIDDEN_WARP_NPC, "Myer Roegenburg#ep16lug", bc_self ); + cloakonnpc "Myer Roegenburg#ep16lug", getcharid(0); cutin "16agn_nor",2; mes "[Agnes]"; mes "Oh my god, I forgot. I have to make preparations!"; @@ -7055,16 +7200,18 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ next; mes "[Wolf]"; mes "Yes. right."; - erasequest 14495;// To Wolf + completequest 14495;// To Wolf setquest 14496;// To Isaac - banquet_roegenburg_quest = 2; - if (banquet_walther_quest >= 3 && banquet_nerius_quest >= 1 && banquet_heine_quest >= 2 && banquet_wigner_quest >= 2 && banquet_richard_quest >= 2 && banquet_geoborg_quest >= 2 && banquet_roegenburg_quest >= 2) { + if (achievementinfo(130000, ACHIEVEINFO_COUNT7) == 0) + achievementupdate(130000, ACHIEVEINFO_COUNT7, 1); + ep16_lug = 2; + if (isbegin_quest(7682) == 1 && isbegin_quest(5402) == 2 && isbegin_quest(7683) == 2 && isbegin_quest(7684) == 2 && ep16_wal > 1 && ep16_wig > 1 && ep16_lug > 1 && ep16_gaobs > 1) { completequest 7682;// Socializing Starts from an Eye Contact setquest 7685;// What Is the Next Thing on the Schedule ? } close3; } - if (banquet_roegenburg_quest == 2) { + if (ep16_lug == 2) { cutin "16wol_nor",2; mes "[Wolf]"; mes "Walk along the ^0000cdcorridor. The Wigner is in the last room^000000."; @@ -7074,7 +7221,7 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ mes "I am very sorry to cause inconvenience to you."; close3; } - if (banquet_roegenburg_quest == 3) { + if (ep16_lug == 3) { if (countitem(6930) < 1) { cutin "16wol_nor",2; mes "[Wolf]"; @@ -7082,6 +7229,7 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ mes "You just go to the ^0000cdWigner and bring a thing from Isaac^000000."; close3; } + cloakoffnpc "Myer Roegenburg#ep16lug", getcharid(0); cutin "16wol_nor",2; mes "[Wolf]"; mes "Dear adventurer, did you bring the thing? Oh, you have brought it. Thank you very much."; @@ -7172,13 +7320,13 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ next; mes "[Wolf]"; mes "Then, see you soon."; - delitem 6930,1;// Sample of New Business Item + delitem 6930,1;// Biz_Items_Sample erasequest 14497;// Delivery for Wolf setquest 14498;// Which Rumor - banquet_roegenburg_quest = 4; + ep16_lug = 4; close3; } - if (banquet_roegenburg_quest == 4 || banquet_roegenburg_quest == 5) { + if (ep16_lug == 4 || ep16_lug == 5) { cutin "16wol_nor",2; mes "[Wolf]"; mes "What is the rumor about Roegenburg that is circulating in Prontera."; @@ -7193,7 +7341,7 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ mes "Then see you soon."; close3; } - if (banquet_roegenburg_quest == 6) { + if (ep16_lug == 6) { cutin "16wol_nor",2; mes "[Wolf]"; mes "Hi, you look a little tired."; @@ -7242,7 +7390,7 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ mes "[Myer]"; mes "Well, as much as needed?"; next; - emotion ET_HUK, getnpcid(0, "Maximilian Roegenburg#e"); + emotion ET_HUK, getnpcid(0, "Maximilian Roegenburg#ep16lug"); emotion ET_HUK; emotion ET_HUK, getnpcid(0, "Agnes Roegenburg#ep16lu"); cutin "16hel",0; @@ -7412,7 +7560,7 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ mes "[Myer]"; mes "...Excuse me."; next; - classchange( HIDDEN_WARP_NPC, "Myer Roegenburg#ep16lug", bc_self ); + cloakonnpc "Myer Roegenburg#ep16lug", getcharid(0); cutin "16agn_ang",2; mes "[Agnes]"; mes "Myer! where are you going? Are going to leave the family again?"; @@ -7441,12 +7589,12 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ mes "......"; mes "Excuse me too."; next; - classchange( HIDDEN_WARP_NPC, "Helmut Roegenburg#ep16l", bc_self ); - classchange( HIDDEN_WARP_NPC, "Kalbern#ep16lug", bc_self ); + cloakonnpc "Helmut Roegenburg#ep16lug", getcharid(0); cutin "",255; mes "[Kalbern]"; mes "Lord Helmut! where are you going?"; next; + cloakonnpc "Kalbern#ep16lug", getcharid(0); cutin "16wol_nor",2; mes "[Wolf]"; mes "......"; @@ -7477,11 +7625,11 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ mes "No. I'll come back soon."; erasequest 14501;// Report to Wolf setquest 14502;// To Isaac - getitem 6931,1;// Top Secret Document - banquet_roegenburg_quest = 7; + getitem 6931,1;// Secret_Documents + ep16_lug = 7; close3; } - if (banquet_roegenburg_quest == 7) { + if (ep16_lug == 7) { cutin "16wol_nor",2; mes "[Wolf]"; mes "Did you deliver the document to Isaac? I should have done it myself, but I got busy suddenly."; @@ -7493,7 +7641,7 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ mes "Then see you soon."; close3; } - if (banquet_roegenburg_quest == 8) { + if (ep16_lug == 8) { cutin "16wol_nor",2; mes "[Wolf]"; mes "Dear adventurer, thank you very much. Was Wigner offended?"; @@ -7624,11 +7772,11 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ mes "Yes. I'll come back soon."; erasequest 14503;// Report to Wolf setquest 14504;// In Search of Helmut - getitem 22847,1;// Prontera Badge - banquet_roegenburg_quest = 9; + getitem 22847,1;// BadgeOfProntera + ep16_lug = 9; close3; } - if (banquet_roegenburg_quest >= 9 && banquet_roegenburg_quest < 13) { + if (ep16_lug > 8 && ep16_lug < 13) { cutin "16wol_nor",2; mes "[Wolf]"; mes "I think I was closer to brothers than now, to Helmut and Myer."; @@ -7655,7 +7803,7 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ mes "I think I am going to continue to go around to find it."; close3; } - if (banquet_roegenburg_quest == 13) { + if (ep16_lug > 12) { cutin "16wol_nor",2; mes "[Wolf]"; mes "Dear adventurer, thanks to you, I feel that my brothers and I have become closer."; @@ -7675,20 +7823,23 @@ prt_cas_q,96,186,3 script Wolf Roegenburg#ep16lug 4_EP16_WOLF,{ } } -prt_cas_q,90,184,7 script #ep16lug004 HIDDEN_WARP_NPC,5,5,{ +prt_cas_q,90,184,7 script #ep16lug004 HIDDEN_NPC,5,5,{ end; OnTouch: - if (banquet_roegenburg_quest >= 3 && banquet_roegenburg_quest <= 6) - classchange( 4_EP16_MEYER, "Myer Roegenburg#ep16lug", bc_self ); - else if (banquet_roegenburg_quest >= 7) { - classchange( HIDDEN_WARP_NPC, "Helmut Roegenburg#ep16l", bc_self ); - classchange( HIDDEN_WARP_NPC, "Kalbern#ep16lug", bc_self ); + if (ep16_lug < 3) + cloakonnpc "Myer Roegenburg#ep16lug", getcharid(0); + else if (ep16_lug > 2 && ep16_lug < 7) + cloakoffnpc "Myer Roegenburg#ep16lug", getcharid(0); + else if (ep16_lug > 6) { + cloakonnpc "Helmut Roegenburg#ep16lug", getcharid(0); + cloakonnpc "Myer Roegenburg#ep16lug", getcharid(0); + cloakonnpc "Kalbern#ep16lug", getcharid(0); } end; } -prt_cas_q,92,182,7 script Myer Roegenburg#ep16lug HIDDEN_WARP_NPC,{ - if (banquet_roegenburg_quest >= 3 && banquet_roegenburg_quest <= 6) { +prt_cas_q,92,182,7 script Myer Roegenburg#ep16lug 4_EP16_MEYER,{ + if (ep16_lug > 2 && ep16_lug < 7) { cutin "16mye_nor",1; mes "[Myer]"; mes "It feels good that I come home for a long time."; @@ -7705,10 +7856,30 @@ prt_cas_q,92,182,7 script Myer Roegenburg#ep16lug HIDDEN_WARP_NPC,{ mes "It is stupid to think like this, as I left home."; close3; } + end; + +OnInit: + cloakonnpc strnpcinfo(0); + end; +} + +prt_cas_q,74,189,5 script #ep16lug000 HIDDEN_NPC,5,5,{ + end; +OnTouch: + if (ep16_lug < 3) + cloakonnpc "Myer Roegenburg#ep16lug", getcharid(0); + else if (ep16_lug > 2 && ep16_lug < 7) + cloakoffnpc "Myer Roegenburg#ep16lug", getcharid(0); + else if (ep16_lug > 6) { + cloakonnpc "Helmut Roegenburg#ep16lug", getcharid(0); + cloakonnpc "Myer Roegenburg#ep16lug", getcharid(0); + cloakonnpc "Kalbern#ep16lug", getcharid(0); + } + end; } function script F_kids_roegenburg_quest { - switch( banquet_roegenburg_quest ) { + switch( ep16_lug ) { case 4: next; emotion ET_FRET, getnpcid(0, "Kiddo#ep16lug03"); @@ -7854,7 +8025,7 @@ function script F_kids_roegenburg_quest { mes "I will be waiting for you!"; erasequest 14498;// Which Rumor setquest 14499;// Prove Yourself - banquet_roegenburg_quest = 5; + ep16_lug = 5; close; case 5: mes "[" + strcharinfo(0) + "]"; @@ -7959,11 +8130,11 @@ function script F_kids_roegenburg_quest { next; mes "[Allen]"; mes "Men do not see anyone out."; - delitem 6926,1;// Rune-Midgartz History Book + delitem 6926,1;// Midgards_Histories delitem 7166,12;// Soft Silk erasequest 14499;// Prove Yourself setquest 14501;// Report to Wolf - banquet_roegenburg_quest = 6; + ep16_lug = 6; close; case 11: mes "[" + strcharinfo(0) + "]"; @@ -8011,7 +8182,7 @@ function script F_kids_roegenburg_quest { mes "[Harriet]"; mes "Ah, there he comes!, Jonathan! We have a guest."; next; - classchange( 4_M_04, "Ordinary Man#ep16lug02", bc_self ); + cloakoffnpc "Ordinary Man#ep16lug02", getcharid(0); mes "[Myer]"; mes "Dear adventurer. What has brought you here?"; next; @@ -8114,14 +8285,14 @@ function script F_kids_roegenburg_quest { mes "If you need my help, just find me. I will help you with all my efforts. Take care!"; erasequest 14506;// Things Turned out This Way setquest 14507;// To Maximilian - banquet_roegenburg_quest = 12; + ep16_lug = 12; close; } return; } prontera,271,70,3 script Kiddo#ep16lug01 4_M_MIKID,{ - if (banquet_roegenburg_quest < 4) { + if (ep16_lug < 4) { mes "[Allen]"; mes "Do you want business with us? But we don't meet with anybody."; next; @@ -8130,7 +8301,7 @@ prontera,271,70,3 script Kiddo#ep16lug01 4_M_MIKID,{ mes "Go back."; close; } - if (banquet_roegenburg_quest == 4) { + if (ep16_lug == 4) { mes "[Allen]"; mes "Today, the wind is cold and smells rotten. I feel that something has happened."; next; @@ -8142,7 +8313,7 @@ prontera,271,70,3 script Kiddo#ep16lug01 4_M_MIKID,{ mes "Is it so? I feel that they are testing me."; F_kids_roegenburg_quest(); } - if (banquet_roegenburg_quest == 5) { + if (ep16_lug == 5) { if (countitem(6926) < 1 || countitem(7166) < 12 || checkquest(14499,HUNTING) < 2) { mes "[Allen]"; mes "He has come with empty hands."; @@ -8165,7 +8336,7 @@ prontera,271,70,3 script Kiddo#ep16lug01 4_M_MIKID,{ } F_kids_roegenburg_quest(); } - if (banquet_roegenburg_quest >= 6 && banquet_roegenburg_quest <= 10) { + if (ep16_lug >= 6 && ep16_lug <= 10) { mes "[Allen]"; mes "Do you hear more? If so, you need to prove you have stronger credentials."; next; @@ -8179,7 +8350,7 @@ prontera,271,70,3 script Kiddo#ep16lug01 4_M_MIKID,{ mes "Please go. We'll handle him."; close; } - if (banquet_roegenburg_quest == 11) + if (ep16_lug == 11) F_kids_roegenburg_quest(); mes "[Allen]"; mes "The threat of war has disappeared. Hero in the time of turbulence is not born. Darkness calls me!"; @@ -8193,7 +8364,7 @@ prontera,271,70,3 script Kiddo#ep16lug01 4_M_MIKID,{ } prontera,271,68,1 script Kiddo#ep16lug02 4_M_KID1,5,5,{ - if (banquet_roegenburg_quest < 4) { + if (ep16_lug < 4) { mes "[Jin]"; mes "It is a good weather today."; mes "The banquet is in full swing in the palace."; @@ -8205,7 +8376,7 @@ prontera,271,68,1 script Kiddo#ep16lug02 4_M_KID1,5,5,{ mes "End of today's diary."; close; } - if (banquet_roegenburg_quest == 4) { + if (ep16_lug == 4) { mes "[Jin]"; mes "It is a good weather today."; mes "The banquet is in full swing in the palace."; @@ -8222,8 +8393,8 @@ prontera,271,68,1 script Kiddo#ep16lug02 4_M_KID1,5,5,{ mes "Human comes from nothing and goes to nothing."; F_kids_roegenburg_quest(); } - if (banquet_roegenburg_quest == 5) { - if (countitem(6926) < 1 || countitem(7166) < 12) { + if (ep16_lug == 5) { + if (countitem(6926) < 1 || countitem(7166) < 12 || checkquest(14499,HUNTING) < 2) { mes "[Jin]"; mes "Huh? why empty hands? I cannot see what we told you."; next; @@ -8245,7 +8416,7 @@ prontera,271,68,1 script Kiddo#ep16lug02 4_M_KID1,5,5,{ } F_kids_roegenburg_quest(); } - if (banquet_roegenburg_quest >= 6 && banquet_roegenburg_quest <= 10) { + if (ep16_lug >= 6 && ep16_lug <= 10) { mes "[Jin]"; mes "I am enjoying reading the book you gave, though it is too large and heavy."; next; @@ -8253,7 +8424,7 @@ prontera,271,68,1 script Kiddo#ep16lug02 4_M_KID1,5,5,{ mes "My dream is to become a historian. I would like travel around Midgards and discover old hidden stories."; close; } - if (banquet_roegenburg_quest == 11) + if (ep16_lug == 11) F_kids_roegenburg_quest(); mes "[Jin]"; mes "Jonathan returned the book you borrowed and he borrowed me other two volumes."; @@ -8263,18 +8434,18 @@ prontera,271,68,1 script Kiddo#ep16lug02 4_M_KID1,5,5,{ close; OnTouch: - if (banquet_roegenburg_quest >= 12) - classchange( 4_M_04, "Ordinary Man#ep16lug02", bc_self ); + if (ep16_lug >= 12) + cloakoffnpc "Ordinary Man#ep16lug02", getcharid(0); end; } prontera,269,69,5 script Kiddo#ep16lug03 4_F_KID2,{ - if (banquet_roegenburg_quest < 4) { + if (ep16_lug < 4) { mes "[Harriet]"; mes "How beautiful and shining the dresses of princesses would be! I wish I could wear as many pretty dresses as possible."; close; } - if (banquet_roegenburg_quest == 4) { + if (ep16_lug == 4) { emotion ET_SMILE; mes "[Harriet]"; mes "Hello, singing birds and pretty flowers."; @@ -8294,8 +8465,8 @@ prontera,269,69,5 script Kiddo#ep16lug03 4_F_KID2,{ mes "I'm too big to be locked in it."; F_kids_roegenburg_quest(); } - if (banquet_roegenburg_quest == 5) { - if (countitem(6926) < 1 || countitem(7166) < 12) { + if (ep16_lug == 5) { + if (countitem(6926) < 1 || countitem(7166) < 12 || checkquest(14499,HUNTING) < 2) { mes "[Jin]"; mes "Huh? why empty hands? I cannot see what we told you."; next; @@ -8317,7 +8488,7 @@ prontera,269,69,5 script Kiddo#ep16lug03 4_F_KID2,{ } F_kids_roegenburg_quest(); } - if (banquet_roegenburg_quest >= 6 && banquet_roegenburg_quest <= 10) { + if (ep16_lug >= 6 && ep16_lug <= 10) { mes "[Harriet]"; mes "Please ask my mother to use this cloth to make clothes"; mes "My mother makes pretty clothes!"; @@ -8327,7 +8498,7 @@ prontera,269,69,5 script Kiddo#ep16lug03 4_F_KID2,{ mes "Ah, I wish that she was here!"; close; } - if (banquet_roegenburg_quest == 11) + if (ep16_lug == 11) F_kids_roegenburg_quest(); mes "[Harriet]"; mes "Jonathan said that the threat of war is gone. What a relief that would be."; @@ -8343,8 +8514,8 @@ yuno_fild01,241,171,7 duplicate(Border Guards#ep16lug01) Border Guards#ep16lug06 yuno_fild01,243,171,1 duplicate(Border Guards#ep16lug01) Border Guards#ep16lug07 4_M_JOB_WIZARD yuno_fild01,245,171,1 duplicate(Border Guards#ep16lug01) Border Guards#ep16lug08 4_M_PECOKNIGHT -yuno_fild01,242,175,5 script Helmut Roegenburg#ep16lug01_b 4_EP16_HELMUT,5,5,{ - if (banquet_roegenburg_quest == 9) { +yuno_fild01,242,175,5 script Helmut Roegenburg#ep16lug02 4_EP16_HELMUT,5,5,{ + if (ep16_lug == 9) { mes "[Helmut]"; mes "Dear adventurer? What are you doing here? It is dangerous. The monster came down here just before. Please leave now."; next; @@ -8401,10 +8572,10 @@ yuno_fild01,242,175,5 script Helmut Roegenburg#ep16lug01_b 4_EP16_HELMUT,5,5,{ mes "Yes. thank you. Please take care."; erasequest 14504;// In Search of Helmut setquest 14505;// I Won't go Back - banquet_roegenburg_quest = 10; + ep16_lug = 10; close; } - if (banquet_roegenburg_quest == 10) { + if (ep16_lug == 10) { mes "[Helmut]"; mes "This is where I should stay."; mes "Please tell him '^0000cdI give up wars and transfer my position of heir to Wolf^000000'."; @@ -8422,21 +8593,21 @@ yuno_fild01,242,175,5 script Helmut Roegenburg#ep16lug01_b 4_EP16_HELMUT,5,5,{ close; OnTouch: - if (banquet_roegenburg_quest == 9 || banquet_roegenburg_quest == 10) { + if (ep16_lug == 9 || ep16_lug == 10) { mes "[Helmut]"; mes "Give shout of concentration!!!"; - for ( .@i = 1; .@i < 9; .@i++ ) + for ( .@i = 1; .@i < 9; ++.@i ) npctalk "Hab!", "Border Guards#ep16lug0" + .@i, bc_area; next; mes "[Helmut]"; mes "Louder!!!!"; - for ( .@i = 1; .@i < 9; .@i++ ) + for ( .@i = 1; .@i < 9; ++.@i ) npctalk "Hab!", "Border Guards#ep16lug0" + .@i, bc_area; next; mes "[Helmut]"; mes "We!!!!!!"; next; - for ( .@i = 1; .@i < 9; .@i++ ) + for ( .@i = 1; .@i < 9; ++.@i ) npctalk "protect our families and our country!!!", "Border Guards#ep16lug0" + .@i, bc_area; close; } @@ -8444,7 +8615,7 @@ OnTouch: } yuno_fild01,244,176,3 script Kalbern#ep16lug02 4_M_RUSCHILD,{ - if (banquet_roegenburg_quest == 9 || banquet_roegenburg_quest == 10) { + if (ep16_lug == 9 || ep16_lug == 10) { mes "[Kalbern]"; mes "I am very happy that I came back here."; mes "Now I've got something to do."; @@ -8463,8 +8634,9 @@ yuno_fild01,244,176,3 script Kalbern#ep16lug02 4_M_RUSCHILD,{ close; } -prontera,269,73,5 script Ordinary Man#ep16lug02 HIDDEN_WARP_NPC,{ - if (banquet_roegenburg_quest >= 12) { +//prontera,269,73,5 script Ordinary Man#ep16lug02 4_M_04,5,5,{ // no OnTouch +prontera,269,73,5 script Ordinary Man#ep16lug02 4_M_04,{ + if (ep16_lug >= 12) { mes "[Myer]"; mes "Thank you for coming here to deliver the message. Without you, I would not have listened to anything like the one I heard today."; next; @@ -8479,15 +8651,62 @@ prontera,269,73,5 script Ordinary Man#ep16lug02 HIDDEN_WARP_NPC,{ mes "Shh! You'd better not speak to me."; mes "There are may eyes around."; close; + +OnInit: + cloakonnpc strnpcinfo(0); + end; } // Richard -prt_cas_q,80,80,4 script Butler for the Richards 1_M_LIBRARYMASTER,{ - if (checkweight(501,1) == 0) { +prt_cas_q,80,80,4 script Butler for the Richards#EP161GAM 1_M_LIBRARYMASTER,{ + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } - if (banquet_main_quest < 2) {// pre-req + switch( checkquest(5414,PLAYTIME) ) { + case -1: + break; + case 0: + case 1: + .@r = rand(1,5); + mes "[Butler]"; + if (.@r == 1) + mes "It is a fast way to get stronger to take a good rest after a hard battle."; + else if (.@r == 2) + mes "The Richard family runs various ways of training. Taking a rest is one of the most important training."; + else if (.@r == 3) + mes "The former heads of the Richard family have also taken enough rest after training. Well, it's too common to mention, I guess."; + else if (.@r == 4) + mes "Everyone may know how one feels itching for more action after training. However, that is the time to take a rest."; + else + mes "The next training would be just as tough. You'd better take a rest now."; + close; + case 2: + erasequest 5414;// [Stand by]Warrior Discipline + mes "[Butler]"; + mes "I feel that you must be raring to get some action. I guess it is the time to proceed with the next training."; + close; + } + .@ep161_family00 = isbegin_quest(5402) + isbegin_quest(5403); + if (.@ep161_family00 == 0) { + if ((isbegin_quest(7681) == 2 && isbegin_quest(7682) == 1) || ep16_royal == 2) { + mes "[Butler]"; + mes "How do you do? I have been waiting for you after being informed by the Chamberlain."; + next; + mes "[Butler]"; + mes "This it the room of the Richard family which has been controlling the military power of the kingdom."; + next; + mes "[Butler]"; + mes "I have heard your name for that " + strcharinfo(0) + ", you are the hero in the subjugation of Morocc"; + next; + mes "[Butler]"; + mes "Oh! I am sorry to take too much of your time. Inside the room, there is Po, the next head of the family, waiting for you."; + next; + mes "[Butler]"; + mes "Let me escort you inside."; + setquest 5402;// The Royal Richard + close; + } mes "[Butler]"; mes "This it the room of the Richard family."; next; @@ -8495,31 +8714,12 @@ prt_cas_q,80,80,4 script Butler for the Richards 1_M_LIBRARYMASTER,{ mes "Po, the next head of the family, is taking a rest. Please come back later."; close; } - if (banquet_richard_quest == 0) { - mes "[Butler]"; - mes "How do you do? I have been waiting for you after being informed by the Chamberlain."; - next; - mes "[Butler]"; - mes "This it the room of the Richard family which has been controlling the military power of the kingdom."; - next; - mes "[Butler]"; - mes "I have heard your name for that " + strcharinfo(0) + ", you are the hero in the subjugation of Morocc"; - next; - mes "[Butler]"; - mes "Oh! I am sorry to take too much of your time. Inside the room, there is Po, the next head of the family, waiting for you."; - next; - mes "[Butler]"; - mes "Let me escort you inside."; - banquet_richard_quest = 1; - setquest 5402;// The Royal Richard - close; - } - if (banquet_richard_quest == 1) { + if (.@ep161_family00 == 1) { mes "[Butler]"; mes "Inside the room, there is Po, the next head of the family, waiting for you."; close; } - if (banquet_richard_quest == 2) { + if (.@ep161_family00 == 2) { mes "[Butler]"; mes "Have you met the next head of the family?"; next; @@ -8530,7 +8730,22 @@ prt_cas_q,80,80,4 script Butler for the Richards 1_M_LIBRARYMASTER,{ mes "Oh! I am sorry about my bad manners. It is nothing. Please never mind..."; close; } - if (banquet_richard_quest == 3) { + setarray .@quest_list[0], + 5404, // [Repeat]Warrior Discipline-Human + 5405, // [Repeat]Warrior Discipline-Animal + 5406, // [Repeat]Warrior Discipline-Insect + 5407, // [Repeat]Warrior Discipline-Fish + 5408, // [Repeat]Warrior Discipline-Plant + 5409, // [Repeat]Warrior Discipline-Devil + 5410, // [Repeat]Warrior Discipline-Angel + 5411, // [Repeat]Warrior Discipline-Immortal + 5412, // [Repeat]Warrior Discipline-Intangible + 5413; // [Repeat]Warrior Discipline-Dragon + setarray .@training_list$[0], "human","animal","insect","fish","plant","demon","angel","Immortal","nothing","dragon"; + .@size = getarraysize( .@quest_list ); + while( isbegin_quest(.@quest_list[.@i]) == 0 && .@i < .@size ) .@i++; + + if (.@ep161_family00 == 3) { if (BaseLevel < 140) { mes "[Butler]"; mes "I heard from Po the next head of the family that you are going to try the Richard battle training program."; @@ -8539,167 +8754,143 @@ prt_cas_q,80,80,4 script Butler for the Richards 1_M_LIBRARYMASTER,{ mes "For now, the training would be too overwhelming for you. You'd better learn the basics before proceeding with the training."; close; } - - switch( checkquest(5414,PLAYTIME) ) { - case -1: - break; - case 0: - case 1: - mes "[Butler]"; - if (isbegin_quest(5403) == 2) - mes "The former heads of the Richard family have also taken enough rest after training. Well, it's too common to mention, I guess."; - else - mes "The Richard family runs various ways of training. Taking a rest is one of the most important training."; - close; - case 2: - erasequest 5414;// [Stand by]Warrior Discipline - mes "[Butler]"; - mes "I feel that you must be raring to get some action. I guess it is the time to proceed with the next training."; - close; - } - - setarray .@quest_list[0], - 5404, // [Repeat]Warrior Discipline-Human - 5405, // [Repeat]Warrior Discipline-Animal - 5406, // [Repeat]Warrior Discipline-Insect - 5407, // [Repeat]Warrior Discipline-Fish - 5408, // [Repeat]Warrior Discipline-Plant - 5409, // [Repeat]Warrior Discipline-Devil - 5410, // [Repeat]Warrior Discipline-Angel - 5411, // [Repeat]Warrior Discipline-Immortal - 5412, // [Repeat]Warrior Discipline-Intangible - 5413; // [Repeat]Warrior Discipline-Dragon - setarray .@training_list$[0], "human","animal","insect","fish","plant","demon","angel","Immortal","nothing","dragon"; - .@size = getarraysize( .@quest_list ); - while( isbegin_quest(.@quest_list[.@i]) == 0 && .@i < .@size ) .@i++; - if (.@i == .@size) { mes "[Butler]"; - if (isbegin_quest(5403) == 2) - mes "Good. Are you ready now?"; - else { - mes "I heard from Po the next head of the family that you are going to try the Richard battle training program."; - next; - mes "[Butler]"; - mes "The training of the Richard family is differentiated from other training programs."; - next; - mes "[Butler]"; - mes "You must have been getting yourself trained by hunting the monsters individually."; - next; - mes "[Butler]"; - mes "From now on, you can be trained with hunting certain types of monsters such as human, animal, insect, fish, plant, demon, angel, nothing and dragon monsters."; - next; - mes "[Butler]"; - mes "It is supposed to be more effective to swing a sword than to say 100 words."; - } - while( true ) { - next; - mes "[Butler]"; - mes "Please select a training program to try."; - next; - .@s = select( "Warrior Discipline-Human", "Warrior Discipline-Animal", "Warrior Discipline-Insect", "Warrior Discipline-Fish", "Warrior Discipline-Plant", "Warrior Discipline-Devil", "Warrior Discipline-Angel", "Warrior Discipline-Immortal", "Warrior Discipline-Intangible", "Warrior Discipline-Dragon" ) - 1; - mes "[Butler]"; - mes "This training involves hunting 50 " + .@training_list$[.@s] + " monsters of Level 140 or higher."; - next; - mes "[Butler]"; - mes "Would you try this training?"; - next; - if (select( "Try.", "Do not try." ) == 2) { - mes "[Butler]"; - mes "Hum... You don't like the contents of the training? Well, it's OK. Why don't you choose another training?"; - continue; - } - mes "[Butler]"; - mes "You shouldn't let your guard down even when you feel that the training is too easy for your level. Good luck..."; - setquest .@quest_list[.@s]; - close; - } - } - - if (isbegin_quest(5403) == 2) { - mes "[Butler]"; - mes "Good. Are you ready now?"; - next; - } - if (checkquest(.@quest_list[.@i],HUNTING) == 2) { - if (isbegin_quest(5403) == 1) - completequest 5403;// The Royal Richard - erasequest .@quest_list[.@i]; - setquest 5414;// [Stand by]Warrior Discipline - getexp 500000,550000; - getitem 6919,4;// Honor Token - mes "[Butler]"; - mes "Congratulations on completing the training."; - next; - mes "[Butler]"; - mes "If you keep training, you'll achieve the goal you want."; - next; - mes "[Butler]"; - mes "This is what I have prepared for the reward for completing training."; - next; - mes "[Butler]"; - mes "We thank you for training with us since it benefits the Richard family. Don't feel pressured."; - close; + mes "I heard from Po the next head of the family that you are going to try the Richard battle training program."; + next; + mes "[Butler]"; + mes "The training of the Richard family is differentiated from other training programs."; + next; + mes "[Butler]"; + mes "You must have been getting yourself trained by hunting the monsters individually."; + next; + mes "[Butler]"; + mes "From now on, you can be trained with hunting certain types of monsters such as human, animal, insect, fish, plant, demon, angel, nothing and dragon monsters."; + next; + mes "[Butler]"; + mes "It is supposed to be more effective to swing a sword than to say 100 words."; } + } + else if (.@ep161_family00 == 4) { mes "[Butler]"; - mes "You are participating in the training. Do you need anything?"; - next; - switch( select( "No.", "About the way of training", "About the goal of training", "Give up the training." ) ) { - case 1: - mes "[Butler]"; - mes "You should deal with the training like the actual fight! Do not let your guard down during the training."; - close; - case 2: - mes "[Butler]"; - mes "The Richard family has always been concerned about the ways to produce more excellent warriors."; + mes "Good. Are you ready now?"; + } + else { + mes "[Butler]"; + mes "Hum, there seems to be an issue which cannot be resolved. Well, try again and if the same issue occurs, take a screenshot and send it to the admin team."; + close; + } + if (.@i == .@size) { + while( true ) { next; mes "[Butler]"; - mes "One of the former heads of the family felt that the way to train with a certain monster had a limit."; + mes "Please select a training program to try."; + next; + .@s = select( "Warrior Discipline-Human", "Warrior Discipline-Animal", "Warrior Discipline-Insect", "Warrior Discipline-Fish", "Warrior Discipline-Plant", "Warrior Discipline-Devil", "Warrior Discipline-Angel", "Warrior Discipline-Immortal", "Warrior Discipline-Intangible", "Warrior Discipline-Dragon" ) - 1; + mes "[Butler]"; + mes "This training involves hunting 50 " + .@training_list$[.@s] + " monsters of Level 140 or higher."; next; mes "[Butler]"; - mes "The former and former head of the family... Oh! Just to clear things out, he is retired, but he is not dead."; + mes "Would you try this training?"; next; - mes "[Butler]"; - mes "Hum... Let's come back down to the business... He has come up with the method to train with the monster depending on the level of the trainee or the type of the monster."; - next; - mes "[Butler]"; - mes "Well... The training began like that..."; - close; - case 3: - mes "[Butler]"; - mes "The goal of the training... It is an easy and difficult question."; - next; - mes "[Butler]"; - mes "The most obvious goal must be getting stronger. I would have answered if I was younger."; - next; - mes "[Butler]"; - mes "However, I would like to answer that it is to protect the people around me."; - next; - mes "[Butler]"; - mes "The goal may be different for each warrior."; - close; - case 4: - mes "[Butler]"; - mes "I won't stop you from giving up. However, you should know that the progress of your training so far won't be reflected in the next training."; - next; - if (select( "Do not give up.", "Give up." ) == 1) { + if (select( "Try.", "Do not try." ) == 2) { mes "[Butler]"; - mes "Good decision. You should deal with the training like the actual fight! Do not let your guard down during the training."; - close; + mes "Hum... You don't like the contents of the training? Well, it's OK. Why don't you choose another training?"; + continue; } - erasequest .@quest_list[.@i]; mes "[Butler]"; - mes "Too bad. If you finished the training, you must have been able to reap the benefit of hard work."; + mes "You shouldn't let your guard down even when you feel that the training is too easy for your level. Good luck..."; + setquest .@quest_list[.@s]; close; } } + next; + + if (checkquest(.@quest_list[.@i],HUNTING) == 2) { + if (isbegin_quest(5403) == 1) + completequest 5403;// The Royal Richard + erasequest .@quest_list[.@i]; + setquest 5414;// [Stand by]Warrior Discipline + getexp 500000,550000; + getitem 6919,4;// TokenOfHonor + mes "[Butler]"; + mes "Congratulations on completing the training."; + next; + mes "[Butler]"; + mes "If you keep training, you'll achieve the goal you want."; + next; + mes "[Butler]"; + mes "This is what I have prepared for the reward for completing training."; + next; + mes "[Butler]"; + mes "We thank you for training with us since it benefits the Richard family. Don't feel pressured."; + close; + } + mes "[Butler]"; + mes "You are participating in the training. Do you need anything?"; + next; + switch( select( "No.", "About the way of training", "About the goal of training", "Give up the training." ) ) { + case 1: + mes "[Butler]"; + mes "You should deal with the training like the actual fight! Do not let your guard down during the training."; + close; + case 2: + mes "[Butler]"; + mes "The Richard family has always been concerned about the ways to produce more excellent warriors."; + next; + mes "[Butler]"; + mes "One of the former heads of the family felt that the way to train with a certain monster had a limit."; + next; + mes "[Butler]"; + mes "The former and former head of the family... Oh! Just to clear things out, he is retired, but he is not dead."; + next; + mes "[Butler]"; + mes "Hum... Let's come back down to the business... He has come up with the method to train with the monster depending on the level of the trainee or the type of the monster."; + next; + mes "[Butler]"; + mes "Well... The training began like that..."; + close; + case 3: + mes "[Butler]"; + mes "The goal of the training... It is an easy and difficult question."; + next; + mes "[Butler]"; + mes "The most obvious goal must be getting stronger. I would have answered if I was younger."; + next; + mes "[Butler]"; + mes "However, I would like to answer that it is to protect the people around me."; + next; + mes "[Butler]"; + mes "The goal may be different for each warrior."; + close; + case 4: + mes "[Butler]"; + mes "I won't stop you from giving up. However, you should know that the progress of your training so far won't be reflected in the next training."; + next; + if (select( "Do not give up.", "Give up." ) == 1) { + mes "[Butler]"; + mes "Good decision. You should deal with the training like the actual fight! Do not let your guard down during the training."; + close; + } + erasequest .@quest_list[.@i]; + mes "[Butler]"; + mes "Too bad. If you finished the training, you must have been able to reap the benefit of hard work."; + close; + } } + prt_cas_q,93,74,4 script Po Richard#EP161GAM 4_M_6THPRIN1,{ - if (checkweight(501,1) == 0) { + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } - if (banquet_richard_quest == 0) { + if (BaseLevel < 100) { + mes "[Po Richard]"; + mes "An adventurer? I guess you need to try harder now."; + close3; + } + .@ep161_family00 = isbegin_quest(5402) + isbegin_quest(5403); + if (.@ep161_family00 == 0) { cutin "richard_po02",2; emotion ET_PROFUSELY_SWEAT; mes "[Po Richard]"; @@ -8712,7 +8903,7 @@ prt_cas_q,93,74,4 script Po Richard#EP161GAM 4_M_6THPRIN1,{ mes "That is the way to do it in the palace."; close3; } - if (banquet_richard_quest == 1) { + if (.@ep161_family00 == 1) { cutin "richard_po01",2; emotion ET_SPARK; mes "[Po Richard]"; @@ -8754,8 +8945,9 @@ prt_cas_q,93,74,4 script Po Richard#EP161GAM 4_M_6THPRIN1,{ mes "Well, since it is not important, I guess we should let it pass. It's been a long time since I say this much. I am thirsty."; next; completequest 5402;// The Royal Richard - banquet_richard_quest = 2; - if (banquet_walther_quest >= 3 && banquet_nerius_quest >= 1 && banquet_heine_quest >= 2 && banquet_wigner_quest >= 2 && banquet_richard_quest >= 2 && banquet_geoborg_quest >= 2 && banquet_roegenburg_quest >= 2) { + if (achievementinfo(130000, ACHIEVEINFO_COUNT5) == 0) + achievementupdate(130000, ACHIEVEINFO_COUNT5, 1); + if (isbegin_quest(7682) == 1 && isbegin_quest(5402) == 2 && isbegin_quest(7683) == 2 && isbegin_quest(7684) == 2 && ep16_wal > 1 && ep16_wig > 1 && ep16_lug > 1 && ep16_gaobs > 1) { completequest 7682;// Socializing Starts from an Eye Contact setquest 7685;// What Is the Next Thing on the Schedule ? } @@ -8763,7 +8955,7 @@ prt_cas_q,93,74,4 script Po Richard#EP161GAM 4_M_6THPRIN1,{ mes "Shall we take a rest before proceeding?"; close3; } - if (banquet_richard_quest == 2) { + if (.@ep161_family00 == 2) { cutin "richard_po01",2; mes "[Po Richard]"; mes "Well, let's talk about the reason that the Richard family has been interested in you then."; @@ -8802,11 +8994,10 @@ prt_cas_q,93,74,4 script Po Richard#EP161GAM 4_M_6THPRIN1,{ next; mes "[Po Richard]"; mes "Let me tell the butler about it. You can proceed with the training through him."; - banquet_richard_quest = 3; setquest 5403;// The Royal Richard close3; } - if (banquet_richard_quest == 3) { + if (.@ep161_family00 == 3) { cutin "richard_po01",2; mes "[Po Richard]"; mes "Don't underestimate the butler who would guide you through the training."; @@ -8815,75 +9006,204 @@ prt_cas_q,93,74,4 script Po Richard#EP161GAM 4_M_6THPRIN1,{ mes "He is a member of the Richard family himself. He is an outstanding warrior."; close3; } + if (.@ep161_family00 == 4) { + setarray .@quest_list[0], + 5404, // [Repeat]Warrior Discipline-Human + 5405, // [Repeat]Warrior Discipline-Animal + 5406, // [Repeat]Warrior Discipline-Insect + 5407, // [Repeat]Warrior Discipline-Fish + 5408, // [Repeat]Warrior Discipline-Plant + 5409, // [Repeat]Warrior Discipline-Devil + 5410, // [Repeat]Warrior Discipline-Angel + 5411, // [Repeat]Warrior Discipline-Immortal + 5412, // [Repeat]Warrior Discipline-Intangible + 5413; // [Repeat]Warrior Discipline-Dragon + .@size = getarraysize( .@quest_list ); + while( isbegin_quest(.@quest_list[.@i]) == 0 && .@i < .@size ) .@i++; + + if (.@i == .@size) { + mes "[Po Richard]"; + mes "I wonder if you are happy with the rewards of the training."; + next; + mes "[Po Richard]"; + mes "It would be difficult to offer you a payment higher than that for now. Please do it as if you are having a part-time job."; + next; + mes "[Po Richard]"; + mes "You may find it obvious. However, the more you get yourself trained, the more benefits that Richard family gets. We are willing to pay for it."; + close3; + } + mes "[Po Richard]"; + mes "Oh! You must be participating in the training. Well, how do you find the training?"; + next; + mes "[Po Richard]"; + .@r = rand(1,10); + if (.@r == 1) { + emotion 29; + mes "I have participated in the training myself when I was younger. It brings back the good old memories."; + } + else if (.@r == 2) { + emotion 20; + mes "There are a variety of training programs. Please choose what you'd like to participate. Well, the adventurers tend to do what they usually do."; + } + else if (.@r == 3) { + emotion 0; + mes "Accidents happen when you let your guard down. Always make sure to watch out."; + } + else if (.@r == 4) { + emotion 33; + mes "I believe the most important thing to a warrior is the spirit of challenge. The challenge to move on to the next level... It is the most important thing."; + } + else if (.@r == 5) { + emotion 21; + mes "A song of a warrior was very popular in the pub in Prontera. I am sad that I cannot hear it these days."; + } + else { + .@r = rand(1,6); + if (.@r == 1) emotion 58; + else if (.@r == 2) emotion 59; + else if (.@r == 3) emotion 60; + else if (.@r == 4) emotion 61; + else if (.@r == 5) emotion 62; + else + emotion 63; + mes "Do you like gambling by any chance? Doesn't the tension make you feel like a warrior in battle?"; + } + close3; + } } - -prt_cas_q,81,131,0 script #ep16_1Geoborg HIDDEN_WARP_NPC,3,3,{ - end; -OnTouch: - if (banquet_main_quest >= 2 && banquet_geoborg_quest == 0) { - mes "[Bodyguard Martin]"; - mes "There! Stop there!"; - mes "Please go through the inspection for a security check."; - npctalk "There! Stop there!", "Bodyguard#ep16_1_g", bc_self; - emotion ET_SURPRISE, getnpcid(0, "Bodyguard#ep16_1_m"); - emotion ET_SURPRISE; +// GM NPC +prt_cas_q,120,100,4 script Helper for the Royal Richard#EP161DY 4_M_6THPRIN2,{ + if (callfunc("F_GM_NPC",1854,0,1,9999) < 1) + end; + mes "[Helper for the Royal Richard]"; + mes "Select the service to use."; + next; + switch( select( "Quest Start Setting", "Reset cooldown.", "Reset Quest", "Check current status" ) ) { + case 1: + mes "[Helper for the Royal Richard]"; + mes "Set to proceed with the Richard family quest."; next; - mes "[Bodyguard Martin]"; - mes "Please place your identification and personal belongings on this table and stand facing the wall..."; + select("Setting"); + if (isbegin_quest(7681) == 0) + setquest 7681; + if (isbegin_quest(7681) == 1) + completequest 7681; + if (isbegin_quest(7682) == 0) + setquest 7682; + if (isbegin_quest(7682) == 1) + completequest 7682; + mes "[Helper for the Royal Richard]"; + mes "Complete"; + close; + case 2: + mes "[Helper for the Royal Richard]"; + mes "Reset the cooldown time of the Richard family battle training."; next; - mes "[Bodyguard Jerad]"; - mes "Martin! What are you doing?"; - mes "Don't be rude to the guest to the room! I told you."; - emotion ET_HUK; + select("Setting"); + if (isbegin_quest(5414) > 0) + erasequest 5414; + mes "[Helper for the Royal Richard]"; + mes "Complete"; + close; + case 3: + mes "[Helper for the Royal Richard]"; + mes "Reset all Richard-related quests."; next; - mes "[Bodyguard Martin]"; - mes "It is for the safety of the queen."; + select("Setting"); + mes "[Helper for the Royal Richard]"; + for ( .@quest_id = 5402; .@quest_id <= 5414; ++.@quest_id ) { + if (isbegin_quest(.@quest_id) > 0) + erasequest .@quest_id; + mes "" + .@quest_id + " Delete"; + } next; - mes "[Bodyguard Jerad]"; - mes "You are near the queen for security, not to chase away the guests discourteously."; - emotion ET_ANGER; - next; - mes "[Bodyguard Martin]"; - mes "The palace is so hectic like this. How can we guard the queen with such an easygoing way of thinking!"; - next; - mes "[Bodyguard Jerad]"; - mes "We cannot help it during the Imperial Ordinance!"; - next; - mes "[Bodyguard Martin]"; - mes "Now the Imperial Ordinance would just be..."; - emotion ET_THINK, getnpcid(0, "Bodyguard#ep16_1_m"); - next; - mes "[Queen]"; - mes "It is noisy out here."; - cutin "ep16gao_1",2; - next; - cutin "",255; - mes "[Bodyguard Jerad]"; - mes "Huh! Your majesty!"; - mes "I am sorry."; - mes "We have a guest here."; - setquest 11400;// The Geoborgs - banquet_geoborg_quest = 1; - emotion ET_SURPRISE; + mes "[Helper for the Royal Richard]"; + mes "Complete"; + close; + case 4: + mes "[Helper for the Royal Richard]"; + mes "7681(" + isbegin_quest(7681) + ")/7682(" + isbegin_quest(7682) + ")"; + mes "5402(" + isbegin_quest(5402) + ")/5403(" + isbegin_quest(5403) + ")"; + mes "5404(" + checkquest(5404,HUNTING) + ")/5405(" + checkquest(5405,HUNTING) + ")/5406(" + checkquest(5406,HUNTING) + ")/5407(" + checkquest(5407,HUNTING) + ")"; + mes "5408(" + checkquest(5408,HUNTING) + ")/5409(" + checkquest(5409,HUNTING) + ")/5410(" + checkquest(5410,HUNTING) + ")/5411(" + checkquest(5411,HUNTING) + ")"; + mes "5412(" + checkquest(5412,HUNTING) + ")/5413(" + checkquest(5413,HUNTING) + ")/5414(" + checkquest(5414,PLAYTIME) + ")"; close; } end; } +function script F_geoborg_text { + mes "[Bodyguard Martin]"; + mes "There! Stop there!"; + mes "Please go through the inspection for a security check."; + npctalk "There! Stop there!", "Bodyguard#ep16_1_g", bc_self; + emotion ET_SURPRISE, getnpcid(0, "Bodyguard#ep16_1_m"); + emotion ET_SURPRISE, getnpcid(0, "Bodyguard#ep16_1_g"); + next; + mes "[Bodyguard Martin]"; + mes "Please place your identification and personal belongings on this table and stand facing the wall..."; + next; + mes "[Bodyguard Jerad]"; + mes "Martin! What are you doing?"; + mes "Don't be rude to the guest to the room! I told you."; + emotion ET_HUK, getnpcid(0, "Bodyguard#ep16_1_g"); + next; + mes "[Bodyguard Martin]"; + mes "It is for the safety of the queen."; + next; + mes "[Bodyguard Jerad]"; + mes "You are near the queen for security, not to chase away the guests discourteously."; + emotion ET_ANGER, getnpcid(0, "Bodyguard#ep16_1_g"); + next; + mes "[Bodyguard Martin]"; + mes "The palace is so hectic like this. How can we guard the queen with such an easygoing way of thinking!"; + next; + mes "[Bodyguard Jerad]"; + mes "We cannot help it during the Imperial Ordinance!"; + next; + mes "[Bodyguard Martin]"; + mes "Now the Imperial Ordinance would just be..."; + emotion ET_THINK, getnpcid(0, "Bodyguard#ep16_1_m"); + next; + mes "[Queen]"; + mes "It is noisy out here."; + cutin "ep16gao_1",2; + next; + cutin "",255; + mes "[Bodyguard Jerad]"; + mes "Huh! Your majesty!"; + mes "I am sorry."; + mes "We have a guest here."; + setquest 11400;// The Geoborgs + ep16_gaobs = 1; + emotion ET_SURPRISE, getnpcid(0, "Bodyguard#ep16_1_g"); + close; +} + +prt_cas_q,81,131,0 script #ep16_1Geoborg HIDDEN_WARP_NPC,5,5,{ + end; +OnTouch: + if (ep16_royal == 2 && ep16_gaobs == 0) + callfunc("F_geoborg_text"); + end; +} + // Geoborg prt_cas_q,87,132,6 script Bodyguard#ep16_1_m 4_M_JOB_KNIGHT1,{ - if (banquet_geoborg_quest == 1) { + if (ep16_royal == 2 && ep16_gaobs == 0) + callfunc("F_geoborg_text"); + if (ep16_gaobs == 1) { mes "[Bodyguard Jerad]"; mes "Extend the queen every courtesy."; close; } - if (banquet_geoborg_quest == 2) { + if (ep16_gaobs == 2) { mes "[Bodyguard Martin]"; mes "I have something to you. Please talk to Jerad here."; close; } - if (banquet_geoborg_quest == 4 || banquet_geoborg_quest == 5) { + if (ep16_gaobs == 4 || ep16_gaobs == 5) { mes "[Bodyguard Martin]"; mes "I don't know why but Scarlet and Lidion have been on bad terms for a long time."; next; @@ -8896,13 +9216,13 @@ prt_cas_q,87,132,6 script Bodyguard#ep16_1_m 4_M_JOB_KNIGHT1,{ mes "It is supposed to be the characteristic of the Jahas."; close; } - if (banquet_geoborg_quest > 6 && banquet_geoborg_quest <= 13) { + if (ep16_gaobs > 6 && ep16_gaobs <= 13) { mes "[Bodyguard Martin]"; mes "Ernst told me that he would go to the Banquet Hall."; mes "I wonder if he is still there."; close; } - if (banquet_geoborg_quest == 14) { + if (ep16_gaobs == 14) { mes "[Bodyguard Martin]"; mes "Ha..."; close; @@ -8913,17 +9233,14 @@ prt_cas_q,87,132,6 script Bodyguard#ep16_1_m 4_M_JOB_KNIGHT1,{ } prt_cas_q,85,127,3 script Bodyguard#ep16_1_g 1_M_YOUNGKNIGHT,{ - if (banquet_main_quest < 2) { - mes "[Bodyguard Martin]"; - mes "Do you have any business left here?"; - close; - } - if (banquet_geoborg_quest == 1) { + if (ep16_royal == 2 && ep16_gaobs == 0) + callfunc("F_geoborg_text"); + if (ep16_gaobs == 1) { mes "[Bodyguard Martin]"; mes "Extend the queen every courtesy."; close; } - if (banquet_geoborg_quest == 2) { + if (ep16_gaobs == 2) { mes "[Bodyguard Jerad]"; mes "Please excuse me for all the trouble."; next; @@ -8958,7 +9275,7 @@ prt_cas_q,85,127,3 script Bodyguard#ep16_1_g 1_M_YOUNGKNIGHT,{ mes "She is not one of the members of the family, but she knows everything about the queen."; erasequest 11401;// The Geoborgs setquest 11402;// The Geoborgs - banquet_geoborg_quest = 3; + ep16_gaobs = 3; mes "[Bodyguard Jerad]"; mes "Oh!"; mes "The queen's sister 'Scarlet Jaha' headed to the Banquet Hall a little while ago. You may be able to meet her there."; @@ -8967,7 +9284,7 @@ prt_cas_q,85,127,3 script Bodyguard#ep16_1_g 1_M_YOUNGKNIGHT,{ mes "She is not one of the members of the family, but she knows everything about the queen."; close; } - if (banquet_geoborg_quest == 3) { + if (ep16_gaobs == 3) { mes "[Bodyguard Jerad]"; mes "Oh!"; mes "The queen's sister 'Scarlet Jaha' headed to the Banquet Hall a little while ago. You may be able to meet her there."; @@ -8976,7 +9293,7 @@ prt_cas_q,85,127,3 script Bodyguard#ep16_1_g 1_M_YOUNGKNIGHT,{ mes "She is not one of the members of the family, but she knows everything about the queen."; close; } - if (banquet_geoborg_quest >= 4) { + if (ep16_gaobs > 3 && ep16_gaobs < 7) { mes "[Bodyguard Jerad]"; mes "Scarlet is much older than the queen, but she doesn't look that old at all."; next; @@ -8984,12 +9301,12 @@ prt_cas_q,85,127,3 script Bodyguard#ep16_1_g 1_M_YOUNGKNIGHT,{ mes "Of course, the queen is well along in years now as well..."; close; } - if (banquet_geoborg_quest > 6 && banquet_geoborg_quest <= 13) { + if (ep16_gaobs > 6 && ep16_gaobs <= 13) { mes "[Bodyguard Jerad]"; mes "I hope the queen and Ernst can take some rest now."; close; } - if (banquet_geoborg_quest == 14) { + if (ep16_gaobs == 14) { mes "[Bodyguard Jerad]"; mes "After the Royal Assembly is over, the queen may turn over the throne to the new king, and go to the castle of Scarlet."; next; @@ -8997,18 +9314,15 @@ prt_cas_q,85,127,3 script Bodyguard#ep16_1_g 1_M_YOUNGKNIGHT,{ mes "I am a little worried for that I have been serving under the queen my entire life."; close; } + mes "[Bodyguard Martin]"; + mes "Do you have any business left here?"; + close; } prt_cas_q,93,129,3 script Queen#ep16_1 4_EP16_EGEO,{ - if (banquet_main_quest < 2) { - mes "[Queen Catherine D. Geoborg]"; - mes "The ink pad of the highest quality to be used in the royal debate room?"; - mes "It is the clerk who writes down everything. Why are they buying luxury item that no one will ever use..."; - emotion ET_FRET; - cutin "ep16gao_3",2; - close3; - } - if (banquet_geoborg_quest == 1) { + if (ep16_royal == 2 && ep16_gaobs == 0) + callfunc("F_geoborg_text"); + if (ep16_gaobs == 1) { mes "[Queen Catherine D. Geoborg]"; mes "Welcome."; mes "I am Queen Catherine D. Geoborg."; @@ -9053,16 +9367,18 @@ prt_cas_q,93,129,3 script Queen#ep16_1 4_EP16_EGEO,{ mes "[Queen Catherine D. Geoborg]"; mes "If you have more questions, you may ask Jerad and Martin here."; mes "Please excuse me for not sharing more time with you due to some urgent duties."; - erasequest 11400;// The Geoborgs + completequest 11400;// The Geoborgs setquest 11401;// The Geoborgs - banquet_geoborg_quest = 2; - if (banquet_walther_quest >= 3 && banquet_nerius_quest >= 1 && banquet_heine_quest >= 2 && banquet_wigner_quest >= 2 && banquet_richard_quest >= 2 && banquet_geoborg_quest >= 2 && banquet_roegenburg_quest >= 2) { + if (achievementinfo(130000, ACHIEVEINFO_COUNT6) == 0) + achievementupdate(130000, ACHIEVEINFO_COUNT6, 1); + ep16_gaobs = 2; + if (isbegin_quest(7682) == 1 && isbegin_quest(5402) == 2 && isbegin_quest(7683) == 2 && isbegin_quest(7684) == 2 && ep16_wal > 1 && ep16_wig > 1 && ep16_lug > 1 && ep16_gaobs > 1) { completequest 7682;// Socializing Starts from an Eye Contact setquest 7685;// What Is the Next Thing on the Schedule ? } close3; } - if (banquet_geoborg_quest == 2) { + if (ep16_gaobs == 2) { mes "[Queen Catherine D. Geoborg]"; mes "You have come here, but there isn't much that I can tell you."; cutin "ep16gao_1",2; @@ -9072,30 +9388,7 @@ prt_cas_q,93,129,3 script Queen#ep16_1 4_EP16_EGEO,{ mes "Please excuse me for not sharing more time with you due to some urgent duties."; close3; } - if (banquet_geoborg_quest == 3) { - mes "[Queen Catherine D. Geoborg]"; - mes "The ink pad of the highest quality to be used in the royal debate room?"; - mes "It is the clerk who writes down everything. Why are they buying luxury item that no one will ever use..."; - emotion ET_FRET; - cutin "ep16gao_3",2; - close3; - } - if (banquet_geoborg_quest == 4) { - mes "[Queen Catherine D. Geoborg]"; - mes "Hum.. Trade request from Marol Kingdom..."; - mes "I should dispatch an envoy to take care of it soon..."; - cutin "ep16gao_2",2; - close3; - } - if (banquet_geoborg_quest == 5) { - mes "[Queen Catherine D. Geoborg]"; - mes "I have enough dresses to last my lifetime. Why do they keep making them..."; - mes "A cutback!"; - emotion ET_FRET; - cutin "ep16gao_1",2; - close3; - } - if (banquet_geoborg_quest >= 6 && banquet_geoborg_quest <= 13) { + if (ep16_gaobs > 5 && ep16_gaobs < 14) { mes "[Queen Catherine D. Geoborg]"; mes "You mean Prince Ernst?"; mes "Well?"; @@ -9112,7 +9405,7 @@ prt_cas_q,93,129,3 script Queen#ep16_1 4_EP16_EGEO,{ mes "He could be somewhere in the Banquet Hall."; close3; } - if (banquet_geoborg_quest == 14) { + if (ep16_gaobs == 14) { mes "[Queen Catherine D. Geoborg]"; mes "Haven't you met Prince Ernst yet?"; mes "He just stopped by and went out again..."; @@ -9131,17 +9424,39 @@ prt_cas_q,93,129,3 script Queen#ep16_1 4_EP16_EGEO,{ mes "It is a problem that we, the Geoborg family, should get over ourselves."; close3; } + switch( rand(1,3) ) { + case 1: + mes "[Queen Catherine D. Geoborg]"; + mes "The ink pad of the highest quality to be used in the royal debate room?"; + mes "It is the clerk who writes down everything. Why are they buying luxury item that no one will ever use..."; + emotion ET_FRET; + cutin "ep16gao_3",2; + close3; + case 2: + mes "[Queen Catherine D. Geoborg]"; + mes "I have enough dresses to last my lifetime. Why do they keep making them..."; + mes "A cutback!"; + emotion ET_FRET; + cutin "ep16gao_1.bmp",2; + close3; + case 3: + mes "[Queen Catherine D. Geoborg]"; + mes "Hum.. Trade request from Marol Kingdom..."; + mes "I should dispatch an envoy to take care of it soon..."; + cutin "ep16gao_2.bmp",2; + close3; + } } // Hall prt_cas,73,244,5 script Scarlet Jaha#ep16_1 1_F_LIBRARYGIRL,{ - if (banquet_geoborg_quest < 3) { + if (ep16_gaobs < 3) { mes "[Scarlet Jaha]"; mes "Oh, what can I help you, dear adventurer?"; emotion ET_SMILE; close; } - if (banquet_geoborg_quest == 3) { + if (ep16_gaobs == 3) { mes "[Scarlet Jaha]"; mes "Oh, what can I help you, dear adventurer?"; emotion ET_SMILE; @@ -9180,10 +9495,10 @@ prt_cas,73,244,5 script Scarlet Jaha#ep16_1 1_F_LIBRARYGIRL,{ mes "I couldn't risk letting a lady of the Jaha family pretend to know about the Geoborg family. I couldn't just take a rest."; erasequest 11402;// The Geoborgs setquest 11403;// The Geoborgs - banquet_geoborg_quest = 4; + ep16_gaobs = 4; close; } - if (banquet_geoborg_quest == 4) { + if (ep16_gaobs == 4) { mes "[Scarlet Jaha]"; mes "Oh, my!"; mes "Lidion Geoborg!"; @@ -9195,7 +9510,7 @@ prt_cas,73,244,5 script Scarlet Jaha#ep16_1 1_F_LIBRARYGIRL,{ mes "I couldn't risk letting a lady of the Jaha family pretend to know about the Geoborg family. I couldn't just take a rest."; close; } - if (banquet_geoborg_quest == 5) { + if (ep16_gaobs == 5) { mes "[Scarlet Jaha]"; mes "Phew, that old jerk!"; mes "He is younger than me and always tries to preach!"; @@ -9222,10 +9537,10 @@ prt_cas,73,244,5 script Scarlet Jaha#ep16_1 1_F_LIBRARYGIRL,{ mes "If you run into Ernst in the Banquet Hall, please tell him to come this way."; erasequest 11404;// The Geoborgs setquest 11405;// The Geoborgs - banquet_geoborg_quest = 6; + ep16_gaobs = 6; close; } - if (banquet_geoborg_quest >= 6 && banquet_geoborg_quest < 13) { + if (ep16_gaobs >= 6 && ep16_gaobs < 13) { mes "[Scarlet Jaha]"; mes "However, Prince Ernst is nowhere to be found."; mes "His aunt has come a long way to comfort her poor nephew, you know!"; @@ -9238,7 +9553,12 @@ prt_cas,73,244,5 script Scarlet Jaha#ep16_1 1_F_LIBRARYGIRL,{ mes "If you run into Ernst in the Banquet Hall, please tell him to come this way."; close; } - if (banquet_geoborg_quest == 13) { + if (ep16_gaobs == 13) { + if (checkweight(1119,3) == 0) { + mes "- You have too many items in possession."; + mes "Please organize your inventory and try again. -"; + close; + } mes "[Scarlet Jaha]"; mes "Oh!"; mes "Haven't you found him yet?"; @@ -9259,12 +9579,12 @@ prt_cas,73,244,5 script Scarlet Jaha#ep16_1 1_F_LIBRARYGIRL,{ mes "[Scarlet Jaha]"; mes "What a waste to let the banquet end like this!"; getexp 700000,700000; - getitem 6919,10;// Honor Token + getitem 6919,10;// TokenOfHonor completequest 11412;// The Geoborgs - banquet_geoborg_quest = 14; + ep16_gaobs = 14; close; } - if (banquet_geoborg_quest > 13) { + if (ep16_gaobs > 13) { mes "[Scarlet Jaha]"; mes "Oh, hero!"; mes "Are you having a good time?"; @@ -9277,13 +9597,7 @@ prt_cas,73,244,5 script Scarlet Jaha#ep16_1 1_F_LIBRARYGIRL,{ } prt_cas,82,240,3 script Lidion Geoborg#ep16_1 4_M_DOCTOR,{ - if (banquet_geoborg_quest < 4) { - mes "[Lidion Geoborg]"; - mes "Tut..."; - mes "Letting anybody in like this... The dignity of the palace has fallen down to the ground."; - close; - } - if (banquet_geoborg_quest == 4) { + if (ep16_gaobs == 4) { mes "[Lidion Geoborg]"; mes "We, the Geoborg family, is one of the seven royal families, but we are the creme de la creme for producing the highest number of kings in the history."; next; @@ -9329,10 +9643,10 @@ prt_cas,82,240,3 script Lidion Geoborg#ep16_1 4_M_DOCTOR,{ npctalk "Arghhhh!"; erasequest 11403;// The Geoborgs setquest 11404;// The Geoborgs - banquet_geoborg_quest = 5; + ep16_gaobs = 5; close; } - if (banquet_geoborg_quest >= 5 && banquet_geoborg_quest <= 13) { + if (ep16_gaobs >= 5 && ep16_gaobs <= 13) { mes "[Lidion Geoborg]"; mes "Arghhhh!"; mes "I won't let this punk... Ernst....!"; @@ -9347,18 +9661,16 @@ prt_cas,82,240,3 script Lidion Geoborg#ep16_1 4_M_DOCTOR,{ npctalk "Arghhhh!"; close; } - if (banquet_geoborg_quest > 13) { - mes "[Lidion Geoborg]"; - mes "Tut..."; - mes "Letting anybody in like this... The dignity of the palace has fallen down to the ground."; - close; - } + mes "[Lidion Geoborg]"; + mes "Tut..."; + mes "Letting anybody in like this... The dignity of the palace has fallen down to the ground."; + close; } prt_cas,76,258,0 script #ep16_1Whisper1 HIDDEN_WARP_NPC,3,3,{ end; OnTouch: - if (banquet_geoborg_quest == 6) { + if (ep16_gaobs == 6) { mes "[Mumbling Sound]"; mes "Did you hear the story?"; mes "The skeleton of King Tristan III has been found."; @@ -9371,7 +9683,7 @@ OnTouch: mes "It is a secret. Don't tell anyone."; erasequest 11405;// The Geoborgs setquest 11406;// The Geoborgs - banquet_geoborg_quest = 7; + ep16_gaobs = 7; close; } } @@ -9379,7 +9691,7 @@ OnTouch: prt_cas,84,232,0 script #ep16_1Whisper2 HIDDEN_WARP_NPC,3,3,{ end; OnTouch: - if (banquet_geoborg_quest == 7) { + if (ep16_gaobs == 7) { mes "[Mumbling Sound]"; mes "...So the princes must have been poisoned..."; next; @@ -9388,7 +9700,7 @@ OnTouch: mes "Well, in the last Royal Assembly..."; erasequest 11406;// The Geoborgs setquest 11407;// The Geoborgs - banquet_geoborg_quest = 8; + ep16_gaobs = 8; close; } } @@ -9396,7 +9708,7 @@ OnTouch: prt_cas,110,242,0 script #ep16_1Whisper3 HIDDEN_WARP_NPC,3,3,{ end; OnTouch: - if (banquet_geoborg_quest == 8) { + if (ep16_gaobs == 8) { mes "[Mumbling Sound]"; mes "Ha!"; mes "He has given up the royal authority like that!"; @@ -9416,7 +9728,7 @@ OnTouch: mes "How can he decide such a major issue as he wants?"; erasequest 11407;// The Geoborgs setquest 11408;// The Geoborgs - banquet_geoborg_quest = 9; + ep16_gaobs = 9; close; } } @@ -9424,12 +9736,12 @@ OnTouch: prt_cas,111,218,0 script #ep16_1Whisper4 HIDDEN_WARP_NPC,3,3,{ end; OnTouch: - if (banquet_geoborg_quest == 9) { + if (ep16_gaobs == 9) { mes "[Mumbling Sound]"; mes "I knew it. He has been hanging out with that punk from the third-rate family too long..."; erasequest 11408;// The Geoborgs setquest 11409;// The Geoborgs - banquet_geoborg_quest = 10; + ep16_gaobs = 10; close; } } @@ -9437,7 +9749,7 @@ OnTouch: prt_cas,92,224,0 script #ep16_1Whisper5 HIDDEN_WARP_NPC,3,3,{ end; OnTouch: - if (banquet_geoborg_quest == 10) { + if (ep16_gaobs == 10) { mes "[Mumbling Sound]"; mes "So is the queen who is handling all the matters of the palace now?"; next; @@ -9445,7 +9757,7 @@ OnTouch: mes "She hasn't showed her presence to the public so far..."; erasequest 11409;// The Geoborgs setquest 11410;// The Geoborgs - banquet_geoborg_quest = 11; + ep16_gaobs = 11; close; } } @@ -9453,7 +9765,7 @@ OnTouch: prt_cas,77,223,0 script #ep16_1Whisper6 HIDDEN_WARP_NPC,3,3,{ end; OnTouch: - if (banquet_geoborg_quest == 11) { + if (ep16_gaobs == 11) { mes "[Mumbling Sound]"; mes "How foolish it is to give up the regal power like that!"; next; @@ -9469,7 +9781,7 @@ OnTouch: mes "I am free to dream!"; erasequest 11410;// The Geoborgs setquest 11411;// The Geoborgs - banquet_geoborg_quest = 12; + ep16_gaobs = 12; close; } } @@ -9477,7 +9789,7 @@ OnTouch: prt_cas,93,226,0 script #ep16_1Whisper7 HIDDEN_WARP_NPC,3,3,{ end; OnTouch: - if (banquet_geoborg_quest == 12) { + if (ep16_gaobs == 12) { mes "[Mumbling Sound]"; mes "Is the Geoborg family cursed?"; next; @@ -9486,7 +9798,7 @@ OnTouch: mes "You shouldn't say such a thing so easily!"; erasequest 11411;// The Geoborgs setquest 11412;// The Geoborgs - banquet_geoborg_quest = 13; + ep16_gaobs = 13; close; } } @@ -9510,7 +9822,10 @@ prt_cas_q,146,121,4 script Bachelor#ep16wig 1_M_ORIENT01,{ mes "[Bachelor]"; mes "I won't go before seeing the elegant and luminous presence of him!"; mes "I have come here from Payon to meet Jurgen!"; - close; + close2; + if (achievementinfo(110001, ACHIEVEINFO_COUNT5) == 0) + achievementupdate(110001, ACHIEVEINFO_COUNT5, 1); + end; } prt_cas_q,148,117,7 script Miss#ep16wig 4_F_02,{ @@ -9533,7 +9848,10 @@ prt_cas_q,148,117,7 script Miss#ep16wig 4_F_02,{ sleep2 1000; npctalk "Katrin is just too nice.", "Bachelorette#ep16wig", bc_area; } - close; + close2; + if (achievementinfo(110001, ACHIEVEINFO_COUNT3) == 0) + achievementupdate(110001, ACHIEVEINFO_COUNT3, 1); + end; } prt_cas_q,148,122,4 script Womenfolk#ep16wig 1_F_03,{ @@ -9555,7 +9873,10 @@ prt_cas_q,148,122,4 script Womenfolk#ep16wig 1_F_03,{ sleep2 1000; npctalk "It is a relief that the heaven would forgive at least.", "Bachelorette#ep16wig", bc_area; } - close; + close2; + if (achievementinfo(110001, ACHIEVEINFO_COUNT2) == 0) + achievementupdate(110001, ACHIEVEINFO_COUNT2, 1); + end; } prt_cas_q,150,122,4 script Gyusoo#ep16wig 1_F_LIBRARYGIRL,{ @@ -9578,7 +9899,10 @@ prt_cas_q,150,122,4 script Gyusoo#ep16wig 1_F_LIBRARYGIRL,{ sleep2 1000; npctalk "If you are in the 23rd place, you may not be able to see him today.", "Bachelorette#ep16wig", bc_area; } - close; + close2; + if (achievementinfo(110001, ACHIEVEINFO_COUNT1) == 0) + achievementupdate(110001, ACHIEVEINFO_COUNT1, 1); + end; } prt_cas_q,150,117,7 script Bachelorette#ep16wig 4_F_01,{ @@ -9601,43 +9925,93 @@ prt_cas_q,150,117,7 script Bachelorette#ep16wig 4_F_01,{ sleep2 1000; npctalk "Where did the person who was supervising the lineup go?"; } - close; + close2; + if (achievementinfo(110001, ACHIEVEINFO_COUNT4) == 0) + achievementupdate(110001, ACHIEVEINFO_COUNT4, 1); + end; } prt_cas_q,153,123,3 script Strong Guards#ep16wig01 8W_SOLDIER,{ - emotion ET_OHNO; - mes "[Strong Guards]"; - mes "Ha, I am already feeling tired as always."; - mes "I didn't know that women were so strong before."; - next; - mes "[Strong Guards]"; - mes "I started yesterday and realized why the people who had worked here before quit."; - mes "Despite being with so many ladies here, I am not happy at all."; - close; + switch( rand(1,3) ) { + case 1: + emotion 25; + mes "[Strong Guards]"; + mes "Hey, you lady! Don't push!"; + mes "Stay in the line!"; + next; + mes "[Strong Guards]"; + mes "There was this lady who was carried out with a broken ankle from pushing!"; + mes "It is all for your own good!"; + close; + case 2: + emotion ET_OHNO; + mes "[Strong Guards]"; + mes "Ha, I am already feeling tired as always."; + mes "I didn't know that women were so strong before."; + next; + mes "[Strong Guards]"; + mes "I started yesterday and realized why the people who had worked here before quit."; + mes "Despite being with so many ladies here, I am not happy at all."; + close; + case 3: + mes "[Strong Guards]"; + mes "As you see, there are no guards guarding the doord to other family's residences."; + mes "However, there are too many infiltrators to the Wigner residence who get in there to see Jurgen. Now the door is guarded at all times."; + close; + } } prt_cas_q,153,116,1 script Strong Guards#ep16wig02 8W_SOLDIER,{ - emotion ET_ANGER; - mes "[Strong Guards]"; - mes "Oh, wait there! Stop there!"; - mes "Aren't you the one who has infiltrated the room before? You don't have to run hiding your face! Come back here!"; - next; - mes "[Strong Guards]"; - mes "She went off again. She sure is fast."; - mes "I am glad that my own sister doesn't come to a place like this."; - close; + switch( rand(1,3) ) { + case 1: + emotion 36; + mes "[Strong Guards]"; + mes "Oh, be quiet there!"; + mes "It is too noisy that Jurgen cannot take his beauty rest!"; + next; + mes "[Strong Guards]"; + mes "It is not for my sake, but for Jurgen."; + mes "It would make you sad if Jurgen is unable to sleep, right? So be quiet!"; + close; + case 2: + emotion ET_ANGER; + mes "[Strong Guards]"; + mes "Oh, wait there! Stop there!"; + mes "Aren't you the one who has infiltrated the room before? You don't have to run hiding your face! Come back here!"; + next; + mes "[Strong Guards]"; + mes "She went off again. She sure is fast."; + mes "I am glad that my own sister doesn't come to a place like this."; + close; + case 3: + emotion 28; + mes "[Strong Guards]"; + mes "When I applied to become a guard, I wanted to keep the palace safe with my own hands..."; + mes "Never did I know that I would end up here..."; + next; + emotion 6; + mes "[Strong Guards]"; + mes "Hey, you! There! Stand in the line! Stop there! You shouldn't block the way!"; + mes "If you keep doing that, I'll stop you from coming here!"; + close; + } } // Wigner prt_cas_q,82,21,1 script Levuiere Wigner#ep16wig 4_EP16_LOUVIERE,{ - if (banquet_main_quest < 2) {// pre-req + if (BaseLevel < 100) { mes "[Levuiere]"; - mes "Who are you?"; - mes "Only the people with permission can enter this place. Please leave."; + mes "Dear adventurer, although I respect your hard work going through all the obstacles and hardships, it is still a little too early for you to be here."; + mes "I hope I will see you later."; close; } - - if (banquet_wigner_quest == 0) { + if (ep16_wig == 0) { + if (isbegin_quest(7682) != 1) { + mes "[Levuiere]"; + mes "Who are you?"; + mes "Only the people with permission can enter this place. Please leave."; + close; + } mes "[Levuiere]"; mes "Dear adventurer, welcome to the Wigner family. My name is ^0000cdLevuiere Wigner^000000."; next; @@ -9663,8 +10037,8 @@ prt_cas_q,82,21,1 script Levuiere Wigner#ep16wig 4_EP16_LOUVIERE,{ mes "Please visit our manor too if you have the time, dear adventurer. You are always welcome."; mes "Where is ^0000cdJurgen^000000 now?"; next; - classchange( HIDDEN_WARP_NPC, "Jurgen Wigner#ep16wig", bc_self ); - classchange( 4_M_4THPRIN1, "Jurgen Wigner#ep16wig00", bc_self ); + cloakoffnpc "Jurgen Wigner#ep16wig00", getcharid(0); + cloakonnpc "Jurgen Wigner#ep16wig", getcharid(0); cutin "16jur_nor",0; mes "[Jurgen]"; mes "Are you looking for me?"; @@ -9686,8 +10060,8 @@ prt_cas_q,82,21,1 script Levuiere Wigner#ep16wig 4_EP16_LOUVIERE,{ mes "[Jurgen]"; mes "Then, please excuse me."; next; - classchange( HIDDEN_WARP_NPC, "Jurgen Wigner#ep16wig00", bc_self ); - classchange( 4_M_4THPRIN1, "Jurgen Wigner#ep16wig", bc_self ); + cloakonnpc "Jurgen Wigner#ep16wig00", getcharid(0); + cloakoffnpc "Jurgen Wigner#ep16wig", getcharid(0); cutin "",255; mes "[Levuiere]"; mes "Tut, I am worried that he lacks sociability. He would have to meet a lot of people as the heir of the house, you know. Dear adventurer, please excuse my son's discourtesy."; @@ -9695,13 +10069,13 @@ prt_cas_q,82,21,1 script Levuiere Wigner#ep16wig 4_EP16_LOUVIERE,{ mes "[Levuiere]"; mes "If time allows, would you like to meet our children? They have been excited to meet the hero who defeated Morocc in the banquet."; setquest 14475;// To Jurgen - banquet_wigner_quest = 1; + ep16_wig = 1; next; mes "[Levuiere]"; mes "Then please make yourself at home and take a look around, dear adventurer."; close; } - if (banquet_wigner_quest == 1) { + if (ep16_wig == 1) { mes "[Levuiere]"; mes "Dear adventurer, please make yourself home and take your time looking around here."; next; @@ -9712,7 +10086,7 @@ prt_cas_q,82,21,1 script Levuiere Wigner#ep16wig 4_EP16_LOUVIERE,{ mes "Then, have a restful time."; close; } - if (banquet_wigner_quest == 2) { + if (ep16_wig == 2) { mes "[Levuiere]"; mes "Dear adventurer, did you meet the children? I would love to have some tea with you and listen to your stories if you are available."; next; @@ -9812,15 +10186,19 @@ prt_cas_q,82,21,1 script Levuiere Wigner#ep16wig 4_EP16_LOUVIERE,{ mes "[Levuiere]"; mes "^0000cdKatrin?^000000"; next; - emotion ET_HUK, getnpcid(0, "Catherine Wigner#ep16wi"); + emotion ET_HUK, getnpcid(0, "Catherine Wigner#ep16wig"); mes "[Catherine]"; mes "^0000cdKatrin?^000000 Has something happened to my baby? I should get going..."; next; mes "[" + strcharinfo(0) + "]"; mes "You two stay here. It might be dangerous. Let me go take a look first."; + cloakonnpc "Isaac Wigner#ep16wig", getcharid(0); erasequest 14476;// To Levuiere and His Wife setquest 14477;// What Is Going on? - banquet_wigner_quest = 3; + ep16_wig = 3; + close; + } + if (ep16_wig == 3) { mes "[Levuiere]"; mes "Has something happened to our child, I mean, Katrin?"; mes "Shouldn't I go down there myself?"; @@ -9830,17 +10208,7 @@ prt_cas_q,82,21,1 script Levuiere Wigner#ep16wig 4_EP16_LOUVIERE,{ mes "I'll go."; close; } - if (banquet_wigner_quest == 3) { - mes "[Levuiere]"; - mes "Has something happened to our child, I mean, Katrin?"; - mes "Shouldn't I go down there myself?"; - next; - mes "[" + strcharinfo(0) + "]"; - mes "It could be dangerous. Please wait here for a minute."; - mes "I'll go."; - close; - } - if (banquet_wigner_quest < 10) { + if (ep16_wig < 12) { mes "[Levuiere]"; mes "Dear adventurer, welcome."; mes "I asked what had happened to the children, but they didn't tell me."; @@ -9859,7 +10227,7 @@ prt_cas_q,82,21,1 script Levuiere Wigner#ep16wig 4_EP16_LOUVIERE,{ mes "Since I have to run some errands, I should get going now."; close; } - if (banquet_wigner_quest == 10) { + if (ep16_wig < 16) { mes "[Levuiere]"; mes "Dear adventurer, you seem busy."; mes "Is it about what our children have asked you?"; @@ -9873,7 +10241,7 @@ prt_cas_q,82,21,1 script Levuiere Wigner#ep16wig 4_EP16_LOUVIERE,{ mes "And thank you for helping our children."; close; } - if (banquet_wigner_quest == 11) { + if (ep16_wig > 15) { mes "[Levuiere]"; mes "Dear adventurer, I have heard the story from the children."; mes "They didn't go into all the details, but I heard that they owed you a huge favor."; @@ -9893,8 +10261,8 @@ prt_cas_q,82,21,1 script Levuiere Wigner#ep16wig 4_EP16_LOUVIERE,{ } } -prt_cas_q,82,23,0 script Catherine Wigner#ep16wi 1_F_LIBRARYGIRL,{ - if (banquet_wigner_quest == 0) { +prt_cas_q,82,23,0 script Catherine Wigner#ep16wig 1_F_LIBRARYGIRL,{ + if (ep16_wig == 0) { mes "[Catherine]"; mes "Hello, dear adventurer. Welcome!"; mes "We are honored by your visit to the Wigner family."; @@ -9907,7 +10275,7 @@ prt_cas_q,82,23,0 script Catherine Wigner#ep16wi 1_F_LIBRARYGIRL,{ mes "You may talk to the head of the family standing next to me. His name is Levuiere Wigner."; close; } - if (banquet_wigner_quest <= 2) { + if (ep16_wig <= 2) { mes "[Catherine]"; mes "Have you met our children? Having a conversation with you would be an invaluable experience for our children, dear adventurer."; mes "They haven't been through any trouble growing up so we feel that they lack in various life experiences."; @@ -9926,7 +10294,7 @@ prt_cas_q,82,23,0 script Catherine Wigner#ep16wi 1_F_LIBRARYGIRL,{ mes "It is always a great joy to listen to the stories of the people who have gone through a lot of experiences."; close; } - if (banquet_wigner_quest == 3) { + if (ep16_wig == 3) { mes "[Catherine]"; mes "What if anything has happened to my baby, Katrin?"; mes "I'd better I go down there myself."; @@ -9939,7 +10307,7 @@ prt_cas_q,82,23,0 script Catherine Wigner#ep16wi 1_F_LIBRARYGIRL,{ mes "I hope everything is OK."; close; } - if (banquet_wigner_quest < 10) { + if (ep16_wig < 12) { mes "[Levuiere]"; mes "Dear adventurer, welcome."; mes "I asked what had happened to the children, but they didn't tell me."; @@ -9958,7 +10326,7 @@ prt_cas_q,82,23,0 script Catherine Wigner#ep16wi 1_F_LIBRARYGIRL,{ mes "Since I have to run some errands, I should get going now."; close; } - if (banquet_wigner_quest == 10) { + if (ep16_wig < 16) { mes "[Catherine]"; mes "I wonder if our children haven't bothered you much. Although we are very curious, we have decided not to question it any more."; mes "They have grown up, but we still tend to baby them too much..."; @@ -9968,7 +10336,7 @@ prt_cas_q,82,23,0 script Catherine Wigner#ep16wi 1_F_LIBRARYGIRL,{ mes "And thank you for helping our children."; close; } - if (banquet_wigner_quest == 11) { + if (ep16_wig > 15) { mes "[Catherine]"; mes "For some reason, our children have become very close to one another."; mes "I think it is all thanks to you."; @@ -9981,7 +10349,7 @@ prt_cas_q,82,23,0 script Catherine Wigner#ep16wi 1_F_LIBRARYGIRL,{ } prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ - if (checkweight(501,1) == 0) { + if (checkweight(1304,3) == 0) { cutin "16jur_nor",0; mes "[Jurgen]"; mes "You seem to have a lot of luggage. Are you OK?"; @@ -9991,12 +10359,12 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "How about cutting down some?"; close3; } - if (banquet_wigner_quest == 0) { + if (ep16_wig == 0) { mes "[Jurgen]"; mes "Are you a fan of mine? Did you make an appointment? If you are a guest of mine, why don't you go see my father over there?"; close; } - if (banquet_wigner_quest == 1) { + if (ep16_wig == 1) { cutin "16jur_nor",0; mes "[Jurgen]"; mes "Dear adventurer, I am glad that you are still here. Sorry about my bad manners earlier. I wanted to have more conversation with you. However, if I make any mistakes while I talk in front of my mother, I get scolded."; @@ -10076,9 +10444,15 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ next; cutin "16isa",1; mes "[Isaac]"; - mes "Oh, there he goes again. I should get going now. Dear adventurer, I would like to see you later."; - next; - classchange( HIDDEN_WARP_NPC, "Isaac Wigner#ep16wig", bc_self ); + if (ep16_lug == 2 || ep16_lug == 3 || ep16_lug == 7 || ep16_lug == 8) { + mes "Oh, not again. Dear adventurer, you should be used to this to have a conversation with my brother at our home."; + next; + } + else { + mes "Oh, there he goes again. I should get going now. Dear adventurer, I would like to see you later."; + next; + cloakonnpc "Isaac Wigner#ep16wig", getcharid(0); + } cutin "16kat_nor",2; mes "[Katrin]"; mes "Dear adventurer, I guess that is it for today. If you are not busy, ^0000cdwhy don't you go have a cup of tea with our parents^000000?"; @@ -10088,13 +10462,15 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ next; mes "[" + strcharinfo(0) + "]"; mes "It is a good idea. Please excuse me then."; - erasequest 14475;// To Jurgen + completequest 14475;// To Jurgen setquest 14476;// To Levuiere and His Wife - banquet_wigner_quest = 2; - if (banquet_walther_quest >= 3 && banquet_nerius_quest >= 1 && banquet_heine_quest >= 2 && banquet_wigner_quest >= 2 && banquet_richard_quest >= 2 && banquet_geoborg_quest >= 2 && banquet_roegenburg_quest >= 2) { + ep16_wig = 2; + if (isbegin_quest(7682) == 1 && isbegin_quest(5402) == 2 && isbegin_quest(7683) == 2 && isbegin_quest(7684) == 2 && ep16_wal > 1 && ep16_wig > 1 && ep16_lug > 1 && ep16_gaobs > 1) { completequest 7682;// Socializing Starts from an Eye Contact setquest 7685;// What Is the Next Thing on the Schedule ? } + if (achievementinfo(130000, ACHIEVEINFO_COUNT4) == 0) + achievementupdate(130000, ACHIEVEINFO_COUNT4, 1); cutin "16jur_nor",0; mes "[Jurgen]"; mes "Our ^0000cdparents^000000 are over there. They'd like to talk to you."; @@ -10105,7 +10481,7 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "It is very demanding to guard the world's peace with my beauty."; close3; } - if (banquet_wigner_quest == 2) { + if (ep16_wig == 2) { cutin "16jur_nor",0; mes "[Jurgen]"; mes "Our ^0000cdparents^000000 are over there. They'd like to talk to you."; @@ -10116,14 +10492,14 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "It is very demanding to guard the world's peace with my beauty."; close3; } - if (banquet_wigner_quest == 3) { + if (ep16_wig == 3) { cutin "16jur_sim",0; mes "[Jurgen]"; mes "It seems that my sister has lost something. I couldn't understand her words since she was in such a hurry."; mes "Would you please ask her what it is about?"; close3; } - if (banquet_wigner_quest >= 4 && banquet_wigner_quest < 9) { + if (ep16_wig >= 4 && ep16_wig < 14) { cutin "16jur_sim",0; mes "[Jurgen]"; mes "Whatever she has lost, it must be very valuable to her. I feel that she'd better get someone to help her to find it."; @@ -10137,7 +10513,7 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "It seems that she may drop dead if she doesn't find whatever she has lost."; close3; } - if (banquet_wigner_quest == 9) { + if (ep16_wig == 14) { cutin "16jur_nor",0; mes "[Jurgen]"; mes "Dear adventurer, you are here. How did it go?"; @@ -10161,7 +10537,7 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "[Jurgen]"; mes "What a nonsense! Phew... This is exactly why I have told her to open her heart to others and talk more..."; next; - classchange( 4_EP16_POE, "Katrin Wigner#ep16wig", bc_self ); + cloakoffnpc "Katrin Wigner#ep16wig", getcharid(0); cutin "16kat_nor",2; mes "[Katrin]"; mes "Why should I do that? I don't care about the people who don't know me well anyway."; @@ -10241,7 +10617,7 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "[" + strcharinfo(0) + "]"; mes "Both of you should calm down."; next; - classchange( 4_EP16_ISAAC, "Isaac Wigner#ep16wig", bc_self ); + cloakoffnpc "Isaac Wigner#ep16wig", getcharid(0); cutin "16isa",1; mes "[Isaac]"; mes "Yes. Whatever it is, you'd better calm down. I could hear you yelling at each other from the other end of the hallway."; @@ -10314,7 +10690,7 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "[Katrin]"; mes "That's all right now. I'll forget it all. You don't have to care about it either."; next; - classchange( HIDDEN_WARP_NPC, "Katrin Wigner#ep16wig", bc_self ); + cloakonnpc "Katrin Wigner#ep16wig", getcharid(0); cutin "16isa",1; mes "[Isaac]"; mes "She walks so fast. What was it all about?"; @@ -10566,10 +10942,10 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "We are depending on you."; erasequest 14486;// I Heard the Story setquest 14487;// Please Find the Token of Memory - banquet_wigner_quest = 10; + ep16_wig = 15; close3; } - if (banquet_wigner_quest == 10) { + if (ep16_wig == 15) { if (countitem(748) < 1 || countitem(6927) < 10) { cutin "16jur_sim",0; mes "[Jurgen]"; @@ -10609,7 +10985,7 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "[Isaac]"; mes "I have already called her."; next; - classchange( 4_EP16_POE, "Katrin Wigner#ep16wig", bc_self ); + cloakoffnpc "Katrin Wigner#ep16wig", getcharid(0); cutin "16kat_nor",2; mes "[Katrin]"; mes "Why do you keep calling me? Please leave me alone for that I am not mad at you any more."; @@ -10681,16 +11057,16 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "[Jurgen]"; mes "Dear adventurer, I have learned new lessons and earned many things, thanks to you. If you need our help, we will try to help you as much as we can. I wish you luck!"; completequest 14487;// Please Find the Token of Memory - delitem 6927,10;// Sea Stone + delitem 6927, countitem(6927);// Filled_With_SeaStones delitem 748,1;// Witherless Rose - getitem 6919,10;// Honor Token + getitem 6919,10;// TokenOfHonor getexp 1000000,500000; - banquet_wigner_quest = 11; + ep16_wig = 16; close3; } switch( checkquest(14492,PLAYTIME) ) { case -1: - if (banquet_wigner_quest == 11) { // first time (not repeatable) + if (ep16_wig == 16) { // first time (not repeatable) mes "[" + strcharinfo(0) + "]"; mes "Jurgen, Hello?"; next; @@ -10708,7 +11084,7 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "Thanks to your help, we have never been better than this."; mes "I've been talking to my sister much more, and.."; next; - classchange( 1_F_04, "Maid#ep16wig01", bc_self ); + cloakoffnpc "Maid#ep16wig01", getcharid(0); cutin "",255; mes "[Maid]"; mes "Excuse me."; @@ -10759,7 +11135,7 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "Then, I should get going."; mes "I am supposed to clean the room when there is no one inside anyway. Please excuse me."; next; - classchange( HIDDEN_WARP_NPC, "Maid#ep16wig01", bc_self ); + cloakonnpc "Maid#ep16wig01", getcharid(0); cutin "16jur_sim",0; mes "[Jurgen]"; mes "You shouldn't have to... Well, she's gone..."; @@ -10860,10 +11236,10 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "[" + strcharinfo(0) + "]"; mes "OK. I should get going then."; setquest 14488;// Please Deliver My Love - banquet_wigner_quest = 12; + ep16_wig = 17; close; } - if (banquet_wigner_quest == 12) { + if (ep16_wig == 17) { cutin "16jur_nor",0; mes "[Jurgen]"; mes "Dear adventurer! I've been waiting for you. How did it go? Has she said she loves me too?"; @@ -10872,7 +11248,7 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "No, I haven't been able to meet her yet. Let me go see her again."; close3; } - if (banquet_wigner_quest == 13) { + if (ep16_wig == 18) { cutin "16jur_nor",0; mes "[Jurgen]"; mes "Dear adventurer! I've been waiting for you."; @@ -10960,10 +11336,10 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "Dear adventurer, you may set off now. Please deliver my feelings to her safely."; erasequest 14489;// I Have to Turn It Down setquest 14490;// My Love Once More - banquet_wigner_quest = 14; + ep16_wig = 19; close3; } - if (banquet_wigner_quest == 14) { + if (ep16_wig == 19) { cutin "16jur_nor",0; mes "[Jurgen]"; mes "Did you deliver my heart to Mary safely? You have come back so early."; @@ -10978,7 +11354,7 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "Mary wouldn't feel uncomfortable if I express my feelings with ordinary things like these, right? Please send her my heart wider than the sea which never withers."; close3; } - if (banquet_wigner_quest == 15) { + if (ep16_wig == 20) { cutin "16jur_nor",0; mes "[Jurgen]"; mes "Dear adventurer! You are back!"; @@ -11051,9 +11427,9 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "I'll see you tomorrow then!"; erasequest 14491;// I Have to Turn It Down Again setquest 14492;// There Is a Silver Lining - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor getexp 200000,200000; - banquet_wigner_quest = 16; + ep16_wig = 21; close3; } if (isbegin_quest(14493) == 1) {// daily @@ -11101,7 +11477,7 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ mes "Then dear adventurer, I'll see you again tomorrow."; erasequest 14494;// I Have to Turn It Down Again setquest 14492;// There Is a Silver Lining - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor getexp 200000,200000; close3; } @@ -11147,8 +11523,8 @@ prt_cas_q,95,9,5 script Jurgen Wigner#ep16wig 4_M_4THPRIN1,{ } } -prt_cas_q,96,7,1 script Katrin Wigner#ep16wig 4_EP16_POE,3,3,{ - if (banquet_wigner_quest == 0) { +prt_cas_q,96,7,1 script Katrin Wigner#ep16wig 4_EP16_POE,{ + if (ep16_wig < 3) { cutin "16kat_nor",2; mes "[Katrin]"; mes "Dear adventurer, we are honored to have you with us. Have you met our father who is the head of the Wigner family?"; @@ -11160,19 +11536,7 @@ prt_cas_q,96,7,1 script Katrin Wigner#ep16wig 4_EP16_POE,3,3,{ mes "Then, have a comfortable time in the Wigner family."; close3; } - if (banquet_wigner_quest <= 2) { - cutin "16kat_nor",2; - mes "[Katrin]"; - mes "Dear adventurer, we are honored to have you with us. Have you met our father who is the head of the Wigner family?"; - next; - mes "[Katrin]"; - mes "How about meeting Jurgen, the hair of the Wigner family who is participating in the Royal Assembly?"; - next; - mes "[Katrin]"; - mes "Then, have a comfortable time in the Wigner family."; - close3; - } - if (banquet_wigner_quest == 3) { + if (ep16_wig == 3) { cutin "16kat_nor",2; mes "[Katrin]"; mes "I am over!"; @@ -11244,15 +11608,16 @@ prt_cas_q,96,7,1 script Katrin Wigner#ep16wig 4_EP16_POE,3,3,{ mes "Should I..."; mes "Then, please help me, dear adventurer. I'll go search other pleases then."; next; + cloakonnpc "Katrin Wigner#ep16wig", getcharid(0); cutin "16jur_nor",0; mes "[Jurgen]"; mes "Please, help her. I have heard that ^0000cdthe maids are in the kitchen^000000."; erasequest 14477;// What Is Going on? setquest 14478;// Searching for the Clue - banquet_wigner_quest = 4; + ep16_wig = 4; close3; } - if (banquet_wigner_quest == 4 || banquet_wigner_quest == 5) { + if (ep16_wig < 12) { cutin "16kat_nor",2; mes "[Katrin]"; mes "Oh, what should I do?"; @@ -11267,7 +11632,7 @@ prt_cas_q,96,7,1 script Katrin Wigner#ep16wig 4_EP16_POE,3,3,{ mes "I would be embarrassed to death."; close3; } - if (banquet_wigner_quest == 10) { + if (ep16_wig == 15) { cutin "16kat_nor",2; mes "[Katrin]"; mes "Please leave me alone now!"; @@ -11297,7 +11662,7 @@ prt_cas_q,96,7,1 script Katrin Wigner#ep16wig 4_EP16_POE,3,3,{ mes "Please."; close3; } - if (banquet_wigner_quest == 11) { + if (ep16_wig > 15) { cutin "16kat_nor",2; mes "[Katrin]"; mes "Thanks to you, we have become closer to one another now."; @@ -11318,35 +11683,31 @@ prt_cas_q,96,7,1 script Katrin Wigner#ep16wig 4_EP16_POE,3,3,{ mes "[Katrin]"; mes "My father is over there."; close3; - -OnTouch: - if (banquet_wigner_quest >= 4 && banquet_wigner_quest <= 10) - classchange( HIDDEN_WARP_NPC, "", bc_self ); - end; } -prt_cas_q,94,7,7 script Isaac Wigner#ep16wig HIDDEN_WARP_NPC,5,5,{ - if (checkweight(501,1) == 0) { +prt_cas_q,94,7,7 script Isaac Wigner#ep16wig 4_EP16_ISAAC,{ + if (checkweight(1304,3) == 0) { mes "[Isaac Wigner]"; mes "Dear adventurer, do you know the old saying that the emptier it is, the more you can fill it?"; mes "It is one of the many aphorisms passing down in our family."; close; } - if (banquet_roegenburg_quest == 2) { - mes "[" + strcharinfo(0) + "]"; + .@name$ = strcharinfo(0); + if (ep16_lug == 2) { + mes "[" + .@name$ + "]"; mes "Hello, Isaac Wigner."; next; cutin "16isa",1; mes "[Isaac]"; mes "Oh, welcome, dear adventurer, my brother is over there..."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "No. I am here to see you, Isaac."; next; mes "[Isaac]"; mes "Is it about Wolf?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes. How did you know it...?"; next; mes "[Isaac]"; @@ -11355,25 +11716,25 @@ prt_cas_q,94,7,7 script Isaac Wigner#ep16wig HIDDEN_WARP_NPC,5,5,{ mes "[Isaac]"; mes "I never expected you would come here instead though. So is he cancelling the appointment today then?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes, he is. And he asked me to get ^0000cda certain thing^000000 from you, Isaac."; next; mes "[Isaac]"; mes "That thing...? Wolf must trust you, dear adventurer. Or it could be..."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Some kind of a test."; next; mes "[Isaac]"; mes "Don't take it the wrong way. I am just be careful. In order to do what I do, I need to know who I can trust first."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I understand."; next; mes "[Isaac]"; mes "You can bring it to Wolf. Please be careful with it."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "OK."; next; mes "[Isaac]"; @@ -11384,34 +11745,40 @@ prt_cas_q,94,7,7 script Isaac Wigner#ep16wig HIDDEN_WARP_NPC,5,5,{ next; mes "[Isaac]"; mes "Since I have a reputation to keep. I cannot afford to have a scandal. Please help me."; - next; - mes "[Isaac]"; - mes "Please excuse me then."; + if (ep16_wig > 1 && ep16_wig < 15) { + next; + mes "[Isaac]"; + mes "Please excuse me then."; + cloakonnpc "Isaac Wigner#ep16wig", getcharid(0); + } erasequest 14496;// To Isaac setquest 14497;// Delivery for Wolf - banquet_roegenburg_quest = 3; - getitem 6930,1;// Sample of New Business Item + ep16_lug = 3; + getitem 6930,1;// Biz_Items_Sample close3; } - if (banquet_roegenburg_quest == 3) { + if (ep16_lug == 3) { cutin "16isa",1; mes "[Isaac]"; mes "Have you deliver the thing to Wolf safely? You should be careful with it since it can be dangerous."; next; mes "[Isaac]"; mes "And, don't forget to ask about the rumor as well."; - next; - mes "[Isaac]"; - mes "Please excuse me then."; + if (ep16_wig > 1 && ep16_wig < 15) { + next; + mes "[Isaac]"; + mes "Please excuse me then."; + cloakonnpc "Isaac Wigner#ep16wig", getcharid(0); + } close3; } - if (banquet_roegenburg_quest == 7) { + if (ep16_lug == 7) { if (countitem(6931) < 1) { cutin "16isa",1; mes "[Isaac]"; mes "Dear adventurer, you are back. Did you deliver the thing safely? What did he say about the rumor?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Here is the document about that. Here... It was. Wait, I must have forget to bring it with me. I am sorry. I'll be back with it soon."; next; mes "[Isaac]"; @@ -11422,7 +11789,7 @@ prt_cas_q,94,7,7 script Isaac Wigner#ep16wig HIDDEN_WARP_NPC,5,5,{ mes "[Isaac]"; mes "Dear adventurer, you are back. Did you deliver the thing safely? What did he say about the rumor?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Here is the ^0000cddocument^000000 about it. It is written by Wolf Roegenburg himself."; next; mes "[Isaac]"; @@ -11440,15 +11807,21 @@ prt_cas_q,94,7,7 script Isaac Wigner#ep16wig HIDDEN_WARP_NPC,5,5,{ mes "[Isaac]"; mes "Well, I believe Wolf would find a better direction to the business. Please tell Wolf that I support his decision. And that I am excited about his new business."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes, I will."; - delitem 6931,1;// Top Secret Document + if (ep16_wig > 1 && ep16_wig < 15) { + next; + mes "[Isaac]"; + mes "Please excuse me then."; + cloakonnpc "Isaac Wigner#ep16wig", getcharid(0); + } + delitem 6931,1;// Secret_Documents erasequest 14502;// To Isaac setquest 14503;// Report to Wolf - banquet_roegenburg_quest = 8; + ep16_lug = 8; close3; } - if (banquet_roegenburg_quest == 8) { + if (ep16_lug == 8) { cutin "16isa",1; mes "[Isaac]"; mes "It is a shame."; @@ -11460,17 +11833,16 @@ prt_cas_q,94,7,7 script Isaac Wigner#ep16wig HIDDEN_WARP_NPC,5,5,{ next; mes "[Isaac]"; mes "That's why I accepted his suggestion to be partners in business."; + if (ep16_wig > 1 && ep16_wig < 15) { + next; + mes "[Isaac]"; + mes "Please excuse me then."; + cloakonnpc "Isaac Wigner#ep16wig", getcharid(0); + } close3; } - if (banquet_wigner_quest == 0) { - cutin "16isa",1; - mes "[Isaac]"; - mes "Is it your first time to visit the Wigner family?"; - mes "Then, ^0000cdyou should meet our parents^000000 over there first."; - close3; - } - if (banquet_wigner_quest == 1) { + if (ep16_wig == 1 || ep16_wig == 2) { cutin "16isa",1; mes "[Isaac]"; mes "Dear adventurer, since you are here to the Wigner family, why don't you go meet some other members of the family?"; @@ -11480,7 +11852,7 @@ prt_cas_q,94,7,7 script Isaac Wigner#ep16wig HIDDEN_WARP_NPC,5,5,{ mes "I believe that you would have more productive time with them."; close3; } - if (banquet_wigner_quest == 10) { + if (ep16_wig == 15) { cutin "16isa",1; mes "[Isaac]"; mes "Dear adventurer, did you bring what I had asked you?"; @@ -11501,7 +11873,7 @@ prt_cas_q,94,7,7 script Isaac Wigner#ep16wig HIDDEN_WARP_NPC,5,5,{ mes "Please bring them to us as soon as possible!"; close3; } - if (banquet_wigner_quest == 11) { + if (ep16_wig > 15) { cutin "16isa",1; mes "[Isaac]"; mes "Thanks to you, my brother and sister have become close to each other again."; @@ -11511,97 +11883,173 @@ prt_cas_q,94,7,7 script Isaac Wigner#ep16wig HIDDEN_WARP_NPC,5,5,{ mes "Dear adventurer, I'll see you around then."; close3; } + cutin "16isa",1; + mes "[Isaac]"; + mes "Is it your first time to visit the Wigner family?"; + mes "Then, ^0000cdyou should meet our parents^000000 over there first."; + close3; +} + +prt_cas_q,80,23,5 script Jurgen Wigner#ep16wig00 4_M_4THPRIN1,{ + end; +OnInit: + cloakonnpc strnpcinfo(0); + end; +} +prt_cas_q,93,10,4 duplicate(Jurgen Wigner#ep16wig00) Maid#ep16wig01 1_F_04 + +prt_cas_q,95,11,4 script Womenfolk#ep16wig01 1_F_03,{ + mes "[Womenfolk]"; + mes "Jurgen, you are mine!"; + close2; + if (achievementinfo(110001, ACHIEVEINFO_COUNT6) == 0) + achievementupdate(110001, ACHIEVEINFO_COUNT6, 1); end; -OnTouch: - if (banquet_wigner_quest < 2 || banquet_wigner_quest == 10 || banquet_wigner_quest == 11 || banquet_roegenburg_quest == 2 || banquet_roegenburg_quest == 3 || banquet_roegenburg_quest == 7 || banquet_roegenburg_quest == 8) - classchange( 4_EP16_ISAAC, "", bc_self ); +OnTimer600000: + enablenpc "Womenfolk#ep16wig01"; + npctalk "Oh my! Jurgen! My prince! I love you! Please look this way!", "Womenfolk#ep16wig01"; + emotion ET_CHUP, getnpcid(0, "Womenfolk#ep16wig01"); + sleep 2000; + npctalk "Are you... I have seen you before... Well... Are you here to see me?", "Jurgen Wigner#ep16wig"; + sleep 2000; + npctalk "Dear Jurgen! Please be with me together! Forever!", "Womenfolk#ep16wig01"; + specialeffect EF_HEARTCASTING,AREA,"Womenfolk#ep16wig01"; + sleep 2000; + npctalk "That's a bit difficult...", "Jurgen Wigner#ep16wig"; + sleep 2000; + enablenpc "Strong Guards#ep16wig03"; + enablenpc "Strong Guards#ep16wig04"; + npctalk "Oh my! How did you get in here again?", "Strong Guards#ep16wig03"; + sleep 2000; + npctalk "They keep getting in here through the guard. It is no use to tighten security!", "Strong Guards#ep16wig04"; + sleep 2000; + npctalk "Get her out of here!", "Strong Guards#ep16wig03"; + sleep 2000; + npctalk "Oh my! Jurgen! I love you!", "Womenfolk#ep16wig01"; + disablenpc "Womenfolk#ep16wig01"; + disablenpc "Strong Guards#ep16wig03"; + disablenpc "Strong Guards#ep16wig04"; + initnpctimer; + end; +OnInit: + initnpctimer; + disablenpc "Womenfolk#ep16wig01"; + disablenpc "Strong Guards#ep16wig03"; + disablenpc "Strong Guards#ep16wig04"; end; } -prt_cas_q,80,23,5 script Jurgen Wigner#ep16wig00 HIDDEN_WARP_NPC,{ end; } -prt_cas_q,93,10,4 script Maid#ep16wig01 HIDDEN_WARP_NPC,{ end; } - -prt_cas_q,95,11,4 script Womenfolk#ep16wig01 1_F_03,{ end; } prt_cas_q,94,12,4 script Strong Guards#ep16wig03 8W_SOLDIER,{ end; } prt_cas_q,95,12,4 script Strong Guards#ep16wig04 8W_SOLDIER,{ end; } -prt_cas_q,98,23,1 script Bachelor#ep16wig01 1_M_ORIENT01,{ end; } +prt_cas_q,98,23,1 script Bachelor#ep16wig01 1_M_ORIENT01,{ + mes "[Bachelor]"; + mes "I couldn't shake hands with Jurgen! Oh, it's too hot!"; + close2; + if (achievementinfo(110001, ACHIEVEINFO_COUNT7) == 0) + achievementupdate(110001, ACHIEVEINFO_COUNT7, 1); + end; + +OnTimer480000: + enablenpc "Bachelor#ep16wig01"; + npctalk "Jurgen, argh! It is hot!", "Bachelor#ep16wig01"; + sleep 2000; + npctalk "Why did I fall in this place?", "Bachelor#ep16wig01"; + sleep 2000; + npctalk "That woman must have given me the wrong set of coordinates!", "Bachelor#ep16wig01"; + sleep 2000; + npctalk "Oh, it is hot!", "Bachelor#ep16wig01"; + npctalk "Well, you didn't need to show me the blazing love for me with your entire body.", "Jurgen Wigner#ep16wig"; + sleep 2000; + npctalk "Oh, it's hot! Jurgen, please save me... Argh!", "Bachelor#ep16wig01"; + sleep 3000; + enablenpc "Strong Guards#ep16wig05"; + enablenpc "Strong Guards#ep16wig06"; + npctalk "Strong Guards at your service!", "Strong Guards#ep16wig05"; + sleep 2000; + npctalk "Why is this person doing here?", "Strong Guards#ep16wig06"; + sleep 2000; + npctalk "There are all kinds of people in the world.", "Strong Guards#ep16wig05"; + sleep 2000; + npctalk "Get her out of here!", "Strong Guards#ep16wig06"; + sleep 2000; + npctalk "Argh! Jurgen, my prince!", "Bachelor#ep16wig01"; + disablenpc "Bachelor#ep16wig01"; + disablenpc "Strong Guards#ep16wig05"; + disablenpc "Strong Guards#ep16wig06"; + initnpctimer; + end; +OnInit: + initnpctimer; + disablenpc "Bachelor#ep16wig01"; + disablenpc "Strong Guards#ep16wig05"; + disablenpc "Strong Guards#ep16wig06"; + end; +} + prt_cas_q,98,20,7 script Strong Guards#ep16wig05 8W_SOLDIER,{ end; } prt_cas_q,96,22,7 script Strong Guards#ep16wig06 8W_SOLDIER,{ end; } -prt_cas_q,95,7,5 script #ep16wig004 HIDDEN_WARP_NPC,{ - end; -OnInit: - donpcevent "#ep16wig004::OnEvent1"; - donpcevent "#ep16wig004::OnEvent2"; - end; -OnEvent1: - while(true) { - disablenpc "Bachelor#ep16wig01"; - disablenpc "Strong Guards#ep16wig05"; - disablenpc "Strong Guards#ep16wig06"; - sleep 480000; // 8 mins - enablenpc "Bachelor#ep16wig01"; - npctalk "Jurgen, argh! It is hot!", "Bachelor#ep16wig01"; - sleep 2000; - npctalk "Why did I fall in this place?", "Bachelor#ep16wig01"; - sleep 2000; - npctalk "That woman must have given me the wrong set of coordinates!", "Bachelor#ep16wig01"; - sleep 2000; - npctalk "Oh, it is hot!", "Bachelor#ep16wig01"; - sleep 10; - npctalk "Well, you didn't need to show me the blazing love for me with your entire body.", "Jurgen Wigner#ep16wig"; - sleep 2000; - npctalk "Oh, it's hot! Jurgen, please save me... Argh!", "Bachelor#ep16wig01"; - sleep 3000; - enablenpc "Strong Guards#ep16wig05"; - enablenpc "Strong Guards#ep16wig06"; - npctalk "Strong Guards at your service!", "Strong Guards#ep16wig05"; - sleep 2000; - npctalk "Why is this person doing here?", "Strong Guards#ep16wig06"; - sleep 2000; - npctalk "There are all kinds of people in the world.", "Strong Guards#ep16wig05"; - sleep 2000; - npctalk "Get her out of here!", "Strong Guards#ep16wig06"; - sleep 2000; - npctalk "Argh! Jurgen, my prince!", "Bachelor#ep16wig01"; +prt_cas_q,74,21,5 script #ep16wig003 HIDDEN_NPC,5,5,{ + end; +OnTouch: + if (ep16_wig == 2 || ep16_wig == 3) { + cloakoffnpc "Katrin Wigner#ep16wig", getcharid(0); + if (ep16_lug == 2 || ep16_lug == 7) + cloakoffnpc "Isaac Wigner#ep16wig", getcharid(0); + else + cloakonnpc "Isaac Wigner#ep16wig", getcharid(0); + } + else if (ep16_wig > 3 && ep16_wig < 15) { + cloakonnpc "Katrin Wigner#ep16wig", getcharid(0); + if (ep16_lug == 2 || ep16_lug == 7) + cloakoffnpc "Isaac Wigner#ep16wig", getcharid(0); + else + cloakonnpc "Isaac Wigner#ep16wig", getcharid(0); + } + else if (ep16_wig == 15) { + cloakonnpc "Katrin Wigner#ep16wig", getcharid(0); + cloakoffnpc "Isaac Wigner#ep16wig", getcharid(0); + } + else { + cloakoffnpc "Katrin Wigner#ep16wig", getcharid(0); + cloakoffnpc "Isaac Wigner#ep16wig", getcharid(0); } end; +} -OnEvent2: - while(true) { - disablenpc "Womenfolk#ep16wig01"; - disablenpc "Strong Guards#ep16wig03"; - disablenpc "Strong Guards#ep16wig04"; - sleep 600000; // 10 mins - enablenpc "Womenfolk#ep16wig01"; - npctalk "Oh my! Jurgen! My prince! I love you! Please look this way!", "Womenfolk#ep16wig01"; - emotion ET_CHUP, getnpcid(0, "Womenfolk#ep16wig01"); - sleep 2000; - npctalk "Are you... I have seen you before... Well... Are you here to see me?", "Jurgen Wigner#ep16wig"; - sleep 1500; - npctalk "Dear Jurgen! Please be with me together! Forever!", "Womenfolk#ep16wig01"; - specialeffect EF_HEARTCASTING,AREA,"Womenfolk#ep16wig01"; - sleep 2000; - npctalk "That's a bit difficult...", "Jurgen Wigner#ep16wig"; - sleep 2000; - enablenpc "Strong Guards#ep16wig03"; - enablenpc "Strong Guards#ep16wig04"; - npctalk "Oh my! How did you get in here again?", "Strong Guards#ep16wig03"; - sleep 1500; - npctalk "They keep getting in here through the guard. It is no use to tighten security!", "Strong Guards#ep16wig04"; - sleep 2000; - npctalk "Get her out of here!", "Strong Guards#ep16wig03"; - sleep 2000; - npctalk "Oh my! Jurgen! I love you!", "Womenfolk#ep16wig01"; +prt_cas_q,95,7,5 script #ep16wig004 HIDDEN_NPC,5,5,{ + end; +OnTouch: + if (ep16_wig == 2 || ep16_wig == 3) { + cloakoffnpc "Katrin Wigner#ep16wig", getcharid(0); + if (ep16_lug == 2 || ep16_lug == 7) + cloakoffnpc "Isaac Wigner#ep16wig", getcharid(0); + else + cloakonnpc "Isaac Wigner#ep16wig", getcharid(0); + } + else if (ep16_wig > 3 && ep16_wig < 15) { + cloakonnpc "Katrin Wigner#ep16wig", getcharid(0); + if (ep16_lug == 2 || ep16_lug == 7) + cloakoffnpc "Isaac Wigner#ep16wig", getcharid(0); + else + cloakonnpc "Isaac Wigner#ep16wig", getcharid(0); + } + else if (ep16_wig == 15) { + cloakonnpc "Katrin Wigner#ep16wig", getcharid(0); + cloakoffnpc "Isaac Wigner#ep16wig", getcharid(0); + } + else { + cloakoffnpc "Katrin Wigner#ep16wig", getcharid(0); + cloakoffnpc "Isaac Wigner#ep16wig", getcharid(0); } end; } prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ - if (checkweight(501,1) == 0) { + if (checkweight(1304,3) == 0) { mes "[Maid]"; mes "Oh, you shouldn't bring too much stuff in here."; mes "As you see there are a lot of fragile things."; @@ -11610,7 +12058,8 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "You need to leave some out. It would be a big problem if the bundle touches the dishes and breaks them."; close; } - if (banquet_wigner_quest == 4) { + .@name$ = strcharinfo(0); + if (ep16_wig == 4) { mes "[Maid]"; mes "I am cleaning the kitchen now, which is the hardest place to clean. It is really difficult to get rid of all the dirt in here."; mes "My arms are way too weak to handle it."; @@ -11618,19 +12067,19 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Maid]"; mes "I happen to see someone with a strong set of arms... Those arms... What brought you here?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Hello, I am the adventurer invited to the royal banquet. Are you the maid who have cleaned the Wigner residence this afternoon?"; next; mes "[Maid]"; mes "Yes, I am. What can I do for you?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Did you happen to see ^0000cda small box^000000 in the Wigner residence? It was supposed to be on the table next to the bed. The box belongs to Princess Katrin. Have you seen it?"; next; mes "[Maid]"; mes "Yes, I have. It was the box which looked simple but classy. I held it up for a second to clean the table and put it down. I remember it."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Did you see it there when you leave the room? Wasn't there anyone else in the room?"; next; mes "[Maid]"; @@ -11640,14 +12089,14 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Maid]"; mes "Isn't the box missing and are you ^0000cdsuspecting the maid who has cleaned the room^000000? Am I right?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I am not suspecting you. I am just ^0000cdasking you about the situation^000000 to track the box."; next; emotion ET_FRET; mes "[Maid]"; mes "With an element of suspicion in your mind, right?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "No, I am not suspecting you. Please don't get me wrong. I am just asking you when you have seen it and if there haven't been anyone else there."; next; emotion ET_ANGER; @@ -11657,7 +12106,7 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Maid]"; mes "I can tell you this one though. I didn't take it. If you ask me if there was anyone in the room, well..."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "There was someone in the room, right?"; next; mes "[Maid]"; @@ -11667,7 +12116,7 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Maid]"; mes "Oh, the kitchen is messy and so are the thoughts inside my head. Oh, how dirty and messy!"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "May I help you clean up?"; next; emotion ET_SMILE; @@ -11684,15 +12133,15 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Maid]"; mes "Oh, wait! You know, there is a certain protocol when it comes to cleaning. You first need to wipe off the mold on the wall. Then you have to clean up the grease. The last thing for you to do is cleaning the floor."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I... I see."; erasequest 14478;// Searching for the Clue setquest 14479;// Clean-up out of Apology - getitem 6928,3;// Poring Loofah - banquet_wigner_quest = 5; + getitem 6928,3;// Poring_Loofah + ep16_wig = 5; close; } - if (banquet_wigner_quest == 5) { + if (ep16_wig > 4 && ep16_wig < 11) { mes "[Maid]"; mes "Have you finished it already?"; mes "It doesn't seem so. The thoughts in my head haven't cleared up yet."; @@ -11701,12 +12150,12 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "I think I would be able to recall when you come back after cleaning the kitchen with the Scrub Sponge I have given you."; close; } - if (banquet_wigner_quest == 6) { + if (ep16_wig == 11) { emotion ET_BEST; mes "[Maid]"; mes "Wow... The kitchen has become so clean! You really need to clean the grease with a strong set of arms!"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Argh... My arms... Was there anyone else in the room?"; next; mes "[Maid]"; @@ -11715,21 +12164,21 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Maid]"; mes "All the gorgeous pieces of furniture and carpets... I have never seen tiger skin as white and huge as that one in there."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Why are you talking about the furniture all of a sudden?"; next; mes "[Maid]"; mes "Oh, my, how are you going to deal with the members of the royal families with such slow wit?"; mes "Think. Why would I ^0000cdtalk about the furniture^000000 ?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "...You ^0000cdcan ask the person who was delivering the furniture^000000 ."; next; mes "[Maid]"; mes "I cannot point it out, but I think I have given you enough clues."; mes "By the way, is the box really missing in the first place?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "What do you mean?"; next; mes "[Maid]"; @@ -11745,14 +12194,14 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Maid]"; mes "The words haven not been spread yet, but I am sure that everyone will be talking about it even before the teatime is over."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I don't think that is true. She is not that kind of person."; next; emotion ET_FRET; mes "[Maid]"; mes "That's what people say. You don't have to reason with me. Anyways, I should get back to my cleaning duty. If you are not going to help me, please leave me alone now."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Do you know where the man who have delivered the furniture is?"; next; mes "[Maid]"; @@ -11761,14 +12210,16 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Maid]"; mes "Oh, by the way, you didn't hear it from me. Not that I said anything to you."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Of course. Thank you for your cooperation."; + if (isbegin_quest(14479)) + erasequest 14479; erasequest 14483;// Report the Completion of the Clean-up setquest 14484;// There Was a Furniture Delivery Man - banquet_wigner_quest = 7; + ep16_wig = 12; close; } - if (banquet_wigner_quest == 7) { + if (ep16_wig == 12) { mes "[Maid]"; mes "Dear adventurer, didn't you say that you were going to visit the delivery man?"; mes "He must be somewhere ^0000cdnear the district office^000000."; @@ -11778,26 +12229,26 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "You are getting in the way."; close; } - if (banquet_wigner_quest < 12) { + if (ep16_wig < 12) { mes "[Maid]"; mes "Oh, I am sick of cleaning! I have enough things to clean at home. I don't need to do more out here."; mes "I should just give it all up and run away."; close; } - if (banquet_wigner_quest == 12) { + if (ep16_wig == 17) { emotion ET_FRET; mes "[Maid]"; mes "Oh, why can't I get it off easily? I guess I won't be able to go home early."; mes "Why should I do this?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Hello. Do you have a moment?"; next; mes "[Maid]"; mes "Yes... Well... Hum.. You are..."; mes "Aren't you the adventurer who was at the Wigner residence?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes. And I have come here before, and I have helped you with cleaning."; mes "^0000cdDon't you remember...?^000000"; next; @@ -11806,13 +12257,13 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "Oh, I am really sorry. ^0000cdI am not good at remembering faces.^000000"; mes "What brought you here?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Jurgen of the Wigner family has asked me to give it to you."; next; mes "[Maid]"; mes "What is it? Why did he give it to me? Is it an invoice? Have I done anything wrong?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "No, it is not. Please just read it first."; next; emotion ET_BIGTHROB; @@ -11820,23 +12271,23 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "Hum... I have fallen in love with you at first sight."; mes "Well... Hum... Please accept my love for... Eh... Umm..."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "He has used some really direct languages here. How very Wigner of him for that he values efficiency... Hahaha..."; next; mes "[Maid]"; mes "Hum... It is... It is... Well, is it what I think it is?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes, it is a love letter."; next; mes "[Maid]"; mes "Phew... I am sorry, but you should take it back."; mes "Well... I appreciate his feelings for me... I really do... But please just take it back."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Really? He has just tried to express his feelings... You may as well just keep it..."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Oh, are you in a relationship or engaged? Or are you married?"; next; mes "[Maid]"; @@ -11846,26 +12297,26 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Maid]"; mes "Most of all, I am not in the situation to date anyone. ^0000cdIt is for a personal reason.^000000"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "If you say so, I cannot force it. I'll deliver your words to him."; next; mes "[Maid]"; mes "Yes. I am really sorry."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "May I get your name at least?"; next; mes "[Maid]"; mes "Mad... No, ^0000cdMary^000000. My name is Mary."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I see. Then let me deliver your words to Jurgen."; erasequest 14488;// Please Deliver My Love setquest 14489;// I Have to Turn It Down - banquet_wigner_quest = 13; + ep16_wig = 18; close; } - if (banquet_wigner_quest == 13) { + if (ep16_wig == 18) { mes "[Maid]"; mes "Well, have you told the prince about it? Please make sure not to hurt his feelings much."; next; @@ -11873,21 +12324,21 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "Please."; close; } - if (banquet_wigner_quest == 14) { + if (ep16_wig == 19) { if (countitem(748) < 1 || countitem(6927) < 15) { emotion ET_OHNO; mes "[Mary]"; mes "Oh, when will it end."; mes "I won't let go of this, really!"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Oh, I don't think it is the right time. May I come back later?"; next; mes "[Mary]"; mes "No, not at all."; mes "Dear adventurer, you have a hole in your pocket. Have you lost anything?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Oh! When did I get a hole in there? Where are the ^0000cd15 Sea Stones and 1 Witherless Rose...?^000000"; mes "They are gone! Let me come back later! I have forgotten to bring something!"; close; @@ -11897,7 +12348,7 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "Oh, when will it end."; mes "I won't let go of this, really!"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Oh, hello."; mes "Is it a bad time? Should I just go?"; next; @@ -11905,7 +12356,7 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "Oh, no."; mes "By the way, you are back. Is it about the prince of the Wigner family again?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes. Jurgen seems to be really serious about it."; mes "He wants you to have these."; next; @@ -11913,13 +12364,13 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "I turned it down."; mes "Oh, this really is... So pretty. There is water inside this glass-like thing..."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes. Jurgen wants me to let you know about his heart as wide and beautiful as the sea."; next; mes "[Mary]"; mes "Oh, I really cannot go out with him. Well, there really is a reason that I cannot accept this feelings. I wonder if I should tell you this."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Please tell me. If you have a good enough reason which Jurgen can understand, he would not bother you again, Mary."; next; mes "[Mary]"; @@ -11928,20 +12379,20 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Mary]"; mes "In fact, I am ^0000cdthe younger sibling of the maid who used to work here^000000. The maid you have met before."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Oh, no wonder you couldn't remember my face. I found it a little strange. By the way, you two sisters must have worked here together."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "However, what would it matter since it is you whom he has fallen for?"; next; mes "[Mary]"; mes "It matters. ^0000cdBecause, I am her brother^000000."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Oh, you are..."; next; emotion ET_HUK, playerattached(); - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Wha... What? A brother?"; next; mes "[Mary]"; @@ -11966,16 +12417,16 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Mary]"; mes "After consulting my mother, I decided to work here pretending as if I was my sister. Since everyone was so busy, no one paid attention to me who was working quietly in this corner."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "You have managed not to be busted so far."; next; mes "[Mary]"; mes "Since ^0000cdI look just like my sister^000000, no one seems to notice."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "What should we do then? Jurgen really wants you to accept his love."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "He is in sorrow saying how difficult it is to get the first thing he has ever wanted in this entire life."; next; emotion ET_SCRATCH; @@ -11985,13 +12436,13 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Mary]"; mes "I assumed that the people who have all the money in the world and have seen all the good things in the world must have a keen eye. I stand corrected."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "You get blinded when you are in love."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "And, you really are doing so remarkably at what you are doing now."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I guess I should go back and tell him the truth."; next; emotion ET_HUK; @@ -12002,22 +12453,22 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Mary]"; mes "I am keep sending the message to my sister to comeback, but it seems difficult to reach her. Would you please keep it secret until the banquet is over?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Jurgen would keep sending me to earn your love, and this means that we are deceiving him."; next; mes "[Mary]"; mes "I am sorry for him, but my life depends on this."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Hum, I don't feel comfortable doing this..."; next; mes "[Mary]"; mes "It is not my fault to be here in this clothing... Please feel for me."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Oh, OK. Calm down. I'll tell Jurgen that you have held off the answer."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Please take good care of the stuff. If you return them, he will send me down here again."; next; mes "[Mary]"; @@ -12026,20 +12477,20 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "[Mary]"; mes "Oh, I guess I should change my cleaning area so that I don't bump into him."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes, I guess it would work."; mes "Then, let me go tell him that."; next; mes "[Mary]"; mes "Thank you."; - delitem 6927, countitem(6927);// Sea Stone + delitem 6927, countitem(6927);// Filled_With_SeaStones delitem 748,1;// Witherless Rose erasequest 14490;// My Love Once More setquest 14491;// I Have to Turn It Down Again - banquet_wigner_quest = 15; + ep16_wig = 20; close; } - if (banquet_wigner_quest == 15) { + if (ep16_wig == 20) { mes "[Mary]"; mes "Did you tell the prince about it?"; mes "I am worried about the consequences if anything goes wrong."; @@ -12048,106 +12499,115 @@ prt_cas,322,216,5 script Maid#ep16wig02 1_F_04,{ mes "I may have to run off like my sister."; close; } - - if (isbegin_quest(14493) == 1) { // daily quest - if (countitem(748) < 1 || countitem(6927) < 15) { - emotion ET_OHNO; + if (ep16_wig > 20) { + if (isbegin_quest(14494) == 1 || isbegin_quest(14492) == 1) { // daily quest mes "[Mary]"; - mes "Oh, when will it end."; - mes "I won't let go of this, really!"; - next; - mes "[" + strcharinfo(0) + "]"; - mes "Oh, I don't think it is the right time. May I come back later?"; - next; - mes "[Mary]"; - mes "No, not at all."; - mes "Dear adventurer, you have a hole in your pocket. Have you lost anything?"; - next; - mes "[" + strcharinfo(0) + "]"; - mes "Oh! When did I get a hole in there? Where are the ^0000cd15 Sea Stones and 1 Witherless Rose...?^000000"; - mes "They are gone! Let me come back later! I have forgotten to bring something!"; + mes "Did you tell the prince about it? I hope he gives up from tomorrow without sending you down here again."; close; } - mes "[Maid]"; - mes "Adventurer? What brought you here?"; - next; - mes "[" + strcharinfo(0) + "]"; - mes "Jurgen sent me here to deliver his love to you again."; - next; - emotion ET_CRY; - mes "[Maid]"; - mes "Again... I really hoped he would have given up by today... I guess it must have been a vain hope."; - next; - mes "[Maid]"; - mes "Please tell him I appreciate it."; - next; - mes "[Maid]"; - mes "I really want the banquet to be over soon. Or my sister could just come back."; - next; - mes "[Maid]"; - mes "Anyway, I am sorry to put you in the difficult situation again today."; - next; - mes "[" + strcharinfo(0) + "]"; - mes "Well then, since I have delivered you what I have to deliver you, I should get going."; - next; - mes "[Maid]"; - mes "Yes, please go back safely. I hope he gives up by tomorrow."; - delitem 6927,15;// Sea Stone - delitem 748,1;// Witherless Rose - erasequest 14493;// Today I Feel - setquest 14494;// I Have to Turn It Down Again - close; + if (isbegin_quest(14493) == 1) { + if (countitem(748) < 1 || countitem(6927) < 15) { + emotion ET_OHNO; + mes "[Mary]"; + mes "Oh, when will it end."; + mes "I won't let go of this, really!"; + next; + mes "[" + .@name$ + "]"; + mes "Oh, I don't think it is the right time. May I come back later?"; + next; + mes "[Mary]"; + mes "No, not at all."; + mes "Dear adventurer, you have a hole in your pocket. Have you lost anything?"; + next; + mes "[" + .@name$ + "]"; + mes "Oh! When did I get a hole in there? Where are the ^0000cd15 Sea Stones and 1 Witherless Rose...?^000000"; + mes "They are gone! Let me come back later! I have forgotten to bring something!"; + close; + } + mes "[Maid]"; + mes "Adventurer? What brought you here?"; + next; + mes "[" + .@name$ + "]"; + mes "Jurgen sent me here to deliver his love to you again."; + next; + emotion ET_CRY; + mes "[Maid]"; + mes "Again... I really hoped he would have given up by today... I guess it must have been a vain hope."; + next; + mes "[Maid]"; + mes "Please tell him I appreciate it."; + next; + mes "[Maid]"; + mes "I really want the banquet to be over soon. Or my sister could just come back."; + next; + mes "[Maid]"; + mes "Anyway, I am sorry to put you in the difficult situation again today."; + next; + mes "[" + .@name$ + "]"; + mes "Well then, since I have delivered you what I have to deliver you, I should get going."; + next; + mes "[Maid]"; + mes "Yes, please go back safely. I hope he gives up by tomorrow."; + delitem 6927, countitem(6927);// Filled_With_SeaStones + delitem 748,1;// Witherless Rose + erasequest 14493;// Today I Feel + setquest 14494;// I Have to Turn It Down Again + close; + } + // fall through } - mes "[Mary]"; - mes "Did you tell the prince about it? I hope he gives up from tomorrow without sending you down here again."; + mes "[Maid]"; + mes "Oh, I am sick of cleaning! I have enough things to clean at home. I don't need to do more out here."; + mes "I should just give it all up and run away."; close; } -prt_cas,339,212,5 script Dark and Damp Wall#ep16 HIDDEN_NPC,5,5,{ +prt_cas,339,212,5 script Dark and Damp Wall#ep16wig HIDDEN_NPC,5,5,{ callsub S_Talk; S_Talk: - if (banquet_wigner_quest == 5) { - switch( isbegin_quest(14481) ) { - case 0: + if (ep16_wig == 5) { + mes "[Scrub Sponge]"; + mes "Dear human, are you the one who have waken me up?"; + mes "After a long sleep, I am waken up before such a mess."; + next; + mes "[Scrub Sponge]"; + mes "I am the god of cleaning sealed in the Scrub Sponge."; + mes "You shall pay for your sin of interrupting my rest with cleaning."; + next; + mes "[Scrub Sponge]"; + mes "Let's see. This must be ^0000cda cluster of mold^000000!"; + mes "You cannot get this mold without borrowing strength from its own race and the god."; + next; + mes "[Scrub Sponge]"; + mes "Bring ^0000cd1 Mold Powder and 1 Holy Water^000000!"; + setquest 14481;// Conquer the Mold + ep16_wig = 6; + close; + } + if (ep16_wig == 6) { + if (countitem(6928) < 1 || countitem(7001) < 1 || countitem(523) < 1) { mes "[Scrub Sponge]"; - mes "Dear human, are you the one who have waken me up?"; - mes "After a long sleep, I am waken up before such a mess."; + mes "Human, what are you doing now?"; + mes "I told you! You need ^0000cd1 Mold Powder and 1 Holy Water^000000 to clean up the mold!"; next; mes "[Scrub Sponge]"; - mes "I am the god of cleaning sealed in the Scrub Sponge."; - mes "You shall pay for your sin of interrupting my rest with cleaning."; - next; - mes "[Scrub Sponge]"; - mes "Let's see. This must be ^0000cda cluster of mold^000000!"; - mes "You cannot get this mold without borrowing strength from its own race and the god."; - next; - mes "[Scrub Sponge]"; - mes "Bring ^0000cd1 Mold Powder and 1 Holy Water^000000!"; - setquest 14481;// Conquer the Mold + mes "How can you clean up without them?"; + mes "Go get them first."; close; - case 1: - if (countitem(6928) < 1 || countitem(7001) < 1 || countitem(523) < 1) { - mes "[Scrub Sponge]"; - mes "Human, what are you doing now?"; - mes "I told you! You need ^0000cd1 Mold Powder and 1 Holy Water^000000 to clean up the mold!"; - next; - mes "[Scrub Sponge]"; - mes "How can you clean up without them?"; - mes "Go get them first."; - close; - } - mes "[Scrub Sponge]"; - mes "Since you have the Mold Powder and alcohol with you, try getting rid of the mold now."; - next; - mes "[Scrub Sponge]"; - mes "This is not the proper way of wiping off the mold, but this is the only way to get rid of such severe mold."; - next; - mes "[Scrub Sponge]"; - mes "Wipe the Mold Power over the mold which resembles demon's skin and sprinkle it with Holy Water."; - next; - mes "[Scrub Sponge]"; - mes "And wipe it as I tell you. I am not going to tell you again so pay attention."; + } + mes "[Scrub Sponge]"; + mes "Since you have the Mold Powder and alcohol with you, try getting rid of the mold now."; + next; + mes "[Scrub Sponge]"; + mes "This is not the proper way of wiping off the mold, but this is the only way to get rid of such severe mold."; + next; + mes "[Scrub Sponge]"; + mes "Wipe the Mold Power over the mold which resembles demon's skin and sprinkle it with Holy Water."; + next; + mes "[Scrub Sponge]"; + mes "And wipe it as I tell you. I am not going to tell you again so pay attention."; + while(1) { next; mes "[Scrub Sponge]"; mes "Tap it once gently and tap it three times more. You really need to soak the wall with the Holy Water and Mold Powder to wipe it off. This is very important."; @@ -12156,43 +12616,46 @@ S_Talk: mes "Then, you need to scrub hard about ten times and wipe it off in circles about five times. Why don't you try now?"; next; progressbar "ffff00",3; - mes "[Scrub Sponge]"; - while( rand(100) < 50 ) { + switch( rand(1,3) ) { + case 1: + mes "[Scrub Sponge]"; + mes "That's not it! You really need to be determined to get rid of the flower of devil."; + mes "Compose yourself and listen again carefully."; + continue; + case 2: + specialeffect EF_RECOVERY; + mes "Well done. You have cleaned it so well."; + mes "As a Scrub Sponge, I am very contented."; + next; + mes "[Scrub Sponge]"; + mes "Since I have fulfilled my duty, I shall go now!"; + mes "Thank you, human... Thank you for being with me for this life..."; + specialeffect2 EF_CURE; + break; + case 3: + mes "[Scrub Sponge]"; mes "That's not it! Relax your arms a little!"; mes "Cleaning is not just about physical strength. You are still too far behind to reach the enlightenment. Ease your mind and body to try again."; - next; - mes "[Scrub Sponge]"; - mes "Tap it once gently and tap it three times more. You really need to soak the wall with the Holy Water and Mold Powder to wipe it off. This is very important."; - next; - mes "[Scrub Sponge]"; - mes "Then, you need to scrub hard about ten times and wipe it off in circles about five times. Why don't you try now?"; - next; - progressbar "ffff00",3; - mes "[Scrub Sponge]"; + continue; } - specialeffect EF_RECOVERY; - mes "Well done. You have cleaned it so well."; - mes "As a Scrub Sponge, I am very contented."; - next; - mes "[Scrub Sponge]"; - mes "Since I have fulfilled my duty, I shall go now!"; - mes "Thank you, human... Thank you for being with me for this life..."; - specialeffect2 EF_CURE; - delitem 6928,1;// Poring Loofah - delitem 7001,1;// Mould Powder - delitem 523,1;// Holy Water - completequest 14481;// Conquer the Mold - close; - case 2: - mes "[Wall Which Used to Be Moldy]"; - mes "The clean wall reminds me of the Scrub Sponge which has been through the cleaning duty with me."; - close; + break; } + delitem 6928,1;// Poring Loofah + delitem 7001,1;// Mould Powder + delitem 523,1;// Holy Water + completequest 14481;// Conquer the Mold + ep16_wig = 7; + close; + } + if (ep16_wig > 6) { + mes "[Wall Which Used to Be Moldy]"; + mes "The clean wall reminds me of the Scrub Sponge which has been through the cleaning duty with me."; + close; } end; OnTouch: - if (isbegin_quest(14481) == 0) + if (ep16_wig == 5) callsub S_Talk; end; } @@ -12201,213 +12664,230 @@ prt_cas,339,198,5 script Sticky Wall#ep16wig HIDDEN_NPC,5,5,{ callsub S_Talk; S_Talk: - if (banquet_wigner_quest == 5 && isbegin_quest(14481) == 2) { - switch( isbegin_quest(14480) ) { - case 0: + if (ep16_wig == 7) { + mes "[Scrub Sponge]"; + mes "Is it you...? Are you the one who has guided me to ^0000cdthe ingrained grease^000000?"; + mes "Nice to meet you. I have been a sleep in this waiting for someone who would clean up something with me."; + next; + mes "[Scrub Sponge]"; + mes "I am the fairy of cleaning sealed in the Scrub Sponge."; + mes "I wake up when I am near somewhere dirty."; + next; + mes "[Scrub Sponge]"; + mes "Thank you for choosing me to clean the grease."; + mes "I always wanted to clean grease in style."; + next; + mes "[Scrub Sponge]"; + mes "Hum... For the ingrained grease, ^0000cdthe mixture of orange and alcohol^000000 works the best."; + mes "Would you bring ^0000cd1 orange and 1 alcohol^000000? Let's clean up with them!"; + setquest 14480;// Conquer the Grease + ep16_wig = 8; + close; + } + if (ep16_wig == 8) { + if (countitem(6928) < 1 || countitem(582) < 1 || countitem(970) < 1) { mes "[Scrub Sponge]"; - mes "Is it you...? Are you the one who has guided me to ^0000cdthe ingrained grease^000000?"; - mes "Nice to meet you. I have been a sleep in this waiting for someone who would clean up something with me."; + mes "Oh, wait a moment!"; + mes "You need ^0000cd1 orange and 1 alcohol^000000 to clean up the ingrained grease."; next; mes "[Scrub Sponge]"; - mes "I am the fairy of cleaning sealed in the Scrub Sponge."; - mes "I wake up when I am near somewhere dirty."; - next; - mes "[Scrub Sponge]"; - mes "Thank you for choosing me to clean the grease."; - mes "I always wanted to clean grease in style."; - next; - mes "[Scrub Sponge]"; - mes "Hum... For the ingrained grease, ^0000cdthe mixture of orange and alcohol^000000 works the best."; - mes "Would you bring ^0000cd1 orange and 1 alcohol^000000? Let's clean up with them!"; - setquest 14480;// Conquer the Grease + mes "I would like to prepare it myself but I am just a Scrub Sponge."; + mes "Please bring them with you."; close; - case 1: - if (countitem(6928) < 1 || countitem(582) < 1 || countitem(970) < 1) { - mes "[Scrub Sponge]"; - mes "Oh, wait a moment!"; - mes "You need ^0000cd1 orange and 1 alcohol^000000 to clean up the ingrained grease."; - next; - mes "[Scrub Sponge]"; - mes "I would like to prepare it myself but I am just a Scrub Sponge."; - mes "Please bring them with you."; - close; - } - mes "[Scrub Sponge]"; - mes "Since we have the orange and alcohol, let's clean up together now!"; - next; - mes "[Scrub Sponge]"; - mes "Peel the orange and put the orange peels in the alcohol. Then wait a moment. You may eat the flesh of orange if you want. Yum!"; - next; - mes "[Scrub Sponge]"; - mes "Well, the essence of the orange peels must have been infused in the alcohol by now. Spray it over the grease and wipe with me."; - next; - mes "[Scrub Sponge]"; - mes "It takes some skills to wipe it off."; + } + mes "[Scrub Sponge]"; + mes "Since we have the orange and alcohol, let's clean up together now!"; + next; + mes "[Scrub Sponge]"; + mes "Peel the orange and put the orange peels in the alcohol. Then wait a moment. You may eat the flesh of orange if you want. Yum!"; + next; + mes "[Scrub Sponge]"; + mes "Well, the essence of the orange peels must have been infused in the alcohol by now. Spray it over the grease and wipe with me."; + next; + mes "[Scrub Sponge]"; + mes "It takes some skills to wipe it off."; + while(1) { next; mes "[Scrub Sponge]"; mes "First you need to scrub gently, gently once more and hard! Then scrub with medium strength and scrub harder."; mes "You should then spray the mixture once more and keep wiping with medium strength."; next; progressbar "ffff00",3; - specialeffect EF_RECOVERY; - mes "[Scrub Sponge]"; - mes "Whoa, good job! The grease is gone now!"; - mes "Even better, the fresh scent remains after cleaning, making the passengers happy."; - next; - mes "[Scrub Sponge]"; - mes "However, I will disappear soon."; - mes "It is the fate of dirty Scrub Sponge."; - next; - mes "[Scrub Sponge]"; - mes "However, I was happy to spend the short life of a Scrub Sponge with you."; - mes "I want to be born as a human in my next life to be a close... Friend of yours..."; - specialeffect2 EF_CURE; - delitem 6928,1;// Poring Loofah - delitem 582,1;// Orange - delitem 970,1;// Alcohol - completequest 14480;// Conquer the Grease - close; - case 2: - mes "[Scrapped-off Wall]"; - mes "The clean wall reminds me of the Scrub Sponge has been really kind to me."; - close; + + switch( rand(1,3) ) { + case 1: + mes "[Scrub Sponge]"; + mes "I think you are scrubbing too gently. You should allow sometime for the grease to dissolve in the mixture."; + next; + mes "[Scrub Sponge]"; + mes "First, you need to penetrate the grease with the mixture. Then you need to wipe off the grease. Well, let's try again."; + continue; + case 2: + specialeffect EF_RECOVERY; + mes "[Scrub Sponge]"; + mes "Whoa, good job! The grease is gone now!"; + mes "Even better, the fresh scent remains after cleaning, making the passengers happy."; + next; + mes "[Scrub Sponge]"; + mes "However, I will disappear soon."; + mes "It is the fate of dirty Scrub Sponge."; + next; + mes "[Scrub Sponge]"; + mes "However, I was happy to spend the short life of a Scrub Sponge with you."; + mes "I want to be born as a human in my next life to be a close... Friend of yours..."; + specialeffect2 EF_CURE; + break; + case 3: + mes "[Scrub Sponge]"; + mes "You shouldn't just wipe it too hard. You need to let the mixture melt into the grease to get it off."; + mes "Scrub gently and wipe it off at once. Well, listen up again."; + continue; + } + break; } + delitem 6928,1;// Poring Loofah + delitem 582,1;// Orange + delitem 970,1;// Alcohol + completequest 14480;// Conquer the Grease + ep16_wig = 9; + close; + } + if (ep16_wig > 8) { + mes "[Scrapped-off Wall]"; + mes "The clean wall reminds me of the Scrub Sponge has been really kind to me."; + close; } end; OnTouch: - if (isbegin_quest(14480) == 0) + if (ep16_wig == 7) callsub S_Talk; end; } -prt_cas,309,215,5 script Pitch-black Floor#ep16w HIDDEN_NPC,5,5,{ +prt_cas,309,215,5 script Pitch-black Floor#ep16wig HIDDEN_NPC,5,5,{ callsub S_Talk; S_Talk: - if (banquet_wigner_quest == 5 && isbegin_quest(14480) == 2) { - switch( isbegin_quest(14482) ) { - case 0: + if (ep16_wig == 9) { + mes "[Scrub Sponge]"; + mes "Is it you? Are you the one in charge of the cleaning mission today?"; + mes "Nice to meet you! I am the cleaning instructor sealed in the Scrub Sponge!"; + next; + mes "[Scrub Sponge]"; + mes "If you follow my lead, you can get through the most difficult cleaning mission in this world!"; + mes "Do you understand?"; + next; + mes "[Scrub Sponge]"; + mes "Let's check today's target! It is ^0000cdthe black dirt of devil^000000 stuck in the gaps in the floor!"; + mes "We have a Thor 3 situation here!"; + next; + mes "[Scrub Sponge]"; + mes "In other words, we can resolve it as long as we have all the materials ready!"; + mes "You need ^0000cd1 Powdery Fine Sand and 1 Lemon^000000 to get rid of the target!"; + next; + mes "[Scrub Sponge]"; + mes "Go get them now!"; + mes "Go!"; + setquest 14482;// Conquer the Dirt of Devil + ep16_wig = 10; + close; + } + if (ep16_wig == 10) { + if (countitem(6928) < 1 || countitem(7043) < 1 || countitem(568) < 1) { mes "[Scrub Sponge]"; - mes "Is it you? Are you the one in charge of the cleaning mission today?"; - mes "Nice to meet you! I am the cleaning instructor sealed in the Scrub Sponge!"; + mes "What are you doing now?"; + mes "You cannot get rid of the black dirt stuck in the gaps of tiles without the lemon and powdery find sand!"; next; mes "[Scrub Sponge]"; - mes "If you follow my lead, you can get through the most difficult cleaning mission in this world!"; - mes "Do you understand?"; - next; - mes "[Scrub Sponge]"; - mes "Let's check today's target! It is ^0000cdthe black dirt of devil^000000 stuck in the gaps in the floor!"; - mes "We have a Thor 3 situation here!"; - next; - mes "[Scrub Sponge]"; - mes "In other words, we can resolve it as long as we have all the materials ready!"; - mes "You need ^0000cd1 Powdery Fine Sand and 1 Lemon^000000 to get rid of the target!"; - next; - mes "[Scrub Sponge]"; - mes "Go get them now!"; + mes "Prepare 1 Powdery Fine Sand and 1 Lemon now!"; mes "Go!"; - setquest 14482;// Conquer the Dirt of Devil - close; - case 1: - if (countitem(6928) < 1 || countitem(7043) < 1 || countitem(568) < 1) { - mes "[Scrub Sponge]"; - mes "What are you doing now?"; - mes "You cannot get rid of the black dirt stuck in the gaps of tiles without the lemon and powdery find sand!"; - next; - mes "[Scrub Sponge]"; - mes "Prepare 1 Powdery Fine Sand and 1 Lemon now!"; - mes "Go!"; - close; - } - mes "[Scrub Sponge]"; - mes "Good! It has all been prepared!"; - mes "Let's start cleaning now!"; - next; - mes "[Scrub Sponge]"; - mes "Squeeze the lemon and sprinkle the juice over the floor. Then sprinkle the powdery fine sand over it!"; - mes "This will whiten and polish the floor! Not to mention the fresh scent of lemon adding something extra!"; - next; - mes "[Scrub Sponge]"; - mes "Then you scrub briskly with me!"; - mes "The method of scrubbing is as follows! It is not difficult if you follow me! Listen up!"; - next; - mes "[Scrub Sponge]"; - mes "Three times to the left! Once to the right! Once to the left again! Twice to the front!"; - mes "Then twice to the left to wrap up! Start now!"; - next; - progressbar "ffff00",3; - mes "[Scrub Sponge]"; - mes "Wrong!"; - mes "Try to keep it together! Repeat once again!"; - next; - mes "[Scrub Sponge]"; - mes "Three times to the left! Once to the right! Once to the left again! Twice to the front!"; - mes "Then twice to the left to wrap up! Start now!"; - next; - progressbar "ffff00",3; - mes "[Scrub Sponge]"; - mes "Wrong!"; - mes "Try to keep it together! Repeat once again!"; - next; - mes "[Scrub Sponge]"; - mes "Three times to the left! Once to the right! Once to the left again! Twice to the front!"; - mes "Then twice to the left to wrap up! Start now!"; - next; - progressbar "ffff00",3; - mes "[Scrub Sponge]"; - mes "When did I teach you like that? Don't you dare say that you have learned it from me!"; - next; - mes "[Scrub Sponge]"; - mes "Try to keep it together! Listen up once more!"; - next; - mes "[Scrub Sponge]"; - mes "Three times to the left! Once to the right! Once to the left again! Twice to the front!"; - mes "Then twice to the left to wrap up! Start now!"; - next; - progressbar "ffff00",3; - specialeffect EF_RECOVERY; - mes "[Scrub Sponge]"; - mes "Well done!"; - mes "You have completed the cleaning mission beautifully!"; - next; - mes "[Scrub Sponge]"; - mes "I believe that you can handle cleaning perfectly even without me!"; - mes "Old soldiers never die! They just fade away! So save the tears!"; - next; - mes "[Scrub Sponge]"; - mes "You may think of me whenever you see and clean the black dirt stuck in the gaps of tiles!"; - mes "Now disperse! Go!"; - specialeffect2 EF_CURE; - delitem 6928,1;// Poring Loofah - delitem 7043,1;// Fine Sand - delitem 568,1;// Lemon - completequest 14482;// Conquer the Dirt of Devil - completequest 14479;// Clean-up out of Apology - setquest 14483;// Report the Completion of the Clean-up - banquet_wigner_quest = 6; - close; - case 2: - mes "[Shining Floor]"; - mes "The clean floor reminds me of the Scrub Sponge who has been tough but soft inside."; - mes "Let's go back to the maid and report that the cleaning is completed."; close; } + mes "[Scrub Sponge]"; + mes "Good! It has all been prepared!"; + mes "Let's start cleaning now!"; + next; + mes "[Scrub Sponge]"; + mes "Squeeze the lemon and sprinkle the juice over the floor. Then sprinkle the powdery fine sand over it!"; + mes "This will whiten and polish the floor! Not to mention the fresh scent of lemon adding something extra!"; + next; + mes "[Scrub Sponge]"; + mes "Then you scrub briskly with me!"; + mes "The method of scrubbing is as follows! It is not difficult if you follow me! Listen up!"; + while(1) { + next; + mes "[Scrub Sponge]"; + mes "Three times to the left! Once to the right! Once to the left again! Twice to the front!"; + mes "Then twice to the left to wrap up! Start now!"; + next; + progressbar "ffff00",3; + switch( rand(1,3) ) { + case 1: + mes "[Scrub Sponge]"; + mes "Wrong!"; + mes "Try to keep it together! Repeat once again!"; + continue; + case 2: + specialeffect EF_RECOVERY; + mes "[Scrub Sponge]"; + mes "Well done!"; + mes "You have completed the cleaning mission beautifully!"; + next; + mes "[Scrub Sponge]"; + mes "I believe that you can handle cleaning perfectly even without me!"; + mes "Old soldiers never die! They just fade away! So save the tears!"; + next; + mes "[Scrub Sponge]"; + mes "You may think of me whenever you see and clean the black dirt stuck in the gaps of tiles!"; + mes "Now disperse! Go!"; + specialeffect2 EF_CURE; + break; + case 3: + mes "[Scrub Sponge]"; + mes "When did I teach you like that? Don't you dare say that you have learned it from me!"; + next; + mes "[Scrub Sponge]"; + mes "Try to keep it together! Listen up once more!"; + continue; + } + break; + } + delitem 6928,1;// Poring Loofah + delitem 7043,1;// Fine Sand + delitem 568,1;// Lemon + completequest 14482;// Conquer the Dirt of Devil + erasequest 14479;// Clean-up out of Apology + setquest 14483;// Report the Completion of the Clean-up + ep16_wig = 11; + close; + } + if (ep16_wig == 11) { + mes "[Shining Floor]"; + mes "The clean floor reminds me of the Scrub Sponge who has been tough but soft inside."; + mes "Let's go back to the maid and report that the cleaning is completed."; + close; + } + if (ep16_wig > 11) { + mes "[Shining Floor]"; + mes "The clean floor reminds me of the Scrub Sponge who has been tough but soft inside."; + close; } end; OnTouch: - if (isbegin_quest(14482) == 0) + if (ep16_wig == 9) callsub S_Talk; end; } -prontera,68,68,5 script Furniture Deliveryman#e 1_M_HOF,{ - if (banquet_wigner_quest == 7) { +prontera,68,68,5 script Furniture Deliveryman#ep16wig 1_M_HOF,{ + if (ep16_wig == 12) { + .@name$ = strcharinfo(0); mes "[Furniture Deliveryman]"; mes "Oh, my arms, legs, back and my entire body hurts. Well, I am just glad that today's work is done. I can take some rest now. I should go have some hot soup. Is it supposed to be the meat soup for today?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "May I ask you something?"; next; emotion ET_CRY; @@ -12417,7 +12897,7 @@ prontera,68,68,5 script Furniture Deliveryman#e 1_M_HOF,{ mes "[Furniture Deliveryman]"; mes "I am exhausted from today's work. I almost cannot stand with my back straight now."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "No, it is not about that. You are the one who has delivered the furniture to the Wigner family, right?"; next; mes "[Furniture Deliveryman]"; @@ -12426,14 +12906,14 @@ prontera,68,68,5 script Furniture Deliveryman#e 1_M_HOF,{ mes "[Furniture Deliveryman]"; mes "What if there is a dent? Should I call James to fix it? Damage? Wrong delivery? What should I do? What is it about?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "No, nothing like that. Please relax."; next; mes "[Furniture Deliveryman]"; mes "What is it? Additional delivery? I really want to take some rest now... However, I guess I have no choice since it is the Wigners that I am dealing with. Oh, I really hate it... It is just too difficult to make ends meet."; next; emotion ET_OHNO; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "No, I just have a question for you. Have you seen a small box on the table in the room?"; next; mes "[Furniture Deliveryman]"; @@ -12442,7 +12922,7 @@ prontera,68,68,5 script Furniture Deliveryman#e 1_M_HOF,{ mes "[Furniture Deliveryman]"; mes "You mean the ^0000cdsmall box^000000 on the table next to the bed, right? The locked box with no particular decoration."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I believe so."; next; mes "[Furniture Deliveryman]"; @@ -12452,7 +12932,7 @@ prontera,68,68,5 script Furniture Deliveryman#e 1_M_HOF,{ mes "[Furniture Deliveryman]"; mes "Since I work with furniture, a piece like that really catches my eyes. It really was a work of art."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Was the box still there after you delivered the furniture?"; next; emotion ET_FRET; @@ -12463,7 +12943,7 @@ prontera,68,68,5 script Furniture Deliveryman#e 1_M_HOF,{ mes "[Furniture Deliveryman]"; mes "Oh, wait? Are you telling me that it is missing? Are you implying that it has been carried out in my carriage?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "No. Please calm down. I am not suspecting you. I just want to listen to your story. I am just tracking the whereabouts of the box based on the words of the people who have seen the box."; next; emotion ET_ANGER; @@ -12471,42 +12951,42 @@ prontera,68,68,5 script Furniture Deliveryman#e 1_M_HOF,{ mes "If anything goes missing, it is always us, the ordinary people, who are suspected. Do you know that it is just a prejudice?"; mes "The people who have less must be hungry for money. And they are unvirtuous..."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "It is just a misunderstanding. Trust me, I am not suspecting you.... You know, you look for any witnesses when a person goes missing."; next; emotion ET_ANGER; mes "[Furniture Deliveryman]"; mes "I don't want to hear it! Why are you scaring an innocent furniture delivery man for some missing box?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I am sorry to make you uncomfortable. I am just asking everyone who has been in that room. I am not suspecting you."; next; emotion ET_HNG; mes "[Furniture Deliveryman]"; mes "Heh, not that it makes me feel any better. I think I may be feeling even worse since I am hungry. Oh, my stomach is growling... I don't feel well..."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Do you need something to eat?"; next; mes "[Furniture Deliveryman]"; mes "It doesn't change anything even if you say that...Well, I may be able to let it go if I have some Ox Head Slices... I cannot forget the taste from 10 years ago..."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Would it make you feel better?"; next; mes "[Furniture Deliveryman]"; mes "Well, not that it will... OK, good! I'll let it go for ^0000cd3 Ox Head Slices^000000! Fair is fair after all."; emotion ET_KIK; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Would it be enough? OK, please wait for me then."; close2; erasequest 14484;// There Was a Furniture Delivery Man setquest 14485;// I Am Upset - banquet_wigner_quest = 8; + ep16_wig = 13; end; } - if (banquet_wigner_quest == 8) { + if (ep16_wig == 13) { if (countitem(6254) < 3) { mes "[Furniture Deliveryman]"; mes "You are here. If you came here any late, I would have been really upset as I get parched with thirst."; @@ -12520,10 +13000,11 @@ prontera,68,68,5 script Furniture Deliveryman#e 1_M_HOF,{ mes "I wouldn't let it go without them! I won't! I'll tell people that there is an adventurer who frames an innocent person! He!"; close; } + .@name$ = strcharinfo(0); mes "[Furniture Deliveryman]"; mes "You are here. If you came here any late, I would have been really upset due to my raging stomach."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Well, it was very difficult to get them. Here you are."; next; emotion ET_SMILE; @@ -12533,7 +13014,7 @@ prontera,68,68,5 script Furniture Deliveryman#e 1_M_HOF,{ mes "[Furniture Deliveryman]"; mes "This tastes the same as it did 10 years ago! Now I feel fully recovered from the fatigue! I don't feel tired any more! All the stress is gone!"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Oh, it sure looks delicious. I should try some later. Anyways, do you know anything else about the box?"; next; emotion ET_FRET; @@ -12543,19 +13024,19 @@ prontera,68,68,5 script Furniture Deliveryman#e 1_M_HOF,{ mes "[Furniture Deliveryman]"; mes "If you feel suspicious, ask the Gate Guard. He inspected my carriage."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Hum..."; next; mes "[Furniture Deliveryman]"; mes "Oh, well. By the way..."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "By the way?"; next; mes "[Furniture Deliveryman]"; mes "Have you seen the princess of the family? You must have. Doesn't she appear suspicious to you? I can tell people's character by their faces. She seems to be hiding something. She may stab you in the back."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Isn't it called a prejudice to judge some based on the appearance?"; next; emotion ET_SCRATCH; @@ -12563,21 +13044,21 @@ prontera,68,68,5 script Furniture Deliveryman#e 1_M_HOF,{ mes "You are right. I feel sorry, However, there are people talking about it. There's no smoke without fire."; mes "No? Well. Perhaps, there could be smoke without fire."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Katrin was not that kind of person as far as I observed."; next; mes "[Furniture Deliveryman]"; mes "Well, if not, that's fine. Anyways, the box was there in its place when I left the room. You may go if you don't have any business left here."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Excuse me."; delitem 6254,3;// Beef Head erasequest 14485;// I Am Upset setquest 14486;// I Heard the Story - banquet_wigner_quest = 9; + ep16_wig = 14; close; } - if (banquet_wigner_quest == 9) { + if (ep16_wig == 14) { mes "[Furniture Deliveryman]"; mes "Dear adventurer, why are you here again? Didn't you say you were heading back to the palace?"; next; @@ -12599,7 +13080,7 @@ prontera,68,68,5 script Furniture Deliveryman#e 1_M_HOF,{ // Others npcs // Banquet upper right -prt_cas,165,245,0 script Investigator Ryosun#ep1 4_M_ALCHE_A,{ +prt_cas,165,245,0 script Investigator Ryosun#ep16 4_M_ALCHE_A,{ emotion ET_CRY; mes "[Ryosun]"; mes "I finally have the strawberry cake no one has ever touched."; @@ -12653,51 +13134,53 @@ prt_cas,97,216,2 script Chamberlain#vip_alimi 4_M_RUSMAN2,{ close; } -prt_cas,79,219,7 script Banquet Hall Guest#ep16_1 4_F_MALAYA,{ +prt_cas,104,231,3 script Banquet Hall Guest#ep16wig01 4_F_CHNDRESS3,{ mes "[Banquet Hall Guest]"; - mes "Oh, aren't you the adventurer who has saved the world? Please visit Port Malaya someday. Everyone will welcome you there! Your story is known even to a far away place from here!"; + mes "It is always my pleasure to attend a banquet. Traveling and learning about different cultures are always interesting. It just makes it better to have good music and delicious food."; close; } -prt_cas,81,235,3 script Banquet Hall Guest#ep16_2 4_F_BRZ_WOMAN,{ - mes "[Banquet Hall Guest]"; - mes "The Palace of Rune-Midgarts is so big and glamourous. It somewhat feels exotic too. It's been a long way, but I am glad to be here."; - close; -} - -prt_cas,87,231,5 script Banquet Hall Guest#ep16_3 4_M_TWTEAMAN,{ - mes "[Banquet Hall Guest]"; - mes "I visited the Palace of Rune-Midgarts long time ago. It has changed a lot ever since. It has become much more glamourous and magnificent that I really enjoy being guided around this place."; - close; -} - -prt_cas,88,246,7 script Banquet Hall Guest#ep16_4 4_F_THAIGIRL,{ - mes "[Banquet Hall Guest]"; - mes "The music played by the music makes me so emotional. It is worthwhile to come here for this music alone."; - close; -} - -prt_cas,103,232,3 script Banquet Hall Guest#ep16_5 4_M_CHNOLD,{ +prt_cas,103,232,3 script Banquet Hall Guest#ep16wig02 4_M_CHNOLD,{ mes "[Banquet Hall Guest]"; mes "It is always tiring to attend a banquet. I am still tired from the trip, it is just too painful to mingle with people... Phew..."; close; } -prt_cas,114,226,5 script Banquet Hall Guest#ep16_6 4_M_DEWWOMAN,{ +prt_cas,81,235,3 script Banquet Hall Guest#ep16wig03 4_F_BRZ_WOMAN,{ + mes "[Banquet Hall Guest]"; + mes "The Palace of Rune Midgarts is so big and glamourous. It somewhat feels exotic too. It's been a long way, but I am glad to be here."; + close; +} + +prt_cas,79,219,7 script Banquet Hall Guest#ep16wig04 4_F_MALAYA,{ + mes "[Banquet Hall Guest]"; + mes "Oh, aren't you the adventurer who has saved the world? Please visit Portmalaya someday. Everyone will welcome you there! Your story is known even to a far away place from here!"; + close; +} + +prt_cas,88,246,7 script Banquet Hall Guest#ep16wig05 4_F_THAIGIRL,{ + mes "[Banquet Hall Guest]"; + mes "The music played by the music makes me so emotional. It is worthwhile to come here for this music alone."; + close; +} + +prt_cas,114,226,5 script Banquet Hall Guest#ep16wig06 4_M_DEWWOMAN,{ mes "[Banquet Hall Guest]"; mes "Wait, I have been looking at the flowers here. Are they blinking? How wonderful!"; close; } -prt_cas,86,251,5 script Banquet Hall Guest#ep16_7 4_M_RUSMAN1,{ +prt_cas,87,231,5 script Banquet Hall Guest#ep16wig07 4_M_TWTEAMAN,{ mes "[Banquet Hall Guest]"; - if (banquet_main_quest == 0) - mes "There are a long of people here. I almost feel dizzy. However, still, I like the lively atmosphere."; - else - mes "It is always my pleasure to attend a banquet. Traveling and learning about different cultures are always interesting. It just makes it better to have good music and delicious food."; + mes "I visited the Palace of Rune Midgarts long time ago. It has changed a lot ever since. It has become much more glamourous and magnificent that I really enjoy being guided around this place."; close; } +prt_cas,86,251,5 script Banquet Hall Guest#ep16wig08 4_M_RUSMAN1,{ + mes "[Banquet Hall Guest]"; + mes "There are a long of people here. I almost feel dizzy. However, still, I like the lively atmosphere."; + close; +} prt_cas,72,227,5 script Banquet Hall Guest#1 4_M_JPNOJI,{ mes "[Banquet Hall Guest]"; @@ -12711,6 +13194,15 @@ prt_cas,71,227,5 script Banquet Hall Guest#2 4_M_JPN,{ close; } +prt_cas,100,100,3 script Banquet Hall Guest#3 4_M_BOSSCAT,{ + mes "[Banquet Hall Guest]"; + mes "All the nobility who are in charge of the market in Rune Midgarts are here. We, the Cat Hand Services, shouldn't miss this chance."; + next; + mes "[Banquet Hall Guest]"; + mes "I'll score contracts as tall as my height."; + close; +} + prt_cas,89,250,5 script Banquet Hall Guest#5 4_F_KHELLY,{ mes "[Banquet Hall Guest]"; mes "I am an old fan of Orint of the band."; @@ -12730,11 +13222,34 @@ prt_cas,89,244,7 script Banquet Hall Guest#6 4_M_NOV_HUNT,{ } prt_cas,91,237,3 script Ekinasia#ep16_etc01 1_F_SIGNZISK,{ - setpcblock PCBLOCK_NPC, true; + if (mao_morocc2 > 99) { + mes "[Ekinasia]"; + mes "You have been invited to the banquet as well."; + mes "Well, no wonder... If you think about it."; + next; + mes "[Lin]"; + mes "Oh, you are still alive!"; + mes "I am glad to see you here. Life must be treating you well!"; + next; + mes "[Ekinasia]"; + mes "Come to think of it, Kid is here too."; + mes "He met the people from the guild and went to see them..."; + next; + mes "[Lin]"; + mes "Hum... Then he was taken by a strange guy among the bunch to the dining hall."; + mes "You may go say hi."; + next; + mes "[Ekinasia]"; + mes "It is a banquet in a long time. We may as well enjoy it."; + close2; + npctalk "Sure, sure!", "Lin#ep16_etc02", bc_self; + end; + } npctalk "It's been a while since the last time a royal banquet like this was held.", "Ekinasia#ep16_etc01", bc_self; + setpcblock PCBLOCK_NPC, true; sleep2 3000; - npctalk "We need to blow off some steam like this from time to time.", "Ekinasia#ep16_etc01", bc_self; setpcblock PCBLOCK_NPC, false; + npctalk "We need to blow off some steam like this from time to time.", "Ekinasia#ep16_etc01", bc_self; end; } @@ -12746,6 +13261,38 @@ prt_cas,89,238,5 script Lin#ep16_etc02 4_F_ACROSS,{ } prt_cas,78,255,3 script Mayssel#ep16_etc05 4_F_MAYSEL,{ + if ((eaclass()&EAJ_THIRDMASK) == EAJ_GUILLOTINE_CROSS) { + setpcblock PCBLOCK_NPC, true; + cutin "gc_mayssel01.bmp",1; + sleep2 100; + cutin "gc_mayssel02.bmp",1; + sleep2 100; + cutin "gc_mayssel03.bmp",1; + sleep2 200; + cutin "gc_mayssel04.bmp",1; + sleep2 200; + cutin "gc_mayssel05.bmp",1; + sleep2 200; + cutin "gc_mayssel04.bmp",1; + sleep2 100; + cutin "gc_mayssel03.bmp",1; + sleep2 100; + cutin "gc_mayssel02.bmp",1; + sleep2 100; + setpcblock PCBLOCK_NPC, false; + cutin "gc_mayssel01.bmp",1; + mes "[Mayssel]"; + mes "Who are you...?"; + next; + mes "[Mayssel]"; + mes "...Oh... You have visited us to change your class, I remember."; + mes "We have recommended you as a representative of the guild."; + next; + mes "[Mayssel]"; + mes "I am glad to see you all grown up."; + mes "Never forget the weight of the blood to be covered on your hands at all times."; + close3; + } cutin "gc_mayssel01",1; mes "[Mayssel]"; mes "You must have been invited to the banquet."; @@ -12757,17 +13304,47 @@ prt_cas,78,255,3 script Mayssel#ep16_etc05 4_F_MAYSEL,{ } prt_cas,78,252,2 script Verkhasel#ep_etc06 4_M_GUILLOTINE,{ - setpcblock PCBLOCK_NPC, true; + if ((eaclass()&EAJ_THIRDMASK) == EAJ_GUILLOTINE_CROSS) { + cutin "gc_verkhasel01.bmp",2; + mes "[Verkhasel]"; + mes "...I don't like a crowded place like this, but I cannot help it when I am on a mission."; + sleep2 200; + cutin "gc_verkhasel02.bmp",2; + sleep2 200; + cutin "gc_verkhasel01.bmp",2; + next; + mes "[Verkhasel]"; + mes "You are here too."; + mes "Well, I guess you are supposed to be here."; + next; + mes "[Verkhasel]"; + mes "...What a trouble."; + close2; + cutin "",255; + } npctalk "I want to go back now.", "Verkhasel#ep_etc06", bc_self; + setpcblock PCBLOCK_NPC, true; sleep2 3000; npctalk "...You can't.", "Mayssel#ep16_etc05", bc_self; sleep2 3000; - npctalk "You made that very clear, hahahaha!", "Vicente#ep16_etc07", bc_self; setpcblock PCBLOCK_NPC, false; + npctalk "You made that very clear, hahahaha!", "Vicente#ep16_etc07", bc_self; end; } prt_cas,76,254,5 script Vicente#ep16_etc07 4_M_HUMAN_02,{ + if ((eaclass()&EAJ_THIRDMASK) == EAJ_SHADOW_CHASER) { + cutin "sc_vicente01.bmp",2; + mes "[Vicente]"; + mes "Oh, is it the first time since our last encounter for your class change?"; + mes "Thanks to your contribution, the position of the guild has been strengthened."; + next; + cutin "sc_vicente03.bmp",2; + mes "[Vicente]"; + mes "I guess you will be the hero of the palace."; + mes "I am glad to see you well."; + close3; + } cutin "sc_vicente01",2; mes "[Vicente]"; mes "Hum... Did we meet at Criatura?"; @@ -12791,15 +13368,22 @@ prt_cas,113,243,3 script Banquet Hall Aristocrat#1 4_F_01,{ close; } -prt_cas,73,232,5 script Banquet Hall Aristocrat#2 4_M_RUSMAN1,{ +prt_cas,70,239,5 script Banquet Hall Aristocrat#2 4_M_04,{ + mes "[Banquet Hall Aristocrat]"; + mes "I know this banquet is held for someone else. However, it still is a great opportunity for me to meet someone I can spend my life with."; + close; +} + +prt_cas,73,232,5 script Banquet Hall Aristocrat#3 4_M_RUSMAN1,{ mes "[Banquet Hall Aristocrat]"; mes "Everyone else seems to love the banquet, but I don't. I am forced by my parents to come here. I really want to go home and take a rest now."; close; } -prt_cas,70,239,5 script Banquet Hall Aristocrat#3 4_M_04,{ +prt_cas,99,247,3 script Banquet Hall Aristocrat#4 4_M_MAYOR,{ mes "[Banquet Hall Aristocrat]"; - mes "I know this banquet is held for someone else. However, it still is a great opportunity for me to meet someone I can spend my life with."; + mes "This band is pretty good."; + mes "I'd like to invite them to the royal villa for my party."; close; } @@ -12860,6 +13444,35 @@ prt_cas,98,248,5 script Cat#ep16bgm 4_CAT,{ close; } +prt_cas,98,231,5 script Hiba Ajif#ep16 4_M_REDSWORD,{ + mes "[Hiba Ajif]"; + mes "Since Ashbacuum has been taken care of, I want to go home and take a nap. However, they are holding me here."; + next; + mes "[Avidal the Advisor]"; + mes "It is the event to praise our contributions. Try to smile a little."; + next; + mes "[Instructor Igrid]"; + mes "Brother, these shoes hurt my feet. May I go back to the guest room and sleep?"; + next; + mes "[Hiba Ajif]"; + mes "]If you can't avoid it, enjoy it..."; + mes "I shall get drunk fast."; + close; +} + +prt_cas,100,231,3 script Avidal the Advisor#ep16 4_M_SAGE_C,{ + mes "[Avidal the Advisor]"; + mes "I have spent too much time in the tension between the two races. It just feels like I am dreaming to be in a happy and relaxing place like this. This must be what they call peace, right?"; + close; +} + +prt_cas,97,229,7 script Instructor Igrid#ep16 4_M_CRU,{ + mes "[Instructor Igrid]"; + mes "If they really want to do something for us, they really let us take a rest."; + mes "Only the ones who don't work in the field like an event like this. It is true."; + close; +} + prt_cas,106,258,5 script Bruno#ep16_1 4_F_SURA,{ mes "[Bruno]"; mes "Argh... I have never been to a place like this..."; @@ -12882,7 +13495,7 @@ prt_cas,89,257,3 script Karian#ep16_1 4_M_MINSTREL1,{ close3; } -prt_cas,85,223,1 script Maximilian Roegenburg#e_hall 4_EP16_MAX,{ +prt_cas,85,223,1 script Maximilian Roegenburg#ep16wig01 4_EP16_MAX,{ mes "[Maximilian]"; mes "I have heard that my grandson is under indebtedness to your son these days."; next; @@ -12894,7 +13507,7 @@ prt_cas,85,223,1 script Maximilian Roegenburg#e_hall 4_EP16_MAX,{ close; } -prt_cas,85,225,4 script Catherine Wigner#ep16wig_hall 1_F_LIBRARYGIRL,{ +prt_cas,85,225,4 script Catherine Wigner#ep16wig01 1_F_LIBRARYGIRL,{ mes "[Catherine]"; mes "Many things have changed since the last time we were here in the palace. I want to come here more often, but we cannot find the excuse to come..."; next; @@ -12906,7 +13519,7 @@ prt_cas,85,225,4 script Catherine Wigner#ep16wig_hall 1_F_LIBRARYGIRL,{ close; } -prt_cas,84,225,4 script Levuiere Wigner#ep16wig_hall 4_EP16_LOUVIERE,{ +prt_cas,84,225,4 script Levuiere Wigner#ep16wig01 4_EP16_LOUVIERE,{ mes "[Levuiere]"; mes "Dear Roegenburg, how are your children doing? I often hear about your third grandson from Isaac/"; next; @@ -13007,62 +13620,65 @@ prt_cas,107,222,1 script Sophia#ep16wig 1_F_LIBRARYGIRL,{ close; } -prt_cas,99,247,3 script Banquet Hall Aristocrat 4_M_MAYOR,{ - mes "[Banquet Hall Aristocrat]"; - mes "This band is pretty good."; - mes "I'd like to invite them to the royal villa for my party."; - close; -} - // Library -prt_cas,343,67,4 script Uptight Librarian#ep16l 1_F_LIBRARYGIRL,{ - if (checkweight(501,1) == 0) { +prt_cas,343,67,4 script Uptight Librarian#ep16lug0 1_F_LIBRARYGIRL,{ + if (checkweight(1304,3) == 0) { mes "[Uptight Librarian]"; mes "If you are going to borrow a book, you'd better reduce your luggage. It seems that there is no space for a book."; close; } - if (banquet_roegenburg_quest == 5 && isbegin_quest(14500) == 0) { - mes "[" + strcharinfo(0) + "]"; + .@name$ = strcharinfo(0); + if (ep16_lug == 5) { + if (countitem(6926) > 0) { + mes "[Uptight Librarian]"; + mes "Have you read the book? Did you come to return the book. Well, seeing your hands empty, it seems that you didn't finished the book yet."; + next; + mes "[Uptight Librarian]"; + mes "Take the time to look around. Take out and read any book that comes into your favor."; + mes "The book always enriches mind."; + close; + } + mes "[" + .@name$ + "]"; mes "Hey, I'm looking for a book. Would you please advice me where it is?"; next; mes "[Uptight Librarian]"; mes "What kind of book are you looking for?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "A book about history of Rune-Midgarts."; next; mes "[Uptight Librarian]"; mes "Hm... history of Rune-Midgarts."; mes "Are you going to borrow the book?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes."; next; mes "[Uptight Librarian]"; mes "May I see your library card, please?"; next; emotion ET_HUK, playerattached(); - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Library card? I don't have such a thing."; next; mes "[Uptight Librarian]"; mes "Then, I cannot borrow a book to you."; next; emotion ET_SWEAT, playerattached(); - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "How can I have a library card?"; next; mes "[Uptight Librarian]"; mes "If you present your identification card, we will make you one instantly."; next; emotion ET_SWEAT, playerattached(); - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Huh... I don't have it. I left all my things to attend the banquet."; next; mes "[Uptight Librarian]"; mes "Banquet? You mean the banquet held in the palace? Are you the adventurer invited to it?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes, I am..."; next; mes "[Uptight Librarian]"; @@ -13071,38 +13687,38 @@ prt_cas,343,67,4 script Uptight Librarian#ep16l 1_F_LIBRARYGIRL,{ mes "[Uptight Librarian]"; mes "The kingdom circulated your details and ordered to provide maximum convenience to you."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "It's nice, but I feel that privacy is not protected."; next; mes "[Uptight Librarian]"; mes "What is you name, sir?"; next; - mes "[" + strcharinfo(0) + "]"; - mes "" + strcharinfo(0) + "."; + mes "[" + .@name$ + "]"; + mes "" + .@name$ + "."; next; mes "[Uptight Librarian]"; mes "Let me see..."; - mes "Yes, here it is. Sir " + strcharinfo(0) + "..."; + mes "Yes, here it is. Sir " + .@name$ + "..."; emotion ET_SURPRISE; next; mes "[Uptight Librarian]"; mes "But this book consists of 12 volumes. Only the first volume is here and the others are already borrowed."; mes "Is it OK with you?"; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes, it is."; next; mes "[Uptight Librarian]"; mes "Hmm. Anyway, can I ask you some questions? I know nothing as I stay in the library all day long."; next; - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "Yes, I tell you as long as I know."; next; mes "[Uptight Librarian]"; mes "^0000cdWhat kind of banquet ^000000 is being held in the palace? Why are you and royal family members invited?"; next; while( select( "Birth of prince.", "Birthday of king.", "In memory of defeating Morocc." ) != 3 ) { - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I am sorry, I said wrong as I thought of something else."; mes "I made a mistake. What did you say?"; next; @@ -13117,7 +13733,7 @@ prt_cas,343,67,4 script Uptight Librarian#ep16l 1_F_LIBRARYGIRL,{ mes "Did ^0000cdall royal families^000000 attend the banquet?"; next; while( select( "8 royal families attended it.", "7 royal families attended it.", "6 royal families attended it." ) != 2 ) { - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I am sorry, I said wrong as I thought of something else."; mes "I made a mistake. What did you say?"; next; @@ -13132,7 +13748,7 @@ prt_cas,343,67,4 script Uptight Librarian#ep16l 1_F_LIBRARYGIRL,{ mes "I heard that there are royal families ^0000cdwho do not attend the Royal Assembly^000000. Who's that?"; next; while( select( "Wigner and Heine.", "Roegenburg and Richard.", "Geoborg and Walther." ) != 3 ) { - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I am sorry, I said wrong as I thought of something else."; mes "I made a mistake. What did you say?"; next; @@ -13147,7 +13763,7 @@ prt_cas,343,67,4 script Uptight Librarian#ep16l 1_F_LIBRARYGIRL,{ mes "The family of the previous king ^0000cdbecame so due to the old curse^000000..."; next; while( select( "You mean the Nerius?", "You mean the Geoborg?", "You mean the Richard?" ) != 2 ) { - mes "[" + strcharinfo(0) + "]"; + mes "[" + .@name$ + "]"; mes "I am sorry, I said wrong as I thought of something else."; mes "I made a mistake. What did you say?"; next; @@ -13171,9 +13787,11 @@ prt_cas,343,67,4 script Uptight Librarian#ep16l 1_F_LIBRARYGIRL,{ next; mes "[Uptight Librarian]"; mes "Then, enjoy the book!"; - setquest 14500;// Complete checking out the book - completequest 14500;// Complete checking out the book - getitem 6926,1;// Rune-Midgartz History Book + if (isbegin_quest(14500) == 0) { + setquest 14500;// Complete checking out the book + completequest 14500;// Complete checking out the book + } + getitem 6926,1;// Midgards_Histories close; } mes "[Uptight Librarian]"; @@ -13183,12 +13801,40 @@ prt_cas,343,67,4 script Uptight Librarian#ep16l 1_F_LIBRARYGIRL,{ } prt_cas,321,25,1 script Erich Nerius#ep16_erihi 4_M_SITDOWN,{ - if (banquet_main_quest < 2) { + if (ep16_royal < 2) { mes "[Erich]"; mes "There are so many guests attending the banquet."; mes "However, since we are in the library, would you keep it down?"; close; } + if (ep16_royal == 2) {// buggy officially (never displayed) + if (isbegin_quest(7684) == 0) { + mes "[Erich]"; + mes "Are you attending the banquet and exchanging greeting with each family?"; + mes "Then you should go see Spica Nerius, not me."; + next; + mes "[Erich]"; + mes "Although Shedhar, the current head of the family, is not here, Spica has all the actual power."; + next; + mes "[Erich]"; + mes "I am just participating in the Royal Assembly to fill in the place as a Nerius."; + next; + mes "[Erich]"; + mes "I am not interested in the throne at all."; + mes "So you should go see Spica."; + next; + mes "[Erich]"; + mes "Enjoy the banquet too."; + close; + } + mes "[Erich]"; + mes "Did you meet Spica?"; + mes "She is such a cheerful girl, isn't she?"; + next; + mes "[Erich]"; + mes "She will be the head of the Nerius family."; + close; + } mes "[Erich]"; mes "I am treated like a prince since I was adopted against my will. However, Shedhar, the head of the family, has been nice to me."; next; @@ -13231,7 +13877,35 @@ prt_cas,341,79,2 script Alf Ocat#ep16_1 4_M_BLACKMAN,{ close3; } +// prt_cas,364,69,3 script Nervous Man#ep16lug01 4_M_ALCHE_A,5,5,{ prt_cas,364,69,3 script Nervous Man#ep16lug01 4_M_ALCHE_A,{ + if (ep16_lug > 12) { + mes "[Nervous Man]"; + mes "It is not here either...."; + next; + mes "[Taunting Man]"; + mes "Why do you need that book? Just go without it."; + next; + mes "[Nervous Man]"; + mes "The first impression is the most important. The first greeting has a big impact! By the way, what should I speak as a greeting?"; + next; + mes "[Nervous Man]"; + mes "'Good morning, sir. I, an unworthy person, live in Prontera....' No. No. I cannot speak like to a person who is younger than me."; + npctalk "That's good!!", "Taunting Man#ep16lug01"; + next; + mes "[Nervous Man]"; + mes "Hi? Your brother told me to attend the banquet. No. No. this is not either. My patner is a princess!"; + npctalk "Gross~", "Taunting Man#ep16lug01"; + next; + mes "[Nervous Man]"; + mes "Why is there no book such as ยกยฎRoyal Etiquette - Meet Princess First Time' It's a royal library."; + npctalk "Because it is a palace.", "Taunting Man#ep16lug01"; + next; + mes "[Nervous Man]"; + mes "He sent me on the excuse of being busy. Jonathan, I'll get you."; + npctalk "If you hurt Jonathan, you will be arrestd.", "Taunting Man#ep16lug01"; + close; + } mes "[Nervous Man]"; mes "It is not here, either. How can I find it. There are so many books here."; close; @@ -13240,7 +13914,7 @@ prt_cas,365,68,3 script Taunting Man#ep16lug01 4_M_HUMAN_01,{ end; } -prt_cas,218,182,3 script Royal Guardian Knight#0 4_M_CRU,{ +prt_cas,218,182,3 script Royal Guardian Knight#01 4_M_CRU,{ mes "[Royal Guardian Knight]"; npctalk "Would you attend the Banquet?", "", bc_self; mes "Would you enter the Banquet Hall?"; @@ -13262,40 +13936,78 @@ prt_cas,97,248,5 script Court Musician#orint 2_M_BARD_ORIENT,{ mes "Chatting is forbidden while working."; next; if (select( "Please play a song", "Wrap up the conversation" ) == 1) { - if (rand(1000) < 15) - setarray .@musics$[0],111, "Good Morning"; - else { - setarray .@musics$[0], - 004, "I miss you", - 015, "Theme of Alberta", - 030, "Not so Far away", - 030, "One Step Closer", - 033, "Yuna Song", - 109, "Alpen Rose", - 115, "Tales of East", - 117, "Dream of Whale", - 128, "Splendide Dreams", - 137, "Dazzling Snow", - 145, "Marshmallow Waltz", - 155, "Eclage", - 160, "Jittering Nightmare"; - } - .@r = rand( getarraysize(.@musics$) / 2 ) * 2; - specialeffect EF_CHEMICAL_ALLRANGE,AREA, "Court Musician#3"; mes "[Court Musician Orint]"; - if (atoi(.@musics$[.@r]) != 111) - mes "I'll play <" + .@musics$[.@r+1] + ">."; + .@r = rand(1,100); + if (.@r < 12) { + mes "I'll play ."; + playbgm "04"; + } + else if (.@r < 22) { + mes "I'll play ."; + playbgm "109"; + } + else if (.@r < 30) { + mes "I'll play ."; + playbgm "115"; + } + else if (.@r < 37) { + mes "I'll play ."; + playbgm "117"; + } + else if (.@r < 44) { + mes "I'll play ."; + playbgm "137"; + } + else if (.@r < 51) { + mes "I'll play ."; + playbgm "145"; + } + else if (.@r < 58) { + mes "I'll play ."; + playbgm "155"; + } + else if (.@r < 65) { + mes "I'll play ."; + playbgm "30"; + } + else if (.@r < 72) { + mes "I'll play ."; + playbgm "30"; + } + else if (.@r < 79) { + mes "I'll play ."; + playbgm "15"; + } + else if (.@r < 86) { + mes "I'll play ."; + playbgm "128"; + } + else if (.@r < 93) { + mes "I'll play ."; + playbgm "160"; + } + else if (.@r < 100) { + mes "I'll play ."; + playbgm "33"; + } else { mes "This is not a song in the program..."; mes "How about listening to a song I recommend?"; next; + mes "[Court Musician Orint]"; + mes "I'll play which has a sad story behind it."; + playbgm "111"; + if (!achievementexists(170000)) + achievementcomplete(170000); + mes "This is not a song in the program..."; + mes "How about listening to a song I recommend?"; + next; mes "I'll play which has a sad story behind it."; npctalk "Oh, this music is!", "Banquet Hall Aristocrat", bc_self; npctalk "Oh, this is the song of misfortune which has been forgotten despite its musical value.", "Banquet Hall Guest#6", bc_self; npctalk "Isn't the song about the island where the former king has been found... Would it be OK?", "Banquet Hall Guest#6", bc_self; } - playbgm .@musics$[.@r]; close; } close; @@ -13308,6 +14020,15 @@ prt_cas,375,124,7 script Woman with Glasses#nir 4_F_MADAME,{ } prt_cas,379,124,3 script Glamorous Girl#pop 4_F_ARUNA_POP,{ + if (rachel_ma1 < 4) { + cutin "ra_bishop.bmp",2; + mes "- There is a girl with a expressionless face looking at the table. Her outfit seems rather unusual in Prontera. She could be a guest attending the banquet. -"; + next; + mes "[Glamorous Girl]"; + mes "......"; + mes "...I am hungry."; + close3; + } cutin "ra_bishop",2; mes "[Glamorous Girl]"; mes "......"; @@ -13387,8 +14108,39 @@ prt_cas,379,124,3 script Glamorous Girl#pop 4_F_ARUNA_POP,{ } prt_cas,368,125,3 script Dumk#ep16_etc03 4_M_SHADOWCHASER,{ - setpcblock PCBLOCK_NPC, true; + if ((eaclass()&EAJ_THIRDMASK) == EAJ_SHADOW_CHASER) { + mes "[Dumk]"; + mes "Oh, who is this."; + mes "You are" + strcharinfo(0) + "the one who would lead to the highest peaks of dark art, right?"; + cutin "3rd_sc_doomk01.bmp",0; + next; + mes "[Dumk]"; + mes "You've been invited to this banquet too?"; + mes "Hum, are you the hero of the century recommended by the guild?"; + cutin "3rd_sc_doomk04.bmp",0; + next; + mes "[Dumk]"; + mes "Ha, what a nonsense to disregard me, Dumk!"; + mes "I can never agree to that."; + next; + mes "[Dumk]"; + mes "By the way, where is Vicente?"; + cutin "3rd_sc_doomk06.bmp",0; + next; + mes "[Dumk]"; + mes "Hey, you assassin, do you know Vicente?"; + cutin "3rd_sc_doomk02.bmp",0; + next; + mes "[Kid]"; + mes "...Cut it out there, Dumk..."; + cutin "moc2_kid03.bmp",2; + close2; + cutin "",255; + npctalk "What did I do?", "", bc_self; + end; + } npctalk "Where is he?", "Dumk#ep16_etc03", bc_self; + setpcblock PCBLOCK_NPC, true; sleep2 3000; npctalk "I don't know.", "Kid#ep16_etc04", bc_self; sleep2 3000; @@ -13402,15 +14154,49 @@ prt_cas,368,125,3 script Dumk#ep16_etc03 4_M_SHADOWCHASER,{ sleep2 3000; npctalk "Watch whom you are talking to!!! Do you want to pick a trouble with me!", "Dumk#ep16_etc03", bc_self; sleep2 1000; + setpcblock PCBLOCK_NPC, false; + unittalk getcharid(3), "" + strcharinfo(0) + " : (Shaking the head from side to side)", bc_self; + emotion ET_STARE_ABOUT, playerattached(); + end; +} + +prt_cas,367,123,7 script Kid#ep16_etc04 4_M_ACROSS,{ + if (mao_morocc2 > 99) { + mes "[Kid]"; + mes "It's been a long time. Did you catch up with Lin and Ekinasia?"; + cutin "mocseal_kid01.bmp",2; + next; + mes "[Kid]"; + mes "They seemed very excited in the fancy place..."; + next; + mes "...It is a pain to stand in a place where you don't belong..."; + close2; + cutin "",255; + sleep2 500; + } + npctalk "Where is he?", "Dumk#ep16_etc03", bc_self; + setpcblock PCBLOCK_NPC, true; + sleep2 3000; + npctalk "I don't know.", "Kid#ep16_etc04", bc_self; + sleep2 3000; + npctalk "Find him! It's your specialty!", "Dumk#ep16_etc03", bc_self; + sleep2 3000; + npctalk "Why should I do that? You have been insufferable.", "Kid#ep16_etc04", bc_self; + sleep2 3000; + npctalk "Hey, I am of a higher rank than you. Where is Vicente!", "Dumk#ep16_etc03", bc_self; + sleep2 3000; + npctalk "...Look for your nanny at your own home!", "Kid#ep16_etc04", bc_self; + sleep2 3000; + npctalk "Watch whom you are talking to!!! Do you want to pick a trouble with me!", "Dumk#ep16_etc03", bc_self; + sleep2 1000; + setpcblock PCBLOCK_NPC, false; unittalk getcharid(3), "" + strcharinfo(0) + " : (Shaking the head from side to side)", bc_self; emotion ET_STARE_ABOUT, playerattached(); - setpcblock PCBLOCK_NPC, false; end; } -prt_cas,367,123,7 duplicate(Dumk#ep16_etc03) Kid#ep16_etc04 4_M_ACROSS // Corridor left -prt_cas,161,168,5 script Royal Guardian Knight#0_left 4_M_CRU,{ +prt_cas,161,168,5 script Royal Guardian Knight#02 4_M_CRU,{ mes "[Guardian Knight]"; mes "You are a visitor to the Prontera Palace."; mes "Do you need a guide?"; @@ -13433,37 +14219,8 @@ prt_cas,161,168,5 script Royal Guardian Knight#0_left 4_M_CRU,{ } } -prt_cas,152,163,0 script prt_cas_1#0_left WARPNPC,1,1,{ -OnTouch: - if (banquet_main_quest == 0) { - setpcblock PCBLOCK_NPC, true; - npctalk "That way is a royal villa for VIPs. Outsiders cannot access the place.", "Royal Guardian Knight#0_left", bc_self; - sleep2 3000; - npctalk "If you are invited, a servant should be there to greet you. Please be guided officially.", "Royal Guardian Knight#0_left", bc_self; - setpcblock PCBLOCK_NPC, false; - end; - } - warp "prt_cas_q",150,8; - end; -} - - // Corridor right -prt_cas,270,168,3 duplicate(Royal Guardian Knight#0_left) Royal Guardian Knight#0_right 4_M_CRU - -prt_cas,278,163,0 script prt_cas_2#0_right WARPNPC,1,1,{ -OnTouch: - if (banquet_main_quest == 0) { - setpcblock PCBLOCK_NPC, true; - npctalk "That way is a royal villa for VIPs. Outsiders cannot access the place.", "Royal Guardian Knight#0_right", bc_self; - sleep2 3000; - npctalk "If you are invited, a servant should be there to greet you. Please be guided officially.", "Royal Guardian Knight#0_right", bc_self; - setpcblock PCBLOCK_NPC, false; - end; - } - warp "prt_cas_q",135,119; - end; -} +prt_cas,270,168,3 duplicate(Royal Guardian Knight#02) Royal Guardian Knight#03 4_M_CRU // Exchanges and enchants npc prt_cas,165,255,7 script Commissary#ep16 4_M_JOB_KNIGHT2,{ @@ -13565,42 +14322,28 @@ prt_cas,180,275,5 script Logistics Manager#sin 4_M_JOB_KNIGHT1,{ } mes "[Sin the Logistics Manager]"; mes "Thank you. This is the thing I have promised."; - delitem 6919,30;// Honor Marks - getitem 22901,1;// Mysterious_Blue_Box + delitem 6919,30;// TokenOfHonor + getitem 22901,1;// BlueboxOfQuestions close; } -prt_cas,180,264,3 script Guardian Knight#ep16_pr_1 4_M_CRU,{ - npctalk "The Crusader's Office is at the end of the corridor.", "Guardian Knight#ep16_pr_1", bc_self; +prt_cas,180,264,3 script Guardian Knight#ep16_prigate01 4_M_CRU,{ + npctalk "The Crusader's Office is at the end of the corridor.", "Guardian Knight#ep16_prigate01", bc_self; end; } -prt_cas,180,251,3 script Guardian Knight#ep16_pr_2 4_M_CRU,{ +prt_cas,180,251,3 script Guardian Knight#ep16_prigate02 4_M_CRU,{ + npctalk "...On duty. No problem...", "Guardian Knight#ep16_prigate02", bc_self; setpcblock PCBLOCK_NPC, true; - npctalk "...On duty. No problem...", "Guardian Knight#ep16_pr_2", bc_self; sleep2 2000; - npctalk "I want to go home now.", "Guardian Knight#ep16_pr_2", bc_self; setpcblock PCBLOCK_NPC, false; - end; -} - -prt_cas,188,258,0 script #cas_prison WARPNPC,1,1,{ -OnTouch_: - if (banquet_main_quest >= 2) - warp "prt_pri00",54,134; - else { - setpcblock PCBLOCK_NPC, true; - npctalk "You shouldn't enter the place like that.", "Guardian Knight#ep16_pr_1", bc_self; - sleep2 2000; - setpcblock PCBLOCK_NPC, false; - warp "prt_cas",182,258; - } + npctalk "I want to go home now.", "Guardian Knight#ep16_prigate02", bc_self; end; } // Prontera of the past prt_q,157,334,3 script Nillem#ep16_pprt01 4_M_JOB_WIZARD,{ - if (banquet_main_quest == 23) { + if (ep16_royal == 21) { mes "[Nillem]"; mes "How terrifying."; mes "This must be Prontera in the past?"; @@ -13631,7 +14374,7 @@ prt_q,157,334,3 script Nillem#ep16_pprt01 4_M_JOB_WIZARD,{ mes "So, what are you going to do?"; setquest 7703;// Who Knows the Truth erasequest 7702;// Prontera at the Time - banquet_main_quest = 24; + ep16_royal = 22; next; if (select( "Let's get in.", "Let's go back to our time." ) == 1) { mes "[Nillem]"; @@ -13706,13 +14449,13 @@ prt_q,157,334,3 script Nillem#ep16_pprt01 4_M_JOB_WIZARD,{ mes "[Nillem]"; mes "Well, then get ready!"; mes "Three!"; - sleep2 1000; + sleep2 2000; mes "Two!"; sleep2 1000; mes "One!"; - sleep2 1000; + close2; warp "prt_lib",88,80; - close; + end; } mes "[Nillem]"; mes "Haha! This place is exciting..."; @@ -13738,7 +14481,7 @@ prt_q,159,328,6 script Medic#EP162PS18 4_F_ACOLYTE,{ close; } -prt_q,160,327,5 script Wounded Soldier#EP161PS 8W_SOLDIER,{ +prt_q,160,327,5 script Wounded Soldier#EP161PS17 8W_SOLDIER,{ emotion ET_STARE; mes "[Soldier]"; mes "Argh... Those undead bastards... I'll kill them all..."; @@ -13746,179 +14489,114 @@ prt_q,160,327,5 script Wounded Soldier#EP161PS 8W_SOLDIER,{ } prt_q,165,326,6 script Soldier#EP162PS01 8W_SOLDIER,1,1,{ - emotion ET_FRET; mes "[Soldier]"; - mes "Argh.... Those undead..."; - close; + sscanf( strnpcinfo(2), "EP162PS%d", .@num ); + switch(.@num) { + case 1: + emotion ET_FRET; + mes "Argh.... Those undead..."; + close; + case 2: + emotion ET_CRY; + mes "My colleague who had been laughing with me just... Aww..."; + close; + case 3: + mes "Please. Don't get yourself killed by the enemy."; + close; + case 4: + emotion ET_CONFUSE; + mes "What was it that had dropped from the sky? How could it bring the undead to the capital?"; + close; + case 5: + emotion ET_STARE; + mes "I'll... I'll make sure to defend this place."; + close; + case 6: + emotion ET_OTL; + mes "The endless battle against the enemies..."; + close; + case 7: + mes "An eccentric scientist, Doyeon, went out there with soldiers, and there has been no message from them. I am getting worried."; + close; + case 8: + emotion ET_PROFUSELY_SWEAT; + mes "Damn it... Those undead..."; + close; + case 9: + mes "Scientist Doyeon... Would she be OK? How can she go out there to study in a situation like this?"; + close; + case 10: + mes "The troops of immortality... They are really strong. Please be careful."; + close; + case 11: + emotion ET_ROCK; + mes "We will defend the palace of Prontera."; + close; + case 12: + emotion ET_OHNO; + mes "My family live in Prontera. I wonder if they have fled safely."; + close; + case 13: + emotion ET_HUM; + mes "Thank god... The undead are not coming this way much. What a relief."; + close; + case 14: + mes "My friend has followed Scientist Doyeon. I am worried. I have heard that she really is an oddball."; + close; + case 15: + emotion ET_OHNO; + mes "Hahaha, I was supposed to have a romantic dinner with my girlfriend, damn it!"; + close; + case 16: + emotion ET_PROFUSELY_SWEAT; + mes "Humph! Bring it on!"; + close; + } + end; +OnTouch: + end; OnTouchNPC: - npctalk "Soldier: Huh!"; + sscanf( strnpcinfo(2), "EP162PS%d", .@num ); + setarray .@text$[1], + "Soldier: Huh!", + "Soldier: Hiya!", + "Soldier: Heh...", + "Soldier: Humph!", + "Soldier: Whoa!", + "Soldier: Argh!", + "Soldier: Humph!", + "Soldier: Huh!", + "Soldier: Hiya!", + "Soldier: Humph!", + "Soldier: Huh!", + "Soldier: Whoa!", + "Soldier: Argh!", + "Soldier: Hiya!", + "Soldier: Whoa!", + "Soldier: Argh..."; + npctalk .@text$[.@num]; specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,167,324,6 script Soldier#EP162PS02 8W_SOLDIER,1,1,{ - emotion ET_CRY; - mes "[Soldier]"; - mes "My colleague who had been laughing with me just... Aww..."; - close; -OnTouchNPC: - npctalk "Soldier: Hiya!"; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,165,322,6 script Soldier#EP162PS03 8W_SOLDIER,1,1,{ - mes "[Soldier]"; - mes "Please. Don't get yourself killed by the enemy."; - close; -OnTouchNPC: - npctalk "Soldier: Heh..."; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,167,320,6 script Soldier#EP162PS04 8W_SOLDIER,1,1,{ - emotion ET_CONFUSE; - mes "[Soldier]"; - mes "What was it that had dropped from the sky? How could it bring the undead to the capital?"; - close; -OnTouchNPC: - npctalk "Soldier: Humph!"; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,165,318,6 script Soldier#EP162PS05 8W_SOLDIER,1,1,{ - emotion ET_STARE; - mes "[Soldier]"; - mes "I'll... I'll make sure to defend this place."; - close; -OnTouchNPC: - npctalk "Soldier: Whoa!"; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,146,326,2 script Soldier#EP162PS06 8W_SOLDIER,1,1,{ - emotion ET_OTL; - mes "[Soldier]"; - mes "The endless battle against the enemies..."; - close; -OnTouchNPC: - npctalk "Soldier: Argh!"; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,144,324,2 script Soldier#EP162PS07 8W_SOLDIER,1,1,{ - mes "[Soldier]"; - mes "An eccentric scientist, Doyeon, went out there with soldiers, and there has been no message from them. I am getting worried."; - close; -OnTouchNPC: - npctalk "Soldier: Humph!"; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,146,322,2 script Soldier#EP162PS08 8W_SOLDIER,1,1,{ - emotion ET_PROFUSELY_SWEAT; - mes "[Soldier]"; - mes "Damn it... Those undead..."; - close; -OnTouchNPC: - npctalk "Soldier: Huh!"; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,144,320,2 script Soldier#EP162PS09 8W_SOLDIER,1,1,{ - mes "[Soldier]"; - mes "Scientist Doyeon... Would she be OK? How can she go out there to study in a situation like this?"; - close; -OnTouchNPC: - npctalk "Soldier: Hiya!"; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,146,318,2 script Soldier#EP162PS10 8W_SOLDIER,1,1,{ - mes "[Soldier]"; - mes "The troops of immortality... They are really strong. Please be careful."; - close; -OnTouchNPC: - npctalk "Soldier: Humph!"; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,149,316,4 script Soldier#EP162PS11 8W_SOLDIER,1,1,{ - emotion ET_ROCK; - mes "[Soldier]"; - mes "We will defend the palace of Prontera."; - close; -OnTouchNPC: - npctalk "Soldier: Huh!"; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,151,314,4 script Soldier#EP162PS12 8W_SOLDIER,1,1,{ - emotion ET_OHNO; - mes "[Soldier]"; - mes "My family live in Prontera. I wonder if they have fled safely."; - close; -OnTouchNPC: - npctalk "Soldier: Whoa!"; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,153,316,4 script Soldier#EP162PS13 8W_SOLDIER,1,1,{ - emotion ET_HUM; - mes "[Soldier]"; - mes "Thank god... The undead are not coming this way much. What a relief."; - close; -OnTouchNPC: - npctalk "Soldier: Argh!"; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,158,316,4 script Soldier#EP162PS14 8W_SOLDIER,1,1,{ - mes "[Soldier]"; - mes "My friend has followed Scientist Doyeon. I am worried. I have heard that she really is an oddball."; - close; -OnTouchNPC: - npctalk "Soldier: Hiya!"; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,160,314,4 script Soldier#EP162PS15 8W_SOLDIER,1,1,{ - emotion ET_OHNO; - mes "[Soldier]"; - mes "Hahaha, I was supposed to have a romantic dinner with my girlfriend, damn it!"; - close; -OnTouchNPC: - npctalk "Soldier: Whoa!"; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; - end; -} -prt_q,162,316,4 script Soldier#EP162PS16 8W_SOLDIER,1,1,{ - emotion ET_PROFUSELY_SWEAT; - mes "[Soldier]"; - mes "Humph! Bring it on!"; - close; -OnTouchNPC: - npctalk "Soldier: Argh..."; - specialeffect EF_ATTACKENERGY2; - unitwarp 0,"prt_q",-1,-1; + unitwarp 0,"prt_q",100,100; end; } +prt_q,167,324,6 duplicate(Soldier#EP162PS01) Soldier#EP162PS02 8W_SOLDIER,1,1 +prt_q,165,322,6 duplicate(Soldier#EP162PS01) Soldier#EP162PS03 8W_SOLDIER,1,1 +prt_q,167,320,6 duplicate(Soldier#EP162PS01) Soldier#EP162PS04 8W_SOLDIER,1,1 +prt_q,165,318,6 duplicate(Soldier#EP162PS01) Soldier#EP162PS05 8W_SOLDIER,1,1 +prt_q,146,326,2 duplicate(Soldier#EP162PS01) Soldier#EP162PS06 8W_SOLDIER,1,1 +prt_q,144,324,2 duplicate(Soldier#EP162PS01) Soldier#EP162PS07 8W_SOLDIER,1,1 +prt_q,146,322,2 duplicate(Soldier#EP162PS01) Soldier#EP162PS08 8W_SOLDIER,1,1 +prt_q,144,320,2 duplicate(Soldier#EP162PS01) Soldier#EP162PS09 8W_SOLDIER,1,1 +prt_q,146,318,2 duplicate(Soldier#EP162PS01) Soldier#EP162PS10 8W_SOLDIER,1,1 +prt_q,149,316,4 duplicate(Soldier#EP162PS01) Soldier#EP162PS11 8W_SOLDIER,1,1 +prt_q,151,314,4 duplicate(Soldier#EP162PS01) Soldier#EP162PS12 8W_SOLDIER,1,1 +prt_q,153,316,4 duplicate(Soldier#EP162PS01) Soldier#EP162PS13 8W_SOLDIER,1,1 +prt_q,158,316,4 duplicate(Soldier#EP162PS01) Soldier#EP162PS14 8W_SOLDIER,1,1 +prt_q,160,314,4 duplicate(Soldier#EP162PS01) Soldier#EP162PS15 8W_SOLDIER,1,1 +prt_q,162,316,4 duplicate(Soldier#EP162PS01) Soldier#EP162PS16 8W_SOLDIER,1,1 prt_q,156,324,6 script Chief Guard#EP161PG 4_EP16_SPIEGEL,{ - if (checkweight(501,1) == 0) { + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } @@ -13987,7 +14665,7 @@ prt_q,156,324,6 script Chief Guard#EP161PG 4_EP16_SPIEGEL,{ erasequest 5456;// Ungrateful(4) setquest 5452;// [Stand by]Request from Chief Guard getexp 800000,250000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Chief Guard Spiegel]"; mes "Since we are in a difficult situation, we cannot offer you anything too spectacular, but this is the rewards for you prepared by the Guards."; close; @@ -14008,7 +14686,7 @@ prt_q,156,324,6 script Chief Guard#EP161PG 4_EP16_SPIEGEL,{ erasequest 5459;// Find My Sister(3) setquest 5452;// [Stand by]Request from Chief Guard getexp 800000,250000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Chief Guard Spiegel]"; mes "Since we are in a difficult situation, we cannot offer you anything too spectacular, but this is the rewards for you prepared by the Guards."; close; @@ -14026,7 +14704,7 @@ prt_q,156,324,6 script Chief Guard#EP161PG 4_EP16_SPIEGEL,{ erasequest 5462;// Blatant Bluff(3) setquest 5452;// [Stand by]Request from Chief Guard getexp 800000,250000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Chief Guard Spiegel]"; mes "Since we are in a difficult situation, we cannot offer you anything too spectacular, but this is the rewards for you prepared by the Guards."; close; @@ -14044,7 +14722,7 @@ prt_q,156,324,6 script Chief Guard#EP161PG 4_EP16_SPIEGEL,{ erasequest 5468;// Mad Love for Wife(6) setquest 5452;// [Stand by]Request from Chief Guard getexp 800000,250000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Chief Guard Spiegel]"; mes "Since we are in a difficult situation, we cannot offer you anything too spectacular, but this is the rewards for you prepared by the Guards."; close; @@ -14126,7 +14804,21 @@ prt_q,156,324,6 script Chief Guard#EP161PG 4_EP16_SPIEGEL,{ // Request 1 -prt_q,221,193,4 script Village Lad#EP161HO01 HIDDEN_WARP_NPC,6,6,{ +prt_q,221,193,0 script Lad Quest_START#EP161QU01 HIDDEN_WARP_NPC,6,6,{ + end; +OnTouch: + if (isbegin_quest(5448) == 1) { + cloakoffnpc "Village Lad#EP161HO01", getcharid(0); + npctalk "Village Lad: Arghhhhhh!", "Village Lad#EP161HO01", bc_self; + } + end; +} + +prt_q,221,193,4 script Village Lad#EP161HO01 4_M_03,{ + if (checkweight(1301,3) == 0) { + mes "- You cannot proceed with the quest since you have too many items. -"; + close; + } if (isbegin_quest(5448) == 1) { emotion ET_CRY; mes "[Village Lad]"; @@ -14144,37 +14836,63 @@ prt_q,221,193,4 script Village Lad#EP161HO01 HIDDEN_WARP_NPC,6,6,{ mes "[Village Lad]"; mes "Thank god... The shelter is supposed to be near the village office over there. Why don't we continue this conversation there?"; close2; - classchange( HIDDEN_WARP_NPC, "", bc_self ); } + else { + mes "[Village Lad]"; + mes "Do you see me? How strange. I am not supposed to be seen."; + close2; + } + cloakonnpc "Village Lad#EP161HO01", getcharid(0); end; -OnTouch: - if (isbegin_quest(5448) == 1) { - npctalk "Village Lad: Arghhhhhh!", "", bc_self; - classchange( 4_M_03, "", bc_self ); - } +OnInit: + cloakonnpc strnpcinfo(0); end; } // Office prt_q,79,96,7 script Soldier#EP161HO02 8W_SOLDIER,5,5,{ - if (checkweight(501,1) == 0) { + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } + if (isbegin_quest(5454) == 1) { + emotion 55; + mes "[Village Lad]"; + mes "Huh...? What a nerve! That guy... Save a stranger from the sea, and heรนรฉll ask for more..."; + next; + emotion 17; + mes "[Village Lad]"; + mes "Oh! I wasn't going to eavesdrop. Please don't get me wrong."; + close; + } + if (isbegin_quest(5462) == 1) { + emotion 20; + mes "[Village Lad]"; + mes "Dear adventurer. I believe that uniform is worn by the Guards of Geffen."; + next; + emotion 9; + mes "[Village Lad]"; + mes "Who is that soldier? He seems to enter the shelter so smoothly in a situation like this. He confuses me."; + close; + } mes "[Village Lad]"; mes "This the village office which is the third shelter in Prontera."; close; OnTouch: if (isbegin_quest(5453) == 1 || isbegin_quest(5455) == 1) - classchange( 4_M_03, "Village Lad#EP161HO03", bc_self ); + cloakoffnpc "Village Lad#EP161HO03", getcharid(0); if (isbegin_quest(5461) == 1) - classchange( 4_M_GEF_SOLDIER, "Soldier#EP161HU03", bc_self ); + cloakoffnpc "Soldier#EP161HU03", getcharid(0); end; } -prt_q,77,98,8 script Village Lad#EP161HO03 HIDDEN_WARP_NPC,{ +prt_q,77,98,8 script Village Lad#EP161HO03 4_M_03,{ + if (checkweight(1301,1) == 0) { + mes "- You cannot proceed with the quest since you have too many items. -"; + close; + } if (isbegin_quest(5453) == 1) { emotion ET_DELIGHT; mes "[Village Lad]"; @@ -14204,7 +14922,7 @@ prt_q,77,98,8 script Village Lad#EP161HO03 HIDDEN_WARP_NPC,{ mes "[Village Lad]"; mes "Oh! Never mind. I am counting on you."; close2; - classchange( HIDDEN_WARP_NPC, "", bc_self ); + cloakonnpc "Village Lad#EP161HO03", getcharid(0); end; } if (isbegin_quest(5455) == 1) { @@ -14225,14 +14943,27 @@ prt_q,77,98,8 script Village Lad#EP161HO03 HIDDEN_WARP_NPC,{ mes "[Village Lad]"; mes "Thank you. Farewell."; close2; - classchange( HIDDEN_WARP_NPC, "", bc_self ); + cloakonnpc "Village Lad#EP161HO03", getcharid(0); end; } + mes "[Village Lad]"; + mes "Do you see me? How strange. I am not supposed to be seen."; + close2; + cloakonnpc "Village Lad#EP161HO03", getcharid(0); + end; + +OnInit: + cloakonnpc strnpcinfo(0); + end; } prt_q,178,185,0 script Tool Bag#EP161HO04 HIDDEN_WARP_NPC,2,2,{ end; OnTouch: + if (checkweight(1301,1) == 0) { + mes "- You cannot proceed with the quest since you have too many items. -"; + close; + } if (isbegin_quest(5454) == 1) { mes "In front of the Prontera Smelter"; mes "There a bag which would be full if you put some items."; @@ -14242,21 +14973,131 @@ OnTouch: setquest 5455;// Ungrateful(3) mes "You have acquired a bag."; } + close; } end; } -prt_q,85,90,7 script Giant Beast Manager#EP1 8W_SOLDIER,{ - emotion ET_PROFUSELY_SWEAT; - mes "[" + strnpcinfo(1) + "]"; - mes "This the village office which is the third shelter in Prontera."; +prt_q,85,90,7 script Giant Beast Manager#EP161ETC06 8W_SOLDIER,{ + .@thirdmask = eaclass() & EAJ_THIRDMASK; + if ((.@thirdmask != EAJ_RUNE_KNIGHT && .@thirdmask != EAJ_ROYAL_GUARD) || countitem(6939) < 1) { + emotion 19; + mes "[Giant Beast Manager]"; + mes "This the village office which is the third shelter in Prontera."; + close; + } + if (.@thirdmask == EAJ_RUNE_KNIGHT) { + .@job$ = "Rune Knight"; + .@mount$ = "Dragon"; + } + else { + .@job$ = "Royal Guard"; + .@mount$ = "Griffon"; + } + mes "[Giant Beast Manager]"; + mes "Oh! Dear " + .@job$ + "... That belt? It looks like a belt which belongs to my colleague who has been killed by the undead."; + next; + mes "[Giant Beast Manager]"; + mes "Would you hand it over to me so that I can comfort his poor soul? Although the service is stopped due to the emergency, let me help you ride a " + .@mount$ + "."; + next; + if (select( "Use the service.", "Cancel." ) == 2) { + mes "[Giant Beast Manager]"; + mes "I see. Then, good bye."; + close; + } + if (getskilllv("KN_RIDING") < 1) { + mes "[Giant Beast Manager]"; + mes "You need to learn how to ride a " + .@mount$ + " first."; + close; + } + if (checkriding() || checkdragon()) { + mes "[Giant Beast Manager]"; + mes "You are already using a " + .@mount$ + "."; + close; + } + if (ismounting()) { + mes "[Giant Beast Manager]"; + mes "You need to let go of the bridle to ride a " + .@mount$ + "."; + close; + } + delitem 6939,1; // Shabby_Old_Belt + if (.@thirdmask == EAJ_RUNE_KNIGHT) + setdragon(); + else + setriding(); + mes "[Giant Beast Manager]"; + mes "Thank you. If you find other articles left by the dead soldiers, please bring them to me."; close; } -prt_q,74,101,7 duplicate(Giant Beast Manager#EP1) Magical Gear Mechanic#E 8W_SOLDIER + +prt_q,74,101,7 script Magical Gear Mechanic#EP161ETC05 8W_SOLDIER,{ + .@thirdmask = eaclass() & EAJ_THIRDMASK; + if (.@thirdmask != EAJ_MECHANIC || countitem(6939) < 1) { + emotion 19; + mes "[Magical Gear Mechanic]"; + mes "This the village office which is the third shelter in Prontera."; + close; + } + mes "[Magical Gear Mechanic]"; + mes "Oh, dear Mechanic! That belt? It looks like a belt which belongs to my colleague who has been killed by the undead."; + next; + mes "[Magical Gear Mechanic]"; + mes "Would you hand it over to me so that I can comfort his poor soul? Although the service is stopped due to the emergency, let me help you borrow a Cart or ride a Magical Gear."; + next; + switch( select( "Borrow a Cart.", "Ride a Magical Gear", "Do not use it." ) ) { + case 1: + if (checkcart() == true) { + mes "[Magical Gear Mechanic]"; + mes "You are already using a Cart."; + close; + } + if (getskilllv("MC_PUSHCART") == 0) // the check is missing officially + close; + delitem 6939,1; // Shabby_Old_Belt + setcart(); + mes "[Magical Gear Mechanic]"; + mes "Thank you. If you find other articles left by the dead soldiers, please bring them to me."; + close; + case 2: + if (checkmadogear()) { + mes "[Magical Gear Mechanic]"; + mes "You cannot ride another magical gear since you are already riding one."; + close; + } + if (getskilllv("NC_MADOLICENCE") < 1) { + mes "[Magical Gear Mechanic]"; + mes "Go get a license to ride a magical gear first."; + close; + } + delitem 6939,1; // Shabby_Old_Belt + setmadogear(); + mes "[Magical Gear Mechanic]"; + mes "Thank you. If you find other articles left by the dead soldiers, please bring them to me."; + close; + case 3: + mes "[Magical Gear Mechanic]"; + mes "Oh... Really. I see."; + close; + } +} // Request 2 -prt_q,276,242,4 script Girl#EP161GU01 HIDDEN_WARP_NPC,6,6,{ - if (isbegin_quest(5449) == 1) { +prt_q,276,242,0 script Girl Quest_START#EP161QU02 HIDDEN_WARP_NPC,6,6,{ + end; +OnTouch: + if (isbegin_quest(5449) == 1 && isbegin_quest(5457) == 0) { + cloakoffnpc "Girl#EP161GU01", getcharid(0); + npctalk "Girl: Awwww...", "Girl#EP161GU01", bc_self; + } + end; +} + +prt_q,276,242,4 script Girl#EP161GU01 4_F_RUSCHILD,{ + if (checkweight(1301,1) == 0) { + mes "- You cannot proceed with the quest since you have too many items. -"; + close; + } + if (isbegin_quest(5449) == 1 && isbegin_quest(5457) == 0) { select("Hey dear, are you OK?"); emotion ET_QUESTION, playerattached(); emotion ET_CRY; @@ -14276,48 +15117,150 @@ prt_q,276,242,4 script Girl#EP161GU01 HIDDEN_WARP_NPC,6,6,{ mes "[Lowen]"; mes "We promised to meet at the cathedral when we are lost. I believe she would be there in the church."; close2; - classchange( HIDDEN_WARP_NPC, "", bc_self ); + cloakonnpc "Girl#EP161GU01", getcharid(0); end; } mes "[Lowen]"; mes "Oh? Do you see me? How strange. I am not supposed to be seen."; - close; + close2; + cloakonnpc "Girl#EP161GU01", getcharid(0); + end; -OnTouch: - if (isbegin_quest(5449) == 1) { - classchange( 4_F_RUSCHILD, "", bc_self ); - npctalk "Girl: Awwww...", "", bc_self; - } +OnInit: + cloakonnpc strnpcinfo(0); end; } // Cathedral -prt_q,235,315,4 script Cathedral Knight#EP161G 4_F_CRU,5,5,{ - if (checkweight(501,1) == 0) { +prt_q,235,315,4 script Cathedral Knight#EP161GU04 4_F_CRU,5,5,{ + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } + if (isbegin_quest(5458) == 1) { + mes "[Cathedral Knight]"; + mes "Please take care of Lowen. She is like a mascot to us in Prontera."; + close; + } + if (isbegin_quest(5464) == 1) { + mes "[Cathedral Knight]"; + mes "Ellie is really fragile. I hope she is all right."; + close; + } + if (isbegin_quest(5466) == 1) { + mes "[Cathedral Knight]"; + mes "Oh, my... Ellie is in a critical condition. I hope a priest comes out to help her if there is one in there."; + close; + } + if (isbegin_quest(5468) == 1) { + mes "[Cathedral Knight]"; + mes "Thank you for your effort. We will devote our lives to protect the cathedral from the undead coming this way."; + close; + } mes "[Cathedral Knight]"; mes "This the cathedral which is the first shelter in Prontera."; + if (countitem(6939) < 1) + close; + next; + mes "[Cathedral Knight]"; + mes "That belt... It looks like a belt which belongs to my colleague who has been killed by the undead. Would you mind giving it to me?"; + next; + mes "[Cathedral Knight]"; + mes "I know it is an emergency, but I'd like to comfort the soul of my colleague."; + next; + if (select( "Give it to him.", "Do not give it him." ) == 2) { + mes "[Cathedral Knight]"; + mes "Oh, I see. Please bring them to me if you change your mind."; + close; + } + if (countitem(6939) < 1) { + mes "[Cathedral Knight]"; + mes "Oh, where did you lose the belt you had?"; + close; + } + mes "[Cathedral Knight]"; + mes "Thank you. I guess the dead may rest in peace now. This is the only thing that I can offer you... However..."; + next; + delitem 6939,1; // Shabby_Old_Belt + npcskill "AL_HEAL",10,99,99; + percentheal 100,0; + mes "[Cathedral Knight]"; + mes "If you find more articles left by the soldiers, would you please bring them to me?"; close; OnTouch: if (isbegin_quest(5457) == 1) - classchange( 4_F_RUSCHILD, "Girl#EP161GU03", bc_self ); - if (isbegin_quest(5463) == 1 || isbegin_quest(5464) == 1 || isbegin_quest(5466) == 1 || isbegin_quest(5467) == 1) - classchange( 4_F_03, "Eryus#EP161BU02", bc_self ); + cloakoffnpc "Girl#EP161GU03", getcharid(0); + if (isbegin_quest(5463) == 1 || isbegin_quest(5467) == 1) + cloakoffnpc "Eryus#EP161BU02", getcharid(0); else if (isbegin_quest(5465) == 1) { - classchange( 4_F_03, "Eryus#EP161BU02", bc_self ); - classchange( 4W_F_01, "Female#EP161BU04", bc_self ); + cloakoffnpc "Eryus#EP161BU02", getcharid(0); + cloakoffnpc "Female#EP161BU04", getcharid(0); } end; } -prt_q,232,318,3 script PecoPeco Mechanic#EP161_2 8W_SOLDIER,{ - if (checkweight(501,1) == 0) { +prt_q,232,318,3 script PecoPeco Mechanic#EP161GU02 8W_SOLDIER,{ + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } + if (strnpcinfo(0) == "PecoPeco Mechanic#EP161GU02") + .@check = (Class == JOB_CRUSADER || Class == JOB_PALADIN); + else + .@check = (Class == JOB_KNIGHT || Class == JOB_LORD_KNIGHT); + if (.@check && countitem(6939) > 0) { // Shabby_Old_Belt + mes "[PecoPeco Mechanic]"; + if (Class == JOB_CRUSADER) + mes "Oh! Dear crusader!"; + else if (Class == JOB_PALADIN) + mes "Oh! Dear paladin!"; + mes "That belt? It looks like a belt which belongs to my colleague who has been killed by the undead."; + next; + mes "[PecoPeco Mechanic]"; + mes "Would you hand it over to me so that I can comfort his poor soul? Although the service is stopped due to the emergency, let me call Pecopeco for you."; + next; + if (select( "Use the service.", "Cancel." ) == 2) { + mes "[PecoPeco Mechanic]"; + mes "Oh... Really. I see."; + close; + } + if (countitem(6939) < 1) { + mes "[PecoPeco Mechanic]"; + if (Class == JOB_CRUSADER) + mes "Dear crusader"; + else if (Class == JOB_PALADIN) + mes "Dear paladin"; + mes "Oh! Where did you lose the belt you had?"; + close; + } + if (getskilllv("KN_RIDING") != 1) { + mes "[PecoPeco Mechanic]"; + mes "Oh... I guess you should learn how to ride a Pecopeco first."; + close; + } + if (checkriding()) { + mes "[PecoPeco Mechanic]"; + mes "You are already using the Pecopeco."; + close; + } + if (ismounting()) { + mes "[PecoPeco Mechanic]"; + mes "You need to let go of the bridle to ride it."; + close; + } + delitem 6939,1; // Shabby_Old_Belt + setriding(); + mes "[PecoPeco Mechanic]"; + mes "Thank you. If you find other articles left by the dead soldiers, please bring them to me."; + close; + } + if (isbegin_quest(5458) == 2) { + emotion 57; + mes "[PecoPeco Mechanic]"; + mes "Oh, I am an uncle now..."; + close; + } emotion ET_SORRY; mes "[PecoPeco Mechanic]"; mes "If you are here to borrow a PecoPeco, I have to say I am sorry."; @@ -14327,7 +15270,11 @@ prt_q,232,318,3 script PecoPeco Mechanic#EP161_2 8W_SOLDIER,{ close; } -prt_q,229,317,6 script Girl#EP161GU03 HIDDEN_WARP_NPC,{ +prt_q,229,317,6 script Girl#EP161GU03 4_F_RUSCHILD,{ + if (checkweight(1301,1) == 0) { + mes "- You cannot proceed with the quest since you have too many items. -"; + close; + } if (isbegin_quest(5457) == 1) { mes "[Lowen]"; mes "Whoa, thank you so much!"; @@ -14342,7 +15289,7 @@ prt_q,229,317,6 script Girl#EP161GU03 HIDDEN_WARP_NPC,{ mes "[Lowen]"; mes "Oh, Uncle Peco, did you see my sister here?"; next; - emotion ET_HUK, getnpcid(0, "PecoPeco Mechanic#EP161_2"); + emotion ET_HUK, getnpcid(0, "PecoPeco Mechanic#EP161GU02"); mes "[PecoPeco Mechanic]"; mes "Cough... Uncle..."; next; @@ -14358,7 +15305,7 @@ prt_q,229,317,6 script Girl#EP161GU03 HIDDEN_WARP_NPC,{ mes "[PecoPeco Mechanic]"; mes "She could have gone to the Knights' building. Weren't you sisters supposed to go to the shelter there?"; next; - emotion ET_HUK, getnpcid(0, "PecoPeco Mechanic#EP161_2"); + emotion ET_HUK, getnpcid(0, "PecoPeco Mechanic#EP161GU02"); mes "[Lowen]"; mes "Eh? It must have not been the cathedral then... Huh? What should I do?"; next; @@ -14372,24 +15319,25 @@ prt_q,229,317,6 script Girl#EP161GU03 HIDDEN_WARP_NPC,{ select("Since I am here already, let me keep helping her."); erasequest 5457;// Find My Sister(1) setquest 5458;// Find My Sister(2) - emotion ET_THANKS, getnpcid(0, "PecoPeco Mechanic#EP161_2"); + emotion ET_THANKS, getnpcid(0, "PecoPeco Mechanic#EP161GU02"); mes "[PecoPeco Mechanic]"; mes "Thank you. Please take care of her."; close2; - classchange( HIDDEN_WARP_NPC, "Girl#EP161GU03", bc_self); + cloakonnpc "Girl#EP161GU03", getcharid(0); end; } + mes "[Lowen]"; + mes "Oh? Do you see me? How strange. I am not supposed to be seen."; + close2; + cloakonnpc "Girl#EP161GU03", getcharid(0); + end; + +OnInit: + cloakonnpc strnpcinfo(0); + end; } -prt_q,55,350,5 script PecoPeco Mechanic#EP161_1 8W_SOLDIER,{ - emotion ET_SORRY; - mes "[PecoPeco Mechanic]"; - mes "If you are here to borrow a PecoPeco, I have to say I am sorry."; - next; - mes "[PecoPeco Mechanic]"; - mes "Due to the emergency situation, all troops of Prontera are deployed to protect the residents of Prontera."; - close; -} +prt_q,55,350,5 duplicate(PecoPeco Mechanic#EP161GU02) PecoPeco Mechanic#EP161ETC04 8W_SOLDIER prt_q,47,339,5 script Soldier#EP161ETC01 8W_SOLDIER,{ emotion ET_PROFUSELY_SWEAT; @@ -14400,27 +15348,32 @@ prt_q,47,339,5 script Soldier#EP161ETC01 8W_SOLDIER,{ prt_q,52,344,5 duplicate(Soldier#EP161ETC01) Soldier#EP161ETC02 8W_SOLDIER prt_q,52,340,6 script Knight Gray#EP161GU05 2_M_SWORDMASTER,7,7,{ - if (checkweight(501,1) == 0) { + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } + if (isbegin_quest(5459) == 1) { // there is an issue in the raw file, this message is not displayed on official + mes "[Knight Gray]"; + mes "Are you the one who has helped Sister Erinin? What a relief that we have someone like you?"; + close; + } mes "[Knight Gray]"; mes "With the honor of the knight, I'll protect the villagers inside."; close; OnTouch: if (isbegin_quest(5458) == 1) { - classchange( 4_F_RUSCHILD, "Girl#EP161GU06", bc_self ); - classchange( 4W_F_01, "Rosa Erinin#EP161GU07", bc_self ); + cloakoffnpc "Girl#EP161GU06", getcharid(0); + cloakoffnpc "Rosa Erinin#EP161GU07", getcharid(0); } if (isbegin_quest(5460) == 1) { - classchange( 4_M_GEF_SOLDIER, "Soldier#EP161HU02", bc_self ); + cloakoffnpc "Soldier#EP161HU02", getcharid(0); npctalk "Soldier: Hey you! Here! This way...", "Soldier#EP161HU02", bc_self; } end; } -prt_q,41,337,5 script Mercenary Guild Admin#E 8W_SOLDIER,{ +prt_q,41,337,5 script Mercenary Guild Admin#EP161ETC03 8W_SOLDIER,{ mes "[Mercenary Guild Admin]"; mes "Are you here to hire a mercenary?"; next; @@ -14433,7 +15386,7 @@ prt_q,41,337,5 script Mercenary Guild Admin#E 8W_SOLDIER,{ close; } -prt_q,55,347,6 script Rosa Erinin#EP161GU07 HIDDEN_WARP_NPC,{ +prt_q,55,347,6 script Rosa Erinin#EP161GU07 4W_F_01,{ if (isbegin_quest(5458) == 1) { emotion ET_STARE, getnpcid(0, "Rosa Erinin#EP161GU07"); mes "[Rosa Erinin]"; @@ -14459,15 +15412,44 @@ prt_q,55,347,6 script Rosa Erinin#EP161GU07 HIDDEN_WARP_NPC,{ mes "[Lowen]"; mes "Thank you. Goodbye!"; close2; - classchange( HIDDEN_WARP_NPC, "Rosa Erinin#EP161GU07", bc_self ); - classchange( HIDDEN_WARP_NPC, "Girl#EP161GU06", bc_self ); + cloakonnpc "Rosa Erinin#EP161GU07", getcharid(0); + cloakonnpc "Girl#EP161GU06", getcharid(0); end; } + if (strnpcinfo(1) == "Girl") { + mes "[Lowen]"; + mes "Oh? Do you see me? How strange. I am not supposed to be seen."; + close2; + cloakonnpc "Girl#EP161GU06", getcharid(0); + end; + } + mes "[Rosa Erinin]"; + mes "Dear adventurer, do you see me? Strange. I am not supposed to be seen."; + close2; + cloakonnpc "Rosa Erinin#EP161GU07", getcharid(0); + end; + +OnInit: + cloakonnpc strnpcinfo(0); + end; } -prt_q,57,346,4 duplicate(Rosa Erinin#EP161GU07) Girl#EP161GU06 HIDDEN_WARP_NPC,{ end; } +prt_q,57,346,4 duplicate(Rosa Erinin#EP161GU07) Girl#EP161GU06 4_F_RUSCHILD // Request 3 -prt_q,140,304,6 script Soldier#EP161HU01 HIDDEN_WARP_NPC,7,7,{ +prt_q,140,304,0 script Soldier Quest_START#EP161QU03 HIDDEN_WARP_NPC,7,7,{ + end; +OnTouch: + if (isbegin_quest(5450) == 1) { + cloakoffnpc "Soldier#EP161HU01", getcharid(0); + npctalk "Soldier: Argh! Don't come this way!", "Soldier#EP161HU01", bc_self; + } +} + +prt_q,140,304,6 script Soldier#EP161HU01 4_M_GEF_SOLDIER,{ + if (checkweight(1301,1) == 0) { + mes "- You cannot proceed with the quest since you have too many items. -"; + close; + } if (isbegin_quest(5450) == 1) { emotion ET_KEK; mes "[Soldier]"; @@ -14505,19 +15487,21 @@ prt_q,140,304,6 script Soldier#EP161HU01 HIDDEN_WARP_NPC,7,7,{ mes "[Soldier]"; mes "Good. Since I am tired from the previous battle, please escort me to the Knight's building."; close2; - classchange( HIDDEN_WARP_NPC, "", bc_self ); - } - end; - -OnTouch: - if (isbegin_quest(5450) == 1) { - npctalk "Soldier: Argh! Don't come this way!", "", bc_self; - classchange( 4_M_GEF_SOLDIER, "", bc_self ); + cloakonnpc "Soldier#EP161HU01", getcharid(0); + end; } + mes "[Soldier]"; + mes "Haha, do you see me? Strange. I am not supposed to be seen."; + close2; + cloakonnpc "Soldier#EP161HU01", getcharid(0); end; } -prt_q,68,336,4 script Soldier#EP161HU02 HIDDEN_WARP_NPC,{ +prt_q,68,336,4 script Soldier#EP161HU02 4_M_GEF_SOLDIER,{ + if (checkweight(1301,1) == 0) { + mes "- You cannot proceed with the quest since you have too many items. -"; + close; + } if (isbegin_quest(5460) == 1) { emotion ET_BEST; mes "[Soldier]"; @@ -14539,12 +15523,25 @@ prt_q,68,336,4 script Soldier#EP161HU02 HIDDEN_WARP_NPC,{ mes "[Soldier]"; mes "Since I want to save my energy for the battle, please escort me to the village office."; close2; - classchange( HIDDEN_WARP_NPC, "", bc_self ); + cloakonnpc "Soldier#EP161HU02", getcharid(0); + end; } + mes "[Soldier]"; + mes "Haha, do you see me? Strange. I am not supposed to be seen."; + close2; + cloakonnpc "Soldier#EP161HU02", getcharid(0); + end; + +OnInit: + cloakonnpc strnpcinfo(0); end; } -prt_q,79,102,8 script Soldier#EP161HU03 HIDDEN_WARP_NPC,{ +prt_q,79,102,8 script Soldier#EP161HU03 4_M_GEF_SOLDIER,{ + if (checkweight(1301,1) == 0) { + mes "- You cannot proceed with the quest since you have too many items. -"; + close; + } if (isbegin_quest(5461) == 1) { emotion ET_OK; mes "[Soldier]"; @@ -14590,12 +15587,36 @@ prt_q,79,102,8 script Soldier#EP161HU03 HIDDEN_WARP_NPC,{ mes "[Soldier]"; mes "Good luck."; close2; - classchange( HIDDEN_WARP_NPC, "", bc_self ); + cloakonnpc "Soldier#EP161HU03", getcharid(0); + end; } + mes "[Soldier]"; + mes "Haha, do you see me? Strange. I am not supposed to be seen."; + close2; + cloakonnpc "Soldier#EP161HU03", getcharid(0); + end; + +OnInit: + cloakonnpc strnpcinfo(0); + end; } // Request 4 -prt_q,38,261,6 script Eryus#EP161BU01 HIDDEN_WARP_NPC,6,6,{ +prt_q,38,261,0 script Married couple Quest_START#EP161QU04 HIDDEN_WARP_NPC,6,6,{ + end; +OnTouch: + if (isbegin_quest(5451) == 1) { + cloakoffnpc "Eryus#EP161BU01", getcharid(0); + npctalk "Eryus: Ellie! Where are you? Honey! My love!", "Eryus#EP161BU01", bc_self; + } + end; +} + +prt_q,38,261,6 script Eryus#EP161BU01 4_F_03,{ + if (checkweight(1301,1) == 0) { + mes "- You cannot proceed with the quest since you have too many items. -"; + close; + } if (isbegin_quest(5451) == 1) { emotion ET_THANKS; mes "[Eryus]"; @@ -14636,19 +15657,25 @@ prt_q,38,261,6 script Eryus#EP161BU01 HIDDEN_WARP_NPC,6,6,{ mes "[Eryus]"; mes "Awww... Please help me. Please find my wife."; close2; - classchange( HIDDEN_WARP_NPC, "", bc_self ); + cloakonnpc "Eryus#EP161BU01", getcharid(0); + end; } + mes "[Eryus]"; + mes "Awww... I need to find my wife... And I am not supposed to be seen."; + close2; + cloakonnpc "Eryus#EP161BU01", getcharid(0); end; -OnTouch: - if (isbegin_quest(5451) == 1) { - npctalk "Eryus: Ellie! Where are you? Honey! My love!", "", bc_self; - classchange( 4_F_03, "", bc_self ); - } +OnInit: + cloakonnpc strnpcinfo(0); end; } -prt_q,231,310,4 script Eryus#EP161BU02 HIDDEN_WARP_NPC,{ +prt_q,231,310,4 script Eryus#EP161BU02 4_F_03,{ + if (checkweight(1301,1) == 0) { + mes "- You cannot proceed with the quest since you have too many items. -"; + close; + } if (isbegin_quest(5463) == 1) { emotion ET_CRY; mes "[Eryus]"; @@ -14716,7 +15743,7 @@ prt_q,231,310,4 script Eryus#EP161BU02 HIDDEN_WARP_NPC,{ mes "[Eryus]"; mes "Would you do that for us? Please. We are running out of time. Ellie. hold on..."; close2; - classchange( HIDDEN_WARP_NPC, "Female#EP161BU04", bc_self ); + cloakonnpc "Female#EP161BU04", getcharid(0); end; } if (isbegin_quest(5466) == 1) { @@ -14737,12 +15764,27 @@ prt_q,231,310,4 script Eryus#EP161BU02 HIDDEN_WARP_NPC,{ mes "[Eryus]"; mes "Thank you so much. God bless your journey..."; close2; - classchange( HIDDEN_WARP_NPC, "", bc_self ); + cloakonnpc "Eryus#EP161BU02", getcharid(0); end; } + mes "[Eryus]"; + mes "Awww... I need to find my wife... And I am not supposed to be seen."; + close2; + cloakonnpc "Eryus#EP161BU02", getcharid(0); + end; + +OnInit: + cloakonnpc strnpcinfo(0); + end; } -prt_q,108,164,4 script Female#EP161BU03 HIDDEN_WARP_NPC,4,4,{ + + +prt_q,108,164,4 script Female#EP161BU03 4W_F_01,{ + if (checkweight(1301,1) == 0) { + mes "- You cannot proceed with the quest since you have too many items. -"; + close; + } if (isbegin_quest(5464) == 1) { emotion ET_QUESTION; mes "[Ellie]"; @@ -14763,17 +15805,24 @@ prt_q,108,164,4 script Female#EP161BU03 HIDDEN_WARP_NPC,4,4,{ mes "[Ellie]"; mes "Thank you, dear adventurer."; close2; - classchange( HIDDEN_WARP_NPC, "", bc_self ); + cloakonnpc "Female#EP161BU03", getcharid(0); + end; } - end; + cloakonnpc "Female#EP161BU03", getcharid(0); + mes "[Ellie]"; + mes "Dear adventurer, do you see me? This is not good."; + close; -OnTouch: - if (isbegin_quest(5464) == 1) - classchange( 4W_F_01, "", bc_self ); +OnInit: + cloakonnpc strnpcinfo(0); end; } -prt_q,229,310,6 script Female#EP161BU04 HIDDEN_WARP_NPC,{ +prt_q,229,310,6 script Female#EP161BU04 4W_F_01,{ + if (checkweight(1301,1) == 0) { + mes "- You cannot proceed with the quest since you have too many items. -"; + close; + } if (isbegin_quest(5465) == 1) { emotion ET_THANKS, getnpcid(0, "Eryus#EP161BU02"); mes "[Eryus]"; @@ -14809,14 +15858,33 @@ prt_q,229,310,6 script Female#EP161BU04 HIDDEN_WARP_NPC,{ mes "[Eryus]"; mes "Would you do that for us? Please. We are running out of time. Ellie. hold on..."; close2; - classchange( HIDDEN_WARP_NPC, "Female#EP161BU04", bc_self ); + cloakonnpc "Female#EP161BU04", getcharid(0); + end; } + if (isbegin_quest(5466) == 1) { + mes "[Ellie]"; + mes "Cough... Cough... Cough..."; + close2; + cloakonnpc "Female#EP161BU04", getcharid(0); + end; + } + mes "[Ellie]"; + mes "Dear adventurer, do you see me? This is not good."; + close2; + cloakonnpc "Female#EP161BU04", getcharid(0); + end; + +OnInit: + cloakonnpc strnpcinfo(0); + end; } -prt_q,111,166,0 script Emergency Medicine#EP16 HIDDEN_WARP_NPC,6,6,{ +prt_q,111,166,0 script Emergency Medicine#EP161BU05 HIDDEN_WARP_NPC,6,6,{ end; OnTouch: - if (isbegin_quest(5466) == 1) { + if (isbegin_quest(5464) == 1) + cloakoffnpc "Female#EP161BU03", getcharid(0); + else if (isbegin_quest(5466) == 1) { mes "It seems to be the bundle of medicine dropped by Ellie while running."; next; if (select( "Pick up.", "Leave it." ) == 1) { @@ -14829,110 +15897,93 @@ OnTouch: end; } -prt_q,146,252,6 script Dead Villager#EP161DIE01 4_M_LIEMAN,2,2,{ +prt_q,213,90,2 script Dead Villager#EP161DIE01 4_M_DSTMANDEAD,2,2,{ mes "He seems to be dead."; close; OnTouch_: - .@hidden_name$ = strnpcinfo(2); - if (getd(".mob_count_" + .@hidden_name$) > 0) - end; - .@num = atoi( replacestr( .@hidden_name$, "EP161DIE", "" ) ); - switch(.@num) { - case 0: - case 12: - npctalk "Don't worry, it is not a ferocious dog... Let me go take a look...", "", bc_area; - break; - case 1: - case 11: - npctalk "Bon appetite", "", bc_area; - break; - case 2: - npctalk "This is my daughter. She will be 6 in 2 weeks.", "", bc_area; - break; - case 3: - npctalk "WUG is the best!", "", bc_area; - break; - case 5: - npctalk "I want to go home...", "", bc_area; - break; - case 4: - case 6: - case 7: - case 13: - case 14: - npctalk "Argh...", "", bc_area; - break; - case 8: - npctalk "Oh, I love dogs!", "", bc_area; - break; - case 9: - npctalk "I want to have some beef stew.", "", bc_area; - break; - case 10: - npctalk "Haha, don't worry. It won't burst.", "", bc_area; - break; - case 15: - npctalk "For Himmelmez...", "", bc_area; - break; - case 16: - npctalk "I am hungry...", "", bc_area; - break; - case 17: - npctalk "I had a date...", "", bc_area; - break; - case 18: - npctalk "Help... Help me...", "", bc_area; - break; - case 19: - npctalk "My sister has given me this as a lucky charm...", "", bc_area; - break; - case 20: - npctalk "According to the monster's gourmet guide, humans are supposed to be very delicious, right?", "", bc_area; - break; - } + npctalk "Argh..."; unittalk getcharid(3), "" + strcharinfo(0) + " : ?"; setpcblock PCBLOCK_NPC, true; sleep2 1000; + setpcblock PCBLOCK_NPC, false; specialeffect EF_POISONSMOKE; getmapxy .@map$, .@x, .@y, BL_NPC; monster "prt_q",.@x,.@y,"Resurrected Corpse",1015,1, strnpcinfo(0) + "::OnMyMobDead";// ZOMBIE monster "prt_q",.@x,.@y,"Maggot",1194,1, strnpcinfo(0) + "::OnMyMobDead";// ARCLOUSE monster "prt_q",.@x,.@y,"Fly",1035,1, strnpcinfo(0) + "::OnMyMobDead";// HUNTER_FLY - setd ".mob_count_" + strnpcinfo(2), 1; - hideonnpc strnpcinfo(0); - setpcblock PCBLOCK_NPC, false; + disablenpc strnpcinfo(0); + initnpctimer; end; OnMyMobDead: - .@hidden_name$ = strnpcinfo(2); - setd ".mob_count_" + .@hidden_name$, getd(".mob_count_" + .@hidden_name$) + 1; - if (getd(".mob_count_" + .@hidden_name$) == 4) - initnpctimer; end; OnTimer180000: - setd ".mob_count_" + strnpcinfo(2), 0; + killmonster "prt_q", strnpcinfo(0) + "::OnMyMobDead"; stopnpctimer; - hideoffnpc strnpcinfo(0); + enablenpc strnpcinfo(0); end; } -prt_q,108,318,2 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE02 4_M_LIEMAN,2,2 -prt_q,265,300,8 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE03 4_M_DSTMANDEAD,2,2 -prt_q,213,90,2 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE04 4_M_DSTMANDEAD,2,2 -prt_q,109,94,8 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE05 4_M_DSTMANDEAD,2,2 -prt_q,214,85,6 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE06 4_M_LIEMAN,2,2 -prt_q,222,87,8 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE07 4_M_DIEMAN,2,2 -prt_q,238,129,6 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE08 4_M_DIEMAN,2,2 -prt_q,200,139,8 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE09 4_M_DIEMAN,2,2 -prt_q,220,350,6 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE10 4_M_DIEMAN,2,2 +prt_q,214,85,6 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE02 4_M_LIEMAN,2,2 +prt_q,222,87,8 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE03 4_M_DIEMAN,2,2 +prt_q,149,188,2 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE04 4_M_LIEMAN,2,2 +prt_q,188,207,6 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE05 4_M_DIEMAN,2,2 + +prt_q,109,94,8 script Dead Villager#EP161DIE06 4_M_DSTMANDEAD,2,2,{ + mes "He seems to be dead."; + close; + +OnTouch_: + sscanf( strnpcinfo(2), "EP161DIE%d", .@num ); + setarray .@text$[6], + "I want to go home...", + "For Himmelmez...", + "I am hungey...", + "WUG is the best!", + "I had a date...", + "When I am done with this mission, I will go back to my hometown... Argh...", + "Don't worry, it is not a ferocious dog... Let me go take a look...", + "This is my daughter. She will be 6 in 2 weeks.", + "Oh, I love dogs!", + "I want to have some beef stew.", + "My sister has given me this as a lucky charm...", + "Haha, don't worry. It won't burst.", + "According to the monster's gourmet guide, humans are supposed to be very delicious, right?", + "Help... Help me...", + "Bon appetite"; + npctalk .@text$[.@num]; + unittalk getcharid(3), "" + strcharinfo(0) + " : ?"; + setpcblock PCBLOCK_NPC, true; + sleep2 1000; + setpcblock PCBLOCK_NPC, false; + specialeffect EF_POISONSMOKE; + getmapxy .@map$, .@x, .@y, BL_NPC; + monster "prt_q",.@x,.@y,"Resurrected Corpse",1015,1, strnpcinfo(0) + "::OnMyMobDead";// ZOMBIE + monster "prt_q",.@x,.@y,"Maggot",1194,1, strnpcinfo(0) + "::OnMyMobDead";// ARCLOUSE + monster "prt_q",.@x,.@y,"Fly",1035,1, strnpcinfo(0) + "::OnMyMobDead";// HUNTER_FLY + cloakonnpc strnpcinfo(0); + end; +OnMyMobDead: + if (mobcount( "prt_q", strnpcinfo(0) + "::OnMyMobDead" ) < 1) + initnpctimer; + end; +OnTimer300000: + stopnpctimer; + cloakoffnpc strnpcinfo(0); + end; +} +prt_q,88,279,2 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE07 4_M_LIEMAN,2,2 +prt_q,89,207,6 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE08 4_M_DIEMAN,2,2 +prt_q,265,300,8 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE09 4_M_DSTMANDEAD,2,2 +prt_q,88,350,2 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE10 4_M_LIEMAN,2,2 prt_q,156,275,6 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE11 4_M_DSTMANDEAD,2,2 prt_q,104,114,8 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE12 4_M_DIEMAN,2,2 -prt_q,149,188,2 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE13 4_M_LIEMAN,2,2 -prt_q,188,207,6 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE14 4_M_DIEMAN,2,2 -prt_q,88,279,2 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE15 4_M_LIEMAN,2,2 -prt_q,89,207,6 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE16 4_M_DIEMAN,2,2 -prt_q,88,350,2 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE17 4_M_LIEMAN,2,2 -prt_q,227,219,2 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE18 4_M_DSTMANDEAD,2,2 -prt_q,74,227,2 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE19 4_M_DSTMANDEAD,2,2 -prt_q,45,146,8 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE20 4_M_DIEMAN,2,2 +prt_q,108,318,2 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE13 4_M_LIEMAN,2,2 +prt_q,238,129,6 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE14 4_M_DIEMAN,2,2 +prt_q,200,139,8 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE15 4_M_DIEMAN,2,2 +prt_q,74,227,2 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE16 4_M_DSTMANDEAD,2,2 +prt_q,220,350,6 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE17 4_M_DIEMAN,2,2 +prt_q,45,146,8 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE18 4_M_DIEMAN,2,2 +prt_q,227,219,2 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE19 4_M_DSTMANDEAD,2,2 +prt_q,146,252,6 duplicate(Dead Villager#EP161DIE01) Dead Villager#EP161DIE20 4_M_LIEMAN,2,2 prt_q,148,49,0 script Sign#EP161ETC12 2_BULLETIN_BOARD,{ mes "[Prontera, the Capital of Rune-Midgarts Kingdom]"; @@ -14972,15 +16023,96 @@ prt_q,143,203,2 duplicate(Kriemhild) Fadhgridh GUILD_FLAG prt_q,167,203,6 duplicate(Kriemhild) Skoegul GUILD_FLAG prt_q,165,194,5 duplicate(Kriemhild) Gondul GUILD_FLAG -// Prison quests +// GM NPC +prt_q,5,5,6 script Pron Dungeon Helper#EP161PG 4_EP16_SPIEGEL,{ + if (callfunc("F_GM_NPC",1854,0,1,9999) < 1) + end; + mes "[Pron Dungeon Helper]"; + mes "Select the service to use."; + next; + switch( select( "Quest Start Setting", "Reset cooldown time", "Reset Quest", "Check current status" ) ) { + case 1: + mes "[Pron Dungeon Helper]"; + mes "Proceed after resetting the quest. Select the quest to start."; + next; + switch( select( "Lad Quest", "Girl Quest", "Soldier Quest", "Married couple Quest" ) ) { + case 1: + setquest 5448; + mes "[Pron Dungeon Helper]"; + mes "Would you move to this starting point?"; + next; + select("Move"); + warp "prt_q",221,193; + end; + case 2: + setquest 5449; + mes "[Pron Dungeon Helper]"; + mes "Would you move to this starting point?"; + next; + select("Move"); + warp "prt_q",276,242; + end; + case 3: + setquest 5450; + mes "[Pron Dungeon Helper]"; + mes "Would you move to this starting point?"; + next; + select("Move"); + warp "prt_q",140,304; + end; + case 4: + setquest 5451; + mes "[Pron Dungeon Helper]"; + mes "Would you move to this starting point?"; + next; + select("Move"); + warp "prt_q",38,261; + end; + } + end; + case 2: + mes "[Pron Dungeon Helper]"; + mes "Reset the cooldown time."; + next; + select("Setting"); + erasequest 5452; + break; + case 3: + mes "[Underground Dungeon Helper]"; + mes "All quests related with the underground dungeon will be reset."; + next; + select("Setting"); + mes "[Underground Dungeon Helper]"; + for ( .@i = 5448; .@i < 5468; ++.@i ) { + if (isbegin_quest(.@i) > 0) + erasequest .@i; + mes "" + .@i + " Delete"; + } + next; + break; + case 4: + mes "[Pron Dungeon Helper]"; + mes "5448(" + isbegin_quest(5448) + ")/5449(" + isbegin_quest(5449) + ")/5450(" + isbegin_quest(5450) + ")/5451(" + isbegin_quest(5451) + ")"; + mes "5453(" + isbegin_quest(5453) + ")/5454(" + isbegin_quest(5454) + ")/5455(" + isbegin_quest(5455) + ")/5456(" + isbegin_quest(5456) + ")"; + mes "5457(" + isbegin_quest(5457) + ")/5458(" + isbegin_quest(5458) + ")/5459(" + isbegin_quest(5459) + ")"; + mes "5460(" + isbegin_quest(5460) + ")/5461(" + isbegin_quest(5461) + ")/5462(" + isbegin_quest(5462) + ")"; + mes "5463(" + isbegin_quest(5463) + ")/5464(" + isbegin_quest(5464) + ")/5465(" + isbegin_quest(5465) + ")/5466(" + isbegin_quest(5466) + ")/5467(" + isbegin_quest(5467) + ")/5468(" + isbegin_quest(5468) + ")"; + next; + break; + } + mes "[Pron Dungeon Helper]"; + mes "Complete"; + close; +} +// Prison quests prt_pri00,46,130,7 script Corrupt Warder#pa0829 4_M_KY_SOLD,{ - if ((MaxWeight - Weight) < 1000) { - mes "It seems difficult to proceed any further since the items in your possession are too heavy. Reduce the weight and try again."; + if (checkweight(1201,1) == 0) { + mes "There are too many kinds of items in possession. Reduce the type of the items and try again."; close; } - if (checkweight(501,1) == 0) { - mes "There are too many kinds of items in possession. Reduce the type of the items and try again."; + if ((MaxWeight - Weight) < 1000) { + mes "It seems difficult to proceed any further since the items in your possession are too heavy. Reduce the weight and try again."; close; } mes "[Corrupt Warder]"; @@ -15004,19 +16136,19 @@ prt_pri00,46,130,7 script Corrupt Warder#pa0829 4_M_KY_SOLD,{ } mes "[Corrupt Warder]"; mes "Good, it is a great deal."; - delitem 6920,30;// Rune_Magic_Powder - getitem 22901,1;// Mysterious Blue Box + delitem 6920,30;// RuneMagicPowder + getitem 22901,1;// BlueboxOfQuestions close; } prt_pri00,61,136,3 script Dylan#pa0829 4_CAT_SAILOR5,{ disable_items; - if ((MaxWeight - Weight) < 1000) { - mes "It seems difficult to proceed any further since the items in your possession are too heavy. Reduce the weight and try again."; + if (checkweight(1201,1) == 0) { + mes "There are too many kinds of items in possession. Reduce the type of the items and try again."; close; } - if (checkweight(501,1) == 0) { - mes "There are too many kinds of items in possession. Reduce the type of the items and try again."; + if ((MaxWeight - Weight) < 1000) { + mes "It seems difficult to proceed any further since the items in your possession are too heavy. Reduce the weight and try again."; close; } if (isbegin_quest(12369) == 0) { @@ -15143,102 +16275,32 @@ prt_pri00,61,136,3 script Dylan#pa0829 4_CAT_SAILOR5,{ mes "Hey, buddy. You cannot deal with me if you don't have any Honor Marks."; close; } + .@r = rand(1,961); + if (.@r < 84) .@en_name = 4994; // Neev_STR_1 + else if (.@r < 141) .@en_name = 4995; // Neev_STR_2 + else if (.@r < 161) .@en_name = 4996; // Neev_STR_3 + else if (.@r < 244) .@en_name = 4997; // Neev_AGI_1 + else if (.@r < 301) .@en_name = 4998; // Neev_AGI_2 + else if (.@r < 321) .@en_name = 4999; // Neev_AGI_3 + else if (.@r < 404) .@en_name = 29000; // Neev_INT_1 + else if (.@r < 461) .@en_name = 29001; // Neev_INT_2 + else if (.@r < 481) .@en_name = 29002; // Neev_INT_3 + else if (.@r < 564) .@en_name = 29003; // Neev_DEX_1 + else if (.@r < 621) .@en_name = 29004; // Neev_DEX_2 + else if (.@r < 641) .@en_name = 29005; // Neev_DEX_3 + else if (.@r < 724) .@en_name = 29009; // Neev_VIT_1 + else if (.@r < 781) .@en_name = 29010; // Neev_VIT_2 + else if (.@r < 801) .@en_name = 29011; // Neev_VIT_3 + else if (.@r < 884) .@en_name = 29006; // Neev_LUK_1 + else if (.@r < 941) .@en_name = 29007; // Neev_LUK_2 + else if (.@r < 961) .@en_name = 29008; // Neev_LUK_3 + else .@en_name = 0; + if (.@card[3] == 0) + .@card_index = 3; + else + .@card_index = 2; - if (.@item_id == 15147) {// Abusive Robe - if (.@card[3] == 0) { - setarray .@enhance[0], - 25, 4994, // Rune of Strength Lv 1 - 105, 4997, // Rune of Agility Lv 1 - 110, 29009, // Rune of Vitality Lv 1 - 170, 29000, // Rune of Intellect Lv 1 - 230, 29003, // Rune of Dexterity Lv 1 - 255, 29006, // Rune of Luck Lv 1 - 265, 4995, // Rune of Strength Lv 2 - 315, 4998, // Rune of Agility Lv 2 - 317, 29010, // Rune of Vitality Lv 2 - 352, 29001, // Rune of Intellect Lv 2 - 387, 29004, // Rune of Dexterity Lv 2 - 407, 29007, // Rune of Luck Lv 2 - 412, 4996, // Rune of Strength Lv 3 - 432, 4999, // Rune of Agility Lv 3 - 452, 29002, // Rune of Intellect Lv 3 - 467, 29005, // Rune of Dexterity Lv 3 - 477, 29008; // Rune of Luck Lv 3 - .@card_index = 3; - } - else { - setarray .@enhance[0], - 60, 4994, // Rune of Strength Lv 1 - 80, 29000, // Rune of Intellect Lv 1 - 160, 29009, // Rune of Vitality Lv 1 - 180, 29003, // Rune of Dexterity Lv 1 - 220, 29006, // Rune of Luck Lv 1 - 270, 4995, // Rune of Strength Lv 2 - 275, 4998, // Rune of Agility Lv 2 - 325, 29010, // Rune of Vitality Lv 2 - 350, 29001, // Rune of Intellect Lv 2 - 365, 29004, // Rune of Dexterity Lv 2 - 405, 29007, // Rune of Luck Lv 2 - 420, 4996, // Rune of Strength Lv 3 - 425, 4999, // Rune of Agility Lv 3 - 435, 29002, // Rune of Intellect Lv 3 - 455, 29011, // Rune of Vitality Lv 3 - 465, 29005, // Rune of Dexterity Lv 3 - 480, 29008; // Rune of Luck Lv 3 - .@card_index = 2; - } - } - else {// Flattery Robe - if (.@card[3] == 0) { - setarray .@enhance[0], - 50, 4994, // Rune of Strength Lv 1 - 100, 4997, // Rune of Agility Lv 1 - 150, 29009, // Rune of Vitality Lv 1 - 190, 29000, // Rune of Intellect Lv 1 - 230, 29003, // Rune of Dexterity Lv 1 - 270, 29006, // Rune of Luck Lv 1 - 305, 4995, // Rune of Strength Lv 2 - 340, 4998, // Rune of Agility Lv 2 - 390, 29010, // Rune of Vitality Lv 2 - 425, 29001, // Rune of Intellect Lv 2 - 460, 29004, // Rune of Dexterity Lv 2 - 495, 29007, // Rune of Luck Lv 2 - 505, 4996, // Rune of Strength Lv 3 - 520, 4999, // Rune of Agility Lv 3 - 530, 29011, // Rune of Vitality Lv 3 - 545, 29002, // Rune of Intellect Lv 3 - 555, 29005, // Rune of Dexterity Lv 3 - 565, 29008; // Rune of Luck Lv 3 - .@card_index = 3; - } - else { - setarray .@enhance[0], - 70, 4994, // Rune of Strength Lv 1 - 72, 4997, // Rune of Agility Lv 1 - 147, 29009, // Rune of Vitality Lv 1 - 177, 29000, // Rune of Intellect Lv 1 - 197, 29003, // Rune of Dexterity Lv 1 - 247, 29006, // Rune of Luck Lv 1 - 297, 4995, // Rune of Strength Lv 2 - 307, 4998, // Rune of Agility Lv 2 - 382, 29010, // Rune of Vitality Lv 2 - 412, 29001, // Rune of Intellect Lv 2 - 437, 29004, // Rune of Dexterity Lv 2 - 487, 29007, // Rune of Luck Lv 2 - 507, 4996, // Rune of Strength Lv 3 - 510, 4999, // Rune of Agility Lv 3 - 540, 29011, // Rune of Vitality Lv 3 - 555, 29002, // Rune of Intellect Lv 3 - 563, 29005, // Rune of Dexterity Lv 3 - 573, 29008; // Rune of Luck Lv 3 - .@card_index = 2; - } - } - .@size = getarraysize(.@enhance); - .@r = rand( 1,.@enhance[.@size-2] ); - for ( .@i = 0; .@i < .@size && .@enhance[.@i] < .@r; .@i += 2 ) - continue; - .@card[ .@card_index ] = .@enhance[.@i+1]; + .@card[ .@card_index ] = .@en_name; delitem 6919,20; delequip EQI_ARMOR; getitem2 .@item_id,1,1,.@refine,0,.@card[0],.@card[1],.@card[2],.@card[3]; @@ -15266,56 +16328,44 @@ prt_pri00,61,136,3 script Dylan#pa0829 4_CAT_SAILOR5,{ mes "Hey, buddy. You cannot deal with me if you don't have any Honor Marks."; close; } - .@card[3] = getequipcardid(EQI_ACC_L,3); - if (.@card[3] == 0) { - setarray .@enhance[0], - 37, 4710, // INT+1 - 57, 4730, // AGI+1 - 76, 4740, // VIT+1 - 91, 4720, // DEX+1 - 104, 4750, // LUK+1 - 113, 4700, // STR+1 - 120, 4711, // INT+2 - 122, 4721, // DEX+2 - 124, 4701, // STR+2 - 126, 4731, // AGI+2 - 128, 4751, // LUK+2 - 129, 4741, // VIT+2 - 130, 4752, // LUK+3 - 131, 4702, // STR+3 - 132, 4732, // AGI+3 - 133, 4712, // INT+3 - 134, 4722, // DEX+3 - 135, 4742; // VIT+3 + .@r = rand(1,22231); + if (.@r < 3001) .@en_name = 4710; // Inteligence1 + else if (.@r < 3601) .@en_name = 4711; // Inteligence2 + else if (.@r < 3701) .@en_name = 4712; // Inteligence3 + else if (.@r < 3705) .@en_name = 4713; // Inteligence4 + else if (.@r < 3706) .@en_name = 4714; // Inteligence5 + else if (.@r < 6706) .@en_name = 4730; // Agility1 + else if (.@r < 7306) .@en_name = 4731; // Agility2 + else if (.@r < 7406) .@en_name = 4732; // Agility3 + else if (.@r < 7410) .@en_name = 4733; // Agility4 + else if (.@r < 7411) .@en_name = 4734; // Agility5 + else if (.@r < 10411) .@en_name = 4740; // Vitality1 + else if (.@r < 11011) .@en_name = 4741; // Vitality2 + else if (.@r < 11111) .@en_name = 4742; // Vitality3 + else if (.@r < 11115) .@en_name = 4743; // Vitality4 + else if (.@r < 11116) .@en_name = 4744; // Vitality5 + else if (.@r < 14116) .@en_name = 4750; // Luck1 + else if (.@r < 14716) .@en_name = 4751; // Luck2 + else if (.@r < 14816) .@en_name = 4752; // Luck3 + else if (.@r < 14820) .@en_name = 4753; // Luck4 + else if (.@r < 14821) .@en_name = 4754; // Luck5 + else if (.@r < 17821) .@en_name = 4700; // Strength1 + else if (.@r < 18421) .@en_name = 4701; // Strength2 + else if (.@r < 18521) .@en_name = 4702; // Strength3 + else if (.@r < 18525) .@en_name = 4703; // Strength4 + else if (.@r < 18526) .@en_name = 4704; // Strength5 + else if (.@r < 21526) .@en_name = 4720; // Dexterity1 + else if (.@r < 22126) .@en_name = 4721; // Dexterity2 + else if (.@r < 22226) .@en_name = 4722; // Dexterity3 + else if (.@r < 22230) .@en_name = 4723; // Dexterity4 + else if (.@r < 22231) .@en_name = 4724; // Dexterity5 + else .@en_name = 0; + + if (.@card[3] == 0) .@card_index = 3; - } - else { - setarray .@enhance[0], - 37, 4740, // VIT+1 - 63, 4710, // INT+1 - 81, 4750, // LUK+1 - 96, 4700, // STR+1 - 105, 4720, // DEX+1 - 111, 4730, // AGI+1 - 116, 4751, // LUK+2 - 120, 4711, // INT+2 - 122, 4721, // DEX+2 - 124, 4741, // VIT+2 - 126, 4701, // STR+2 - 128, 4731, // AGI+2 - 129, 4742, // VIT+3 - 130, 4752, // LUK+3 - 131, 4702, // STR+3 - 132, 4732, // AGI+3 - 133, 4712, // INT+3 - 134, 4722; // DEX+3 + else .@card_index = 2; - } - .@size = getarraysize(.@enhance); - .@r = rand( 1,.@enhance[.@size-2] ); - for ( .@i = 0; .@i < .@size && .@enhance[.@i] < .@r; .@i += 2 ) - continue; - .@card[ .@card_index ] = .@enhance[.@i+1]; + .@card[ .@card_index ] = .@en_name; delitem 6919,5; delequip EQI_ACC_L; @@ -15384,7 +16434,14 @@ prt_pri00,61,136,3 script Dylan#pa0829 4_CAT_SAILOR5,{ } else { mes "I guess you are out of luck. The equipment is broken. Tut tut."; - getitem 6920,14;// Rune_Magic_Powder + .@r = rand(1,100); + if (.@r < 61) getitem 6920,9; // RuneMagicPowder + else if (.@r < 81) getitem 6920,10; + else if (.@r < 87) getitem 6920,11; + else if (.@r < 93) getitem 6920,12; + else if (.@r < 98) getitem 6920,13; + else if (.@r < 100) getitem 6920,14; + else getitem 6920,15; specialeffect2 EF_LORD; } close; @@ -15396,19 +16453,10 @@ prt_pri00,61,136,3 script Dylan#pa0829 4_CAT_SAILOR5,{ } prt_pri00,51,116,8 script Ellond Lawrence#EP161ER 4_M_CRU,1,1,{ - if (checkweight(501,1) == 0) { + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } - if (banquet_main_quest < 3) { - emotion ET_SORRY; - mes "[Ellond Lawrence]"; - mes "I am sorry, but unauthorized access to this place is restricted."; - next; - mes "[Ellond Lawrence]"; - mes "Sorry for the inconvenience and your cooperation will be appreciated."; - close; - } if (BaseLevel < 140) { npctalk "Ellond Lawrence: If you were a bit stronger...What a shame.", "", bc_self; mes "[Ellond Lawrence]"; @@ -15663,7 +16711,7 @@ prt_pri00,51,116,8 script Ellond Lawrence#EP161ER 4_M_CRU,1,1,{ setquest 5424;// [Complete]Restricted Sector completequest 5424;// [Complete]Restricted Sector getexp 2100000,5500000; - getitem 6919,2;// Honor Token + getitem 6919,2;// TokenOfHonor mes "[Ellond Lawrence]"; mes "Now that you received the special reward money, please keep up the good work."; close; @@ -15755,7 +16803,7 @@ prt_pri00,51,116,8 script Ellond Lawrence#EP161ER 4_M_CRU,1,1,{ } OnTouch: - if (isbegin_quest(5415) < 2) { + if (isbegin_quest(5415) == 0) { emotion ET_SORRY; mes "[Ellond Lawrence]"; mes "I am sorry, but unauthorized access to this place is restricted."; @@ -15767,12 +16815,12 @@ OnTouch: end; } -prt_pri00,58,128,4 script Overwatcher Terketh#ep1 4_M_JOB_HUNTER,{ - if (banquet_main_quest < 13) { +prt_pri00,58,128,4 script Overwatcher Terketh#ep16 4_M_JOB_HUNTER,{ + if (ep16_royal < 13) { npctalk "...Such a disturbance to my training.", "", bc_self; end; } - if (banquet_main_quest == 13) { + if (ep16_royal == 13) { npctalk "Oh, my! What the...", "", bc_self; mes "[Terketh]"; mes "You are out from the Past Memories of the Royal Family?"; @@ -15784,7 +16832,7 @@ prt_pri00,58,128,4 script Overwatcher Terketh#ep1 4_M_JOB_HUNTER,{ mes "You must to where to go after that, right?"; erasequest 7695;// Escape from the Past Memories of the Royal Family setquest 7696;// What's Next? - banquet_main_quest = 14; + ep16_royal = 14; warp "prt_pri00",53,128; end; } @@ -15811,8 +16859,8 @@ prt_pri00,58,128,4 script Overwatcher Terketh#ep1 4_M_JOB_HUNTER,{ // Sector A -prt_prison,243,265,6 script Prisoner 243AD265#EP161 4_M_DRAKE,{ - if (checkweight(501,1) == 0) { +prt_prison,243,265,6 script Prisoner 243AD265#EP161A 4_M_DRAKE,{ + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } @@ -15824,6 +16872,11 @@ prt_prison,243,265,6 script Prisoner 243AD265#EP161 4_M_DRAKE,{ mes "The prisoner is howling. Is something happening?"; close; } + if (BaseLevel < 140) { + mes "[Prisoner 243AD265]"; + mes "You must be adventurer, are you? Hmm...You seem like a beginner. I don't see much charm in you."; + close; + } switch( isbegin_quest(5425) ) { case 0: emotion ET_SPARK; @@ -15911,11 +16964,11 @@ prt_prison,243,265,6 script Prisoner 243AD265#EP161 4_M_DRAKE,{ emotion ET_BLABLA; mes "- The prisoner grabs a fist and pounds his left chest. -"; next; - delitem 6925,1;// Prisoner's Letter + delitem 6925,1;// Prisoner_Letter completequest 5425;// To My Beloved Fellow setquest 5426;// [Stand by]To My Beloved Fellow getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Prisoner 243AD265]"; mes "I'll inscribe your name right here. I hope you would continue to be the messenger for my fellow men."; close; @@ -15950,11 +17003,11 @@ prt_prison,243,265,6 script Prisoner 243AD265#EP161 4_M_DRAKE,{ emotion ET_BLABLA; mes "- The prisoner grabs a fist and pounds his left chest. -"; next; - delitem 6925,1;// Prisoner's Letter + delitem 6925,1;// Prisoner_Letter erasequest 5427;// [Repeat]To My Beloved Fellow setquest 5426;// [Stand by]To My Beloved Fellow getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Prisoner 243AD265]"; mes "I'll inscribe your name right here. I hope you would continue to be the messenger for my fellow men."; close; @@ -15966,40 +17019,129 @@ prt_prison,243,265,6 script Prisoner 243AD265#EP161 4_M_DRAKE,{ mes "The prisoner started singing as if he was reminiscing about something."; close2; setpcblock PCBLOCK_NPC, true; - sleep2 30; - npctalk "Prisoner 243AD265: We're coming home~~ We're coming home~~", "", bc_self; - sleep2 2000; - npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; - sleep2 2000; - npctalk "Prisoner 243AD265: When we return home~~ When we do~~ We'll be good to our parents~~ We will~~", "", bc_self; - sleep2 2000; - npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; - sleep2 2000; - npctalk "Prisoner 243AD265: The lady here~~ is pretty~~ and amusing~~ She is~~", "", bc_self; - sleep2 2000; - npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; - sleep2 2000; - npctalk "Prisoner 243AD265: Hard-earned money~~ Spend it~~ Spend it all~~", "", bc_self; - sleep2 2000; - npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; - sleep2 2000; - npctalk "Prisoner 243AD265: Let's dance~~ Dance~~ Until~~ We return home~~ Dance away~~", "", bc_self; - sleep2 2000; - npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; - sleep2 2000; - npctalk "Prisoner 243AD265: When we go home~~ When we do~~ We will dance~~ with our fiancee", "", bc_self; - sleep2 2000; - npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; - sleep2 2000; - npctalk "Prisoner 243AD265: Say farewell~~ to our loved ones~~ Say~~ farewell~~ Drink up~~ Dance away~~ Dance~~", "", bc_self; - sleep2 2000; - npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; + switch( rand(1,5) ) { + case 1: + npctalk "Prisoner 243AD265: Good-bye~~ So long~~ My dear lady~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: I was ordered~~ to go back~~ to my hometown~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: If I do, I will never see you again, my beautiful lady~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Good-bye~~ So long~~ My dear lady~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: We will scream~~ We will shout~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Even on the sea~~ We will scream~~ We will shout~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Good-bye~~ So long~~ My dear lady~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Every mate~~ Fill her up~~ Drink it all up~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: It's for the men~~ We're sad~~ Let's drink away~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Good-bye~~ So long~~ My dear lady~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: I was ordered~~ to go back~~ to my hometown~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: If I do, I will never see you again, my beautiful lady~~", "", bc_self; + break; + case 2: + npctalk "Prisoner 243AD265: Listen up~~ Young mates~~ Let me tell you about the sea you're all wondering about~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Wind is blowing~~ So is storm~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: When the wind starts to blow~~ Everyone is here together~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Listen up~~ Young mates~~ Let me tell you about the sea you're all wondering about~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: The wind is blowing~~ Storm is coming~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: The wind is blowing~~ The ship is sailing along~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Listen up~~ Young mates~~ Let me tell you about the sea you're all wondering about~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Eels are flying, wagging its fin~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: We spread the sail and dodge the rock~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Listen up~~ Young mates~~ Let me tell you about the sea you're all wondering about~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Shark with sharp teeth is swimming~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: If you eat bread~~ I'll eat the meat~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Listen up~~ Young mates~~ Let me tell you about the sea you're all wondering about~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Large whale~~ swims~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: If you want the wind~~ let me create a gust~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Listen up~~ Young mates~~ Let me tell you about the sea you're all wondering about~~", "", bc_self; + break; + case 3: + npctalk "Prisoner 243AD265: We're coming home~~ We're coming home~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: When we return home~~ When we do~~ We'll be good to our parents~~ We will~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: The lady here~~ is pretty~~ and amusing~~ She is~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Hard-earned money~~ Spend it~~ Spend it all~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Let's dance~~ Dance~~ Until~~ We return home~~ Dance away~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: When we go home~~ When we do~~ We will dance~~ with our fiancee", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Say farewell~~ to our loved ones~~ Say~~ farewell~~ Drink up~~ Dance away~~ Dance~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Move forward~~ Move forward~~ Hello~~ Lady~~", "", bc_self; + break; + case 4: + npctalk "Prisoner 243AD265: Hey, hey~~ Set a ship afloat~~ Hey, hey~~ Set it afloat~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Early~~ in the morning~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: What should we do~~ with the drunk sailors~~ What should we do~~ with the drunk sailors~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Early~~ in the morning~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Stick the hose~~ Sink it in the drainage hole~~ Stick the hose~~ Sink it in the drainage hole~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Early~~ in the morning~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: When he wakes up~~ Lock him inside the cabin~~ When he wakes up~~ Lock him inside the cabin~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Early~~ in the morning~~", "", bc_self; + break; + case 5: + npctalk "Prisoner 243AD265: Ahoy~~ Mate~~ Early in the morning~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Ahoy~~ Mate~~ Spread the sail~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Ahoy~~ Mate~~ Pour the liquor~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Ahoy~~ Mate~~ Sing a song~~", "", bc_self; + sleep2 2000; + npctalk "Prisoner 243AD265: Ahoy~~ Mate~~", "", bc_self; + break; + } sleep2 2000; npctalk "Prisoner 243AD265: ... ... ...", "", bc_self; sleep2 2000; + setpcblock PCBLOCK_NPC, false; emotion ET_HNG; npctalk "Prisoner 243AD265: It is far from amusing when there is no fellow sailor around.", "", bc_self; - setpcblock PCBLOCK_NPC, false; end; case 2: erasequest 5426;// [Stand by]To My Beloved Fellow @@ -16011,7 +17153,7 @@ prt_prison,243,265,6 script Prisoner 243AD265#EP161 4_M_DRAKE,{ } prt_prison,205,139,4 script Dark Shape#EP161A01 4_GHOST_STAND,{ - if (checkweight(501,1) == 0) { + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } @@ -16021,10 +17163,10 @@ prt_prison,205,139,4 script Dark Shape#EP161A01 4_GHOST_STAND,{ mes "The Dark Shape starts to sway when it saw me. Did it mean it's delighted to see me?"; next; select("Anything else to give me?"); - getitem 6925,1;// Prisoner's Letter + getitem 6925,1;// Prisoner_Letter mes "The Dark Shape handed you the letter and was gone."; next; - playBGM "148"; + playbgm "148"; mes "The Dark Shape seems to be in a good mood, humming along."; } else { @@ -16047,7 +17189,7 @@ prt_prison,205,139,4 script Dark Shape#EP161A01 4_GHOST_STAND,{ mes "What should you do?"; next; if (select( "Just leave.", "Wait a little more." ) == 2) { - getitem 6925,1;// Prisoner's Letter + getitem 6925,1;// Prisoner_Letter mes "The Dark Shape handed you the letter and left. Did it mean to ask you to deliver it?"; } else { @@ -16056,13 +17198,12 @@ prt_prison,205,139,4 script Dark Shape#EP161A01 4_GHOST_STAND,{ mes "The Dark Shape must've noticed it. It's gone nowhere, too."; } } - close2; .@num = atoi( replacestr( strnpcinfo(2), "EP161A0", "" ) ); setarray .@npc_num[1],1,2,3,4,5; deletearray .@npc_num[.@num],1; disablenpc strnpcinfo(0); enablenpc "Dark Shape#EP161A0" + .@npc_num[ rand(1,4) ];// enable another npc randomly - end; + close; OnInit: .@npc_num = atoi( replacestr( strnpcinfo(2), "EP161A0", "" ) ); @@ -16078,8 +17219,8 @@ prt_prison,169,81,6 duplicate(Dark Shape#EP161A01) Dark Shape#EP161A04 4_GHOST_S prt_prison,203,215,4 duplicate(Dark Shape#EP161A01) Dark Shape#EP161A05 4_GHOST_STAND // Sector B -prt_prison,267,184,8 script Prisoner 267BD184#EP161 4_DRACULA,{ - if (checkweight(501,1) == 0) { +prt_prison,267,184,8 script Prisoner 267BD184#EP161B 4_DRACULA,{ + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } @@ -16088,6 +17229,11 @@ prt_prison,267,184,8 script Prisoner 267BD184#EP161 4_DRACULA,{ mes "The prisoner here is sitting with the extremely bored look. If you talk to him at this point, you may have to sit down to hang out with him."; close; } + if (BaseLevel < 140) { + mes "[Prisoner 267BD184]"; + mes "Yes, I'm bored as you must've imagined, but I can't hang out with you. Why? You don't have the eyes that I want."; + close; + } switch( isbegin_quest(5428) ) { case 0: emotion ET_COOL; @@ -16197,10 +17343,10 @@ prt_prison,267,184,8 script Prisoner 267BD184#EP161 4_DRACULA,{ mes "Now that I have a job to do for today and you've done a good job. Maybe I should give you a present."; next; completequest 5428;// Lowly Standards - delitem 6924,20;// Red Eye + delitem 6924,20;// Red_Eyes setquest 5429;// [Stand by]Lowly Standards getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Prisoner 267BD184]"; mes "Humans who had been here before gave me this. I don't like this kind of design, so I'll give it to you."; close; @@ -16239,10 +17385,10 @@ prt_prison,267,184,8 script Prisoner 267BD184#EP161 4_DRACULA,{ mes "Oh, you indeed brought them! I'll take a close look. Let me."; next; erasequest 5430;// [Repeat]Lowly Standards - delitem 6924,20;// Red Eye + delitem 6924,20;// Red_Eyes setquest 5429;// [Stand by]Lowly Standards getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Prisoner 267BD184]"; mes "Oh, I almost forgot. This is the thing I talked to you the last time. I don't like this kind of design, so I'll give it to you."; close; @@ -16267,8 +17413,8 @@ prt_prison,267,184,8 script Prisoner 267BD184#EP161 4_DRACULA,{ } // Sector C -prt_prison,265,154,4 script Prisoner 265CM154#EP161 4_MOONLIGHT,{ - if (checkweight(501,1) == 0) { +prt_prison,265,154,4 script Prisoner 265CM154#EP161C 4_MOONLIGHT,{ + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } @@ -16276,6 +17422,12 @@ prt_prison,265,154,4 script Prisoner 265CM154#EP161 4_MOONLIGHT,{ mes "The prisoner here is gazing around the corners like a hunting lion. You want to get away before you get caught."; close; } + if (BaseLevel < 140) { + mes "[Prisoner 265CM154]"; + mes "Whoa, this is human!"; + mes "I'm sorry to say this but I have to work now. Let me play with you later."; + close; + } switch( isbegin_quest(5431) ) { case 0: mes "[Prisoner 265CM154]"; @@ -16353,7 +17505,7 @@ prt_prison,265,154,4 script Prisoner 265CM154#EP161 4_MOONLIGHT,{ erasequest 5432;// Cleaning is complete. setquest 5433;// [Stand by]Clean Life getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Prisoner 265CM154]"; mes "If you come back again tomorrow and give me a hand, there will be more of this. Come back often!"; close; @@ -16393,7 +17545,7 @@ prt_prison,265,154,4 script Prisoner 265CM154#EP161 4_MOONLIGHT,{ erasequest 5435;// [Repeat]Cleaning is complete. setquest 5433;// [Stand by]Clean Life getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Prisoner 265CM154]"; mes "Now that you finished cleaning for today, let me give you this. Come back tomorrow!"; close; @@ -16417,14 +17569,13 @@ prt_prison,265,154,4 script Prisoner 265CM154#EP161 4_MOONLIGHT,{ // Rubbish heap prt_prison,118,247,4 script Rubbish heap#EP161C01 4_ENERGY_BLACK,{ - if (isbegin_quest(5432) > 0 || isbegin_quest(5435) > 0) - end; - if (isbegin_quest(5431) == 1 || (isbegin_quest(5431) == 2 && isbegin_quest(5434) == 1)) { + if ((isbegin_quest(5431) == 1 && isbegin_quest(5432) == 0) || (isbegin_quest(5434) == 1 && isbegin_quest(5435) == 0)) { mes "Some stuff left around the floor are lumped together."; next; if (select( "Clean them.", "Just leave them." ) == 1) { progressbar "ffff00",2; - if (rand(100) < 75) + .@r = rand(1,100); + if (.@r < 10 || .@r > 30) mes "You're sad but there still are much to clean. Go find something to clean up."; else { mes "You finished cleaning. Report the result."; @@ -16440,6 +17591,20 @@ prt_prison,118,247,4 script Rubbish heap#EP161C01 4_ENERGY_BLACK,{ } end; OnTimer30000: +OnTimer60000: +OnTimer90000: +OnTimer120000: +OnTimer150000: +OnTimer180000: +OnTimer210000: +OnTimer240000: +OnTimer270000: + if (rand(1,2) == 1) { + stopnpctimer; + enablenpc strnpcinfo(0); + } + end; +OnTimer300000: stopnpctimer; enablenpc strnpcinfo(0); end; @@ -16447,7 +17612,7 @@ OnTimer30000: prt_prison,171,247,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C02 4_ENERGY_BLACK prt_prison,181,230,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C03 4_ENERGY_BLACK prt_prison,238,165,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C04 4_ENERGY_BLACK -// +prt_prison,252,132,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C05 4_ENERGY_BLACK prt_prison,232,137,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C06 4_ENERGY_BLACK prt_prison,200,133,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C07 4_ENERGY_BLACK prt_prison,212,107,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C08 4_ENERGY_BLACK @@ -16463,7 +17628,7 @@ prt_prison,160,70,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C17 4_ENE prt_prison,156,87,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C18 4_ENERGY_BLACK prt_prison,140,93,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C19 4_ENERGY_BLACK prt_prison,113,98,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C20 4_ENERGY_BLACK -// +prt_prison,91,101,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C21 4_ENERGY_BLACK prt_prison,112,79,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C22 4_ENERGY_BLACK prt_prison,122,42,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C23 4_ENERGY_BLACK prt_prison,135,127,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C24 4_ENERGY_BLACK @@ -16476,11 +17641,11 @@ prt_prison,188,186,4 duplicate(Rubbish heap#EP161C01) Rubbish heap#EP161C30 4_EN // Sector D prt_prison,243,17,4 script Prisoner 243DV17#EP161D 4_PORING,{ - if (checkweight(501,1) == 0) { + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } - if (isbegin_quest(5415) < 2) {// Restricted Sector + if (isbegin_quest(5415) < 2 || BaseLevel < 140) {// Restricted Sector emotion ET_THINK, playerattached(); emotion ET_THINK; mes "... ... ... ..."; @@ -16498,8 +17663,8 @@ prt_prison,243,17,4 script Prisoner 243DV17#EP161D 4_PORING,{ warp "prt_prison",160,290; end; } - .@r = rand(100); - if (.@r < 10) { + .@r = rand(1,10); + if (.@r == 3) { mes "[Prisoner 243DV17]"; mes "What?! Do you have anything to say to me? Spit it out, then!"; next; @@ -16519,7 +17684,7 @@ prt_prison,243,17,4 script Prisoner 243DV17#EP161D 4_PORING,{ mes "What?! Do you have a problem with me? Be gone now."; close; } - if (.@r < 20) { + if (.@r == 7) { emotion ET_KIK; mes "[Prisoner 243DV17]"; mes "~Giggles~ I suddenly feel better now. Alright, what the heck. I'll send you to the sector you want for 1 Jellopy."; @@ -16578,7 +17743,7 @@ prt_prison,243,17,4 script Prisoner 243DV17#EP161D 4_PORING,{ // Sector E prt_prison,95,72,6 script Prisoner 95EB72#EP161E 4_BAPHOMET,{ - if (checkweight(501,1) == 0) { + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } @@ -16589,6 +17754,11 @@ prt_prison,95,72,6 script Prisoner 95EB72#EP161E 4_BAPHOMET,{ mes "The prisoner is breathing calmly so he must be sleeping."; close; } + if (BaseLevel < 140) { + mes "[Prisoner 95EB72]"; + mes "What a worthless human!"; + close; + } switch( isbegin_quest(5436) ) { case 0: emotion ET_SEXY; @@ -16601,6 +17771,7 @@ prt_prison,95,72,6 script Prisoner 95EB72#EP161E 4_BAPHOMET,{ next; select("Approach closer."); npctalk "~Cringes~", "", bc_self; + sleep2 2000; emotion ET_SWEAT; mes "[Prisoner 95EB72]"; mes "~Evil laughter~ You've got the courage, human!"; @@ -16613,6 +17784,7 @@ prt_prison,95,72,6 script Prisoner 95EB72#EP161E 4_BAPHOMET,{ mes "Well...there is particularly no need to..."; next; npctalk "~Cringes~", "", bc_self; + sleep2 2000; emotion ET_KIK; mes "[Prisoner 95EB72]"; mes "~Evil laughter~"; @@ -16620,6 +17792,7 @@ prt_prison,95,72,6 script Prisoner 95EB72#EP161E 4_BAPHOMET,{ next; select("By the way, didn't you just cringe?"); emotion ET_QUESTION, playerattached(); + sleep2 2000; emotion ET_STARE; mes "[Prisoner 95EB72]"; mes "Wa-hahaha! I think I've got myself a cocky underling."; @@ -16660,9 +17833,9 @@ prt_prison,95,72,6 script Prisoner 95EB72#EP161E 4_BAPHOMET,{ next; completequest 5436;// Finding Lights setquest 5437;// [Stand by]Finding Lights - delitem 6923,1;// Bright Light + delitem 6923,1;// Bright_Lights getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Prisoner 95EB72]"; mes "I promise you a lot more rewards the day when I stand tall in the world again."; close; @@ -16695,9 +17868,9 @@ prt_prison,95,72,6 script Prisoner 95EB72#EP161E 4_BAPHOMET,{ next; erasequest 5438;// [Repeat]Finding Lights setquest 5437;// [Stand by]Finding Lights - delitem 6923,1;// Bright Light + delitem 6923,1;// Bright_Lights getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Prisoner 95EB72]"; mes "Keep this in mind. I promise you a lot more rewards the day when I stand tall in the world again."; close; @@ -16717,7 +17890,7 @@ prt_prison,95,72,6 script Prisoner 95EB72#EP161E 4_BAPHOMET,{ // Torchs prt_prison,146,268,4 script Torch#EP161EB01 CLEAR_NPC,{ - if (checkweight(501,1) == 0) { + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } @@ -16728,19 +17901,32 @@ prt_prison,146,268,4 script Torch#EP161EB01 CLEAR_NPC,{ next; select("Collect the light."); progressbar "ffff00",2; - if (rand(100) < 50) - mes "You carefully collected the light but it scattered."; - else { + .@r = rand(1,100); + if (.@r >= 25 && .@r <= 50) { getitem 6923,1;// Bright Light specialeffect2 EF_LIGHTSPHERE; mes "You carefully collected the light and obtained the bright light."; } + else { + specialeffect2 406; + mes "You carefully collected the light but it scattered."; + } initnpctimer; disablenpc strnpcinfo(0); } close; OnTimer30000: +OnTimer60000: +OnTimer90000: +OnTimer120000: +OnTimer150000: + if (rand(1,2) == 1) { + stopnpctimer; + enablenpc strnpcinfo(0); + } + end; +OnTimer180000: stopnpctimer; enablenpc strnpcinfo(0); end; @@ -16765,8 +17951,8 @@ prt_prison,237,139,4 duplicate(Torch#EP161EB01) Torch#EP161EB18 CLEAR_NPC prt_prison,246,140,4 duplicate(Torch#EP161EB01) Torch#EP161EB19 CLEAR_NPC // Sector F -prt_prison,117,188,4 script Prisoner 117FM188#EP161 4_MISTRESS,{ - if (checkweight(501,1) == 0) { +prt_prison,117,188,4 script Prisoner 117FM188#EP161F 4_MISTRESS,{ + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } @@ -16778,6 +17964,11 @@ prt_prison,117,188,4 script Prisoner 117FM188#EP161 4_MISTRESS,{ mes "The prisoner inside seems to be looking for a servant. I think he saw me but I'll just have to act like I didn't hear him."; close; } + if (BaseLevel < 140) { + mes "[Prisoner 117FM188]"; + mes "Tsk, tsk. Even a servant is supposed to know manners."; + close; + } switch( isbegin_quest(5439) ) { case 0: emotion ET_HNG; @@ -16855,11 +18046,11 @@ prt_prison,117,188,4 script Prisoner 117FM188#EP161 4_MISTRESS,{ mes "[Prisoner 117FM188]"; mes "Good job. Go have a rest until I call you back up."; next; - delitem 6921,20;// Dehumidifier + delitem 6921,20;// Desiccant completequest 5439;// Refreshing Prison Life setquest 5440;// [Stand by]Refreshing Prison Life getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Prisoner 117FM188]"; mes "It's nothing. I don't need it so you take and use it."; close; @@ -16895,11 +18086,11 @@ prt_prison,117,188,4 script Prisoner 117FM188#EP161 4_MISTRESS,{ mes "[Prisoner 117FM188]"; mes "I was actually starting to feel displeased by the dampening air."; next; - delitem 6921,20;// Dehumidifier + delitem 6921,20;// Desiccant erasequest 5441;// [Repeat]Refreshing Prison Life setquest 5440;// [Stand by]Refreshing Prison Life getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Prisoner 117FM188]"; mes "You did a good job getting the humidifier, Noyel."; close; @@ -16924,8 +18115,8 @@ prt_prison,117,188,4 script Prisoner 117FM188#EP161 4_MISTRESS,{ } // Sector G -prt_prison,103,214,4 script Prisoner 103GD214#EP161 4_DARKLORD,{ - if (checkweight(501,1) == 0) { +prt_prison,103,214,4 script Prisoner 103GD214#EP161G 4_DARKLORD,{ + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } @@ -16937,6 +18128,27 @@ prt_prison,103,214,4 script Prisoner 103GD214#EP161 4_DARKLORD,{ mes "The prisoner here is smiling out of his pain. I don't think he's in normal condition. Should I pass him?"; close; } + if (BaseLevel < 140) { + mes "[Prisoner 117FM188]"; + mes "... ... ... ... ..."; + close; + } + + setarray .@flowers[0], + 710, 100, // ID, percent + 6509, 50, + 6510, 50, + 704, 30, + 709, 30, + 703, 30, + 708, 30, + 6511, 10, + 712, 10; + .@size = getarraysize(.@flowers); + for ( .@index = 0; .@index < .@size; .@index += 2 ) { + if (countitem(.@flowers[.@index]) > 0) + break; + } switch( isbegin_quest(5442) ) { case 0: emotion ET_BLABLA; @@ -16992,7 +18204,7 @@ prt_prison,103,214,4 script Prisoner 103GD214#EP161 4_DARKLORD,{ mes "Hurry. ~Grunts~ Darkness inside of me is trying to stomp around. If you don't want to see the world brought to ashes by this darkness, bring me...flowers...Now."; close; case 1: - if (countitem(712) < 1) {// todo search flowers + if (.@flowers[.@index] < 1) { mes "[Prisoner 103GD214]"; mes "~Grunts~ I'll wait here for you. Any flowers would do. Bring me flowers."; close; @@ -17042,11 +18254,11 @@ prt_prison,103,214,4 script Prisoner 103GD214#EP161 4_DARKLORD,{ mes "[Prisoner 103GD214]"; mes "It's true that you've been of help so let me give you one of the things that the followers left for me."; next; - delitem 712,1;// Flower + delitem .@flowers[.@index],1; completequest 5442;// Suppressing Darkness setquest 5443;// [Stand by]Suppressing Darkness getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Prisoner 103GD214]"; mes "~Grunts~ If you don't want to see my darkness drags down the whole world to ashes, you'd better come often and bring me flowers."; close; @@ -17077,7 +18289,7 @@ prt_prison,103,214,4 script Prisoner 103GD214#EP161 4_DARKLORD,{ mes "Please...~Grunts~ Human..."; close; } - if (countitem(712) < 1) {// todo search flowers + if (.@flowers[.@index] < 1) { mes "[Prisoner 103GD214]"; mes "Oh, no. It's getting out of my hand. Before this darkness goes berserk, bring me...flowers...~Grunts~"; close; @@ -17085,8 +18297,8 @@ prt_prison,103,214,4 script Prisoner 103GD214#EP161 4_DARKLORD,{ mes "[Prisoner 103GD214]"; mes "Flower...? ~Grunts~ Darkness should be stable..."; next; - delitem 712,1;// Flower - if (rand(2) == 0) {// todo chance + delitem .@flowers[.@index],1; + if (rand(1,100) > .@flowers[.@index+1]) { specialeffect EF_DEVIL4; specialeffect EF_POISONSMOKE; mes "[Prisoner 103GD214]"; @@ -17101,7 +18313,7 @@ prt_prison,103,214,4 script Prisoner 103GD214#EP161 4_DARKLORD,{ erasequest 5444;// [Repeat]Suppressing Darkness setquest 5443;// [Stand by]Suppressing Darkness getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor specialeffect EF_HEALSP; mes "[Prisoner 103GD214]"; mes "...It's working. Thank you, human. You've been a lot of help, too, this time."; @@ -17132,7 +18344,7 @@ prt_prison,103,214,4 script Prisoner 103GD214#EP161 4_DARKLORD,{ // Sector H prt_prison,55,115,2 script Prisoner 55HK115#EP161H 4_STORMKNIGHT,{ - if (checkweight(501,1) == 0) { + if (checkweight(1301,1) == 0) { mes "- You cannot proceed with the quest since you have too many items. -"; close; } @@ -17143,6 +18355,11 @@ prt_prison,55,115,2 script Prisoner 55HK115#EP161H 4_STORMKNIGHT,{ mes "I wonder the prisoner here may think this prison as some kind of a hotel. He's looking for a manager. I'll just let this one pass."; close; } + if (BaseLevel < 140) { + mes "[Prisoner 55HK115]"; + mes "I would like to talk to the manager, not some normal clerk!"; + close; + } switch( isbegin_quest(5445) ) { case 0: emotion ET_QUESTION; @@ -17192,7 +18409,7 @@ prt_prison,55,115,2 script Prisoner 55HK115#EP161H 4_STORMKNIGHT,{ completequest 5445;// Bothersome Little Thing setquest 5446;// [Stand by]Bothersome Little Thing getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Prisoner 55HK115]"; mes "What in the world are they taking so long? They're slow with poor service...I know my manners as knight so I can't just pick a fight. Alright. Just take this tip."; next; @@ -17207,7 +18424,10 @@ prt_prison,55,115,2 script Prisoner 55HK115#EP161H 4_STORMKNIGHT,{ mes "You've come at the right time, manager."; next; mes "[Prisoner 55HK115]"; - mes "I was putting on a cool pair of shoes but something happened and I broke my toenails."; + if (rand(1,5) == 1) + mes "I was putting on a cool pair of shoes but something happened and I broke my toenails."; + else + mes "That thing you brought me last time was pretty good. I'm impressed by your skinning ability. How about changing your job to skin master?"; next; mes "[Prisoner 55HK115]"; mes "In that spirit, why don't you bring me those 20 Sandpapers again?"; @@ -17225,14 +18445,17 @@ prt_prison,55,115,2 script Prisoner 55HK115#EP161H 4_STORMKNIGHT,{ } if (countitem(6922) < 20) { mes "[Prisoner 55HK115]"; - mes "You can't turn back time once it passes. Hurry up. You have no time to lose."; + if (gettime(DT_MONTH) == 2 && (gettime(DT_DAYOFMONTH) == 24 || gettime(DT_DAYOFMONTH) == 25)) + mes "Rudolph the hero of reindeers said time is gold. I think it applies to humans, too."; + else + mes "You can't turn back time once it passes. Hurry up. You have no time to lose."; close; } delitem 6922,20;// Sandpaper erasequest 5447;// [Repeat]Bothersome Little Thing setquest 5446;// [Stand by]Bothersome Little Thing getexp 700000,500000; - getitem 6919,4;// Honor Token + getitem 6919,4;// TokenOfHonor mes "[Prisoner 55HK115]"; mes "This time, the service is acceptable."; next; @@ -17252,3 +18475,267 @@ prt_prison,55,115,2 script Prisoner 55HK115#EP161H 4_STORMKNIGHT,{ } } } + +// GM NPC +prt_prison,20,20,4 script Underground Dungeon Helper#EP161D 4_PORING,{ + if (callfunc("F_GM_NPC",1854,0,1,9999) < 1) + end; + mes "[Underground Dungeon Helper]"; + mes "Select the service to use."; + next; + switch( select( "Reset Quest", "Individual quest setting", "Reset cooldown." ) ) { + case 1: + mes "[Underground Dungeon Helper]"; + mes "All quests related with the underground dungeon will be reset."; + next; + select("Setting"); + mes "[Underground Dungeon Helper]"; + for ( .@quest_id = 5415; .@quest_id < 5447; ++.@quest_id ) { + if (isbegin_quest(.@quest_id) > 0) + erasequest .@quest_id; + mes "" + .@quest_id + " Delete"; + } + next; + break; + case 2: + mes "[Underground Dungeon Helper]"; + mes "Choose the quest to customize the setting."; + next; + switch( select( "Sector A - To My Beloved Fellow", "Sector B - Lowly Standards", "Sector C - Clean Life", "Sector E - Finding Lights", "Sector F - Refreshing Prison Life", "Sector G - Suppressing Darkness", "Sector H - Bothersome Little Thing" ) ) { + case 1: + mes "[Underground Dungeon Helper]"; + mes "This quest is currently in the state of"; + mes "5425(" + isbegin_quest(5425) + ")/5426(" + checkquest(5426,PLAYTIME) + ")/5427(" + isbegin_quest(5427) + ")"; + next; + switch( select( "Move to the position.", "First Quest", "Right before the reward" ) ) { + case 1: + warp "prt_prison",245,255; + break; + case 2: + if (select( "Complete", "Reset" ) == 1) { + if (isbegin_quest(5425) == 0) + setquest 5425; + if (isbegin_quest(5425) == 1) + completequest 5425; + break; + } + if (isbegin_quest(5425) > 0) + erasequest 5425; + break; + case 3: + mes "[Underground Dungeon Helper]"; + mes "Accept a quest before you customize the setting."; + next; + select("Setting"); + getitem 6925,1; // Prisoner_Letter + break; + } + break; + case 2: + mes "[Underground Dungeon Helper]"; + mes "This quest is currently in the state of"; + mes "5428(" + isbegin_quest(5428) + ")/5429(" + checkquest(5429,PLAYTIME) + ")/5430(" + isbegin_quest(5430) + ")"; + next; + switch( select( "Move to the position.", "First Quest", "Right before the reward" ) ) { + case 1: + warp "prt_prison",265,195; + break; + case 2: + if (select( "Complete", "Reset" ) == 1) { + if (isbegin_quest(5428) == 0) + setquest 5428; + if (isbegin_quest(5428) == 1) + completequest 5428; + break; + } + if (isbegin_quest(5428) > 0) + erasequest 5428; + break; + case 3: + mes "[Underground Dungeon Helper]"; + mes "Accept a quest before you customize the setting."; + next; + select("Setting"); + getitem 6924,20; // Red_Eyes + break; + } + break; + case 3: + mes "[Underground Dungeon Helper]"; + mes "This quest is currently in the state of"; + mes "5431(" + isbegin_quest(5431) + ")/5432(" + isbegin_quest(5432) + ")/5433(" + checkquest(5433,PLAYTIME) + ")/5434(" + isbegin_quest(5434) + ")/5435(" + isbegin_quest(5435) + ")"; + next; + switch( select( "Move to the position.", "First Quest", "Right before the reward" ) ) { + case 1: + warp "prt_prison",255,155; + break; + case 2: + if (select( "Complete", "Reset" ) == 1) { + if (isbegin_quest(5431) == 0) + setquest 5431; + if (isbegin_quest(5431) == 1) + completequest 5431; + if (isbegin_quest(5432) == 0) + setquest 5432; + if (isbegin_quest(5432) == 1) + completequest 5432; + break; + } + if (isbegin_quest(5431) > 0) + erasequest 5431; + if (isbegin_quest(5432) > 0) + erasequest 5432; + break; + case 3: + mes "[Underground Dungeon Helper]"; + mes "Accept a quest before you customize the setting."; + next; + select("Setting"); + if (isbegin_quest(5431) == 1) { + if (isbegin_quest(5432) == 0) + setquest 5432; + } + else { + if (isbegin_quest(5435) == 0) + setquest 5435; + } + break; + } + break; + case 4: + mes "[Underground Dungeon Helper]"; + mes "This quest is currently in the state of"; + mes "5436(" + isbegin_quest(5436) + ")/5437(" + checkquest(5437,PLAYTIME) + ")/5438(" + isbegin_quest(5438) + ")"; + next; + switch( select( "Move to the position.", "First Quest", "Right before the reward" ) ) { + case 1: + warp "prt_prison",105,75; + break; + case 2: + if (select( "Complete", "Reset" ) == 1) { + if (isbegin_quest(5436) == 0) + setquest 5436; + if (isbegin_quest(5436) == 1) + completequest 5436; + break; + } + if (isbegin_quest(5436) > 0) + erasequest 5436; + break; + case 3: + mes "[Underground Dungeon Helper]"; + mes "Accept a quest before you customize the setting."; + next; + select("Setting"); + getitem 6923,1; // Bright_Lights + break; + } + break; + case 5: + mes "[Underground Dungeon Helper]"; + mes "This quest is currently in the state of"; + mes "5439(" + isbegin_quest(5439) + ")/5440(" + checkquest(5440,PLAYTIME) + ")/5441(" + isbegin_quest(5441) + ")"; + next; + switch( select( "Move to the position.", "First Quest", "Right before the reward" ) ) { + case 1: + warp "prt_prison",105,190; + break; + case 2: + if (select( "Complete", "Reset" ) == 1) { + if (isbegin_quest(5439) == 0) + setquest 5439; + if (isbegin_quest(5439) == 1) + completequest 5439; + break; + } + if (isbegin_quest(5439) > 0) + erasequest 5439; + break; + case 3: + mes "[Underground Dungeon Helper]"; + mes "Accept a quest before you customize the setting."; + next; + select("Setting"); + getitem 6921,20; // Desiccant + break; + } + break; + case 6: + mes "[Underground Dungeon Helper]"; + mes "This quest is currently in the state of"; + mes "5442(" + isbegin_quest(5442) + ")/5443(" + checkquest(5443,PLAYTIME) + ")/5444(" + isbegin_quest(5444) + ")"; + next; + switch( select( "Move to the position.", "First Quest", "Right before the reward" ) ) { + case 1: + warp "prt_prison",95,215; + break; + case 2: + if (select( "Complete", "Reset" ) == 1) { + if (isbegin_quest(5442) == 0) + setquest 5442; + if (isbegin_quest(5442) == 1) + completequest 5442; + break; + } + if (isbegin_quest(5442) > 0) + erasequest 5442; + break; + case 3: + mes "[Underground Dungeon Helper]"; + mes "Accept a quest before you customize the setting."; + next; + select("Setting"); + getitem 710,1; // Illusion_Flower + break; + } + break; + case 7: + mes "[Underground Dungeon Helper]"; + mes "This quest is currently in the state of"; + mes "5445(" + isbegin_quest(5445) + ")/5446(" + checkquest(5446,PLAYTIME) + ")/5447(" + isbegin_quest(5447) + ")"; + next; + switch( select( "Move to the position.", "First Quest", "Right before the reward" ) ) { + case 1: + warp "prt_prison",55,125; + break; + case 2: + if (select( "Complete", "Reset" ) == 1) { + if (isbegin_quest(5445) == 0) + setquest 5445; + if (isbegin_quest(5445) == 1) + completequest 5445; + break; + } + if (isbegin_quest(5445) > 0) + erasequest 5445; + break; + case 3: + mes "[Underground Dungeon Helper]"; + mes "Accept a quest before you customize the setting."; + next; + select("Setting"); + getitem 6922,20; // Sandpaper + break; + } + break; + } + break; + case 3: + mes "[Underground Dungeon Helper]"; + mes "Resets the Underground Dungeon cooldown."; + next; + select("Setting"); + setarray .@list[0], + 5426, 5429, 5433, 5437, + 5440, 5443, 5446, 5426; + .@size = getarraysize(.@list); + for ( .@i = 0; .@i < .@size; ++.@i ) { + if (isbegin_quest(.@i) > 0) + erasequest .@i; + } + break; + } + mes "[Underground Dungeon Helper]"; + mes "Complete"; + close; +} diff --git a/npc/re/quests/quests_16_2.txt b/npc/re/quests/quests_16_2.txt index 2313d8bd36..de32d1373c 100644 --- a/npc/re/quests/quests_16_2.txt +++ b/npc/re/quests/quests_16_2.txt @@ -10,7 +10,7 @@ prt_cas_q,29,28,0 script #ep162_evt_npc_con HIDDEN_WARP_NPC,2,2,{ end; OnTouch: - if (banquet_main_quest < 18) // pre-req : access to room of consciousness (first time) + if (ep16_royal < 17) // pre-req : access to room of consciousness (first time) end; if (terra_gloria_main == 0) { cloakoffnpc "Nihil M. Heine#ep162_01", getcharid(0); @@ -35,7 +35,7 @@ prt_cas_q,23,33,2 duplicate(dummy_cloaked_npc) Crux#ep162_03 4_EP16_CRUX prt_cas_q,23,32,3 duplicate(dummy_cloaked_npc) Kronecker G. Heine#ep162 4_EP16_GRANZ prt_cas_q,21,39,3 script Nihil M. Heine#ep162_01 4_EP16_NIHIL,{ - if (banquet_main_quest < 18) // pre-req : access to room of consciousness (first time) + if (ep16_royal < 17) // pre-req : access to room of consciousness (first time) end; if (terra_gloria_main == 0) { cutin "ep16_nihi_miseria_heine02.bmp",2; @@ -340,7 +340,7 @@ prt_cas_q,21,39,3 script Nihil M. Heine#ep162_01 4_EP16_NIHIL,{ } prt_cas_q,23,36,3 script Spica Nerius#ep162_01 4_EP16_SPICA,{ - if (banquet_main_quest < 18) + if (ep16_royal < 17) end; if (terra_gloria_main == 1) { cutin "ep16_spica_nerius01.bmp",1; diff --git a/npc/re/warps/cities/prontera.txt b/npc/re/warps/cities/prontera.txt index e43000dcc3..7ca323b132 100644 --- a/npc/re/warps/cities/prontera.txt +++ b/npc/re/warps/cities/prontera.txt @@ -6,94 +6,161 @@ //= 1.0 Prontera castle map changed in ep16.1 [Capuche] //============================================================ -//= Prontera City ============================================ -prontera,156,358,0 warp prt_cas_B#prt_cas_A 1,1,prt_cas,216,146 +prt_lib_q,9,25,0 script lib_q_to_pprt WARPNPC,1,1,{ + end; +OnTouch: + if (ep16_royal < 21) { + mes "There are more to find out."; + mes "Go back to Nillem."; + close; + } + warp "prt_q",155,354; + end; +} -//= Prontera Castle =========================================== -prt_cas,216,142,0 warp prt_cas_A#prt_cas_B 1,1,prontera,156,354 +prt_cas,152,163,0 script way_to_qroom_L_qroom_L_to_way WARPNPC,1,1,{ + end; +OnTouch: + if (ep16_royal == 0) { + npctalk "That way is a royal villa for VIPs. Outsiders cannot access the place.", "Royal Guardian Knight#02", bc_self; + setpcblock PCBLOCK_NPC, true; + sleep2 3000; + setpcblock PCBLOCK_NPC, false; + npctalk "If you are invited, a severnt should be there to greet you. Please be guided officially.", "Royal Guardian Knight#02", bc_self; + end; + } + warp "prt_cas_q",150,8; + end; +} -prt_cas,82,175,0 warp prt_cas_C#prt_cas_D 1,1,prt_gld,159,30 +prt_cas,278,163,0 script way_to_qroom_R_qroom_R_to_way WARPNPC,1,1,{ + end; +OnTouch: + if (ep16_royal == 0) { + npctalk "That way is a royal villa for VIPs. Outsiders cannot access the place.", "Royal Guardian Knight#03", bc_self; + setpcblock PCBLOCK_NPC, true; + sleep2 3000; + setpcblock PCBLOCK_NPC, false; + npctalk "If you are invited, a severnt should be there to greet you. Please be guided officially.", "Royal Guardian Knight#03", bc_self; + end; + } + warp "prt_cas_q",135,119; + end; +} -// castle left side -prt_cas_q,154,8,0 warp prt_cas_F#prt_cas_E 1,1,prt_cas,156,163 +prt_cas_q,130,32,0 script qroom_heine_in_qroom_heine_out WARPNPC,1,1,{ + end; +OnTouch: + if (ep16_royal > 7 && ep16_royal < 16) { + mes "It is locked."; + close; + } + warp "prt_cas_q",30,78; + end; +} -prt_cas,164,177,0 warp prt_cas_G#prt_cas_H 1,1,prt_cas,54,156 -prt_cas,54,152,0 warp prt_cas_H#prt_cas_G 1,1,prt_cas,164,172 +prt_cas_q,130,56,0 script qroom_nerius_in_qroom_nerius_out WARPNPC,1,1,{ + end; +OnTouch: + if (ep16_royal > 2 && ep16_royal < 15 && ep16_royal != 7) { + mes "It is locked."; + close; + } + if (ep16_royal == 15) { + if (isbegin_quest(7697) < 1) { + mes "Let's first reply to the servant that the invitation will be accepted."; + close; + } + } + warp "prt_cas_q",30,128; + end; +} -prt_cas,197,148,0 warp prt_cas_I#prt_cas_J 1,1,prt_cas,31,117 -prt_cas,31,120,0 warp prt_cas_J#prt_cas_I 1,1,prt_cas,197,152 +prt_lib,9,24,0 script lib_to_prt_prison WARPNPC,1,1,{ + end; +OnTouch_: + if (ep16_royal > 13) + warp "prt_pri00",60,127; + else { + mes "[Guardian Knight]"; + mes "You cannot go that way."; + close2; + warp "prt_lib",60,61; + } + end; +} -prt_cas,178,148,0 warp prt_cas_K#prt_cas_L 1,1,prt_cas,27,43 -prt_cas,27,47,0 warp prt_cas_L#prt_cas_K 1,1,prt_cas,178,152 +prt_cas,188,258,0 script prt_cas_to_prt_pri00 WARPNPC,1,1,{ + end; +OnTouch_: + if (ep16_royal >= 2) + warp "prt_pri00",54,134; + else { + npctalk "You shouldn't enter the place like that.", "Guardian Knight#ep16_prigate01", bc_self; + setpcblock PCBLOCK_NPC, true; + sleep2 2000; + setpcblock PCBLOCK_NPC, false; + warp "prt_cas",182,258; + } + end; +} -// Rooms -// Belle -prt_cas_q,130,8,0 warp prt_cas_M#prt_cas_N 1,1,prt_cas_q,30,28 -prt_cas_q,34,28,0 warp prt_cas_N#prt_cas_M 1,1,prt_cas_q,134,8 +prt_pri00,54,139,0 warp prt_pri_to_prt_cas 1,1,prt_cas,182,258 -// Heine -prt_cas_q,34,78,0 warp prt_cas_O#prt_cas_P 1,1,prt_cas_q,134,32 +prt_prison,155,290,0 warp2 prt_prison_OUT 2,2,prt_pri00,50,120 -// Nerius -// it's locked -prt_cas_q,34,128,0 warp prt_cas_Q#prt_cas_R 1,1,prt_cas_q,134,56 +prt_q,155,358,0 warp #prt_q_tp_lib_q 1,1,prt_lib_q,89,43 -// Walther -prt_cas_q,130,80,0 warp prt_cas_S#prt_cas_T 1,1,prt_cas_q,30,178 -prt_cas_q,34,178,0 warp prt_cas_T#prt_cas_S 1,1,prt_cas_q,134,80 +prt_cas_q,34,78,0 warp qroom_heine_out_qroom_heine_in 1,1,prt_cas_q,134,32 +prt_cas_q,154,8,0 warp qroom_L_to_way_way_to_qroom_L 1,1,prt_cas,156,163 +prt_cas_q,132,119,0 warp qroom_R_to_way_way_to_qroom_R 1,1,prt_cas,274,163 +prt_cas_q,130,8,0 warp qroom_vip_in_qroom_vip_out 1,1,prt_cas_q,30,28 +prt_cas_q,34,28,0 warp qroom_vip_out_qroom_vip_in 1,1,prt_cas_q,134,8 -// castle right side -prt_cas_q,132,119,0 warp prt_cas_V#prt_cas_U 1,1,prt_cas,274,163 - -prt_cas,268,176,0 warp prt_cas_W#prt_cas_X 1,1,prt_cas,110,156 -prt_cas,110,152,0 warp prt_cas_X#prt_cas_W 1,1,prt_cas,268,172 - -prt_cas,253,148,0 warp prt_cas_Y#prt_cas_Z 1,1,prt_cas,174,37 -prt_cas,174,40,0 warp prt_cas_Z#prt_cas_Y 1,1,prt_cas,253,152 - -prt_cas,235,148,0 warp prt_cas_1#prt_cas_2 1,1,prt_cas,174,104 -prt_cas,174,108,0 warp prt_cas_2#prt_cas_1 1,1,prt_cas,235,152 - -// Rooms -// Wigner -prt_cas_q,153,119,0 warp prt_cas_3#prt_cas_4 1,1,prt_cas_q,78,21 -prt_cas_q,74,21,0 warp prt_cas_4#prt_cas_3 1,1,prt_cas_q,149,119 - -// Richards -prt_cas_q,153,143,0 warp prt_cas_5#prt_cas_6 1,1,prt_cas_q,78,77 -prt_cas_q,74,77,0 warp prt_cas_6#prt_cas_5 1,1,prt_cas_q,149,143 - -// Geoborg -prt_cas_q,153,167,0 warp prt_cas_7#prt_cas_8 1,1,prt_cas_q,78,131 -prt_cas_q,74,131,0 warp prt_cas_8#prt_cas_7 1,1,prt_cas_q,149,167 - -// Roegenburg -prt_cas_q,153,191,0 warp prt_cas_9#prt_cas_10 1,1,prt_cas_q,78,189 -prt_cas_q,74,189,0 warp prt_cas_10#prt_cas_9 1,1,prt_cas_q,149,191 - -// Hall -prt_cas,216,184,0 warp prt_cas_11#prt_cas_12 1,1,prt_cas,93,212 -prt_cas,93,208,0 warp prt_cas_12#prt_cas_11 1,1,prt_cas,216,180 - -// Dinner room -prt_cas,54,217,0 warp prt_cas_13#prt_cas_14 1,1,prt_cas,388,137 -prt_cas,392,137,0 warp prt_cas_14#prt_cas_13 1,1,prt_cas,58,217 - -// Kitchen -prt_cas,41,275,0 warp prt_cas_15#prt_cas_16 1,1,prt_cas,320,182 -prt_cas,320,178,0 warp prt_cas_16#prt_cas_15 1,1,prt_cas,41,271 - -// Library -prt_cas,130,218,0 warp prt_cas_17#prt_cas_18 1,1,prt_cas,303,48 -prt_cas,300,48,0 warp prt_cas_18#prt_cas_17 1,1,prt_cas,127,218 - -// Prison -prt_pri00,54,139,0 warp prt_cas_19#prt_cas_20 1,1,prt_cas,182,258 - -prt_prison,155,290,0 warp2 prt_cas_21#prt_cas_22 2,2,prt_pri00,50,120 - -prt_cas,174,234,0 warp prt_cas_23#prt_cas_24 1,1,prt_cas,247,107 -prt_cas,247,111,0 warp prt_cas_24#prt_cas_23 1,1,prt_cas,174,237 - -// Prontera invasion -prt_q,155,358,0 warp prt_cas_25#prt_cas_26 1,1,prt_lib_q,89,43 +prt_cas_q,34,128,0 warp qroom_nerius_out_qroom_nerius_in 1,1,prt_cas_q,134,56 +prt_cas_q,130,80,0 warp qroom_valter_in_qroom_balter_out 1,1,prt_cas_q,30,178 +prt_cas_q,34,178,0 warp qroom_balter_out_qroom_valter_in 1,1,prt_cas_q,134,80 +prt_cas_q,153,119,0 warp qroom_wigner_in_qroom_wigner_out 1,1,prt_cas_q,78,21 +prt_cas_q,74,21,0 warp qroom_wigner_out_qroom_wigner_in 1,1,prt_cas_q,149,119 +prt_cas_q,153,143,0 warp qroom_richard_in_qroom_richard_out 1,1,prt_cas_q,78,77 +prt_cas_q,74,77,0 warp qroom_richard_out_qroom_richard_in 1,1,prt_cas_q,149,143 +prt_cas_q,153,167,0 warp qroom_geob_in_qroom_geob_out 1,1,prt_cas_q,78,131 +prt_cas_q,74,131,0 warp qroom_geob_out_qroom_geob_in 1,1,prt_cas_q,149,167 +prt_cas_q,153,191,0 warp qroom_lugen_in_qroom_lugen_out 1,1,prt_cas_q,78,189 +prt_cas_q,74,189,0 warp qroom_lugen_out_qroom_lugen_in 1,1,prt_cas_q,149,191 +prt_cas,216,184,0 warp mainhall_in_mainhall_out 1,1,prt_cas,93,212 +prt_cas,93,208,0 warp mainhall_out_mainhall_in 1,1,prt_cas,216,180 +prt_cas,197,148,0 warp guestroom_l1_in_guestroom_l1 1,1,prt_cas,31,117 +prt_cas,31,120,0 warp guestroom_l1_guestroom_l1_in 1,1,prt_cas,197,152 +prt_cas,178,148,0 warp guestroom_l2_in_guestroom_l2 1,1,prt_cas,27,43 +prt_cas,27,47,0 warp guestroom_l2_guestroom_l2_in 1,1,prt_cas,178,152 +prt_cas,235,148,0 warp guestroom_r1_in_guestroom_r1 1,1,prt_cas,174,104 +prt_cas,174,108,0 warp guestroom_r1_guestroom_r1_in 1,1,prt_cas,235,152 +prt_cas,253,148,0 warp guestroom_r2_in_guestroom_r2 1,1,prt_cas,174,37 +prt_cas,174,40,0 warp guestroom_r2_guestroom_r2_in 1,1,prt_cas,253,152 +prt_cas,164,177,0 warp way_up_L_way_down_L 1,1,prt_cas,54,156 +prt_cas,54,152,0 warp way_down_L_way_up_L 1,1,prt_cas,164,172 +prt_cas,268,176,0 warp way_up_R_way_down_R 1,1,prt_cas,110,156 +prt_cas,110,152,0 warp way_down_R_way_up_R 1,1,prt_cas,268,172 +prt_cas,82,175,0 warp way_to_gld_gld_to_cas 1,1,prt_gld,159,30 +prt_gld,159,24,0 warp gld_to_cas_way_to_gld 1,1,prt_cas,82,171 +prt_cas,130,218,0 warp library_in_library_out 1,1,prt_cas,303,48 +prt_cas,300,48,0 warp library_out_library_in 1,1,prt_cas,127,218 +prt_cas,174,234,0 warp cruroom_in_cruroom_out 1,1,prt_cas,247,107 +prt_cas,247,111,0 warp cruroom_out_cruroom_in 1,1,prt_cas,174,237 +prt_cas,41,275,0 warp cuisine_in_cuisine_out 1,1,prt_cas,320,182 +prt_cas,320,178,0 warp cuisine_out_cuisine_in 1,1,prt_cas,41,271 +prt_cas,54,217,0 warp dining_in_dining_out 1,1,prt_cas,388,137 +prt_cas,392,137,0 warp dining_out_dining_in 1,1,prt_cas,58,217 +prt_cas,19,342,0 warp queen_room_in_queen_room_out 1,1,prt_cas,269,313 +prt_cas,273,313,0 warp queen_room_out_queen_room_in 1,1,prt_cas,23,342 +prt_cas,174,342,0 warp king_room_in_king_room_out 1,1,prt_cas,322,336 +prt_cas,318,336,0 warp king_room_out_king_room_in 1,1,prt_cas,170,342 +prt_cas,48,330,0 warp queen_office_in_queein_office_out 1,1,prt_cas,251,242 +prt_cas,251,246,0 warp queein_office_out_queen_office_in 1,1,prt_cas,48,334 +prt_cas,146,330,0 warp king_office_in_king_office_out 1,1,prt_cas,309,288 +prt_cas,309,291,0 warp king_office_out_king_office_in 1,1,prt_cas,146,334 +prt_cas,254,347,0 warp garden_in_garden_out 1,1,prt_cas,96,18 +prt_cas,96,14,0 warp garden_out_garden_in 1,1,prt_cas,254,343 +prt_cas,216,142,0 warp cas_out_prt_to_cas 1,1,prontera,156,354 +prontera,156,358,0 warp prt_to_cas_cas_out 1,1,prt_cas,216,146 diff --git a/sql-files/item_db_re_etc.sql b/sql-files/item_db_re_etc.sql index d7ba96739e..5714737b05 100644 --- a/sql-files/item_db_re_etc.sql +++ b/sql-files/item_db_re_etc.sql @@ -2094,22 +2094,22 @@ REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,` REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6916,'Piece_Of_Soul_Monkey','Piece Of Soul Monkey','Etc',10,100,true,true,true,true,true,true,true); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6917,'Piece_Of_Soul_Chicken','Piece Of Soul Chicken','Etc',10,100,true,true,true,true,true,true,true); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6919,'TokenOfHonor','Honor Token','Etc',10,100,true,true,true,true,true,true,true); -REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6920,'Rune_Magic_Powder','Rune Magic Powder','Etc',10,10,100,true,true,true,true,true,true); -REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`flag_buyingstore`) VALUES (6921,'Dehumidifiers','Dehumidifiers','Etc',10,10,true); +REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6920,'RuneMagicPowder','Rune Magic Powder','Etc',10,10,100,true,true,true,true,true,true); +REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`flag_buyingstore`) VALUES (6921,'Desiccant','Dehumidifiers','Etc',10,10,true); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`flag_buyingstore`) VALUES (6922,'Sandpaper','Sandpaper','Etc',10,10,true); -REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6923,'Bright_Fire_Lights','Bright Fire Lights','Etc',10,10,100,true,true,true,true,true,true,true); -REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`flag_buyingstore`) VALUES (6924,'Red_Eye','Red Eye','Etc',10,10,true); -REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6925,'Letter_Of_Prisoner','Letter Of Prisoner','Etc',10,100,true,true,true,true,true,true,true); +REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6923,'Bright_Lights','Bright Fire Lights','Etc',10,10,100,true,true,true,true,true,true,true); +REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`flag_buyingstore`) VALUES (6924,'Red_Eyes','Red Eye','Etc',10,10,true); +REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6925,'Prisoner_Letter','Letter Of Prisoner','Etc',10,100,true,true,true,true,true,true,true); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6926,'Midgards_Histories','Rune-Midgarts History Book','Etc',10,100,true,true,true,true,true,true,true); -REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6927,'Stone_That_Contained_Sea','Stone That Contained Sea','Etc',10,100,true,true,true,true,true,true,true); -REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6928,'Poring_Scourer','Poring Scourer','Etc',10,100,true,true,true,true,true,true,true); -REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6929,'Letter_With_Stamped_Seal','Letter With Stamped Seal','Etc',10,100,true,true,true,true,true,true,true); -REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6930,'Samples_New_Business_Items','Samples New Business Items','Etc',10,100,true,true,true,true,true,true,true); +REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6927,'Filled_With_SeaStones','Stone That Contained Sea','Etc',10,100,true,true,true,true,true,true,true); +REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6928,'Poring_Loofah','Poring Scourer','Etc',10,100,true,true,true,true,true,true,true); +REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6929,'Letters_Stamped_Seal','Letter With Stamped Seal','Etc',10,100,true,true,true,true,true,true,true); +REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6930,'Biz_Items_Sample','Samples New Business Items','Etc',10,100,true,true,true,true,true,true,true); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6931,'Secret_Documents','Secret Documents','Etc',10,100,true,true,true,true,true,true,true); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6932,'Rare_Book','Rare Book','Etc',10,100,true,true,true,true,true,true,true); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6933,'Banquet_Invitation_Letter','Banquet Invitation Letter','Etc',10,100,true,true,true,true,true,true,true); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6934,'Magnificent_Dish','Magnificent Dish','Etc',10,1000,100,true,true,true,true,true,true,true); -REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6935,'Advanced_Dish','Advanced Dish','Etc',10,100,true,true,true,true,true,true,true); +REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`) VALUES (6935,'Luxurious_Dish','High-Class Dish','Etc',10,100,true,true,true,true,true,true,true); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`flag_buyingstore`) VALUES (6936,'Cold_Core','Cold Core','Etc',10,10,true); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`flag_buyingstore`) VALUES (6937,'Silicone_Shell','Silicone Shell','Etc',10,10,true); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`flag_buyingstore`) VALUES (6938,'Hedgehog_Picks','Hedgehog Picks','Etc',10,10,true); diff --git a/sql-files/item_db_re_usable.sql b/sql-files/item_db_re_usable.sql index 3d3770ddce..800bbe6436 100644 --- a/sql-files/item_db_re_usable.sql +++ b/sql-files/item_db_re_usable.sql @@ -3209,7 +3209,7 @@ REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,` REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nosell`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`,`script`) VALUES (22895,'Limited_2015_Status_Initialization_Volume','(Limited)2015 Status Initialization Volume','Usable',20,100,true,true,true,true,true,true,true,true,'/*Works like item 6320, can reset up to 3x within 1 hour*/'); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nosell`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`,`script`) VALUES (22896,'Limited_Old_Status_Initialization_Volume','(Limited)Old Status Initialization Volume','Usable',20,100,true,true,true,true,true,true,true,true,'/*Works like item 6320, can reset up to 3x within 1 hour*/'); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`script`) VALUES (22899,'DowntownMap','Parchment City','Usable',20,'itemskill "AL_INCAGI",1;\nheal -15,0;'); -REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`,`script`) VALUES (22901,'Question_Old_Blue_Box','Mysterious Blue Box','Usable',20,100,true,true,true,true,true,true,true,'callfunc("F_Mysterious_box");'); +REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nocart`,`trade_nostorage`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`,`script`) VALUES (22901,'BlueboxOfQuestions','Mysterious Blue Box','Usable',20,100,true,true,true,true,true,true,true,'callfunc("F_Mysterious_box");'); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`trade_override`,`trade_nodrop`,`trade_notrade`,`trade_nosell`,`trade_nocart`,`trade_noguildstorage`,`trade_nomail`,`trade_noauction`,`script`) VALUES (22902,'Sealed_Card_Album_Scroll_II','Sealed Card Album Scroll II','Usable',20,10,100,true,true,true,true,true,true,true,'getitem callfunc("F_Rand",6238,6239,17474,22829,24243,24244,24245),1;'); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`equip_level_min`,`script`) VALUES (22905,'Enchant_Stone_Box6','Costume Enchant Stone Box 6','Cash',10,10,1,'getgroupitem(IG_Enchant_Stone_Box6);'); REPLACE INTO `item_db_re` (`id`,`name_aegis`,`name_english`,`type`,`price_buy`,`weight`,`equip_level_min`,`script`) VALUES (22953,'Enchant_Stone_Box7','Costume Enchant Stone Box 7','Cash',10,10,1,'getgroupitem(IG_Enchant_Stone_Box7);'); diff --git a/sql-files/mob_db_re.sql b/sql-files/mob_db_re.sql index a1ca46f979..a25f365d0f 100644 --- a/sql-files/mob_db_re.sql +++ b/sql-files/mob_db_re.sql @@ -2090,9 +2090,9 @@ REPLACE INTO `mob_db_re` (`id`,`name_aegis`,`name_english`,`name_japanese`,`leve REPLACE INTO `mob_db_re` (`id`,`name_aegis`,`name_english`,`name_japanese`,`level`,`hp`,`attack`,`attack2`,`defense`,`magic_defense`,`str`,`agi`,`vit`,`int`,`dex`,`luk`,`attack_range`,`skill_range`,`chase_range`,`size`,`race`,`element`,`element_level`,`walk_speed`,`attack_delay`,`attack_motion`,`damage_motion`,`ai`,`class`,`mode_canmove`,`mode_mvp`,`mvpdrop1_item`,`mvpdrop1_rate`,`mvpdrop2_item`,`mvpdrop2_rate`,`mvpdrop3_item`,`mvpdrop3_rate`,`drop1_item`,`drop1_rate`,`drop2_item`,`drop2_rate`,`drop3_item`,`drop3_rate`,`drop4_item`,`drop4_rate`,`drop4_nosteal`) VALUES (3254,'T_W_O','T_W_O','T_W_O',165,48000000,3955,196,158,134,90,141,7,87,267,70,3,10,12,'Large','Demon','Dark',3,150,1250,500,350,'10','Boss',true,true,'Questioned_Parts',5000,'Old_Violet_Box',5000,'Old_Violet_Box',5000,'Test_Reagent',3000,'Spanner',500,'Old_Steel_Plate',2000,'T_W_O_Card',1,true); REPLACE INTO `mob_db_re` (`id`,`name_aegis`,`name_english`,`name_japanese`,`level`,`hp`,`base_exp`,`job_exp`,`attack`,`attack2`,`defense`,`magic_defense`,`str`,`agi`,`vit`,`int`,`dex`,`luk`,`attack_range`,`skill_range`,`chase_range`,`size`,`race`,`element`,`element_level`,`walk_speed`,`attack_delay`,`attack_motion`,`damage_motion`,`ai`,`mode_canmove`) VALUES (3255,'GHOUL_H','Smelly Ghoul','Smelly Ghoul',155,178652,10233,10598,2235,216,99,55,98,55,61,22,133,2,1,10,12,'Small','Plant','Wind',1,200,2050,500,660,'10',true); REPLACE INTO `mob_db_re` (`id`,`name_aegis`,`name_english`,`name_japanese`,`level`,`hp`,`base_exp`,`job_exp`,`attack`,`attack2`,`defense`,`magic_defense`,`str`,`agi`,`vit`,`int`,`dex`,`luk`,`attack_range`,`skill_range`,`chase_range`,`size`,`race`,`element`,`element_level`,`walk_speed`,`attack_delay`,`attack_motion`,`damage_motion`,`ai`,`mode_canmove`) VALUES (3256,'ZOMBIE_H','Smelly Zombie','Smelly Zombie',148,134615,6859,6903,1995,450,91,42,76,53,54,21,125,3,1,10,12,'Small','Formless','Neutral',3,220,2155,960,480,'10',true); -REPLACE INTO `mob_db_re` (`id`,`name_aegis`,`name_english`,`name_japanese`,`level`,`hp`,`base_exp`,`job_exp`,`attack`,`attack2`,`defense`,`magic_defense`,`str`,`agi`,`vit`,`int`,`dex`,`luk`,`attack_range`,`skill_range`,`chase_range`,`size`,`race`,`element`,`element_level`,`walk_speed`,`attack_delay`,`attack_motion`,`damage_motion`,`ai`,`drop1_item`,`drop1_rate`,`drop1_nosteal`,`drop2_item`,`drop2_rate`,`drop2_nosteal`) VALUES (3442,'FROZENWOLF','Frozen Wolf','Frozen Wolf',140,80000,5000,5000,1000,1000,50,50,100,80,100,100,100,50,1,10,12,'Medium','Brute','Water',1,200,1120,420,432,'04','Dehumidifiers',2000,true,'Frozenwolf_Card',1,true); +REPLACE INTO `mob_db_re` (`id`,`name_aegis`,`name_english`,`name_japanese`,`level`,`hp`,`base_exp`,`job_exp`,`attack`,`attack2`,`defense`,`magic_defense`,`str`,`agi`,`vit`,`int`,`dex`,`luk`,`attack_range`,`skill_range`,`chase_range`,`size`,`race`,`element`,`element_level`,`walk_speed`,`attack_delay`,`attack_motion`,`damage_motion`,`ai`,`drop1_item`,`drop1_rate`,`drop1_nosteal`,`drop2_item`,`drop2_rate`,`drop2_nosteal`) VALUES (3442,'FROZENWOLF','Frozen Wolf','Frozen Wolf',140,80000,5000,5000,1000,1000,50,50,100,80,100,100,100,50,1,10,12,'Medium','Brute','Water',1,200,1120,420,432,'04','Desiccant',2000,true,'Frozenwolf_Card',1,true); REPLACE INTO `mob_db_re` (`id`,`name_aegis`,`name_english`,`name_japanese`,`level`,`hp`,`base_exp`,`job_exp`,`attack`,`attack2`,`defense`,`magic_defense`,`str`,`agi`,`vit`,`int`,`dex`,`luk`,`attack_range`,`skill_range`,`chase_range`,`size`,`race`,`element`,`element_level`,`walk_speed`,`attack_delay`,`attack_motion`,`damage_motion`,`ai`,`drop1_item`,`drop1_rate`,`drop1_nosteal`,`drop2_item`,`drop2_rate`,`drop2_nosteal`) VALUES (3443,'TAFFY','Taffy','Taffy',145,100000,6000,6000,1500,1500,125,47,100,80,100,100,100,50,1,10,12,'Medium','Brute','Earth',1,200,1604,1344,2016,'17','Sandpaper',2000,true,'Tappy_Card',1,true); -REPLACE INTO `mob_db_re` (`id`,`name_aegis`,`name_english`,`name_japanese`,`level`,`hp`,`base_exp`,`job_exp`,`attack`,`attack2`,`defense`,`magic_defense`,`str`,`agi`,`vit`,`int`,`dex`,`luk`,`attack_range`,`skill_range`,`chase_range`,`size`,`race`,`element`,`element_level`,`walk_speed`,`attack_delay`,`attack_motion`,`damage_motion`,`ai`,`drop1_item`,`drop1_rate`,`drop1_nosteal`,`drop2_item`,`drop2_rate`,`drop2_nosteal`) VALUES (3444,'WATCHER','Watcher','Watcher',145,120000,7000,7000,1400,1400,125,47,100,80,100,100,80,50,6,10,12,'Small','Formless','Wind',1,190,576,1344,480,'04','Red_Eye',2000,true,'Watcher_Card',1,true); +REPLACE INTO `mob_db_re` (`id`,`name_aegis`,`name_english`,`name_japanese`,`level`,`hp`,`base_exp`,`job_exp`,`attack`,`attack2`,`defense`,`magic_defense`,`str`,`agi`,`vit`,`int`,`dex`,`luk`,`attack_range`,`skill_range`,`chase_range`,`size`,`race`,`element`,`element_level`,`walk_speed`,`attack_delay`,`attack_motion`,`damage_motion`,`ai`,`drop1_item`,`drop1_rate`,`drop1_nosteal`,`drop2_item`,`drop2_rate`,`drop2_nosteal`) VALUES (3444,'WATCHER','Watcher','Watcher',145,120000,7000,7000,1400,1400,125,47,100,80,100,100,80,50,6,10,12,'Small','Formless','Wind',1,190,576,1344,480,'04','Red_Eyes',2000,true,'Watcher_Card',1,true); REPLACE INTO `mob_db_re` (`id`,`name_aegis`,`name_english`,`name_japanese`,`level`,`hp`,`attack`,`attack2`,`defense`,`str`,`agi`,`vit`,`int`,`dex`,`luk`,`attack_range`,`skill_range`,`chase_range`,`size`,`race`,`element`,`element_level`,`walk_speed`,`attack_delay`,`attack_motion`,`damage_motion`,`ai`,`drop1_item`,`drop1_rate`,`drop1_nosteal`) VALUES (3445,'P_ARCHER_SKELETON','Enchanted Archer Skelet','Enchanted Archer Skelet',114,10000,200,100,20,20,60,30,60,150,30,14,10,12,'Medium','Undead','Undead',3,300,1152,864,576,'04','P_Archer_Skeleton_Card',1,true); REPLACE INTO `mob_db_re` (`id`,`name_aegis`,`name_english`,`name_japanese`,`level`,`hp`,`attack`,`attack2`,`defense`,`magic_defense`,`str`,`agi`,`vit`,`int`,`dex`,`luk`,`attack_range`,`skill_range`,`chase_range`,`size`,`race`,`element`,`element_level`,`walk_speed`,`attack_delay`,`attack_motion`,`damage_motion`,`ai`,`drop1_item`,`drop1_rate`,`drop1_nosteal`) VALUES (3446,'P_SKELETON','Enchanted Skeleton','Enchanted Skeleton',114,10000,200,200,20,20,80,60,30,120,90,30,1,10,12,'Medium','Undead','Undead',3,250,1440,528,576,'04','P_Skeleton_Card',1,true); REPLACE INTO `mob_db_re` (`id`,`name_aegis`,`name_english`,`name_japanese`,`level`,`hp`,`attack`,`attack2`,`defense`,`magic_defense`,`str`,`agi`,`vit`,`int`,`dex`,`luk`,`attack_range`,`skill_range`,`chase_range`,`size`,`race`,`element`,`element_level`,`walk_speed`,`attack_delay`,`attack_motion`,`damage_motion`,`ai`,`drop1_item`,`drop1_rate`,`drop1_nosteal`) VALUES (3447,'P_SOLDIER_SKELETON','Enchanted Soldier Skele','Enchanted Soldier Skele',115,20000,200,100,20,20,120,60,30,60,90,30,1,10,12,'Medium','Undead','Undead',3,250,1440,576,432,'04','P_Soldier_Skeleton_Card',1,true); diff --git a/sql-files/upgrades/upgrade_20210308.sql b/sql-files/upgrades/upgrade_20210308.sql new file mode 100644 index 0000000000..bb543d4af2 --- /dev/null +++ b/sql-files/upgrades/upgrade_20210308.sql @@ -0,0 +1,39 @@ +-- 16.1 official variables +UPDATE `char_reg_num` SET `key` = 'ep16_royal' WHERE `key` = 'banquet_main_quest' AND `value` < 16; +UPDATE `char_reg_num` SET `key` = 'ep16_royal', `value` = `value` - 1 WHERE `key` = 'banquet_main_quest' AND `value` < 20; +UPDATE `char_reg_num` SET `key` = 'ep16_royal', `value` = `value` - 2 WHERE `key` = 'banquet_main_quest' AND `value` < 26; +UPDATE `char_reg_num` SET `key` = 'ep16_royal', `value` = 25 WHERE `key` = 'banquet_main_quest' AND `value` > 25; + +DELETE FROM `char_reg_num` WHERE `key` = 'banquet_nerius_quest'; +DELETE FROM `char_reg_num` WHERE `key` = 'banquet_heine_quest'; +DELETE FROM `char_reg_num` WHERE `key` = 'banquet_richard_quest'; + +UPDATE `char_reg_num` SET `key` = 'ep16_wal' WHERE `key` = 'banquet_walther_quest' AND `value` < 2; +UPDATE `char_reg_num` SET `key` = 'ep16_wal', `value` = `value` - 1 WHERE `key` = 'banquet_walther_quest' AND `value` > 1; +UPDATE `char_reg_num` SET `key` = 'ep16_lug' WHERE `key` = 'banquet_roegenburg_quest'; +UPDATE `char_reg_num` SET `key` = 'ep16_gaobs' WHERE `key` = 'banquet_geoborg_quest'; + +UPDATE `char_reg_num` SET `key` = 'ep16_wig' WHERE `key` = 'banquet_wigner_quest' AND `value` < 5; +UPDATE `char_reg_num` SET `key` = 'ep16_wig', `value` = `value` + 5 WHERE `key` = 'banquet_wigner_quest' AND `value` > 5; +UPDATE `char_reg_num` c, `quest` q SET c.`key` = 'ep16_wig', c.`value` = 10 +WHERE c.`key` = 'banquet_wigner_quest' AND c.`value` = 5 AND q.`quest_id` = 14482 AND q.`state` = 1; +UPDATE `char_reg_num` c, `quest` q SET c.`key` = 'ep16_wig', c.`value` = 9 +WHERE c.`key` = 'banquet_wigner_quest' AND c.`value` = 5 AND q.`quest_id` = 14480 AND q.`state` = 2; +UPDATE `char_reg_num` c, `quest` q SET c.`key` = 'ep16_wig', c.`value` = 8 +WHERE c.`key` = 'banquet_wigner_quest' AND c.`value` = 5 AND q.`quest_id` = 14480 AND q.`state` = 1; +UPDATE `char_reg_num` c, `quest` q SET c.`key` = 'ep16_wig', c.`value` = 7 +WHERE c.`key` = 'banquet_wigner_quest' AND c.`value` = 5 AND q.`quest_id` = 14481 AND q.`state` = 2; +UPDATE `char_reg_num` c, `quest` q SET c.`key` = 'ep16_wig', c.`value` = 6 +WHERE c.`key` = 'banquet_wigner_quest' AND c.`value` = 5 AND q.`quest_id` = 14481 AND q.`state` = 1; +UPDATE `char_reg_num` SET `key` = 'ep16_wig' WHERE `key` = 'banquet_wigner_quest' AND `value` = 5; + +UPDATE `char_reg_num` SET `key` = 'ep16_cookbs' WHERE `key` = 'banquet_quest_cooking' AND `value` < 3; +UPDATE `char_reg_num` SET `key` = 'ep16_cookbs', `value` = 2 WHERE `key` = 'banquet_quest_cooking' AND `value` = 3; +UPDATE `char_reg_num` SET `key` = 'ep16_cookbs', `value` = `value` + 8 WHERE `key` = 'banquet_quest_cooking' AND `value` > 3; + +DELETE FROM `quest` WHERE `quest_id` = 11428; +DELETE FROM `quest` WHERE `quest_id` = 11429; +DELETE FROM `quest` WHERE `quest_id` = 11430; +DELETE FROM `quest` WHERE `quest_id` = 11431; + +DELETE FROM `char_reg_num` WHERE `key` = 'banquet_quest_sauce';