summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMicksha <ms-shaman@gmx.de>2019-01-19 07:53:00 +0000
committerMicksha <ms-shaman@gmx.de>2019-01-19 07:53:00 +0000
commit8d3100964c4c6624294f03c8d3effb6c377a5975 (patch)
tree5bffc1ba3456b016c3a5c4bd25d6b59a2945bfb5
parent28fdcc18ff9c80fea20414482ecc7c74fd0bf9cf (diff)
downloadserverdata-8d3100964c4c6624294f03c8d3effb6c377a5975.tar.gz
serverdata-8d3100964c4c6624294f03c8d3effb6c377a5975.tar.bz2
serverdata-8d3100964c4c6624294f03c8d3effb6c377a5975.tar.xz
serverdata-8d3100964c4c6624294f03c8d3effb6c377a5975.zip
Knife - change equip level from 15 --> 1
-rw-r--r--db/re/item_db.conf2
-rw-r--r--npc/001-1/manhole.txt14
-rw-r--r--npc/001-2-11/mona.txt10
-rw-r--r--npc/001-3-0/_import.txt1
-rw-r--r--npc/001-3-0/mundane.txt95
5 files changed, 109 insertions, 13 deletions
diff --git a/db/re/item_db.conf b/db/re/item_db.conf
index 6f4665da..79ca4860 100644
--- a/db/re/item_db.conf
+++ b/db/re/item_db.conf
@@ -4280,7 +4280,7 @@ item_db: (
Gender: "SEX_ANY"
Loc: "EQP_HAND_R"
WeaponLv: 1
- EquipLv: 15
+ EquipLv: 1
Refine: false
Subtype: "W_DAGGER"
ViewSprite: 1
diff --git a/npc/001-1/manhole.txt b/npc/001-1/manhole.txt
index 77616cf1..6637819d 100644
--- a/npc/001-1/manhole.txt
+++ b/npc/001-1/manhole.txt
@@ -24,6 +24,20 @@
if (askyesno() == 1) slide_or_warp("001-3-0", 152, 56);
close;
+OnTouch:
+ // (has_instance2 wasn't checked if it works)
+ if (getq(ArtisQuests_MonaDad) == 2 && has_instance2("mona@"+strcharinfo(0)) >= 0) {
+ mesn l("Mundane");
+ mesq l("Thanks for saving me. This is enough, I'll watch if Mona is fine and return to Sewers later.");
+ next;
+ inventoryplace WoodenBow, 1;
+ mesn l("Mundane");
+ mesq lg("Here, take this @@ as a gift. I'm sure someone as skilled you will make a good use of my old weapon.", "Here, take this @@ as a gift. I'm sure someone as skilled you will make a good use of my old weapon.", getitemlink(WoodenBow));
+ getitem WoodenBow, 1;
+ setq(ArtisQuests_MonaDad, 3);
+ }
+ end;
+
OnInit:
.sex = G_OTHER;
.distance = 1;
diff --git a/npc/001-2-11/mona.txt b/npc/001-2-11/mona.txt
index e94fcc69..17a72631 100644
--- a/npc/001-2-11/mona.txt
+++ b/npc/001-2-11/mona.txt
@@ -54,8 +54,14 @@
{
find_daddy_quest();
}
-
- npctalkonce l("Please find daddy...");
+ else if (getq(ArtisQuests_MonaDad) == 3)
+ {
+ npctalkonce l("Thanks for finding daddy... I wish he spent more time with me...");
+ }
+ else
+ {
+ npctalkonce l("Please find daddy...");
+ }
emotion E_SAD;
close;
diff --git a/npc/001-3-0/_import.txt b/npc/001-3-0/_import.txt
index 5ead6439..a4262ee3 100644
--- a/npc/001-3-0/_import.txt
+++ b/npc/001-3-0/_import.txt
@@ -1,5 +1,6 @@
// Map 001-3-0: Sewer
// This file is generated automatically. All manually added changes will be removed when running the Converter.
+"npc/001-3-0/mundane.txt",
"npc/001-3-0/_mobs.txt",
"npc/001-3-0/_warps.txt",
"npc/001-3-0/mundane.txt",
diff --git a/npc/001-3-0/mundane.txt b/npc/001-3-0/mundane.txt
index 51ffb1bd..ff4d51b9 100644
--- a/npc/001-3-0/mundane.txt
+++ b/npc/001-3-0/mundane.txt
@@ -1,20 +1,95 @@
-// Evol scripts.
+
+// Evol Scripts
// Author:
-// Micksha
+// Jesusalva
// Description:
-// Mundane, Monas dad, lost in sewers.
-// THIS IS A PLACEHOLDER!
+// Mundane (anagram of Unnamed) is Mona's father
-001-3-0,97,66,0 script Mundane#001-3-0 NPC_MUNDANE,{
- speech
- l("Oh, Hi."),
- l("I didn't expect someone coming here. I need help.");
- lg("Do you know the way out of here? My daughter Mona may worry already.");
+// Note: Due technical limitations do not make Mundane move
+// Note: Temporary sprite
+001-3-0,161,59,0 script Mundane NPC_MUNDANE,{
+ function quest_completed
+ {
+ speech(0x0,
+ l("No matter how many times I come here, I can't find the reason for the strange sounds..."),
+ l("It is either a huge monster, some cultists, or someone throwing strange stuff into sewers."));
close;
+ }
+
+ function rescue_mundane
+ {
+ speech(S_LAST_NEXT,
+ l("Scary... I am afraid of these blubs and rattos... And worse, I am lost..."),
+ l("I already killed many strong monsters, but I everyone have fears, right?!"),
+ l("My daughter is probably worried with me. Could you perhaps lead me out of here?"));
+
+ switch (select(l("Yes, follow me!"), l("Not now. You see, I am also afraid of Blubs and Rattos!")))
+ {
+ case 1:
+ mes "";
+ break;
+ case 2:
+ speech(S_FIRST_BLANK_LINE,
+ l("That's too bad... Although I think you're lying."),
+ l("If it is the latter, please take some courage and help me!"));
+ close;
+ break;
+ }
+ .@ID=getcharid(0);
+ .@MAP_NAME$="mona@"+str(.@ID);
+ .@MUNDANE_INSTID = instance_create("001-3-0@a"+(.@ID), getcharid(3), IOT_CHAR);
+ //debugmes "You are "+str(.@ID);
+
+ //if (.@MUNDANE_INSTID < 0) debugmes "Error: No instance ID";
+ //debugmes "new instance id: " + str(.@MUNDANE_INSTID);
+
+ // XXX - Important Note - XXX
+ // We currently have only FOUR chars to name the map. "001-3-0" or "mundane" have 7 chars, so that cannot be used.
+ // Thankfully, "mona" have 4 chars, so it's the name.
+ //
+ // Rationale: We have only 11 chars available, but 7 are reserved. So, longest name would be "abcd" + "@" + getcharid(0)
+ // Some test reported that (apparently) we have 15 whitespaces at map name start, not sure why.
+ .@instanceMapName$ = instance_attachmap("001-3-0", .@MUNDANE_INSTID, 0, .@MAP_NAME$);
+
+ //if (.@instanceMapName$ == "") debugmes "Error: Map 001-3-0 X failed";
+ //debugmes "Created map: "+ str(.@instanceMapName$);
+
+ // You have 5 minutes to complete the quest. This does not results in failure by itself, getq2 does that
+ instance_set_timeout(300, 300, .@MUNDANE_INSTID);
+ instance_init(.@MUNDANE_INSTID);
+ dispbottom(l("Mona Father's is right behind you. You have five minutes to bring him out of sewers!"));
+
+ // Not sure if Green Slimes are exactly what we want here - and shouldn't it be "Slime"? (mind upper-case)
+ areamonster(.@MAP_NAME$, 119, 51, 162, 85, l("Green Slime"), slime, 3);
+ setq ArtisQuests_MonaDad, 2;
+ warp(.@MAP_NAME$, 161,59);
+ close;
+
+ }
+
+ .@q=getq(ArtisQuests_MonaDad);
+ if (.@q != 1) quest_completed();
+ if (.@q == 1) rescue_mundane();
+
+ hello;
+ end;
OnInit:
.sex = G_MALE;
- .distance = 2;
+ .distance = 3;
+ end;
+
+OnInstanceInit:
+ disablenpc(instance_npcname(.name$));
+ end;
+
+OnPCDieEvent:
+ if (getq(ArtisQuests_MonaDad) != 2) end;
+ setq ArtisQuests_MonaDad, 1;
+ dispbottom l("What a pity! You've died.");
+ //warp("Save",0,0); // That works, but won't revive you without recovery();
end;
}
+
+// >>>>>>> Initial proof-of-concept version, works, but quest cannot be completed yet