summaryrefslogtreecommitdiff
path: root/npc/020-4
diff options
context:
space:
mode:
Diffstat (limited to 'npc/020-4')
-rw-r--r--npc/020-4/_import.txt1
-rw-r--r--npc/020-4/baktar.txt126
2 files changed, 127 insertions, 0 deletions
diff --git a/npc/020-4/_import.txt b/npc/020-4/_import.txt
index 404082ea8..15c48c3bd 100644
--- a/npc/020-4/_import.txt
+++ b/npc/020-4/_import.txt
@@ -1,4 +1,5 @@
// Map 020-4: Nivalis Indoors
// This file is generated automatically. All manually added changes will be removed when running the Converter.
"npc/020-4/_warps.txt",
+"npc/020-4/baktar.txt",
"npc/020-4/gambler.txt",
diff --git a/npc/020-4/baktar.txt b/npc/020-4/baktar.txt
new file mode 100644
index 000000000..90eaf598e
--- /dev/null
+++ b/npc/020-4/baktar.txt
@@ -0,0 +1,126 @@
+// TMW2 Script.
+// Author:
+// Jesusalva
+// Description:
+// Baktar
+// Quests:
+// NivalisQuest_Baktar
+// .@q1 = Controls Braknar Shield
+// .@q2 = bitmask with Tulimshar items given
+
+020-4,64,39,6 script Baktar NPC_RAIJIN,{
+ .@q=getq(NivalisQuest_Baktar);
+ .@q2=getq2(NivalisQuest_Baktar);
+ if (!.@q)
+ goto L_Start;
+ goto L_Collector;
+
+L_Start:
+ mesn;
+ mesq l("Hello, did you come from Tulimshar? Because you have a nice tan.");
+ next;
+ select
+ l("Yes, I'm coming from Tulimshar."),
+ l("Well, I just like sunbathing."),
+ l("Good bye.");
+ mes "";
+ switch (@menu) {
+ case 2:
+ mesn;
+ mesq l("Bah! Don't try to fool me! The sun can't burn in Nivalis.");
+ // Don't stop now
+ case 3:
+ if (rand(1,5) == 4)
+ mesc l("*cough cough*");
+ close;
+ break;
+ }
+
+ setq NivalisQuest_Baktar, 1, 0;
+ mesn;
+ mesq l("All my parents, grandparents, until the world was born, are from Tulimshar.");
+ next;
+ mesn;
+ mesc l("*cough cough*");
+ mesq l("Thus, I like to collect small memetos from Tulimshar.");
+ next;
+ mesn;
+ mesq l("The doctor told me to move here after I got tuberculosis... But I like Tulimshar so much! Please bring me Tulimshar souvenirs, I'll pay you well!");
+ close;
+
+
+L_Collector:
+ mesn;
+ if (rand(1,5) == 4)
+ mesc l("*cough cough*");
+ mesq l("Did you brought me an souvenir from Tulimshar?");
+ mes "";
+ mes "##B" + l("Drag and drop an item from your inventory.") + "##b";
+
+ .@id = requestitem();
+
+ if (.@id < 1) close;
+ if (countitem(.@id) < 1 || checkbound(.@id))
+ close;
+
+ // No item
+ .@m = htget($@CONTRIBUTORS, str(.@id), 0);
+ if (!.@m) {
+ mesn;
+ if (rand(1,5) == 4)
+ mesc l("*cough cough*");
+ mesq l("What crap is that?! This is not from Tulimshar!");
+ next;
+ mesn;
+ if (rand(1,5) == 4)
+ mesc l("*cough cough*");
+ mesq l("I won't accept stuff from Halinarzo!");
+ mesc l("Baktar can be picky with Tulimshar stuff, too.");
+ close;
+ }
+ // Already given
+ if (.@q2 & .@m) {
+ mesn;
+ if (rand(1,5) == 4)
+ mesc l("*cough cough*");
+ mesq l("I already have that...");
+ close;
+ }
+
+ // Gives 2.5× more
+ .@sp=getiteminfo(.@id, ITEMINFO_SELLPRICE);
+ mesc l("Really give your @@ to Baktar?", getitemlink(.@id)), 1;
+ mesc l("The item will be lost forever.");
+ next;
+ if (askyesno() == ASK_YES) {
+ delitem .@id, 1;
+ Zeny+=(.@sp*25/10);
+ setq2 NivalisQuest_Baktar, .@q2|.@m;
+ mesn;
+ mesq l("Thanks.");
+ }
+
+ close;
+
+OnInit:
+ .@npcId = getnpcid(.name$);
+ setunitdata(.@npcId, UDT_HEADTOP, KnitHat);
+ setunitdata(.@npcId, UDT_HEADMIDDLE, LeatherShirt);
+ setunitdata(.@npcId, UDT_HEADBOTTOM, CottonShorts);
+ setunitdata(.@npcId, UDT_WEAPON, LousyMoccasins);
+ setunitdata(.@npcId, UDT_HAIRSTYLE, 24);
+ setunitdata(.@npcId, UDT_HAIRCOLOR, 1);
+
+ .sex = G_MALE;
+ .distance = 5;
+ npcsit;
+
+ // Constants
+ .TULIMITEM = htnew;
+ htput(.TULIMITEM, str(DesertHat), 1);
+ htput(.TULIMITEM, str(SerfHat), 2);
+ htput(.TULIMITEM, str(BugLeg), 4);
+ htput(.TULIMITEM, str(Dagger), 8);
+ end;
+}
+