summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--db/re/mob_db.conf50
-rw-r--r--npc/000-0-0/_import.txt (renamed from npc/000-0-0/import.txt)0
-rw-r--r--npc/001-1/karim.txt136
3 files changed, 136 insertions, 50 deletions
diff --git a/db/re/mob_db.conf b/db/re/mob_db.conf
index 94ba5c973..e371b86b0 100644
--- a/db/re/mob_db.conf
+++ b/db/re/mob_db.conf
@@ -1595,4 +1595,54 @@ mob_db: (
Moss: 800
}
},
+{
+ Id: 1039
+ SpriteName: "Bat"
+ Name: "Bat"
+ Lv: 20
+ Hp: 1500
+ Sp: 0
+ Exp: 9
+ JExp: 3
+ AttackRange: 1
+ Attack: [50, 250]
+ Def: 1
+ Mdef: 60
+ Stats: {
+ Str: 2
+ Agi: 1
+ Vit: 1
+ Int: 1
+ Dex: 20
+ Luk: 25
+ }
+ ViewRange: 1
+ ChaseRange: 1000
+ Size: 0
+ Race: 2
+ Element: (4, 1)
+ Mode: {
+ CanMove: true
+ Looter: true
+ CanAttack: true
+ CastSensorChase: true
+ ChangeChase: true
+ }
+ MoveSpeed: 800
+ AttackDelay: 1872
+ AttackMotion: 672
+ DamageMotion: 480
+ MvpExp: 0
+ Drops: {
+ BatTeeth: 1800
+ BatWing: 1500
+ BatWing: 1300
+ MaggotSlime: 800
+ BugLeg: 400
+ CactusDrink: 150
+ RoastedMaggot: 130
+ Dagger: 65
+ Bloodstone: 1
+ }
+},
)
diff --git a/npc/000-0-0/import.txt b/npc/000-0-0/_import.txt
index 039280fe3..039280fe3 100644
--- a/npc/000-0-0/import.txt
+++ b/npc/000-0-0/_import.txt
diff --git a/npc/001-1/karim.txt b/npc/001-1/karim.txt
index f20c1bad5..743fdbc09 100644
--- a/npc/001-1/karim.txt
+++ b/npc/001-1/karim.txt
@@ -14,93 +14,129 @@
001-1,87,114,0 script karim NPC_PLAYER,{
- function give_small_quest {
+ .Item1 = RightCraftyWing;
+ .Item2 = LeftCraftyWing;
+ .ItemReward = FlightTalisman;
+
+ function quest_beggining{
speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
- l("Her sword... I'm having some trouble finishing it."),
- l("You see, Enora asked me to do a black iron sword, unfortunately I ran out of the material needed, and..."),
- l("Only Don and the Merchant Guild have that kind of material in stock. It's called black iron."),
- l("It's better to deal with the Merchant Guild than the old man, Don has this ability to hammer down your enthusiasm in sparkling fury!"),
- l("If Enora wants her sword now, I need to ask for your help.");
+ l("my name is karim can you help me?.");
+
+ setq Karim_Quest, 1;
+ return;
+ }
- switch (select(l("Let's not keep her waiting."),
- l("Not now.")))
+ function quest_left {
+ if (countitem(.Item2) > 0)
{
- case 1:
- break;
- case 2:
- speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
- lg("I'll be here, come back when you'll be ready.");
-
+ delitem .Item2, 1;
+ if (rand(10) == 1)
+ {
+ mesq l("Yay, it worked! You get a good wing.");
+ getitem .ItemReward, 1;
+ setq Karim_Quest, 2;
+ close;
+ }
+ else
+ {
+ mesq l("This one is useless! Give me another @@.", getitemlink(.Item2));
return;
+ }
}
+ else
+ {
+ mesq l("You don't have any @@, are you mocking me?", getitemlink(.Item2));
+ return ;
+ }
+ }
- speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
- l("Thank you very much!"),
- l("Talk with Lloyd the Banker in the Merchant Guild, it's a big building in the northern side of Artis, at the top of the small hill.");
-
- setq ArtisQuests_Enora, 2;
-
- return;
+ function quest_right {
+ if (countitem(.Item1) > 0)
+ {
+ delitem .Item1, 1;
+ if (rand(5) == 1)
+ {
+ mesq l("Yay, it worked! You get a good wing.");
+ getitem .ItemReward, 1;
+ setq Karim_Quest, 2;
+ close;
+ }
+ else
+ {
+ mesq l("This one is useless! Give me another @@.", getitemlink(.Item1));
+ next;
+ return;
+ }
+ }
+ else
+ {
+ mesq l("You don't have any @@, are you mocking me?", getitemlink(.Item1));
+ return ;
+ }
}
- function more_info {
+ function quest_started {
speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
- l("It's the big building in northern Artis, at the top of a small hill."),
- l("Take the east road that goes to the north and follow it until you are on top of the cliff."),
- l("That part of the town is called the Gilded Hill, it's also where the Merchant Guild has its headquarters."), //rich hill
- l("Lloyd still owes me, but beware of those money-grabbers, or they might sell your own teeth to you!");
+ l("Can you give me a @@ or a @@", getitemlink(.Item1), getitemlink(.Item2));
+ do
+ {
+ select
+ l("a Right Crafty Wing"),
+ l("a Left Crafty Wing"),
+ menuaction(l("Quit"));
+
+ switch (@menu)
+ {
+ case 1:
+ quest_right;
+ break;
+ case 2:
+ quest_left;
+ break;
+ }
+ } while (@menu != 3);
return;
}
function quest_completed {
speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
- l("Oh... Awesome!"),
- l("You were gone so I thought you let me down."),
- l("Don gave me some black iron... after I asked him nearly ten times."),
- l("But thank you anyway! I can refund him now!"),
- l("Take the sword, and say hi to Enora for me!");
-
- setq ArtisQuests_Enora, 4;
-
+ l("Quest completed.");
return;
}
- function blacksmith_house{
+ function quest_restart {
speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
- l("Behind me? It's the Blacksmith House, the most renowned throughout Aemil."),
- l("There are two shops inside, they are independent from the Merchant Guild of Artis."),
- l("Now that I think about it, they are the only shops that are independent in Artis..."),
- l("...it might be because of Don... he is the master blacksmith of this place and a model to me!");
-
+ l("Quest restart.");
+ setq Karim_Quest, 0;
return;
}
- speech S_LAST_NEXT, l("Can I be of any help?");
+ speech S_LAST_NEXT, l("Can you help me?");
do
{
- .@enora = getq(ArtisQuests_Enora);
+ .@karim = getq(Karim_Quest);
select
- rif(.@enora == 1, lg("I came to retrieve a package for Enora.")),
- rif(.@enora == 3, l("I have your black iron.")),
- rif(.@enora >= 2, l("Where is the Merchant Guild?")),
- l("What is this building?"),
+ rif(.@karim == 2, lg("quest completed.")),
+ rif(.@karim == 1, l("Hello again can you give you give me some tentacles.")),
+ rif(.@karim == 0, l("Hello")),
+ l("Debug"),
menuaction(l("Quit"));
switch (@menu)
{
case 1:
- give_small_quest;
+ quest_completed;
break;
case 2:
- quest_completed;
+ quest_started;
break;
case 3:
- more_info;
+ quest_beggining;
break;
case 4:
- blacksmith_house;
+ quest_restart;
break;
}
} while (@menu != 5);