diff options
-rw-r--r-- | npc/005-4/rosen.txt | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/npc/005-4/rosen.txt b/npc/005-4/rosen.txt index b57e16c67..83e1bdec3 100644 --- a/npc/005-4/rosen.txt +++ b/npc/005-4/rosen.txt @@ -12,6 +12,7 @@ 005-4,29,36,0 script Rosen NPC_GUARD1,{ .@q=getq(CandorQuest_Rosen); + .@b=getq(ShipQuests_ChefGado); function explain_ironingot { speech S_FIRST_BLANK_LINE | S_LAST_NEXT, l("Did you see Jhedia the blacksmith in Tulimshar? She might know how you could get this."), @@ -29,6 +30,7 @@ select menuaction(l("Trade")), l("How can I get iron ingot?"), + rif(getq(CandorQuest_Rosen) < 3, l("I want to improve my equipment.")), menuaction(l("Quit")); switch (@menu) @@ -41,12 +43,88 @@ explain_ironingot; break; case 3: + goto L_Gloves; + break; + case 4: closedialog; goodbye; close; } } while (1); + +L_Gloves: + .@q=getq(CandorQuest_Rosen); + mes ""; + if (BaseLevel < 4) goto L_NoLevel; + if (.@b <= 2) goto L_NoGloves; + .@k=getq2(CandorQuest_Rosen); // Get number of kills (via getq2) + + mesn; + if (.@q == 0) { + mesq l("As i see you have some used gloves, I'm not sure if you can mine with it..."); + next; + mesq l("Ah! let's do a test. Go mine 10 @@. You should found some source at nord east of the Island.", getmonsterlink(DiamondBif)); + setq CandorQuest_Rosen, 1, 0; + } else if (.@q == 1) { + mesq l("You done mine enought @@. The perfect spot is at nord east of this islend.", getmonsterlink(DiamondBif)); + } else if (.@q == 2) { + mesq l("Wow! those pity gloves arent made for mining."); + mesq l("Here, take this @@ It will be better suited!.", getitemlink(CandorGloves)); + inventoryplace CandorGloves, 1; + getexp 30, 5; + getitem CandorGloves, 1; + setq CandorQuest_Rosen, 3, 0; + } + close; + +L_NoLevel: + mesn; + mesq l("You aren't strong enought."); + next; + mesn; + mesq l("Go see someone else.."); + close; + +L_NoGloves: + mesn; + mesq l("A miner have real decent gloves dude."); + next; + mesn; + mesq l("For sure Chef of Nard's ship can spare you a pair of glove."); + close; + + + function rosen_add_kills + { + .@qp=getq(CandorQuest_Rosen); + .@kp=getq2(CandorQuest_Rosen); // Get number of kills (via getq2) + setq CandorQuest_Rosen, .@qp, .@kp+1; + //message strcharinfo(0), l("Set status @@ with @@ kills", .@qp, .@kp); + } + + function rosen_max_kills + { + .@qp=getq(CandorQuest_Rosen); + setq CandorQuest_Rosen, .@qp+1, 0; + //message strcharinfo(0), l("End status @@", .@qp); + } + +OnKillMBif: + .@q=getq(CandorQuest_Rosen); + .@k=getq2(CandorQuest_Rosen); // Get number of kills (via getq2) + if (.@q == 1) { + if (.@k+1 >= 10) { + rosen_max_kills(); + message strcharinfo(0), l("Go back to Rosen!"); + } else { + rosen_add_kills(); + message strcharinfo(0), l("@@/10 Emerald Bif", .@k+1); + } + } + end; + + OnTimer1000: domovestep; |