summaryrefslogtreecommitdiff
path: root/npc
diff options
context:
space:
mode:
Diffstat (limited to 'npc')
-rw-r--r--npc/005-4/rosen.txt78
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;