diff options
-rw-r--r-- | db/quest_db.conf | 4 | ||||
-rw-r--r-- | npc/024-7/afking.txt | 81 | ||||
-rw-r--r-- | npc/functions/util.txt | 12 |
3 files changed, 95 insertions, 2 deletions
diff --git a/db/quest_db.conf b/db/quest_db.conf index c10b77fad..39e53b2bc 100644 --- a/db/quest_db.conf +++ b/db/quest_db.conf @@ -365,6 +365,10 @@ quest_db: ( Id: 132 Name: "FrostiaQuest_Homunculus" }, +{ + Id: 133 + Name: "FrostiaQuest_AFKCap" +}, // ID 151 to 170: Artis Quests // ID 171 to 190: Esperia Quests diff --git a/npc/024-7/afking.txt b/npc/024-7/afking.txt index 9ac836967..0060e05af 100644 --- a/npc/024-7/afking.txt +++ b/npc/024-7/afking.txt @@ -6,15 +6,96 @@ // AFK Cap quest (Lv 47) 024-7,40,24,0 script AF King NPC_PLAYER,{ + function AFPrologue; + function AFGrinding; + function AFKingGelid; + function AFItemList; + //function AF + if (BaseLevel < 47) { npctalkonce l("*AFK: I am Away From Keyboard*"); end; } + .@q=getq(FrostiaQuest_AFKCap); + + switch (.@q) { + case 0: // Mission not started + mesn; + mesq l("I'm back, I'm here, I'm great! I am the AF King Arthur!"); + next; + do { + mesn; + mesq l("But can I help you?"); + next; + select + l("Good, I need to talk with the King."), + l("You have a nice hat."), + l("Do you know where I can level up?"), + l("Nothing, good bye!"); + mes ""; + switch (@menu) { + case 1: + AFKingGelid(); + case 2: + AFPrologue(); + case 3: + AFGrinding(); + default: + close; + } + } while (true); + break; + case 1: // Mission accepted + break; + case 2: // Mission complete + break; + } closedialog; goodbye; close; +function AFPrologue { + mesn; + mesq l("No one is more there than here than me! Look at my hat, it symbolizes that I am an useless player!"); + next; + mesn; + mesq l("And if you listen to Tulimshar's Professor lecture wearing it, you'll gain more experience!"); + next; + mesn; + mesq l("Basically, no one else disturbs me anymore when I'm busy snoring in class! ^.^"); + next; + return; +} + +function AFGrinding { + mesn; + mesq l("Uhh... Not really! I love to kill Yetis, but sometimes they are really shy!"); + next; + mesn; + mesq l("They must be hiding in some cave... It's a shame!"); + next; + return; +} + +function AFKingGelid { + mesn; + mesq l("Uhm, I'm not the king of Frostia, I'm the king of all useless adventurers."); + next; + mesn; + mesq l("I just go out removing swords from rocks, and then throwing them again at the lake. All that while I drink coffee."); + next; + mesn; + mesq l("If you need to talk with King Gelid, he should be in the castle north here."); + next; + return; +} + +function AFItemList { + mesc l("TODO"), 1; + return; +} + OnInit: .@npcId = getnpcid(.name$); setunitdata(.@npcId, UDT_HEADTOP, AFKCap); diff --git a/npc/functions/util.txt b/npc/functions/util.txt index aa0ad8249..ca802e18b 100644 --- a/npc/functions/util.txt +++ b/npc/functions/util.txt @@ -436,7 +436,7 @@ function script reputation { - // Frostia Quests (2 points) + // Frostia Quests (3 points) } else if (getarg(0) == "Frostia") { // Rescue Yeti Quest (+1 rep) @@ -447,8 +447,16 @@ function script reputation { if (getq(NivalisQuest_Cindy) >= 5) .@nr=.@nr+1; + // Homunculus Quest (+1 rep) + if (getq(FrostiaQuest_Homunculus) >= 4) + .@nr=.@nr+1; + + // AFK Cap Quest (+1 rep) + if (getq(FrostiaQuest_AFKCap) >= 5) + .@nr=.@nr+1; + // FROSTIA Magical Forumula - .@nr=.@nr*100/2; + .@nr=.@nr*100/4; |