summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conf/map/maps.conf7
-rw-r--r--db/map_index.txt159
-rw-r--r--db/quest_db.conf4
-rw-r--r--db/re/item_db.conf141
-rwxr-xr-xdb/re/map_cache.datbin21200 -> 23221 bytes
-rw-r--r--db/re/mob_db.conf266
-rw-r--r--npc/000-1-3/_mobs.txt39
-rw-r--r--npc/000-1-4/_import.txt (renamed from npc/000-1-3/_import.txt)4
-rw-r--r--npc/000-1/_import.txt19
-rw-r--r--npc/000-1/ale.txt110
-rw-r--r--npc/000-1/astapolos.txt166
-rw-r--r--npc/000-1/chest.txt65
-rw-r--r--npc/000-1/couwan.txt95
-rw-r--r--npc/000-1/darlin.txt149
-rw-r--r--npc/000-1/fexil.txt44
-rw-r--r--npc/000-1/gugli.txt249
-rw-r--r--npc/000-1/gulukan.txt170
-rw-r--r--npc/000-1/jalad.txt131
-rw-r--r--npc/000-1/lean.txt74
-rw-r--r--npc/000-1/mapflags.txt1
-rw-r--r--npc/000-1/maxe.txt112
-rw-r--r--npc/000-1/muller.txt132
-rw-r--r--npc/000-1/panels.txt54
-rw-r--r--npc/000-1/sapartan.txt102
-rw-r--r--npc/000-1/shop.txt33
-rw-r--r--npc/000-1/silvio.txt186
-rw-r--r--npc/000-1/tarlan.txt65
-rw-r--r--npc/000-1/tibbo.txt124
-rw-r--r--npc/001-1/_import.txt1
-rw-r--r--npc/001-1/rock.txt173
-rw-r--r--npc/005-1/_import.txt5
-rw-r--r--npc/005-1/_mobs.txt39
-rw-r--r--npc/005-1/_warps.txt7
-rw-r--r--npc/005-1/zegas.txt32
-rw-r--r--npc/005-2/_import.txt5
-rw-r--r--npc/005-2/_mobs.txt3
-rw-r--r--npc/005-2/_warps.txt (renamed from npc/000-1-3/_warps.txt)4
-rw-r--r--npc/005-2/saxsochest.txt80
-rw-r--r--npc/005-3/_import.txt4
-rw-r--r--npc/005-3/_mobs.txt3
-rw-r--r--npc/005-3/_warps.txt3
-rw-r--r--npc/005-4/_import.txt6
-rw-r--r--npc/005-4/_warps.txt3
-rw-r--r--npc/005-4/rosen.txt80
-rw-r--r--npc/005-4/shop.txt37
-rw-r--r--npc/005-4/tolchi.txt24
-rw-r--r--npc/005-5-2/_import.txt0
-rw-r--r--npc/005-5-2/_mobs.txt2
-rw-r--r--npc/005-5-2/_savepoints.txt2
-rw-r--r--npc/005-5-2/_warps.txt2
-rw-r--r--npc/005-5/_import.txt5
-rw-r--r--npc/005-5/_warps.txt3
-rw-r--r--npc/005-5/cynric.txt249
-rw-r--r--npc/005-5/nylo.txt11
-rw-r--r--npc/_import.txt7
55 files changed, 1287 insertions, 2204 deletions
diff --git a/conf/map/maps.conf b/conf/map/maps.conf
index 5663400be..49fcbbf18 100644
--- a/conf/map/maps.conf
+++ b/conf/map/maps.conf
@@ -6,6 +6,7 @@ map_list: (
"000-0",
"000-1-1",
"000-1-2",
+ "000-1-4",
"000-1-9",
"000-1",
"000-2-0",
@@ -64,10 +65,14 @@ map_list: (
"003-2-0",
"003-2-1",
"003-2-2",
- "004-0",
"004-1-1-1",
"004-1-1",
"004-1",
+ "005-1",
+ "005-2",
+ "005-3",
+ "005-4",
+ "005-5",
"008-1",
"008-2-0",
"008-2-1",
diff --git a/db/map_index.txt b/db/map_index.txt
index 2dfd05556..10a5f771c 100644
--- a/db/map_index.txt
+++ b/db/map_index.txt
@@ -3,83 +3,88 @@
000-0 3
000-1-1 4
000-1-2 5
-000-1-9 6
-000-1 7
-000-2-0 8
-000-2-1 9
-000-2-2 10
-000-2-3 11
-000-2-4 12
-001-1 13
-001-2-0 14
-001-2-1 15
-001-2-10 16
-001-2-11 17
-001-2-12 18
-001-2-13 19
-001-2-14 20
-001-2-15 21
-001-2-16 22
-001-2-17 23
-001-2-18 24
-001-2-19 25
-001-2-2 26
-001-2-20 27
-001-2-21 28
-001-2-22 29
-001-2-23 30
-001-2-24 31
-001-2-25 32
-001-2-26 33
-001-2-27 34
-001-2-28 35
-001-2-29 36
-001-2-3 37
-001-2-30 38
-001-2-31 39
-001-2-32 40
-001-2-33 41
-001-2-34 42
-001-2-35 43
-001-2-36 44
-001-2-37 45
-001-2-38 46
-001-2-39 47
-001-2-4 48
-001-2-40 49
-001-2-41 50
-001-2-42 51
-001-2-5 52
-001-2-6 53
-001-2-7 54
-001-2-8 55
-001-2-9 56
-001-3-0 57
-001-3-1 58
-002-1 59
-003-1 60
-003-2-0 61
-003-2-1 62
-003-2-2 63
-004-0 64
+000-1-4 6
+000-1-9 7
+000-1 8
+000-2-0 9
+000-2-1 10
+000-2-2 11
+000-2-3 12
+000-2-4 13
+001-1 14
+001-2-0 15
+001-2-1 16
+001-2-10 17
+001-2-11 18
+001-2-12 19
+001-2-13 20
+001-2-14 21
+001-2-15 22
+001-2-16 23
+001-2-17 24
+001-2-18 25
+001-2-19 26
+001-2-2 27
+001-2-20 28
+001-2-21 29
+001-2-22 30
+001-2-23 31
+001-2-24 32
+001-2-25 33
+001-2-26 34
+001-2-27 35
+001-2-28 36
+001-2-29 37
+001-2-3 38
+001-2-30 39
+001-2-31 40
+001-2-32 41
+001-2-33 42
+001-2-34 43
+001-2-35 44
+001-2-36 45
+001-2-37 46
+001-2-38 47
+001-2-39 48
+001-2-4 49
+001-2-40 50
+001-2-41 51
+001-2-42 52
+001-2-5 53
+001-2-6 54
+001-2-7 55
+001-2-8 56
+001-2-9 57
+001-3-0 58
+001-3-1 59
+002-1 60
+003-1 61
+003-2-0 62
+003-2-1 63
+003-2-2 64
004-1-1-1 65
004-1-1 66
004-1 67
-008-1 68
-008-2-0 69
-008-2-1 70
-008-2-10 71
-008-2-11 72
-008-2-12 73
-008-2-13 74
-008-2-14 75
-008-2-2 76
-008-2-3 77
-008-2-4 78
-008-2-5 79
-008-2-6 80
-008-2-7 81
-008-2-8 82
-008-2-9 83
-test 84
-testbg 85
+005-1 68
+005-2 69
+005-3 70
+005-4 71
+005-5 72
+008-1 73
+008-2-0 74
+008-2-1 75
+008-2-10 76
+008-2-11 77
+008-2-12 78
+008-2-13 79
+008-2-14 80
+008-2-2 81
+008-2-3 82
+008-2-4 83
+008-2-5 84
+008-2-6 85
+008-2-7 86
+008-2-8 87
+008-2-9 88
+test 89
+testbg 90
diff --git a/db/quest_db.conf b/db/quest_db.conf
index 721e38815..31b1fcfdf 100644
--- a/db/quest_db.conf
+++ b/db/quest_db.conf
@@ -166,6 +166,10 @@ quest_db: (
Name: "ArtisQuest_Apana"
},
{
+ Id: 34
+ Name: "CandorQuest_Chest"
+},
+{
Id: 1000
Name: "Test_testing1"
},
diff --git a/db/re/item_db.conf b/db/re/item_db.conf
index 4f371069d..276b2c1d0 100644
--- a/db/re/item_db.conf
+++ b/db/re/item_db.conf
@@ -4318,6 +4318,58 @@ item_db: (
Sprite: 0
},
{
+ Id: 817
+ AegisName: "SaxsoKey"
+ Name: "Saxso Key"
+ Type: "IT_ETC"
+ Buy: 2
+ Sell: 1
+ Weight: 1
+ Atk: 0
+ Matk: 0
+ Def: 0
+ Range: 0
+ Slots: 0
+ Job: {
+ All: true
+ }
+ Gender: "SEX_ANY"
+ WeaponLv: 0
+ EquipLv: 0
+ Refine: false
+ ViewSprite: 817
+ BindOnEquip: false
+ BuyingStore: true
+ Delay: 0
+ Sprite: 0
+},
+{
+ Id: 818
+ AegisName: "BlueManaPearl"
+ Name: "Blue Mana Pearl"
+ Type: "IT_ETC"
+ Buy: 100000
+ Sell: 10000
+ Weight: 0
+ Atk: 0
+ Matk: 0
+ Def: 0
+ Range: 0
+ Slots: 0
+ Job: {
+ All: true
+ }
+ Gender: "SEX_ANY"
+ WeaponLv: 0
+ EquipLv: 0
+ Refine: false
+ ViewSprite: 818
+ BindOnEquip: false
+ BuyingStore: true
+ Delay: 0
+ Sprite: 0
+},
+{
Id: 1000
AegisName: "BromenalFourLeafAmulet"
Name: "Bromenal Four-Leaf Amulet"
@@ -5926,6 +5978,60 @@ item_db: (
Sprite: 0
},
{
+ Id: 1801
+ AegisName: "AssassinBoots"
+ Name: "Assassin Boots"
+ Type: "IT_ARMOR"
+ Buy: 600
+ Sell: 180
+ Weight: 18
+ Atk: 0
+ Matk: 0
+ Def: 150
+ Range: 0
+ Slots: 0
+ Job: {
+ All: true
+ }
+ Gender: "SEX_ANY"
+ Loc: "EQP_SHOES"
+ WeaponLv: 0
+ EquipLv: 15
+ Refine: false
+ ViewSprite: 1801
+ BindOnEquip: false
+ BuyingStore: true
+ Delay: 0
+ Sprite: 0
+},
+{
+ Id: 1802
+ AegisName: "RedBoots"
+ Name: "Red Boots"
+ Type: "IT_ARMOR"
+ Buy: 600
+ Sell: 180
+ Weight: 18
+ Atk: 0
+ Matk: 0
+ Def: 150
+ Range: 0
+ Slots: 0
+ Job: {
+ All: true
+ }
+ Gender: "SEX_ANY"
+ Loc: "EQP_SHOES"
+ WeaponLv: 0
+ EquipLv: 15
+ Refine: false
+ ViewSprite: 1802
+ BindOnEquip: false
+ BuyingStore: true
+ Delay: 0
+ Sprite: 0
+},
+{
Id: 2000
AegisName: "Armbands"
Name: "Armbands"
@@ -6771,6 +6877,29 @@ item_db: (
">
},
{
+ Id: 2707
+ AegisName: "RoundLeatherShield"
+ Name: "Round Leather Shield"
+ Type: "IT_ARMOR"
+ Buy: 3000
+ Sell: 250
+ Weight: 90
+ Def: 33
+ Job: {
+ All: true
+ }
+ Gender: "SEX_ANY"
+ Loc: "EQP_HAND_L"
+ EquipLv: 3
+ Refine: false
+ ViewSprite: 2707
+ BindOnEquip: false
+ BuyingStore: true
+ OnEquipScript: <"
+ bonus bAtkRange, -1;
+ ">
+},
+{
Id: 2900
AegisName: "Bandana"
Name: "Bandana"
@@ -8240,5 +8369,17 @@ item_db: (
Loc: "EQP_AMMO"
Subtype: "W_DAGGER"
},
+{
+ Id: 6501
+ AegisName: "TolchiArrow"
+ Name: "Tolchi Arrow"
+ Type: "IT_AMMO"
+ Buy: 6
+ Sell: 1
+ Weight: 1
+ Atk: 80
+ Loc: "EQP_AMMO"
+ Subtype: "W_DAGGER"
+},
)
diff --git a/db/re/map_cache.dat b/db/re/map_cache.dat
index 0ab127080..b79d30f86 100755
--- a/db/re/map_cache.dat
+++ b/db/re/map_cache.dat
Binary files differ
diff --git a/db/re/mob_db.conf b/db/re/mob_db.conf
index ba15c3525..972ece79c 100644
--- a/db/re/mob_db.conf
+++ b/db/re/mob_db.conf
@@ -3029,4 +3029,270 @@ mob_db: (
CrystallizedMaggot: 1
}
},
+{
+ Id: 1070
+ SpriteName: "Scorpion"
+ Name: "Scorpion"
+ Lv: 5
+ Hp: 500
+ Sp: 0
+ Exp: 4
+ JExp: 1
+ AttackRange: 1
+ Attack: [50, 100]
+ Def: 10
+ Mdef: 0
+ Stats: {
+ Str: 1
+ Agi: 1
+ Vit: 1
+ Int: 1
+ Dex: 6
+ Luk: 5
+ }
+ ViewRange: 1
+ ChaseRange: 12
+ Size: 0
+ Race: 2
+ Element: (1, 1)
+ Mode: {
+ CanMove: true
+ CanAttack: true
+ CastSensorChase: true
+ }
+ MoveSpeed: 800
+ AttackDelay: 1872
+ AttackMotion: 672
+ DamageMotion: 480
+ MvpExp: 0
+ Drops: {
+ MaggotSlime: 800
+ BugLeg: 400
+ RoastedMaggot: 150
+ CactusPotion: 70
+ SharpKnife: 10
+ CrystallizedMaggot: 1
+ }
+},
+{
+ Id: 1072
+ SpriteName: "RedScorpion"
+ Name: "Red Scorpion"
+ Lv: 5
+ Hp: 500
+ Sp: 0
+ Exp: 4
+ JExp: 1
+ AttackRange: 1
+ Attack: [50, 100]
+ Def: 10
+ Mdef: 0
+ Stats: {
+ Str: 1
+ Agi: 1
+ Vit: 1
+ Int: 1
+ Dex: 6
+ Luk: 5
+ }
+ ViewRange: 1
+ ChaseRange: 12
+ Size: 0
+ Race: 2
+ Element: (1, 1)
+ Mode: {
+ CanMove: true
+ CanAttack: true
+ CastSensorChase: true
+ }
+ MoveSpeed: 800
+ AttackDelay: 1872
+ AttackMotion: 672
+ DamageMotion: 480
+ MvpExp: 0
+ Drops: {
+ MaggotSlime: 800
+ BugLeg: 400
+ RoastedMaggot: 150
+ CactusPotion: 70
+ SharpKnife: 10
+ CrystallizedMaggot: 1
+ }
+},
+{
+ Id: 1073
+ SpriteName: "CandorScorpion"
+ Name: "Candor Scorpion"
+ Lv: 5
+ Hp: 500
+ Sp: 0
+ Exp: 4
+ JExp: 1
+ AttackRange: 1
+ Attack: [50, 100]
+ Def: 10
+ Mdef: 0
+ Stats: {
+ Str: 1
+ Agi: 1
+ Vit: 1
+ Int: 1
+ Dex: 6
+ Luk: 5
+ }
+ ViewRange: 1
+ ChaseRange: 12
+ Size: 0
+ Race: 2
+ Element: (1, 1)
+ Mode: {
+ CanMove: true
+ CanAttack: true
+ CastSensorChase: true
+ }
+ MoveSpeed: 800
+ AttackDelay: 1872
+ AttackMotion: 672
+ DamageMotion: 480
+ MvpExp: 0
+ Drops: {
+ MaggotSlime: 800
+ BugLeg: 400
+ RoastedMaggot: 150
+ CactusPotion: 70
+ SharpKnife: 10
+ CrystallizedMaggot: 1
+ }
+},
+{
+ Id: 1074
+ SpriteName: "BlackScorpion"
+ Name: "Black Scorpion"
+ Lv: 5
+ Hp: 500
+ Sp: 0
+ Exp: 4
+ JExp: 1
+ AttackRange: 1
+ Attack: [50, 100]
+ Def: 10
+ Mdef: 0
+ Stats: {
+ Str: 1
+ Agi: 1
+ Vit: 1
+ Int: 1
+ Dex: 6
+ Luk: 5
+ }
+ ViewRange: 1
+ ChaseRange: 12
+ Size: 0
+ Race: 2
+ Element: (1, 1)
+ Mode: {
+ CanMove: true
+ CanAttack: true
+ CastSensorChase: true
+ }
+ MoveSpeed: 800
+ AttackDelay: 1872
+ AttackMotion: 672
+ DamageMotion: 480
+ MvpExp: 0
+ Drops: {
+ MaggotSlime: 800
+ BugLeg: 400
+ RoastedMaggot: 150
+ CactusPotion: 70
+ SharpKnife: 10
+ CrystallizedMaggot: 1
+ }
+},
+{
+ Id: 1075
+ SpriteName: "ManaBug"
+ Name: "Mana Bug"
+ Lv: 5
+ Hp: 500
+ Sp: 0
+ Exp: 4
+ JExp: 1
+ AttackRange: 1
+ Attack: [50, 100]
+ Def: 10
+ Mdef: 0
+ Stats: {
+ Str: 1
+ Agi: 1
+ Vit: 1
+ Int: 1
+ Dex: 6
+ Luk: 5
+ }
+ ViewRange: 1
+ ChaseRange: 12
+ Size: 0
+ Race: 2
+ Element: (1, 1)
+ Mode: {
+ CanMove: true
+ CanAttack: true
+ CastSensorChase: true
+ }
+ MoveSpeed: 800
+ AttackDelay: 1872
+ AttackMotion: 672
+ DamageMotion: 480
+ MvpExp: 0
+ Drops: {
+ MaggotSlime: 800
+ BugLeg: 400
+ RoastedMaggot: 150
+ CactusPotion: 70
+ SharpKnife: 10
+ CrystallizedMaggot: 1
+ }
+},
+{
+ Id: 1076
+ SpriteName: "SaxsoGhost"
+ Name: "Saxso Ghost"
+ Lv: 20
+ Hp: 5000
+ Sp: 0
+ Exp: 400
+ JExp: 35
+ AttackRange: 1
+ Attack: [200, 2000]
+ Def: 40
+ Mdef: 0
+ Stats: {
+ Str: 50
+ Agi: 10
+ Vit: 1
+ Int: 100
+ Dex: 66
+ Luk: 19
+ }
+ ViewRange: 1
+ ChaseRange: 14
+ Size: 0
+ Race: 2
+ Element: (1, 1)
+ Mode: {
+ CanMove: true
+ CanAttack: true
+ Aggressive: true
+ Angry: true
+ }
+ MoveSpeed: 300
+ AttackDelay: 670
+ AttackMotion: 670
+ DamageMotion: 1
+ MvpExp: 0
+ Drops: {
+ SaxsoKey: 1000
+ }
+},
)
diff --git a/npc/000-1-3/_mobs.txt b/npc/000-1-3/_mobs.txt
deleted file mode 100644
index 1a2b4a858..000000000
--- a/npc/000-1-3/_mobs.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-// This file is generated automatically. All manually added changes will be removed when running the Converter.
-// Map 000-1-3: Drasil Island mobs
-000-1-3,28,49,6,9 monster Tortuga 1004,3,16000,120000
-000-1-3,58,118,34,14 monster Tortuga 1004,4,35000,300000
-000-1-3,71,95,4,12 monster Tortuga 1004,1,35000,300000
-000-1-3,52,92,4,17 monster Tortuga 1004,2,35000,300000
-000-1-3,37,66,11,5 monster Tortuga 1004,2,35000,120000
-000-1-3,42,41,9,16 monster Tortuga 1004,2,35000,120000
-000-1-3,87,37,12,11 monster Tortuga 1004,3,35000,120000
-000-1-3,44,75,2,1 monster Little Blub 1007,2,25000,120000
-000-1-3,61,64,7,10 monster Little Blub 1007,2,25000,120000
-000-1-3,62,25,10,4 monster Little Blub 1007,2,25000,120000
-000-1-3,87,69,4,3 monster Blub 1008,1,60000,120000
-000-1-3,85,33,2,3 monster Little Blub 1007,1,25000,120000
-000-1-3,85,58,14,9 monster Little Blub 1007,2,35000,120000
-000-1-3,48,61,9,6 monster Little Blub 1007,1,35000,120000
-000-1-3,28,48,3,5 monster Little Blub 1007,1,35000,120000
-000-1-3,35,50,0,1 monster Plushroom Field 1011,1,35000,150000
-000-1-3,54,115,0,1 monster Plushroom Field 1011,1,35000,150000
-000-1-3,63,80,4,2 monster Plushroom Field 1011,1,35000,150000
-000-1-3,54,64,0,2 monster Plushroom Field 1011,1,35000,150000
-000-1-3,78,58,4,5 monster Plushroom Field 1011,2,35000,150000
-000-1-3,71,62,1,1 monster Plushroom Field 1011,1,35000,150000
-000-1-3,32,116,8,9 monster Croc 1006,2,35000,300000
-000-1-3,63,31,10,3 monster Croc 1006,1,35000,300000
-000-1-3,76,68,1,1 monster Croc 1006,1,35000,300000
-000-1-3,52,92,4,17 monster Croc 1006,1,35000,300000
-000-1-3,71,77,4,4 monster Croc 1006,1,35000,300000
-000-1-3,0,0,0,0 monster Piou 1002,4,60000,15000
-000-1-3,78,115,0,0 monster Crocotree 1010,1,420000,240000
-000-1-3,57,104,0,0 monster Crocotree 1010,1,420000,240000
-000-1-3,39,112,0,0 monster Crocotree 1010,1,420000,240000
-000-1-3,67,93,0,0 monster Crocotree 1010,1,420000,240000
-000-1-3,53,77,0,0 monster Crocotree 1010,1,420000,240000
-000-1-3,64,63,0,0 monster Crocotree 1010,1,420000,240000
-000-1-3,31,69,0,0 monster Crocotree 1010,1,420000,240000
-000-1-3,44,44,0,0 monster Crocotree 1010,1,420000,240000
-000-1-3,70,33,0,0 monster Crocotree 1010,1,420000,240000
-000-1-3,84,66,0,0 monster Crocotree 1010,1,420000,240000
diff --git a/npc/000-1-3/_import.txt b/npc/000-1-4/_import.txt
index b38ea0fcd..b85766215 100644
--- a/npc/000-1-3/_import.txt
+++ b/npc/000-1-4/_import.txt
@@ -1,4 +1,2 @@
-// Map 000-1-3: Drasil Island
+// Map 000-1-4: Drasil Island
// This file is generated automatically. All manually added changes will be removed when running the Converter.
-"npc/000-1-3/_mobs.txt",
-"npc/000-1-3/_warps.txt",
diff --git a/npc/000-1/_import.txt b/npc/000-1/_import.txt
index f103452c4..da1819af6 100644
--- a/npc/000-1/_import.txt
+++ b/npc/000-1/_import.txt
@@ -2,22 +2,3 @@
// This file is generated automatically. All manually added changes will be removed when running the Converter.
"npc/000-1/_mobs.txt",
"npc/000-1/_warps.txt",
-"npc/000-1/ale.txt",
-"npc/000-1/astapolos.txt",
-"npc/000-1/chest.txt",
-"npc/000-1/couwan.txt",
-"npc/000-1/darlin.txt",
-"npc/000-1/fexil.txt",
-"npc/000-1/gugli.txt",
-"npc/000-1/gulukan.txt",
-"npc/000-1/jalad.txt",
-"npc/000-1/lean.txt",
-"npc/000-1/mapflags.txt",
-"npc/000-1/maxe.txt",
-"npc/000-1/muller.txt",
-"npc/000-1/panels.txt",
-"npc/000-1/sapartan.txt",
-"npc/000-1/shop.txt",
-"npc/000-1/silvio.txt",
-"npc/000-1/tarlan.txt",
-"npc/000-1/tibbo.txt",
diff --git a/npc/000-1/ale.txt b/npc/000-1/ale.txt
deleted file mode 100644
index 0a37eb021..000000000
--- a/npc/000-1/ale.txt
+++ /dev/null
@@ -1,110 +0,0 @@
-// Evol scripts.
-// Authors:
-// Qwerty Dragon
-// Reid
-// Description:
-// Sailor part of the Gugli's quest.
-// Aquada box.
-
-000-1,55,23,0 script Ale#000-1 NPC_DEMON_MAN_SITTING,{
- if (getq(General_Narrator) > 0)
- {
- sailortalk;
- }
-
- .@g = getq(ShipQuests_Gugli);
- if (.@g == 0) goto L_NoTask;
-
- .@q = getq(ShipQuests_Ale);
- if (.@q == 1) goto L_CallFunc;
-
- mesn;
- mesq l("Ouch...");
- next;
- mesq l("These heavy boxes are killing me, I can't feel my arms anymore!");
- next;
-
- menu
- lg("Gugli sent me down here to help you."), -,
- l("See you aboard."), L_Quit;
-
- mes "";
- mesn;
- mesq l("Really? That's kind of you, I accept your help!");
- next;
- mesq l("Hmm... Let's see, take this one.");
- next;
-
- inventoryplace AquadaBox, 1;
-
- setq ShipQuests_Ale, 1;
- getitem AquadaBox, 1;
-
- mes "";
- mesn;
- mesq l("I will take care of the other ones don't worry.");
-
- close;
-
-L_CallFunc:
- sailorfood;
-
- menu
- rif(getq(ShipQuests_Gugli) > 1, l("Task is done.")), L_TaskDone,
- rif(getq(ShipQuests_Ale) == 1 && (getq(ShipQuests_Astapolos) == 0 || getq(ShipQuests_Gulukan) == 0 || getq(ShipQuests_Jalad) == 0 || getq(ShipQuests_QMuller) == 0 || getq(ShipQuests_Tibbo) == 0), l("I'm still busy, I need to find the other sailors.")), -;
-
- mes "";
- mesn;
- mesq l("Who are you looking for?");
- next;
-
- menu
- rif(getq(ShipQuests_Astapolos) == 0, l("Astapolos.")), L_Bottom,
- rif(getq(ShipQuests_Gulukan) == 0, l("Gulukan.")), L_Bottom,
- rif(getq(ShipQuests_Jalad) == 0, l("Jalad.")), L_Jalad,
- rif(getq(ShipQuests_QMuller) == 0, l("Q'Muller.")), L_Bottom,
- rif(getq(ShipQuests_Tibbo) == 0, l("Tibbo.")), L_Bottom,
- l("Nobody."), L_Quit;
-
-L_Bottom:
- mes "";
- mesn;
- mesq l("I've seen him down around the southern area of the island, ask Jalad for more information.");
-
- close;
-
-L_Jalad:
- setcamnpc "Jalad";
-
- next;
- mesn;
- mesq l("Look, here he is!");
- next;
-
- restorecam;
-
- close;
-
-L_NoTask:
- mes "";
- mesn;
- mesq l("Ouch... These boxes are so heavy!");
-
- close;
-
-L_TaskDone:
- mes "";
- mesn;
- mesq l("That's good to hear!");
-
- close;
-
-L_Quit:
- closedialog;
- close;
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-}
diff --git a/npc/000-1/astapolos.txt b/npc/000-1/astapolos.txt
deleted file mode 100644
index df64b36b0..000000000
--- a/npc/000-1/astapolos.txt
+++ /dev/null
@@ -1,166 +0,0 @@
-// Evol scripts.
-// Authors:
-// Hal9000
-// Qwerty Dragon
-// Reid
-// Description:
-// Sailor part of the Gugli's quest.
-// Croconut box.
-
-000-1,22,50,0 script Astapolos NPC_ELVEN_MAN_RED,{
- if (getq(General_Narrator) > 0)
- {
- sailortalk;
- }
-
- .@g = getq(ShipQuests_Gugli);
- if (.@g == 0) goto L_NoTask;
-
- .@q = getq(ShipQuests_Astapolos);
- if (.@q == 1) goto L_CallFunc;
-
- mesn;
- mesq l("So finally someone has came to visit me?");
- next;
-
- select
- lg("Actually, I came here to work on my task.");
-
- mes "";
- mesn;
- mesq l("Oh, I see. That's right. Why should someone come here to see me, seriously?");
- next;
- mesq l("Do you think this is fair? They sent me down here alone, far away from everyone.");
- next;
-
- menu
- lg("I'm sorry for your situation. They should alternate shifts with other sailors from time to time."), -,
- l("Well if you are whining like that all the time, then I think there is a reason behind their choice."), L_Whyning;
-
- mes "";
- mesn;
- mesq l("Exactly. Even our task is ridiculous. Why should we collect food down here if we have plenty of those tasty and soft rattos inside our ship, waiting just to be hunted and cooked?");
- next;
-
- menu
- l("You... You eat... rattos? I think you're just a fool."), L_Whyning,
- l("Oh... eating rattos. Sounds... ehm... Delicious, yes."), -;
-
- mes "";
- mesn;
- mesq l("You like them, don't you? Just speak with Peter then. He is on the second deck of the ship. He will send you downstairs to the hold, where you will find a furry meal!");
- next;
- mesq lg("Oh, but you didn't come here to talk about that, am I right?");
- next;
-
- select
- lg("Actually, I was here to help you with those boxes. Can I bring one of them back to Gugli?");
-
- mes "";
- mesn;
- mesq l("Usually I don't allow anyone to touch my boxes but...");
- next;
- mesq lg("You have been so nice to me. So please, take one.");
- next;
-
- inventoryplace CroconutBox, 1;
-
- setq ShipQuests_Astapolos, 1;
- getitem CroconutBox, 1;
-
- mes "";
- mesn;
- mesq l("Good luck! And remember to visit Peter and our little furry friends whenever you return back onboard!");
-
- close;
-
-L_CallFunc:
- sailorfood;
-
- menu
- rif(getq(ShipQuests_Gugli) > 1, l("Task is done.")), L_TaskDone,
- rif(getq(ShipQuests_Astapolos) == 1 && (getq(ShipQuests_Ale) == 0 || getq(ShipQuests_Gulukan) == 0 || getq(ShipQuests_Jalad) == 0 || getq(ShipQuests_QMuller) == 0 || getq(ShipQuests_Tibbo) == 0), l("I'm still busy, I need to find the other sailors.")), -,
- l("How are things going?"), L_HowAreYou,
- l("Who are you?"), L_Who;
-
- mes "";
- mesn;
- mesq l("Who are you looking for?");
- next;
-
- menu
- rif(getq(ShipQuests_Ale) == 0, l("Ale.")), L_Top,
- rif(getq(ShipQuests_Gulukan) == 0, l("Gulukan.")), L_Bottom,
- rif(getq(ShipQuests_Jalad) == 0, l("Jalad.")), L_Top,
- rif(getq(ShipQuests_QMuller) == 0, l("Q'Muller.")), L_Bottom,
- rif(getq(ShipQuests_Tibbo) == 0, l("Tibbo.")), L_Bottom,
- l("Nobody."), -;
-
- closedialog;
- close;
-
-L_HowAreYou:
-
- mes "";
- mesn;
- mesq l("A sunny and hot day,");
- next;
- mesq l("a quiet place,");
- next;
- mesq l("a ground!");
- next;
- mesq l("I hope that answers your question.") + " " + l("Hehe!");
-
- close;
-
-L_Who:
- mes "";
- mesn;
- mesq l("My name is Astapolos. Q'Muller and I joined Nard's crew a few years ago when it was just a little merchant ship.");
- next;
- mesq l("At that time, we were selling crab food on our old mushroom island.");
- next;
- mesq l("And now I'm a sailor, as you can see!");
-
- close;
-
-L_Bottom:
- mes "";
- mesn;
- mesq l("I've seen him at the southern part of the island, check around.");
-
- close;
-
-L_Top:
- mes "";
- mesn;
- mesq l("I've seen him at the northern part of the island.");
- next;
- mesq l("You should walk to the north.");
-
- close;
-
-L_NoTask:
- npctalk3 l("Just leave me alone.");
-
- closedialog;
- close;
-
-L_TaskDone:
- mes "";
- mesn;
- mesq l("Perfect!");
-
- close;
-
-L_Whyning:
- npctalk3 l("Then leave me alone.");
-
- closedialog;
- close;
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-}
diff --git a/npc/000-1/chest.txt b/npc/000-1/chest.txt
deleted file mode 100644
index 46f626a34..000000000
--- a/npc/000-1/chest.txt
+++ /dev/null
@@ -1,65 +0,0 @@
-// Evol scripts.
-// Authors:
-// 4144
-// gumi
-// Hal9000
-// Reid
-// Description:
-// A treasure chest, with... Treasures inside!
-// Variable:
-// x ShipQuests_TreasureChest
-// Values:
-// 0 Treasure Chest has not been opened yet.
-// 1 Treasure Chest has been opened.
-
-000-1,83,70,0 script Chest#000-1 NPC_CHEST,3,3,{
-
- if (.busy == false)
- {
- if (getq(ShipQuests_TreasureChest) == 0)
- {
- inventoryplace OldBook, 1;
- setq ShipQuests_TreasureChest, 1;
- npctalk3 l("Chest opened.");
- Zeny += 100;
- getitem OldBook, 1;
- }
-
- specialeffect(.dir == 0 ? 24 : 25, AREA, getnpcid(0)); // closed ? opening : closing
- .dir = .dir == 0 ? 2 : 6; // closed ? opening : closing
- .busy = true; // lock until available again
- initnpctimer;
- }
- end;
-
-OnTimer160:
- .dir = .dir == 6 ? 0 : 4; // closing ? closed : open
- end;
-
-OnTimer500:
- .busy = false; // unlock
-
- if (.dir == 0)
- {
- stopnpctimer; // stop here if the chest is closed
- }
- end;
-
-OnUnTouch:
- if (getareausers(.x - 3, .y - 3, .x + 3, .y + 3) > 0 || .dir == 0)
- {
- end;
- }
-OnTimer30000:
- .busy = true;
- .dir = 6; // closing
- specialeffect(25, AREA, getnpcid(0)); // closing
- setnpctimer 0;
-OnTouch:
- end;
-
-
-OnInit:
- .distance = 2;
- end;
-}
diff --git a/npc/000-1/couwan.txt b/npc/000-1/couwan.txt
deleted file mode 100644
index 0d2317060..000000000
--- a/npc/000-1/couwan.txt
+++ /dev/null
@@ -1,95 +0,0 @@
-// Evol scripts.
-// Authors:
-// Hal9000
-// Qwerty Dragon
-// Reid
-// Description:
-// Couwan is trying to scam the player.
-// Variable:
-// x ShipQuests_Couwan
-// Values:
-// 0 Never talked with Couwan.
-// 1 Spoke, and received the quest scam.
-// 2 Done quest scam.
-
-000-1,89,36,0 script Couwan NPC_TRITAN_MAN_SAILOR,{
- .@q = getq(ShipQuests_Couwan);
- if (.@q == 1)
- {
- mesn;
- mesq l("What are you looking at?");
- next;
- mesq l("Yeye still have my box? Stare less and work more. Go give it to Gugli!");
- close;
- }
- else if (.@q > 1)
- {
- mesn;
- mesq l("What are you looking at?");
- next;
- mesq l("Yeye gave my box to Gugli? Nice, nice yeye!");
- close;
- }
-
- mesn;
- mesq l("Hello yeye.");
- next;
- mesq l("Look how splendid this landscape is!");
- next;
-
- switch(select(
- l("Very nice, indeed!"),
- l("I don't see anything else other than... water?")))
- {
- case 2:
- mes "";
- mesn;
- mesq l("Yeye's brain is probably still full of sea water if yeye can't see the beauty of this place.");
- next;
- mesq l("Stupid yeye...");
- close;
- }
-
- mes "";
- mesn;
- mesq l("Yeye got good eyes and seem to have fully recovered from your injuries...");
- next;
- mesq l("Hey, could yeye please take my box of fish to Gugli?");
- next;
-
- switch(select(
- l("Sure, but what will I get in exchange?"),
- l("I'm sorry, I don't have time right now.")))
- {
- case 2:
- mes "";
- mesn;
- mesq l("Stupid yeye...");
- break;
-
- case 255:
- break;
-
- default:
- mes "";
- mesn;
- mesq l("Yeye ask too much but do too little. Take this box and stop talking.");
- next;
-
- inventoryplace FishBox, 1;
- mesn "Narrator";
- mes col(l("Couwan hands you a box full of fish."), 9);
- getitem FishBox, 1;
- next;
- mes col(l("The sailor turns his back to you."), 9);
-
- setq ShipQuests_Couwan, 1;
- break;
- }
- close;
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-}
diff --git a/npc/000-1/darlin.txt b/npc/000-1/darlin.txt
deleted file mode 100644
index 1288ad83e..000000000
--- a/npc/000-1/darlin.txt
+++ /dev/null
@@ -1,149 +0,0 @@
-// Evol scripts.
-// Authors:
-// Alige
-// Reid
-// Description:
-// Darlin talks from the top of the tall mast.
-// Variable:
-// x ShipQuests_TreasureChest
-// Values:
-// 0 Treasure Chest has not been opened yet.
-// 1 Treasure Chest has been opened.
-
-000-1,89,95,0 script Darlin NPC_RAIJIN_MAN,{
- .@q = getq(ShipQuests_TreasureChest);
-
- mesn;
- setcamnpc;
- mesq l("HEY! HEY YOU!");
- next;
- mesq l("CAN YOU HEAR ME?!");
- next;
- restorecam;
-
- menu
- l("Yes!"), -,
- l("No!"), L_Quit;
-
- setcamnpc;
- mes "";
- mesn;
- mesq l("GOOD!");
- next;
- mesq l("I WAS HERE WHEN THEY RESCUED YOU!");
- next;
- mesq l("DO YOU FEEL BETTER?!");
- next;
- restorecam;
-
- menu
- l("I do feel better!"), -,
- l("Why don't you come down to talk?"), L_GoDown;
-
- mes "";
- menu
- l("And you, how are you doing?"), -,
- l("But I need to go, see you!"), L_Bye;
-
- setcamnpc;
- mes "";
- mesn;
- mesq l("I AM DOING FINE!");
- next;
- mesq l("HEY, WHAT'S YOUR NAME?!");
- next;
- restorecam;
-
- select
- strcharinfo(0) + ".",
- l("Maybe you can come down to talk?");
-
- setcamnpc;
- mes "";
- mesn;
- mesq l("WHAT DID YOU SAY?!");
- next;
- mesq l("I DO NOT UNDERSTAND!");
- next;
- restorecam;
-
- menu
- l("I said... WHY DON'T YOU COME DOWN TO TALK?"), L_GoDown,
- l("I SAID, SEE YOU LATER!"), L_Bye,
- l("I'M CALLED, @@!", strtoupper(strcharinfo(0))), -;
-
- setcamnpc;
- mes "";
- mesn;
- mesq strtoupper(strcharinfo(0)) + "? " + l("THAT'S A NICE NAME!");
- next;
- mesq l("SO WHAT'S UP?! WHAT ARE YOU DOING?!");
- next;
- restorecam;
-
- menu
- l("I'm looking for Gugli, where is he?"), -,
- l("I need to go, sorry."), L_Bye;
-
- setcamnpc;
- mes "";
- mesn;
- mesq l("OH, LOOK THERE!");
- setcamnpc "Gugli";
- next;
- mesq l("HE IS AT THE BOTTOM OF THE SHIP, DOWN THE STAIRS. YOU CAN'T MISS HIM!");
- next;
- restorecam;
-
- goto L_Quit;
-
-L_GoDown:
- setcamnpc;
- mes "";
- mesn;
- mesq l("I WOULD LOVE TO!");
- next;
- mesq l("BUT I CAN'T, I NEED TO KEEP AN EYE ON THE SEA, TO WARN THE CREW IF THERE HAPPENS TO BE SOME PIRATES AROUND!");
- next;
- mesq l("I ALSO AVOID THE DANGEROUS ANIMALS!");
- next;
- restorecam;
-
- menu
- l("Have you seen anything dangerous?"), -,
- l("Interesting... I'll leave you to your task then!"), L_Bye;
-
- mes "";
- mesn;
-
- if (.@q > 0) goto L_DangerAround;
-
- setcamnpc;
- mesq l("Oh no, but I've noticed a weird light on the other part of this island, I wonder what it could be...");
- next;
- restorecam;
-
- goto L_Quit;
-
-L_Bye:
- npctalk3 l("FINE, BYE!");
-
- goto L_Quit;
-
-L_DangerAround:
- setcamnpc;
- mesq l("NOTHING ELSE OTHER THAN SHARKS AND AN ODD LIGHT!");
- next;
- restorecam;
-
- goto L_Quit;
-
-L_Quit:
- closedialog;
- close;
-
-OnInit:
- .sex = G_MALE;
- .distance = 14;
- end;
-}
diff --git a/npc/000-1/fexil.txt b/npc/000-1/fexil.txt
deleted file mode 100644
index de72aec24..000000000
--- a/npc/000-1/fexil.txt
+++ /dev/null
@@ -1,44 +0,0 @@
-// Evol scripts.
-// Author:
-// Reid
-// Description:
-// Newbie merchant.
-
-000-1,83,98,0 script Fexil NPC_ELVEN_MAN_TRADER,{
- mesn;
- mesq lg("Greetings traveler.");
- next;
- mesq l("I have some clothes and other things for you at a fine price!");
- next;
- mesq l("What I sell comes from every corner of Gasaron. From Esperia to the Land of Fire!");
- next;
- mesq lg("Interested?");
- next;
-
- switch (select("Yes, why not.:I would rather sell some stuff.:No, Sorry."))
- {
- case 1:
- mes "";
- mesn;
- mesq l("Good, take a look in the bag next to me then!");
- close;
-
- case 2:
- closedialog;
- shop "Bag#000-1";
- close;
-
- default:
- mes "";
- mesn;
- mesq l("Oh... Well, I just started to trade... Thus my technique may not be the best.");
- next;
- mesq lg("Anyway, if you ever feel interested, just check my bag!");
- close;
- }
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-}
diff --git a/npc/000-1/gugli.txt b/npc/000-1/gugli.txt
deleted file mode 100644
index e9e0e0b07..000000000
--- a/npc/000-1/gugli.txt
+++ /dev/null
@@ -1,249 +0,0 @@
-// Evol scripts.
-// Authors:
-// Hal9000
-// Qwerty Dragon
-// Reid
-// Description:
-// Elmo's twin
-// Charged of an important quest from Nard, he asks you to help other sailors to keep their box to the ship.
-// Variable:
-// 0 ShipQuests_Couwan
-// 1 ShipQuests_Nard
-// 2 ShipQuests_Gugli
-// Values:
-// 00 Never talked with Couwan.
-// 01 Spoke, and received the quest scam.
-// 02 Done quest scam.
-// 10 Introduction of the box and Nard. This is displayed when the player never spoke to Nard or his box.
-// 11 Nard spoke and gave access to the outdoor of the ship.
-// 12 Completed the quest.
-// 13 Opened the chest and finished the introduction.
-// 20 Never talked with Gugli.
-// 21 Gugli gives you the task.
-// 22 Gave all of the box to Gugli.
-
-000-1,85,108,0 script Gugli NPC_GUGLI,{
-
- if (getq(ShipQuests_Couwan) == 1)
- {
- speech S_LAST_NEXT,
- l("Great to see you! What can I do for you today?");
- goto L_Menu;
- }
-
- if (getq(General_Narrator) > 0)
- {
- sailortalk;
- }
-
-OnTalk:
- mesn;
- .@nard = getq(ShipQuests_Nard);
- .@gugli = getq(ShipQuests_Gugli);
- .@gado = getq(ShipQuests_ChefGado);
-
- if (.@nard > 3) goto L_AllComplete;
- if (.@nard > 1 || .@gugli == 2) goto L_TaskCompleted;
- if (.@gugli == 1) goto L_TaskGiven;
-
- mesq lg("Hi @@, I heard the captain sent you down here, uh?", "Hi @@, I heard the captain sent you down here, uh?", strcharinfo(0));
- next;
- mesq l("What an unexpected pleasure, your help is always welcome!");
- next;
- mesq l("As you may know, we are explorers on a long distance voyage, and our swashbuckling mariners need to store enough food to survive. You don't know how dangerous the sea life can be.");
- next;
-
- select
- l("Actually, I have an in-depth knowledge of this type of life.");
-
- mes "";
- mesn;
- mesq lg("Well, even though you have been rescued by us, it doesn't make you an expert sailor, am I right?");
- next;
- mesq l("But let's talk about this island. We're docking here to find some fine quality goods.");
- next;
- mesq l("We usually dock around these small isles because they provide us some of the best food of all the archipelago.");
- next;
- mesq l("At the moment, our crew is busy collecting @@s, @@s and @@s.", getitemlink(Croconut), getitemlink(Plushroom), getitemlink(Aquada));
- next;
-
- select
- l("So, what can I do for you?");
-
- mes "";
- mesn;
- mesq l("Right! Ours is an earthsea realm. You see, sailors are swift at their tasks when out of sight of land, but docked by this verdant jewel, they have it so good, they are just taking too much time bringing all the food back to the ship. Maybe you can help them.");
- next;
- mesq l("The captain wants:");
- mesq l("- 2 @@es", getitemlink(AquadaBox));
- mesq l("- 2 @@es", getitemlink(CroconutBox));
- mesq l("- 2 @@es", getitemlink(PlushroomBox));
- next;
- mesq l("Ask sailors around here they shouldn't be so far away.");
- next;
-
- setq ShipQuests_Gugli, 1;
- close;
-
-L_TaskGiven:
- mesq l("Great to see you! What can I do for you today?");
- next;
-
- if (getq(ShipQuests_Ale) == 1 && getq(ShipQuests_Astapolos) == 1 && getq(ShipQuests_Gulukan) == 1 && getq(ShipQuests_Jalad) == 1 && getq(ShipQuests_QMuller) == 1 && getq(ShipQuests_Tibbo) == 1) goto L_MenuDone;
-
-L_Menu:
- menu
- rif(getq(ShipQuests_Couwan) == 1, l("Couwan gave me this box, it is for you.")), L_Couwan,
- rif(countitem(AquadaBox) > 0 || countitem(CroconutBox) > 0 || countitem(PlushroomBox) > 0, l("I have some food for you.")), L_CollectSmthing,
- rif(getq(ShipQuests_Gugli) < 2, l("Who should I search for?")), L_SailorNames,
- rif(getq(ShipQuests_Gugli) < 2, l("Where can I find your crew?")), L_Location,
- l("Bye!"), L_Quit;
-
-L_MenuDone:
- menu
- rif(getq(ShipQuests_Couwan) == 1, l("Couwan gave me this box, it is for you.")), L_Couwan,
- l("I have collected all the boxes you needed."), L_TaskDone,
- l("See you!"), L_Quit;
-
-L_SailorNames:
- mes "";
- mesn;
- mesq l("Ale and Tibbo should bring 2 boxes of @@s, Astapolos and Gulukan 2 of @@s and Jalad and Q'Muller were charged of the boxes of @@s.", getitemlink(Aquada), getitemlink(Croconut), getitemlink(Plushroom));
- next;
- mesq l("Do you need any other information?");
- next;
-
- goto L_Menu;
-
-L_CollectSmthing:
- mes "";
- mesn;
- mesq l("Good job!");
- next;
-
- delitem AquadaBox, countitem(AquadaBox);
- delitem CroconutBox, countitem(CroconutBox);
- delitem PlushroomBox, countitem(PlushroomBox);
-
- mesq l("You still need to give me boxes from: ");
- if (getq(ShipQuests_Astapolos) == 0) mesq l("- Astapolos");
- if (getq(ShipQuests_Ale) == 0) mesq l("- Ale");
- if (getq(ShipQuests_Gulukan) == 0) mesq l("- Gulukan");
- if (getq(ShipQuests_Jalad) == 0) mesq l("- Jalad");
- if (getq(ShipQuests_QMuller) == 0) mesq l("- Q'Muller");
- if (getq(ShipQuests_Tibbo) == 0) mesq l("- Tibbo");
-
- close;
-
-L_Couwan:
- mes "";
- mesn;
- mesq l("What?! This tritan is the worse shirker I ever met!");
- next;
- mesq l("Well, thanks for the box. But... He was supposed to bring it back to me himself. I never asked him to give it to you!");
- next;
- mesq l("Take these coins in exchange and be careful.");
- next;
- mesq l("Not everybody has a kind mind. Scammers can be anywhere, even among us!");
- next;
- mesq l("May this be a lesson for you.");
-
- if (countitem(FishBox) > 0) delitem FishBox, 1;
- setq ShipQuests_Couwan, 2;
- Zeny = Zeny + 10;
- getexp 40, 0;
- message strcharinfo(0), l("You receive @@ E!", 10);
-
- close;
-
-L_Location:
- mes "";
- mesn;
- mesq l("There are 6 sailors who will need your help. They are all around the island.");
- next;
- mesq l("I can't really help you find them since I've been checking the... Hmm... Landscape, since morning...");
- next;
- mesq l("You can try talking with some other sailors to get some information about that.");
- next;
-
- .@r = rand(3000)/1000;
- if (.@r == 1) goto L_Silvio;
- if (.@r == 2) goto L_Lean;
-
- setcamnpc "Sapartan";
- mesq l("Maxe and Sapartan for example?");
- next;
-
- restorecam;
- close;
-
-L_Silvio:
- setcamnpc "Silvio";
- mesq l("Silvio for example?");
- next;
-
- restorecam;
- close;
-
-L_Lean:
- setcamnpc "Lean";
- mesq l("Lean for example?");
- next;
-
- restorecam;
- close;
-
-L_TaskDone:
- if (countitem(AquadaBox) == 2) delitem AquadaBox, 2;
- if (countitem(CroconutBox) == 2) delitem CroconutBox, 2;
- if (countitem(PlushroomBox) == 2) delitem PlushroomBox, 2;
- if (countitem(AquadaBox) == 1) delitem AquadaBox, 1;
- if (countitem(CroconutBox) == 1) delitem CroconutBox, 1;
- if (countitem(PlushroomBox) == 1) delitem PlushroomBox, 1;
- setq ShipQuests_Gugli, 2;
-
- Zeny = Zeny + 250;
- getexp 50, 0;
-
- mes "";
- mesn;
- mesq l("Well done! The ship is now ready to sail again!");
- next;
- mesq l("You should inform Nard of the progress made in loading food and supplies on to the boat. He will be pleased to hear that good news!");
-
- close;
-
-L_TaskCompleted:
- mesq l("You are now part of the crew... At least for us down here!");
- next;
- mesq l("You should inform Nard of the progress made in loading food and supplies on to the boat. He will be pleased to hear that good news!");
- next;
- mesq l("Tell him that everything went fine and that we're almost done with the requisitions.");
- next;
-
- goto L_Menu;
-
-L_AllComplete:
- mesq l("Elmo told me what Nard said, congrats!");
- next;
- mesq lg("You're one of us now, that's great! I was sure that you were a kind lady when I first saw you!", "You're one of us now, that's great! I was sure that you were a good man when I first saw you!");
- next;
-
- goto L_Menu;
-
-L_Quit:
- closedialog;
- close;
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-}
-
-000-1,83,107,0 script GugliBarrierCheck NPC_HIDDEN,2,0,{
- .@gugli = getq(ShipQuests_Gugli);
- if (.@gugli > 0) close;
- doevent "Gugli::OnTalk";
- close;
-}
diff --git a/npc/000-1/gulukan.txt b/npc/000-1/gulukan.txt
deleted file mode 100644
index 7b277fdf6..000000000
--- a/npc/000-1/gulukan.txt
+++ /dev/null
@@ -1,170 +0,0 @@
-// Evol scripts.
-// Authors:
-// Hal9000
-// Qwerty Dragon
-// Reid
-// Description:
-// Sailor part of the Gugli's quest.
-// Croconut box.
-
-000-1,54,90,0 script Gulukan NPC_TRITAN_MAN_SAILOR2,{
- if (getq(General_Narrator) > 0)
- {
- sailortalk;
- }
-
- .@g = getq(ShipQuests_Gugli);
- if (.@g == 0) goto L_NoTask;
-
- .@q = getq(ShipQuests_Gulukan);
- if (.@q == 1) goto L_Func;
-
- mesn;
- mesq l("Yeye @@!", strcharinfo(0));
- next;
- mesq l("How are you feeling, now that you walk on steady land? Yeye better?");
- next;
-
- menu
- l("Wow, it seems everyone knows my name!"), -,
- l("Well, it's not bad to finally feel something beneath my feet."), L_Continue,
- l("Not so good actually... I would feel better on Nard's ship."), L_Quit;
-
-L_Name:
- mes "";
- mesn;
- mesq l("You know, yeyes love to chat while working.");
- next;
-
-goto L_Continue2;
-
-L_Continue:
- mes "";
- mesn;
-
-L_Continue2:
- mesq lg("Are you yaying here to explore the island?");
- next;
-
- menu
- lg("Actually Gugli asked me if I would help you bring him some of your boxes."), -,
- l("Yes, indeed. I prefer to explore places I have never been to, before doing anything else."), L_Quit;
-
- mes "";
- mesn;
- mesq l("Gugli? Oh I see. Yes, Gugli yeye pretty used to shout orders to everybody down here.");
- next;
- mesq l("Anyway I am glad I can give you some of these yoyoxs.");
- next;
-
- inventoryplace CroconutBox, 1;
-
- setq ShipQuests_Gulukan, 1;
- getitem CroconutBox, 1;
-
- mes "";
- mesn;
- mesq lg("Thank you my friend.");
-
- close;
-
-L_Func:
- mesn;
-
- .@q = rand(0, 400) / 100;
- if (.@q == 0) goto L_RandomA;
- if (.@q == 1) goto L_RandomB;
- if (.@q > 1) goto L_RandomC;
-
-L_RandomA:
- mesq l("Hey.");
- next;
- mesq l("What did Gugli yayaid about the box? Was it ok?");
- next;
-
- menu
- l("It's ok."), L_Fine,
- l("He needs more food."), -;
-
- mes "";
- mesn;
- mesq lg("Yeye sure? I'll yaye some more food in the next box then.");
-
- close;
-
-L_Fine:
- mes "";
- mesn;
- mesq l("Alright! Yoyone more box and it'll be good.");
-
- close;
-
-L_RandomB:
- mesq l("Thanks for the help!");
- next;
- mesq l("These yeye boxes are way too heavy to be carried alone onto the ship.");
-
- close;
-
-L_RandomC:
- mesq l("I think that yeye's soon be done. Yeye'll soon have a full box of @@s!", getitemlink(CrocClaw));
- next;
- mesq l("And you? How's it yaying on your side?");
- next;
-
- menu
- rif(getq(ShipQuests_Gugli) > 1, l("Task is done.")), L_TaskDone,
- rif(getq(ShipQuests_Gulukan) == 1 && (getq(ShipQuests_Ale) == 0 || getq(ShipQuests_Astapolos) == 0 || getq(ShipQuests_Jalad) == 0 || getq(ShipQuests_QMuller) == 0 || getq(ShipQuests_Tibbo) == 0), l("I'm still busy, I need to find the other sailors.")), -;
-
- mes "";
- mesn;
- mesq l("Who are yeye looking for?");
- next;
-
- menu
- rif(getq(ShipQuests_Ale) == 0, l("Ale.")), L_Top,
- rif(getq(ShipQuests_Astapolos) == 0, l("Astapolos.")), L_Top,
- rif(getq(ShipQuests_Jalad) == 0, l("Jalad.")), L_Top,
- rif(getq(ShipQuests_QMuller) == 0, l("Q'Muller.")), L_Top,
- rif(getq(ShipQuests_Tibbo) == 0, l("Tibbo.")), L_Bottom,
- l("Nobody."), L_Quit;
-
-L_Bottom:
- mes "";
- mesn;
- mesq l("Yeye seen this yoiis at the bottom of the island, check around.");
-
- close;
-
-L_Top:
- mes "";
- mesn;
- mesq l("Yeye seen this yoiis at the top of the island.");
- next;
- mesq l("You yoiis should walk to the north.");
-
- close;
-
-L_NoTask:
- mes "";
- mesn;
- mesq l("*Uff*... And another box of @@s for our starving colleagues is ready.", getitemlink(Croconut));
-
- close;
-
-L_TaskDone:
- mes "";
- mesn;
- mesq lg("That's perfect, yoiis.");
-
- close;
-
-L_Quit:
- closedialog;
- close;
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-}
diff --git a/npc/000-1/jalad.txt b/npc/000-1/jalad.txt
deleted file mode 100644
index 74de7f8f4..000000000
--- a/npc/000-1/jalad.txt
+++ /dev/null
@@ -1,131 +0,0 @@
-// Evol scripts.
-// Authors:
-// Hal9000
-// Qwerty Dragon
-// Reid
-// Description:
-// Sailor part of the Gugli quest.
-// Plushroom box.
-
-000-1,46,35,0 script Jalad NPC_ELVEN_MAN_TRADER_SITTING,{
- if (getq(General_Narrator) > 0)
- {
- sailortalk;
- }
-
- .@g = getq(ShipQuests_Gugli);
- if (.@g == 0) goto L_NoTask;
-
- .@q = getq(ShipQuests_Jalad);
- if (.@q == 1) goto L_CallFunc;
-
- mesn;
- mesq l("*Uff*, *Argh*, why don't you give me some help?");
- next;
- mesq l("I'm not suited for this kind of work!");
- next;
-
- menu
- l("I was going to ask you if you would need any help."), L_Continue,
- l("What exactly is your real job?"), -;
-
- mes "";
- mesn;
- mesq l("I'm the cook's assistant of the ship. I help Gado, La Johanne's Chef, in his daily work.");
- next;
- mesq l("You should go see him. He is one of the most experienced sailors we have.");
- next;
-
- select
- l("I will surely visit him. Do you need any help with your boxes?");
-
-L_Continue:
- mes "";
- mesn;
- mesq l("Surely. Take this box full of @@s.", getitemlink(Plushroom));
- next;
-
- inventoryplace PlushroomBox, 1;
-
- setq ShipQuests_Jalad, 1;
- getitem PlushroomBox, 1;
-
- mes "";
- mesn;
- mesq l("They are so tasty when cooked with some @@. Don't drop any of them!", getitemlink(PiouLegs));
-
- goto L_Close;
-
-L_CallFunc:
- sailorfood;
-
- menu
- rif(getq(ShipQuests_Gugli) > 1, l("Task is done.")), L_TaskDone,
- rif(getq(ShipQuests_Jalad) == 1 && (getq(ShipQuests_Ale) == 0 || getq(ShipQuests_Astapolos) == 0 || getq(ShipQuests_Gulukan) == 0 || getq(ShipQuests_QMuller) == 0 || getq(ShipQuests_Tibbo) == 0), l("I'm still busy, I need to find the other sailors.")), -,
- l("What's that?"), L_Plushroom;
-
- mes "";
- mesn;
- mesq l("Who are you looking for?");
- next;
-
- menu
- rif(getq(ShipQuests_Ale) == 0, l("Ale.")), L_Ale,
- rif(getq(ShipQuests_Astapolos) == 0, l("Astapolos.")), L_Bottom,
- rif(getq(ShipQuests_Gulukan) == 0, l("Gulukan.")), L_Bottom,
- rif(getq(ShipQuests_QMuller) == 0, l("Q'Muller.")), L_Bottom,
- rif(getq(ShipQuests_Tibbo) == 0, l("Tibbo.")), L_Bottom,
- l("Nobody."), -;
-
- closedialog;
- close;
-
-L_Bottom:
- mes "";
- mesn;
- mesq l("I've seen him at the bottom of the island, have a look around.");
-
- close;
-
-L_Ale:
- setcamnpc "Ale";
-
- next;
- mesn;
- mesq l("Look, there he is!");
- next;
-
- restorecam;
- close;
-
-L_Plushroom:
- mes "";
- mesn;
- mesq l("'That', as you call it, is a @@. There are plenty on this island!", getitemlink(Plushroom));
- next;
- mesq l("It's a kind of mushroom. We call it like that because of it's taste, just like a marshmallow. It also has this name because of it's appearance. It looks like a plush!");
- next;
- mesq l("There are some groups of these @@s all around this island. Just pick some and have a try.", getitemlink(Plushroom));
-
- close;
-
-L_NoTask:
- mes "";
- mesn;
- mesq l("Sometimes, I wish someone would be sent here to help us.");
-
- close;
-
-L_TaskDone:
- mes "";
- mesn;
- mesq l("Perfect!");
-
-L_Close:
- goodbye;
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-}
diff --git a/npc/000-1/lean.txt b/npc/000-1/lean.txt
deleted file mode 100644
index 93cfeb7fa..000000000
--- a/npc/000-1/lean.txt
+++ /dev/null
@@ -1,74 +0,0 @@
-// Evol scripts.
-// Authors:
-// Hal9000
-// Qwerty Dragon
-// Reid
-// Description:
-// Sailor who gives some informations to the player.
-
-000-1,79,108,0 script Lean NPC_ELVEN_MAN_BLONDE,{
- if (getq(General_Narrator) > 0)
- {
- sailortalk;
- }
-
- .@gugli = getq(ShipQuests_Gugli);
-
- mesn;
- mesq l("Hi! I can finally see you under the sunlight!");
- next;
- mesq l("I hope you don't mind that we used your raft to build this ramp.");
- next;
- mesq l("We usually don't stop in such splendid places, but the captain let us stay here while he writes down the location of this new island on his map!");
- next;
- mesq l("Some of the crew are looking for goods we can trade with at our next destination.");
- next;
-
- menu
- rif(.@gugli == 1, l("Well, I was in fact looking for them. Where are they now?")), L_Sailors,
- l("Wait... Where are we going?"), L_Artis;
-
-L_Artis:
- mes "";
- mesn;
- mesq l("Artis of course!");
- next;
- mesq l("It's where every merchant ship end their road and we won't be an exception.");
- next;
- mesq l("If you're looking for us there, most of us will be at the tavern of the Red Plush, at the bar counter, for Silvio's case...");
-
- goto L_Close;
-
-L_Sailors:
- mes "";
- mesn;
- mesq l("They are all around the island.");
- next;
- mesq l("I'm sure Tibbo is alone in the south-west corner of the island. He believes it's the best place to collect @@s.", getitemlink(Aquada));
- next;
- mesq l("While Jalad and Ale like to work together, as they usually do on the ship, last time I've seen them, they were near the big lake, north from here.");
- next;
- mesq l("They shouldn't be too far from each other.");
- next;
-
- menu
- l("Thank you for your help."), L_Close,
- l("Gugli mentioned six sailors. What about the others?"), -;
-
- mes "";
- mesn;
- mesq l("I'm not sure. They probably left the ship early this morning. I was not awake yet.");
- next;
- mesq l("You should ask Maxe. He's an early riser.");
-
- close;
-
-L_Close:
- goodbye;
- close;
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-}
diff --git a/npc/000-1/mapflags.txt b/npc/000-1/mapflags.txt
deleted file mode 100644
index 708dd2ab8..000000000
--- a/npc/000-1/mapflags.txt
+++ /dev/null
@@ -1 +0,0 @@
-000-1 mapflag town
diff --git a/npc/000-1/maxe.txt b/npc/000-1/maxe.txt
deleted file mode 100644
index 8bc3eeb17..000000000
--- a/npc/000-1/maxe.txt
+++ /dev/null
@@ -1,112 +0,0 @@
-// Evol scripts.
-// Authors:
-// Hal9000
-// Qwerty Dragon
-// Reid
-// Description:
-// Friend of Sapartan, he gives some information on how to find Gulukan, Astapolos and Q-Muller.
-
-000-1,72,110,0 script Maxe NPC_DEMON_MAN_SITTING_UNDER_TREE,{
- if (getq(General_Narrator) > 0)
- {
- sailortalk;
- }
-
- .@gugli = getq(ShipQuests_Gugli);
- .@knife = getq(ShipQuests_Knife);
-
- mesn;
- mesq lg("We are glad captain Nard has let you join us down here!");
- next;
- mesq l("Living inside a ship is great, but we sometimes need some fresh air.");
- next;
- mesq l("Anyway, can I help you in any way?");
- next;
-
- menu
- rif(.@gugli == 0, l("Well, is there anything I can do here to help?")), L_Help,
- rif(.@gugli == 1, lg("Gugli asked me to help the sailors to gather food. Do you know where I can find them?")), L_Sailors,
- rif(.@gugli > 1, l("Seems I've helped everyone here. I don't know what to do now!")), L_Annoyed,
- rif(.@knife == 0, l("It looks like you are an expert of the life inside 'La Johanne'. Do you know any hidden secrets nobody knows?")), L_Secrets,
- l("No thanks, not at the moment."), L_Quit;
-
-L_Help:
- mes "";
- mesn;
- mesq l("You could start by talking to Gugli. He always has tasks for people willing to help!");
-
- close;
-
-L_Sailors:
- mes "";
- mesn;
- mesq l("I remember I saw a few of them leaving the ship early this morning to get a head start on today's work.");
- next;
- mesq l("I recall seeing Gulukan, Astapolos and Q'Muller.");
- next;
-
- goto L_MenuSailors;
-
-L_MenuSailors:
- menu
- l("Do you know where can I find Gulukan?"), L_Gulukan,
- l("Any clue on where Astapolos may be hidden?"), L_Astapolos,
- l("What about Q'Muller? Where is he?"), L_Qmuller,
- l("Alright. I will go looking for them now."), L_Quit;
-
-L_Gulukan:
- mes "";
- mesn;
- mesq l("Oh, he is not far away from here. Just take the road through the crocojungle north from here.");
- next;
- mesq l("You will find a wooden sign near a crossroad. He is a few steps on the left.");
- next;
-
- goto L_MenuSailors;
-
-L_Astapolos:
- mes "";
- mesn;
- mesq l("Astapolos... That guy is shy like a piou!");
- next;
- mesq l("He likes to hide near the little lake in the north-west side of the island.");
- next;
-
- goto L_MenuSailors;
-
-L_Qmuller:
- mes "";
- mesn;
- mesq l("You need to cross the crocojungle heading north.");
- next;
- mesq l("You can spot Q'Muller on a cliff off toward the west, busy collecting @@s.", getitemlink(Plushroom));
- next;
-
- goto L_MenuSailors;
-
-L_Annoyed:
- mes "";
- mesn;
- mesq l("There is always something you can do here, like killing some tortugas or helping Peter clean the ship from rattos.");
-
- close;
-
-L_Secrets:
- mes "";
- mesn;
- mesq l("Nope, there are no secrets hidden within the ship's hull. Some sailors swear they have seen stowaways hidden somewhere. The bow or the stern? Just stories sailors love to tell...");
- next;
- mesq l("Oh! And in one of the rooms of the second deck you can find Gado's knives. Our chef keeps there the sharpest ones... Probably not just to cut some carrots...");
- next;
- mesq l("Go and grab one of them. A good knife will help with your hunting the creatures of this island.");
-
- close;
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-
-L_Quit:
- goodbye;
-}
diff --git a/npc/000-1/muller.txt b/npc/000-1/muller.txt
deleted file mode 100644
index 276557cb3..000000000
--- a/npc/000-1/muller.txt
+++ /dev/null
@@ -1,132 +0,0 @@
-// Evol scripts.
-// Authors:
-// Hal9000
-// Reid
-// Description:
-// Sailor part of the Gugli's quest.
-// Plushroom box.
-
-000-1,35,69,0 script Q'Muller NPC_ORC_MAN,{
- if (getq(General_Narrator) > 0)
- {
- sailortalk;
- }
-
- .@g = getq(ShipQuests_Gugli);
- if (.@g == 0) goto L_NoTask;
-
- .@q = getq(ShipQuests_QMuller);
- if (.@q == 1) goto L_CallFunc;
-
- mesn;
- mesq l("Can't you see I'm working?!");
- next;
-
- select
- l("Well I'm working too! Don't you want me to carry one of these boxes back to Gugli?");
-
- mes "";
- mesn;
- mesq l("Oh I see... Sailors are not able to do their job anymore, is it like that?!");
- next;
-
- menu
- l("Indeed! Goodbye."), L_Quit,
- l("Yes, it is true! You are not able at all. Nard has been waiting for the food for too long already. Hurry up, you lazy sailors!"), -;
-
- mes "";
- mesn;
- mesq l("Are you blind? Do you really think these boxes are light and soft as a piou's feather?!");
- next;
-
- select
- lg("I am sure that I can run with one of them on my shoulder.");
-
- mes "";
- mesn;
- mesq l("Well then... Take this one!");
- next;
-
- inventoryplace PlushroomBox, 1;
-
- setq ShipQuests_QMuller, 1;
- getitem PlushroomBox, 1;
-
- mes "";
- mesn;
- mesq l("And now I want to see you run!");
-
- close;
-
-L_CallFunc:
- sailorfood;
-
- menu
- rif(getq(ShipQuests_Gugli) > 1, l("Task is done.")), L_TaskDone,
- rif(getq(ShipQuests_QMuller) == 1 && (getq(ShipQuests_Ale) == 0 || getq(ShipQuests_Astapolos) == 0 || getq(ShipQuests_Gulukan) == 0 || getq(ShipQuests_Jalad) == 0 || getq(ShipQuests_Tibbo) == 0), l("I'm still busy, I need to find the other sailors.")), -,
- l("What's that?"), L_Plushroom;
-
- mes "";
- mesn;
- mesq l("Who are you looking for?");
- next;
-
- menu
- rif(getq(ShipQuests_Ale) == 0, l("Ale.")), L_Top,
- rif(getq(ShipQuests_Astapolos) == 0, l("Astapolos.")), L_Top,
- rif(getq(ShipQuests_Jalad) == 0, l("Jalad.")), L_Top,
- rif(getq(ShipQuests_Gulukan) == 0, l("Gulukan.")), L_Bottom,
- rif(getq(ShipQuests_Tibbo) == 0, l("Tibbo.")), L_Bottom,
- l("Nobody."), L_Quit;
-
-L_Bottom:
- mes "";
- mesn;
- mesq l("I've seen him at the bottom of the island, check around.");
-
- close;
-
-L_Top:
- mes "";
- mesn;
- mesq l("I've seen him at the top of the island.");
- next;
- mesq l("You should walk to the north.");
-
- close;
-
-L_Plushroom:
- mes "";
- mesn;
- mesq l("'That', as you call it, is a @@. There are plenty on this island!", getitemlink(Plushroom));
- next;
- mesq l("It's a kind of mushroom. We call it like that because of it's taste, just like a marshmallow. It also has this name because of it's appearance, it looks like a plush!");
- next;
- mesq l("There are few groups of these @@s all around this island. Just pick some and have a try.", getitemlink(Plushroom));
-
- close;
-
-L_NoTask:
- mes "";
- mesn;
- mesq l("You see? I'm working here!");
-
- close;
-
-L_TaskDone:
- mes "";
- mesn;
- mesq l("Good to hear!");
- next;
-
- goodbye;
-
-L_Quit:
- closedialog;
- close;
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-}
diff --git a/npc/000-1/panels.txt b/npc/000-1/panels.txt
deleted file mode 100644
index 71097fa3c..000000000
--- a/npc/000-1/panels.txt
+++ /dev/null
@@ -1,54 +0,0 @@
-// Evol scripts.
-// Authors:
-// Alige
-// Qwerty Dragon
-// Description:
-// Panels to give advice to the players.
-
-000-1,65,93,0 script #panel1 NPC_NO_SPRITE,{
- mesn "Narrator";
- mes col(l("Your heart quickens as your gaze focuses upon a small wooden panel, partly obscured under a layer of wind-blown sand."), 9);
- next;
- mes col(l("You wipe off enough of the sand to manage to read the message written on this crude piece of wood."), 9);
- next;
- mesq l("It's a dangerous place out here. Beware of the mischievous creatures living here!");
- next;
- mesq l("Not content to stay buried in their burrows in the sand, Crocs can be quite a nuisance, infesting this whole island. Tender Feet and Newbies are advised: Avoid touching these crawling red devils. They have huge, deadly claws that can make mincemeat of you! You can recognize them easily by their crabby personalities. Be careful younglings.");
- next;
- mesq l("Furthermore, unless you are planning to stick it out, you should also not even think about gaining experience by messing with those icky pink land jellies. The pink could stick on you, imagine the horror!");
- next;
- mesq l("In fact... Oh, the things that I could tell... But ran out of space on this... Just be reasonable and go home.");
- close;
-
-OnInit:
- .distance = 2;
- end;
-}
-
-000-1,89,51,0 script #panel2 NPC_NO_SPRITE,{
- mesn "Narrator";
- mes col(l("This panel looks in rather good shape, as though some people take care of it regularly. Maybe it has important information."), 9);
- next;
- mes col(l("You can read some lines that are nicely carved into the soft wooden planks."), 9);
- next;
- mesq l("The further you go, the more experience you will get, so here's a small description of all the stats you can upgrade with time. But note that these will probably change in the future and have more complex effects.");
- next;
- mesq l("Strength multiplies the damage of your hits, especially melee ones. You will also be able to carry heavier stuff.");
- next;
- mesq l("Agility greatly increases your attack speed and the chances of you dodging enemy hits.");
- next;
- mesq l("Vitality raises your maximum health points and defense.");
- next;
- mesq l("Intelligence raises your maximum mana points (good for mages) and your mind abilities. Please note: Magic system has not yet been implemented in this world.");
- next;
- mesq l("Dexterity increases your bow damage and your accuracy.");
- next;
- mesq l("Luck helps you do critical hits and dodge the ones dealt by enemies.");
- next;
- mesq l("Have fun, but always remember to pick your stats with good care.");
- close;
-
-OnInit:
- .distance = 2;
- end;
-}
diff --git a/npc/000-1/sapartan.txt b/npc/000-1/sapartan.txt
deleted file mode 100644
index 16da0eb9d..000000000
--- a/npc/000-1/sapartan.txt
+++ /dev/null
@@ -1,102 +0,0 @@
-// Evol scripts.
-// Authors:
-// Hal9000
-// Qwerty Dragon
-// Description:
-// Friend of Maxe, he gives some information on combat system.
-
-000-1,74,111,0 script Sapartan NPC_SAPARTAN,{
- mesn;
- mesq l("Hey Maxe, it's @@!", strcharinfo(0));
- next;
-
- setcamnpc "Maxe";
- mesn "Maxe";
- mesq lg("@@? Welcome my dear!", "@@? Welcome my dear!", strcharinfo(0));
- next;
- mesq lg("Last time I saw you, you were lost at sea on your raft.");
- next;
- restorecam;
-
- mesn;
- mesq lg("True but now she seems pretty fine! Am I right?", "True but now he seems pretty fine! Am I right?");
- next;
-
- menu
- l("Thank you, sir, for your kind words. I am feeling better now."), -,
- lg("I'm still a bit weak at the moment. We should probably talk later."), L_Quit;
-
- mes "";
- mesn;
- mesq l("You can now stay with your new friends and enjoy the warm sand of this little island.");
- next;
- mesq l("But remember that not every place in this world is peaceful and safe nowadays. Even the white shores you are walking on can hide some dangerous beings.");
- next;
-
- select
- l("What danger?! Where?!");
-
- setcamnpc "Maxe";
- mes "";
- mesn "Maxe";
- mesq lg("Come on, Sap! You are scaring her with your stories.", "Come on, Sap! You are scaring him with your stories.");
- next;
- mesq lg("I'm sure she will soon be able to fight all of the creatures living here without any problem.", "I'm sure he will soon be able to fight all of the creatures living here without any problem.");
- next;
-
- restorecam;
-
- mes "";
- mesn;
- mesq lg("Maybe... But I prefer having well-trained people around me when it comes to fighting against dangerous creatures. Do you already feel adept fighting enemies?");
- next;
-
- menu
- l("No, I don't, but I would like to know more about that."), -,
- l("Well... I've only killed some little pious in the ship, that's all."), -,
- l("Yes, I feel strong enough for dangerous combats!"), L_Quit;
-
- mes "";
- mesn;
- mesq l("Then I can give you some tips about fighting.");
- next;
- mesq l("The first thing you should do is to evaluate your enemy.");
- next;
- mesq l("You can easily see if a monster is easy to kill or just impossible to defeat. Do not try against creatures that are way more powerful than you... You'd be risking your life for nothing.");
- next;
- mesq l("Secondly, choose wisely which weapon is suited for you. Some people like to face their enemies closely with a heavy axe, others prefer to attack from a distance with a bow for example.");
- next;
-
- select
- l("Yeah, well what's the difference?");
-
- mes "";
- mesn;
- mesq l("On one hand, ranged weapons are generally weaker than melee ones, but you attack from a safer position. On the other hand, depending on the level of the weapon, melee ones potentially can yeild quicker kills.");
- next;
- mesq l("After choosing your weapon, you also need to know how to use it.");
- next;
- mesq l("You can attack a monster by clicking directly on it. Once selected, you may notice a bar near your target showing you how much health it has left.");
- next;
- mesq l("You can also attack an enemy from your keyboard pressing the 'A' key to select it, and the 'Ctrl' key to attack it, this of course works if you didn't change your keyboard keys yet.");
- next;
-
- menu
- l("Thank you for your tricks. I am going to try them now!"), -,
- l("I already know everything. Bye."), L_Quit;
-
- mes "";
- mesn;
- mesq l("You're welcome. If you can't remember something, just come back here!");
- next;
-
- goodbye;
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-
-L_Quit:
- goodbye;
-}
diff --git a/npc/000-1/shop.txt b/npc/000-1/shop.txt
deleted file mode 100644
index 44b3479ac..000000000
--- a/npc/000-1/shop.txt
+++ /dev/null
@@ -1,33 +0,0 @@
-// Evol scripts.
-// Authors:
-// 4144
-// Reid
-// Description:
-// Fexil's shop bag.
-
-000-1,84,98,0 trader Bag#000-1 NPC_SHOP_BAG,{
-
-OnInit:
- tradertype(NST_MARKET);
-
- sellitem PiouLegs, -1, 15;
- sellitem Bread, -1, 15;
- sellitem Croconut, -1, 50;
- sellitem Aquada, -1, 50;
- sellitem Armbands, -1, 20;
- sellitem LousyMoccasins, -1, 20;
- sellitem PiouSlayer, -1, 15;
-
- .sex = G_OTHER;
- .distance = 3;
- end;
-
-OnClock0000:
- restoreshopitem PiouLegs, 15;
- restoreshopitem Bread, 15;
- restoreshopitem Croconut, 50;
- restoreshopitem Aquada, 50;
- restoreshopitem Armbands, 20;
- restoreshopitem LousyMoccasins, 20;
- restoreshopitem PiouSlayer, 15;
-}
diff --git a/npc/000-1/silvio.txt b/npc/000-1/silvio.txt
deleted file mode 100644
index 7cc3c32b2..000000000
--- a/npc/000-1/silvio.txt
+++ /dev/null
@@ -1,186 +0,0 @@
-// Evol scripts.
-// Authors:
-// Qwerty Dragon
-// Reid
-// Description:
-// Perverted and arrogant sailor.
-
-000-1,86,99,0 script Silvio NPC_SILVIO,{
- mesn;
- mesq l("Hey!");
- next;
- mesq lg("How are you doing, cutie?", "How are you doing, dude?");
- next;
-
- menu
- l("Hello... Do I know you?"), -,
- rif(getq(ShipQuests_Gugli) > 0 && getq(General_Narrator) == 0, l("Fine, could you please tell me where I can find Gugli's sailors?")), L_Sailors,
- l("Uhm, bye."), L_Quit;
-
- mes "";
- mesn;
- mesq lg("Hehe, no. But I'm sure a fox like you would love to meet a catch like me!", "Hehe, no. But I'm sure a noob like you would like to meet an idol like me.");
- next;
- mesq lg("So, what good wind brought you here? Were you on your raft to meet me? Or is it because you've heard of my feats in Artis?", "So, what good wind brought you here? Were you on your raft to meet my Julia? Or is it because you wanted to see the beautiful waitresses of Artis?");
- next;
-
- menu
- lg("You're right, it's about you.", "You're right, it's about Julia."), L_Julia,
- l("What is Artis?"), L_Artis,
- l("None of them?"), -;
-
- mes "";
- mesn;
- mesq lg("My beauty. I was not always a sailor, you know, I was once an important individual!", "My friend. I was not always a sailor, you know, I was once an important individual!");
- next;
- mesq l("Before...");
- next;
-
- setcamnpc "Gugli";
- mes "";
- mesn "Gugli";
- mesq l("Hey, don't worry about him, it's one of the first days in a long time that we can just chill out.");
- next;
- mesq l("Maybe he over did it with the bottle today to celebrate that!");
- next;
- restorecam;
-
- menu
- l("He's funny, it's not a problem."), -,
- l("Ok, I will leave him alone."), L_ForeverAlone;
-
- setcamnpc "Gugli";
- mes "";
- mesn "Gugli";
- mesq l("Oh alright, nevermind then.");
- next;
- restorecam;
-
- mesn;
- mesq l("Ah... Gugli... He's too young to understand our conversation.");
- next;
- mesq l("So, what was I saying?");
- next;
-
- menu
- l("You told me that you 'were' important."), L_VeryImportantNoob,
- l("You mentioned the quality of your wine."), -;
-
- mes "";
- mesn;
- mesq l("Oh really? How could I forget something as important as that?!");
- next;
- mesq l("I think that my wine is of great quality! I'm on my second bottle and I already... What were we talking about again?");
-
- close;
-
-L_VeryImportantNoob:
- mes "";
- mesn;
- mesq l("It's true!");
- next;
- mesq l("But I can't tell you anything about it, I'm sorry.") ;
- next;
-
- setcamnpc "Gugli";
- mes "";
- mesn "Gugli";
- mesq l("Hey Silvio, it's your turn to carry the package, go!");
- next;
- restorecam;
-
- mesn;
- mesq lg("Duty calls me, *hic*, see you later, honey.", "Duty calls me, *hic*, see you later, dude.");
-
- close;
-
-L_Julia:
- mes "";
- mesn;
- mesq lg("You honor me, my beauty, but I'm already taken by Julia!", "Not to kill your dream, but... Julia is mine!");
- next;
- mesq l("She said she will accept me when pious will have teeth. It's just a matter of time, you see?");
- next;
-
- menu
- l("I see. Bye!"), L_Quit,
- l("Oh look, there's a piou behind you!"), L_Piou;
-
-L_Piou:
- mes "";
- mesn;
- mesq l("Seriously?!");
- next;
- mesq l("Hurry, hurry! We need to check its teeth!");
-
- close;
-
-L_Artis:
- mes "";
- mesn;
- mesq l("Artis is a very nice place. There are some hot chicks...");
- next;
- mesq l("The Raijin from the library flirted with me a while ago, so has Enora from the Legion.");
- next;
- mesq l("Oh, and Olga from the marketplace as well!");
- next;
- mesq l("You should look for them when we arrive at the port. You won't regret it! Ehehe...");
-
- goodbye;
-
-L_ForeverAlone:
- mes "";
- mesn "Narrator";
- mes col(l("Silvio starts to speak to his bottle, you leave, letting him have a private conversation."), 9);
-
- close;
-
-L_Sailors:
- mes "";
- mesn;
- mesq l("What? Why? They aren't more attractive than me, why do you want to see them?");
- next;
- mesq l("And what would you give me in exchange for that information?");
- next;
-
- setcamnpc "Gugli";
- mes "";
- mesn "Gugli";
- mesq lg("Stop heckling her, Silvio, or I'll tell her how you always cry like a little baby during thunderstorms.", "Stop heckling him, Silvio, or I'll tell him how you always cry like a little baby during thunderstorms.");
- next;
- restorecam;
-
- mesn;
- mesq l("I...");
- next;
- mesq l("How could you... We said we wouldn't talk about that again!");
- next;
- mesq l("Tibbo went to the south-east of the island, others are gone to the north, and I think that Gulukan is not so far from here.");
- next;
- mesq l("But anyway, take the road which goes to the north to find everybody.");
- next;
- mesq l("Now, leave me alone...");
- next;
-
- menu
- l("See you."), L_Quit,
- l("*Imitate a thunder's sound.*"), -;
-
- closedialog;
-
- npctalk3 l("Aaaaaahhhhhh!");
-
- close;
-
-L_Quit:
- closedialog;
-
- npctalk3 l("Give me a kiss before you say goodbye!");
-
- close;
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-}
diff --git a/npc/000-1/tarlan.txt b/npc/000-1/tarlan.txt
deleted file mode 100644
index 579144788..000000000
--- a/npc/000-1/tarlan.txt
+++ /dev/null
@@ -1,65 +0,0 @@
-// Evol scripts.
-// Author:
-// Reid
-// Description:
-// Sailor hitting a crocotree, then being struck by a falling croconut.
-
-000-1,33,37,0 script Tarlan NPC_TARLAN,{
- .dir = 2;
-
- mesn;
- .@a = rand(4);
- if (.@a == 0) goto L_HardToHit;
- if (.@a == 1) goto L_Aouch;
- if (.@a == 2) goto L_DoYou;
-
- mesq l("Hey you!");
- next;
- mesq l("What are you looking for?");
- next;
-
- menu
- l("Some food."), L_Food,
- l("Nothing, just hanging around."), -;
-
- closedialog;
- npctalk3 l("Ok, see you then!");
- goto L_Quit;
-
-L_Food:
- mes " ";
- mesn;
- mesq l("You can yaye some @@s by hitting these crocotrees.", getitemlink(Croconut));
- next;
- mesq l("Yeye be careful with wild animal's food, some of them are yeyery dangerous, especially the crocs.");
-
- goto L_Quit;
-
-L_HardToHit:
- mesq l("These crocotrees are full of yaying @@s, but they are so hard to hit...", getitemlink(Croconut));
-
- goto L_Quit;
-
-L_Aouch:
- mesq l("Ayouyouch! My head...");
- next;
- mesq l("Damn @@.", getitemlink(Croconut));
-
- goto L_Quit;
-
-L_DoYou:
- mesq l("Do you want to try?");
- next;
- mesq l("Just hit the trunk, and it will yeye a @@.", getitemlink(Croconut));
-
- goto L_Quit;
-
-L_Quit:
- .dir = 4;
- close;
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-}
diff --git a/npc/000-1/tibbo.txt b/npc/000-1/tibbo.txt
deleted file mode 100644
index 5e5a2701d..000000000
--- a/npc/000-1/tibbo.txt
+++ /dev/null
@@ -1,124 +0,0 @@
-// Evol scripts.
-// Authors:
-// Hal9000
-// Qwerty Dragon
-// Reid
-// Description:
-// Sailor part of the Gugli's quest.
-// Aquada box.
-
-000-1,34,111,0 script Tibbo NPC_ELVEN_MAN_STANDING,{
- if (getq(General_Narrator) > 0)
- {
- sailortalk;
- }
-
- .@g = getq(ShipQuests_Gugli);
- if (.@g == 0) goto L_NoTask;
-
- .@q = getq(ShipQuests_Tibbo);
- if (.@q == 1) goto L_CallFunc;
-
- mesn;
- mesq l("Uh? Hi! I'm sorry, but I have no time for chatting.");
- next;
-
- select
- l("Fine... I was just going to give you some help...");
-
- mes "";
- mesn;
- mesq l("Hel... What?! Wait!");
- next;
- mesq l("What kind of help?");
- next;
-
- select
- lg("Gugli asked me to help you carrying one of these boxes you are filling.");
-
- mes "";
- mesn;
- mesq l("Then it seems I have to apologize.");
- next;
- mesq l("I am surprised someone has been sent here to help. It is quite... unusual.");
- next;
- mesq l("Bring this box to Gugli. He will be extremely happy!");
- next;
-
- inventoryplace AquadaBox, 1;
-
- setq ShipQuests_Tibbo, 1;
- getitem AquadaBox, 1;
-
- mes "";
- mesn;
- mesq l("Thank you and be careful with that box. I have worked really hard to fill it!");
-
- goto L_Close;
-
-L_CallFunc:
- sailorfood;
-
- menu
- rif(getq(ShipQuests_Gugli) > 1, l("Task is done.")), L_TaskDone,
- rif(getq(ShipQuests_Tibbo) == 1 && (getq(ShipQuests_Ale) == 0 || getq(ShipQuests_Astapolos) == 0 || getq(ShipQuests_Gulukan) == 0 || getq(ShipQuests_Jalad) == 0 || getq(ShipQuests_QMuller) == 0), l("I'm still busy, I need to find the other sailors.")), -,
- l("What's that food?"), L_Aquada;
-
- mes "";
- mesn;
- mesq l("Who are you looking for?");
- next;
-
- menu
- rif(getq(ShipQuests_Ale) == 0, l("Ale.")), L_Top,
- rif(getq(ShipQuests_Astapolos) == 0, l("Astapolos.")), L_Top,
- rif(getq(ShipQuests_Gulukan) == 0, l("Gulukan.")), L_Top,
- rif(getq(ShipQuests_Jalad) == 0, l("Jalad.")), L_Top,
- rif(getq(ShipQuests_QMuller) == 0, l("Q'Muller.")), L_Top,
- l("Nobody."), -;
-
- goto L_Close;
-
-L_Top:
- mes "";
- mesn;
- mesq l("I've seen him at the top of the island.");
- next;
- mesq l("You should walk to the north to find him.");
-
- close;
-
-L_Aquada:
- mes "";
- mesn;
- mesq l("This is an @@, a light blue sea fruit. They're highly desired in the archipelago.", getitemlink(Aquada));
- next;
- mesq l("You can find them in the ocean, near corals and other sea beings. But the sea is too heavy today, you shouldn't try swimming for now.");
- next;
- mesq lg("Otherwise, if you really want one, and if you feel capable, you can try killing tortugas or crocs if you're strong enough. I'm sure they could drop one or two @@s.",
- "Otherwise, if you really want one, and if you feel capable, you can try killing tortugas or crocs if you're strong enough. I'm sure they could drop one or two @@s.", getitemlink(Aquada));
-
- close;
-
-L_NoTask:
- mes "";
- mesn;
- mesq l("I'm sorry but I have no time to chat with you.");
-
- close;
-
-L_TaskDone:
- mes "";
- mesn;
- mesq l("Awesome!");
-
- close;
-
-L_Close:
- goodbye;
-
-OnInit:
- .sex = G_MALE;
- .distance = 2;
- end;
-}
diff --git a/npc/001-1/_import.txt b/npc/001-1/_import.txt
index 6d45ede5f..12b4774e2 100644
--- a/npc/001-1/_import.txt
+++ b/npc/001-1/_import.txt
@@ -31,6 +31,7 @@
"npc/001-1/pious.txt",
"npc/001-1/qonan.txt",
"npc/001-1/qpid.txt",
+"npc/001-1/rock.txt",
"npc/001-1/rumly.txt",
"npc/001-1/salem.txt",
"npc/001-1/shop.txt",
diff --git a/npc/001-1/rock.txt b/npc/001-1/rock.txt
new file mode 100644
index 000000000..967e5b9e4
--- /dev/null
+++ b/npc/001-1/rock.txt
@@ -0,0 +1,173 @@
+// Evol scripts.
+// Author:
+// Reid
+// Description:
+// Blacksmith's assistant of Artis
+// Variables:
+// ArtisQuests_Enora
+// Values:
+// 0 Default.
+// 1 BlackSmith quest delivered.
+// 2 Chelios Quest given.
+// 3 Chelios Quest done.
+// 4 BlackSmith gave the sword.
+
+001-1,88,114,0 script rock NPC_PLAYER,{
+
+ function quest_play {
+ mes l("Before start witch item do you want to play");
+ mes "##B" + l("Drag and drop an item from your inventory.") + "##b";
+
+ .item = requestitem();
+ if (.item < 1)
+ {
+ mes l("You didn't add a item.");
+ close;
+ }
+
+ if (countitem(.item) < 1)
+ {
+ mes l("You don't have the item.");
+ close;
+ }
+ delitem .item, 1;
+ goto quest_choose;
+ }
+
+ function quest_game {
+ if (.choose == 1){
+ mes l("you choose rock.");
+ next;
+ }
+ else if (.choose == 2){
+ mes l("you choose scissors.");
+ next;
+ }
+ else {
+ mes l("you choose paper.");
+ next;
+ }
+
+ .npcChoose = rand(3);
+ if (.npcChoose == 0)
+ {
+ mes l("the npc choose rock.");
+ next;
+ if (.choose == 1)
+ {
+ mes l("draw.");
+ goto quest_choose;
+ }
+ else if (.choose == 2)
+ {
+ mes l("you lose");
+ close;
+ }
+ else if (.choose == 3)
+ {
+ mes l("you win");
+ getitem .item, 2;
+ close;
+ }
+ }
+ else if (.npcChoose == 1)
+ {
+ mes l("the npc choose scissors.");
+ next;
+ if (.choose == 2)
+ {
+ mes l("draw.");
+ goto quest_choose;
+ }
+ else if (.choose == 3)
+ {
+ mes l("you lose");
+ close;
+ }
+ else if (.choose == 1)
+ {
+ mes l("you win @@",getitemlink(.item));
+ getitem .item, 2;
+ close;
+ }
+ }
+ else if (.npcChoose == 2)
+ {
+ mes l("the npc choose paper.");
+ next;
+ if (.choose == 3)
+ {
+ mes l("draw.");
+ goto quest_choose;
+ }
+ else if (.choose == 1)
+ {
+ mes l("you lose");
+ close;
+ }
+ else if (.choose == 2)
+ {
+ mes l("you win");
+ getitem .item, 2;
+ close;
+ }
+ }
+ close;
+ }
+
+
+ function quest_choose {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("What do you choose?");
+ next;
+ do
+ {
+ select
+ l("Rock"),
+ l("Scissors"),
+ l("Paper");
+
+ switch (@menu)
+ {
+ case 1:
+ .choose = 1;
+ quest_game;
+ break;
+ case 2:
+ .choose = 2;
+ quest_game;
+ break;
+ case 3:
+ .choose = 3;
+ quest_game;
+ break;
+ }
+ } while (@menu != 4);
+ close;
+ }
+
+ speech S_LAST_NEXT, l("Hello do you want to play rock scissors paper?");
+ do
+ {
+ select
+ l("Hello"),
+ menuaction(l("Quit"));
+
+ switch (@menu)
+ {
+ case 1:
+ quest_play;
+ break;
+ }
+ } while (@menu != 2);
+
+ closedialog;
+ goodbye;
+ close;
+
+OnInit:
+ .sex = G_MALE;
+ .distance = 3;
+ end;
+}
+
diff --git a/npc/005-1/_import.txt b/npc/005-1/_import.txt
new file mode 100644
index 000000000..1a1a15781
--- /dev/null
+++ b/npc/005-1/_import.txt
@@ -0,0 +1,5 @@
+// Map 005-1: Drasil Island
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+"npc/005-1/_mobs.txt",
+"npc/005-1/_warps.txt",
+"npc/005-1/zegas.txt",
diff --git a/npc/005-1/_mobs.txt b/npc/005-1/_mobs.txt
new file mode 100644
index 000000000..5f89c4fbb
--- /dev/null
+++ b/npc/005-1/_mobs.txt
@@ -0,0 +1,39 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 005-1: Drasil Island mobs
+005-1,28,27,6,9 monster Tortuga 1004,3,16000,120000
+005-1,58,96,34,14 monster Tortuga 1004,4,35000,300000
+005-1,71,73,4,12 monster Tortuga 1004,1,35000,300000
+005-1,52,70,4,17 monster Tortuga 1004,2,35000,300000
+005-1,37,44,11,5 monster Tortuga 1004,2,35000,120000
+005-1,42,19,9,16 monster Tortuga 1004,2,35000,120000
+005-1,87,15,12,11 monster Tortuga 1004,3,35000,120000
+005-1,44,53,2,1 monster Little Blub 1007,2,25000,120000
+005-1,61,42,7,10 monster Little Blub 1007,2,25000,120000
+005-1,62,3,10,4 monster Little Blub 1007,2,25000,120000
+005-1,87,47,4,3 monster Blub 1008,1,60000,120000
+005-1,85,11,2,3 monster Little Blub 1007,1,25000,120000
+005-1,85,36,14,9 monster Little Blub 1007,2,35000,120000
+005-1,48,39,9,6 monster Little Blub 1007,1,35000,120000
+005-1,28,26,3,5 monster Little Blub 1007,1,35000,120000
+005-1,35,28,0,1 monster Plushroom Field 1011,1,35000,150000
+005-1,54,93,0,1 monster Plushroom Field 1011,1,35000,150000
+005-1,63,58,4,2 monster Plushroom Field 1011,1,35000,150000
+005-1,54,42,0,2 monster Plushroom Field 1011,1,35000,150000
+005-1,78,36,4,5 monster Plushroom Field 1011,2,35000,150000
+005-1,71,40,1,1 monster Plushroom Field 1011,1,35000,150000
+005-1,41,83,8,9 monster Croc 1006,2,35000,300000
+005-1,63,9,10,3 monster Croc 1006,1,35000,300000
+005-1,76,46,1,1 monster Croc 1006,1,35000,300000
+005-1,52,70,4,17 monster Croc 1006,1,35000,300000
+005-1,71,55,4,4 monster Croc 1006,1,35000,300000
+005-1,78,93,0,0 monster Crocotree 1010,1,420000,240000
+005-1,57,82,0,0 monster Crocotree 1010,1,420000,240000
+005-1,39,90,0,0 monster Crocotree 1010,1,420000,240000
+005-1,67,71,0,0 monster Crocotree 1010,1,420000,240000
+005-1,53,55,0,0 monster Crocotree 1010,1,420000,240000
+005-1,64,41,0,0 monster Crocotree 1010,1,420000,240000
+005-1,31,47,0,0 monster Crocotree 1010,1,420000,240000
+005-1,44,22,0,0 monster Crocotree 1010,1,420000,240000
+005-1,70,11,0,0 monster Crocotree 1010,1,420000,240000
+005-1,84,44,0,0 monster Crocotree 1010,1,420000,240000
+005-1,36,86,3,5 monster Maggot 1030,50,35000,120000
diff --git a/npc/005-1/_warps.txt b/npc/005-1/_warps.txt
new file mode 100644
index 000000000..6c1f5599a
--- /dev/null
+++ b/npc/005-1/_warps.txt
@@ -0,0 +1,7 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 005-1: Drasil Island warps
+005-1,38,96,0 warp #005-1_38_96 0,0,000-2-0,21,28
+005-1,31,80,0 warp #005-1_31_80 0,0,005-2,33,42
+005-1,34,74,0 warp #005-1_34_74 0,0,005-3,25,42
+005-1,48,70,0 warp #005-1_48_70 0,0,005-4,25,42
+005-1,39,68,0 warp #005-1_39_68 0,0,005-5,25,41
diff --git a/npc/005-1/zegas.txt b/npc/005-1/zegas.txt
new file mode 100644
index 000000000..cbeb83294
--- /dev/null
+++ b/npc/005-1/zegas.txt
@@ -0,0 +1,32 @@
+// Evol scripts.
+// Authors:
+// gumi
+// Reid
+// Description:
+// Lloyd the banker NPC.
+// Variables:
+// 0 ArtisQuests_Lloyd
+// 1 ArtisQuests_Fexil
+// 2 ArtisQuests_Enora
+// Quest states:
+// 00 -- Never talked
+// 01 -- Registred on the Guild
+// 10 -- not started
+// 11 -- Lloyd warned about the quest
+// 20 -- Default.
+// 21 -- BlackSmith quest delivered.
+// 22 -- Chelios Quest given.
+// 23 -- Chelios Quest done.
+
+005-1,35,75,0 script Zegas NPC_LLOYD,{
+
+
+
+OnPCLoginEvent:
+ if (#MerchantBank)
+ {
+ BankVault += max(0, #MerchantBank);
+ #MerchantBank = 0;
+ }
+ end;
+}
diff --git a/npc/005-2/_import.txt b/npc/005-2/_import.txt
new file mode 100644
index 000000000..2ec41cb54
--- /dev/null
+++ b/npc/005-2/_import.txt
@@ -0,0 +1,5 @@
+// Map 005-2: Merchant Guild
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+"npc/005-2/_mobs.txt",
+"npc/005-2/_warps.txt",
+"npc/005-2/saxsochest.txt",
diff --git a/npc/005-2/_mobs.txt b/npc/005-2/_mobs.txt
new file mode 100644
index 000000000..20c2dad4f
--- /dev/null
+++ b/npc/005-2/_mobs.txt
@@ -0,0 +1,3 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 005-2: Merchant Guild mobs
+005-2,32,36,0,0 monster Saxso Ghost 1076,1,35000,300000
diff --git a/npc/000-1-3/_warps.txt b/npc/005-2/_warps.txt
index 655d742f9..32dfabb6b 100644
--- a/npc/000-1-3/_warps.txt
+++ b/npc/005-2/_warps.txt
@@ -1,3 +1,3 @@
// This file is generated automatically. All manually added changes will be removed when running the Converter.
-// Map 000-1-3: Drasil Island warps
-000-1-3,94,100,0 warp #000-1-3_94_100 0,0,000-2-0,21,28
+// Map 005-2: Merchant Guild warps
+005-2,33,43,0 warp #005-2_33_43 0,0,005-1,30,80
diff --git a/npc/005-2/saxsochest.txt b/npc/005-2/saxsochest.txt
new file mode 100644
index 000000000..3e10fe407
--- /dev/null
+++ b/npc/005-2/saxsochest.txt
@@ -0,0 +1,80 @@
+// Author:
+// Crazyfefe
+
+005-2,44,41,0 script Saxso Chest NPC_NO_SPRITE,{
+
+ .key = SaxsoKey;
+ .reward = ToothNecklace;
+
+ function quest_completed{
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("you allready open the chest.");
+ setq CandorQuest_Chest, 0;
+ close;
+ }
+
+ function quest_open {
+ if (countitem(.key) > 0)
+ {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("You open the chest and found a @@.",getitemlink(.reward));
+ delitem .key,1;
+ getitem .reward,1;
+ setq CandorQuest_Chest, 1;
+ close;
+ }
+ else
+ {
+ speech S_FIRST_BLANK_LINE,
+ l("you don't have the key.");
+ close;
+ }
+ }
+
+ function quest_started {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("it look close.");
+ narrator S_LAST_NEXT,
+ l("you should use a key for open it.");
+ do
+ {
+ select
+ l("Use a key."),
+ menuaction(l("Quit"));
+
+ switch (@menu)
+ {
+ case 1:
+ quest_open;
+ break;
+ }
+ } while (@menu != 2);
+ }
+
+ do
+ {
+ .@chest = getq(CandorQuest_Chest);
+ if (.@chest == 1)
+ goto quest_completed;
+ select
+ rif(.@chest == 0,l("There are a dusty chest.")),
+ menuaction(l("Quit"));
+
+ switch (@menu)
+ {
+ case 1:
+ quest_started;
+ break;
+ }
+ } while (@menu != 2);
+
+ closedialog;
+ goodbye;
+ close;
+
+OnInit:
+ .sex = G_MALE;
+ .distance = 3;
+ end;
+}
+
diff --git a/npc/005-3/_import.txt b/npc/005-3/_import.txt
new file mode 100644
index 000000000..4704827ee
--- /dev/null
+++ b/npc/005-3/_import.txt
@@ -0,0 +1,4 @@
+// Map 005-3: Merchant Guild
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+"npc/005-3/_mobs.txt",
+"npc/005-3/_warps.txt",
diff --git a/npc/005-3/_mobs.txt b/npc/005-3/_mobs.txt
new file mode 100644
index 000000000..8e2a8474b
--- /dev/null
+++ b/npc/005-3/_mobs.txt
@@ -0,0 +1,3 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 005-3: Merchant Guild mobs
+005-3,34,37,10,3 monster Cave Maggot 1027,8,35000,300000
diff --git a/npc/005-3/_warps.txt b/npc/005-3/_warps.txt
new file mode 100644
index 000000000..d32c88bb9
--- /dev/null
+++ b/npc/005-3/_warps.txt
@@ -0,0 +1,3 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 005-3: Merchant Guild warps
+005-3,25,43,0 warp #005-3_25_43 0,0,005-1,34,75
diff --git a/npc/005-4/_import.txt b/npc/005-4/_import.txt
new file mode 100644
index 000000000..000bb26f5
--- /dev/null
+++ b/npc/005-4/_import.txt
@@ -0,0 +1,6 @@
+// Map 005-4: Merchant Guild
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+"npc/005-4/_warps.txt",
+"npc/005-4/rosen.txt",
+"npc/005-4/shop.txt",
+"npc/005-4/tolchi.txt",
diff --git a/npc/005-4/_warps.txt b/npc/005-4/_warps.txt
new file mode 100644
index 000000000..97c3f55a7
--- /dev/null
+++ b/npc/005-4/_warps.txt
@@ -0,0 +1,3 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 005-4: Merchant Guild warps
+005-4,25,43,0 warp #005-4_25_43 0,0,005-1,48,71
diff --git a/npc/005-4/rosen.txt b/npc/005-4/rosen.txt
new file mode 100644
index 000000000..32d2bcb81
--- /dev/null
+++ b/npc/005-4/rosen.txt
@@ -0,0 +1,80 @@
+// Evol scripts.
+// Author:
+// Reid
+// Description:
+// Light Armor shop keeper.
+// Variables:
+// ArtisQuests_Enora
+// Values:
+// 0 Default.
+// 1 BlackSmith quest delivered.
+// 2 Chelios Quest given.
+// 3 Chelios Quest done.
+// 4 BlackSmith gave the sword.
+// 5 Light Armor Shop quest delivered.
+// 6 Light Armor Shop gave the cloths.
+
+005-4,29,36,0 script Rosen NPC_ELVEN_FEMALE_ARMOR_SHOP,{
+
+ function explain_craft {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Did you see Don the blacksmith? He might know how you could improve your metal equipment."),
+ l("Nevertheless, you can craft some cards that you can then attach to your equipment."),
+ l("We sell a brimmed hat, you can craft a feather card and attach it to this hat to obtain an enhanced version of it!");
+
+ return;
+ }
+
+ function enora_quest {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("I thought that she would never come to pick it up!"),
+ l("Here it is, a fashionable @@.", getitemlink(ArtisTankTop, CamelCottonDye)),
+ l("I asked Calypsan to dye this tank top, now it has an unique look!");
+
+ narrator S_LAST_NEXT, l("You pick up the package.");
+
+ setq ArtisQuests_Enora, 6;
+
+ return;
+ }
+
+ speech S_LAST_NEXT,
+ l("Welcome to my office."),
+ l("What would you like today?");
+
+ do
+ {
+ .@enora = getq(ArtisQuests_Enora);
+ select
+ rif(.@enora == 5, lg("I came to retrieve a package for Enora.")),
+ menuaction(l("Trade")),
+ l("How can I improve my equipment?"),
+ menuaction(l("Quit"));
+
+ switch (@menu)
+ {
+ case 1:
+ enora_quest;
+ closedialog;
+ goodbye;
+ close;
+ case 2:
+ closedialog;
+ shop "Store#001-2-0";
+ close;
+ case 3:
+ explain_craft;
+ break;
+ case 4:
+ closedialog;
+ goodbye;
+ close;
+ }
+ } while (1);
+
+
+OnInit:
+ .sex = G_FEMALE;
+ .distance = 2;
+ end;
+}
diff --git a/npc/005-4/shop.txt b/npc/005-4/shop.txt
new file mode 100644
index 000000000..bb5dd0e25
--- /dev/null
+++ b/npc/005-4/shop.txt
@@ -0,0 +1,37 @@
+// Evol scripts.
+// Author:
+// Reid
+// Description:
+// Light Armor shop keeper.
+// Variables:
+// ArtisQuests_Enora
+// Values:
+// 0 Default.
+// 1 BlackSmith quest delivered.
+// 2 Chelios Quest given.
+// 3 Chelios Quest done.
+// 4 BlackSmith gave the sword.
+// 5 Light Armor Shop quest delivered.
+// 6 Light Armor Shop gave the cloths.
+
+005-4,30,37,0 trader Shop NPC_NO_SPRITE,{
+
+OnInit:
+ tradertype(NST_MARKET);
+
+ sellitem RoundLeatherShield, -1, 3;
+ sellitem Knife, -1, 5;
+ sellitem TolchiArrow, -1, 30000;
+ sellitem LousyMoccasins, -1, 20;
+
+ .sex = G_OTHER;
+ .distance = 3;
+ end;
+
+OnClock0000:
+ restoreshopitem RoundLeatherShield, 3;
+ restoreshopitem Knife, 5;
+ restoreshopitem TolchiArrow, 30000;
+ restoreshopitem LousyMoccasins, 20;
+}
+
diff --git a/npc/005-4/tolchi.txt b/npc/005-4/tolchi.txt
new file mode 100644
index 000000000..99d68d691
--- /dev/null
+++ b/npc/005-4/tolchi.txt
@@ -0,0 +1,24 @@
+// Evol scripts.
+// Author:
+// Reid
+// Description:
+// Light Armor shop keeper.
+// Variables:
+// ArtisQuests_Enora
+// Values:
+// 0 Default.
+// 1 BlackSmith quest delivered.
+// 2 Chelios Quest given.
+// 3 Chelios Quest done.
+// 4 BlackSmith gave the sword.
+// 5 Light Armor Shop quest delivered.
+// 6 Light Armor Shop gave the cloths.
+
+005-4,42,37,0 script Tolchi NPC_ELVEN_FEMALE_ARMOR_SHOP,{
+
+
+OnInit:
+ .sex = G_FEMALE;
+ .distance = 2;
+ end;
+}
diff --git a/npc/005-5-2/_import.txt b/npc/005-5-2/_import.txt
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/npc/005-5-2/_import.txt
diff --git a/npc/005-5-2/_mobs.txt b/npc/005-5-2/_mobs.txt
new file mode 100644
index 000000000..012b3bc0e
--- /dev/null
+++ b/npc/005-5-2/_mobs.txt
@@ -0,0 +1,2 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 005-5-2: Merchant Guild mobs
diff --git a/npc/005-5-2/_savepoints.txt b/npc/005-5-2/_savepoints.txt
new file mode 100644
index 000000000..93f58f12f
--- /dev/null
+++ b/npc/005-5-2/_savepoints.txt
@@ -0,0 +1,2 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 005-5-2: Merchant Guild saves
diff --git a/npc/005-5-2/_warps.txt b/npc/005-5-2/_warps.txt
new file mode 100644
index 000000000..c8ee78246
--- /dev/null
+++ b/npc/005-5-2/_warps.txt
@@ -0,0 +1,2 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 005-5-2: Merchant Guild warps
diff --git a/npc/005-5/_import.txt b/npc/005-5/_import.txt
new file mode 100644
index 000000000..0b82262ad
--- /dev/null
+++ b/npc/005-5/_import.txt
@@ -0,0 +1,5 @@
+// Map 005-5: Merchant Guild
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+"npc/005-5/_warps.txt",
+"npc/005-5/cynric.txt",
+"npc/005-5/nylo.txt",
diff --git a/npc/005-5/_warps.txt b/npc/005-5/_warps.txt
new file mode 100644
index 000000000..9d57c5ea5
--- /dev/null
+++ b/npc/005-5/_warps.txt
@@ -0,0 +1,3 @@
+// This file is generated automatically. All manually added changes will be removed when running the Converter.
+// Map 005-5: Merchant Guild warps
+005-5,25,43,0 warp #005-5_25_43 0,0,005-1,39,69
diff --git a/npc/005-5/cynric.txt b/npc/005-5/cynric.txt
new file mode 100644
index 000000000..b988d3257
--- /dev/null
+++ b/npc/005-5/cynric.txt
@@ -0,0 +1,249 @@
+// Author:
+// Saulc
+
+005-5,30,37,0 script Cynric NPC_LLOYD,{
+
+// Evol scripts.
+// Authors:
+// gumi
+// Reid
+// Description:
+// Lloyd the banker NPC.
+// Variables:
+// 0 ArtisQuests_Lloyd
+// 1 ArtisQuests_Fexil
+// 2 ArtisQuests_Enora
+// Quest states:
+// 00 -- Never talked
+// 01 -- Registred on the Guild
+// 10 -- not started
+// 11 -- Lloyd warned about the quest
+// 20 -- Default.
+// 21 -- BlackSmith quest delivered.
+// 22 -- Chelios Quest given.
+// 23 -- Chelios Quest done.
+
+
+ function enora_quest {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Black iron... That is a very specific request that you have for me!"),
+ l("Let me check in my inventory book..."),
+ l("..."),
+ l("Yes, I have some! \"5x Black Iron Ingots\""),
+ lg("Is this for you or somebody else? Because you need to be registered to obtain these materials.");
+
+ switch (selectd(ArtisQuests_Enora,
+ l("This is for my own use."),
+ l("Chelios asked me to get it.")))
+ {
+ case 1:
+ speech S_FIRST_BLANK_LINE,
+ l("This is your first time asking for something, you won't pay this time, take it as a sign of good faith!"),
+ l("If you need something in the future, do not hesitate to pass by here, our stock is full of boxes collecting dust.");
+ emotion E_WINK;
+ break;
+ case 2:
+ speech S_FIRST_BLANK_LINE,
+ l("Chelios... He is part of the Blacksmith House, is he not?"),
+ l("Since Don settled in Artis he and his band refused to register to the Merchant Guild."),
+ l("I will close an eye for once, but only because it's your first time asking for something!"),
+ l("Sometimes a good merchant needs to reach out first. It's on the house, give Chelios my regards!");
+ emotion E_WINK;
+ break;
+ }
+ setq ArtisQuests_Enora, 3;
+
+ return;
+ }
+
+ function explain_guild {
+ speech S_LAST_NEXT,
+ l("The guild is in charge of the commerce regularization throughout Artis and its surroundings."),
+ l("With the help of the town hall and the Legion of Aemil we organize some auction and we help local merchants to launch their businesses."),
+ l("We also feature some services like a storage and a bank for members."),
+ l("Registration is open to everybody, but newcomers need to pay a fee for all of the paperwork.");
+
+ narrator S_FIRST_BLANK_LINE,
+ l("The bank and item storage is shared between all characters within a same account."),
+ l("With it, you can safely move items and funds between your characters."),
+ l("To move between characters that are on different accounts, you have to use the Trade function.");
+ return;
+ }
+
+ function first_visit {
+ speech S_LAST_NEXT,
+ l("Welcome!"),
+ l("My name is Lloyd, I am a representative of the Merchant Guild of Artis.");
+
+ selectd(l("My name is @@...", strcharinfo(0)));
+
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("\"@@\", I like this name!", strcharinfo(0)),
+ l("Oh, wait a second...");
+ narrator S_LAST_NEXT,
+ l("Lloyd is searching something in his book.");
+ speech S_LAST_NEXT,
+ l("I see."),
+ lg("You are new around here, right?");
+
+ if (selectd(l("How do you know?"), l("Yes I am.")) == 1)
+ {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Oh, it is simple. I have on this book the names of every citizen of Artis and its surroundings."),
+ l("And I have no mention of a so called \"@@\" on it!", strcharinfo(0));
+ }
+ else
+ {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("I knew it!");
+ }
+
+ speech S_LAST_NEXT,
+ l("Let me explain to you what the Merchant Guild is for.");
+
+ explain_guild;
+ next;
+
+ .@price = 500;
+ speech S_LAST_NEXT,
+ l("The fee is of @@ E. So, do you want to register?", .@price);
+
+ switch (selectd(l("Yes."),
+ l("I don't have the time now.")))
+ {
+ case 1:
+ if (Zeny < .@price)
+ {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("You do not seem to have enough money, come back later!");
+ }
+ else
+ {
+ Zeny = Zeny - .@price;
+ setq ArtisQuests_Lloyd, 1;
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Perfect!"),
+ l("I wrote your name on the book, you are now free to use the storage and bank services.");
+ }
+ break;
+ case 2:
+ break;
+ }
+
+ return;
+ }
+
+ function paper_to_deliver {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Now that you bring up that topic, that reminds me of something..."),
+ l("Earlier today there was this young seller named Fexil that passed by here."),
+ l("He asked to lend some money and a place to open his store, I think that he asked for a place on the merchant squares on the south-west of the city..."),
+ l("Anyway, he forgot his permit when he left the building."),
+ l("Could you bring it to him?");
+
+ do
+ {
+ .@q = selectd(ArtisQuests_Fexil,
+ l("Ok, I will bring it to him."),
+ l("I need more information first."),
+ l("I don't have the time."));
+ switch (.@q)
+ {
+ case 1:
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Thank you for this!");
+ setq ArtisQuests_Fexil, 1;
+ break;
+ case 2:
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("You should look for a seller named Fexil around the merchant square."),
+ l("Ask other merchants, they might know where he is.");
+ break;
+ case 3:
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("No problem, come back later if you changed your mind!");
+ break;
+ }
+ } while (.@q == 2);
+ }
+
+ if (getq(ArtisQuests_Lloyd) == 0)
+ {
+ first_visit;
+
+ closedialog;
+ goodbye;
+ close;
+ }
+
+ speech S_LAST_NEXT,
+ l("Welcome to the Merchant Guild of Artis!"),
+ l("What do you want today?");
+
+ do
+ {
+ .@enora = getq(ArtisQuests_Enora);
+
+ selectd
+ rif(.@enora == 2, l("I'm looking for some black iron ingots.")),
+ l("I would like to store some items."),
+ l("I would like to perform money transactions."),
+ l("What is this guild for?"),
+ l("Does the guild has any work for me right now?"),
+ l("Bye.");
+
+ switch (@menu)
+ {
+ case 1:
+ enora_quest;
+ break;
+ case 2:
+ openstorage;
+ closedialog;
+ close;
+ break;
+ case 3:
+ MerchantGuild_Bank;
+ break;
+ case 4:
+ mes "";
+ explain_guild;
+ break;
+ case 5:
+ if (getq(ArtisQuests_Fexil) >= 1)
+ {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("There are no tasks for you right now.");
+ continue;
+ }
+
+ paper_to_deliver;
+
+ continue;
+ }
+ if (@menu != 6)
+ {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT | S_NO_NPC_NAME,
+ l("Something else?");
+ }
+ } while (@menu != 6);
+
+ closedialog;
+ goodbye;
+ close;
+
+OnInit:
+ .quest_debug = ArtisQuests_Lloyd;
+ .sex = G_MALE;
+ .distance = 4;
+ end;
+
+OnPCLoginEvent:
+ if (#MerchantBank)
+ {
+ BankVault += max(0, #MerchantBank);
+ #MerchantBank = 0;
+ }
+ end;
+}
+
diff --git a/npc/005-5/nylo.txt b/npc/005-5/nylo.txt
new file mode 100644
index 000000000..503824916
--- /dev/null
+++ b/npc/005-5/nylo.txt
@@ -0,0 +1,11 @@
+// Author:
+// Saulc
+
+005-5,27,38,0 script Nylo NPC_PLAYER,{
+
+OnInit:
+ .sex = G_MALE;
+ .distance = 3;
+ end;
+}
+
diff --git a/npc/_import.txt b/npc/_import.txt
index 01427c0e2..90ebfc55f 100644
--- a/npc/_import.txt
+++ b/npc/_import.txt
@@ -5,6 +5,7 @@
@include "npc/000-0/_import.txt"
@include "npc/000-1-1/_import.txt"
@include "npc/000-1-2/_import.txt"
+@include "npc/000-1-4/_import.txt"
@include "npc/000-1-9/_import.txt"
@include "npc/000-1/_import.txt"
@include "npc/000-2-0/_import.txt"
@@ -63,10 +64,14 @@
@include "npc/003-2-0/_import.txt"
@include "npc/003-2-1/_import.txt"
@include "npc/003-2-2/_import.txt"
-@include "npc/004-0/_import.txt"
@include "npc/004-1-1-1/_import.txt"
@include "npc/004-1-1/_import.txt"
@include "npc/004-1/_import.txt"
+@include "npc/005-1/_import.txt"
+@include "npc/005-2/_import.txt"
+@include "npc/005-3/_import.txt"
+@include "npc/005-4/_import.txt"
+@include "npc/005-5/_import.txt"
@include "npc/008-1/_import.txt"
@include "npc/008-2-0/_import.txt"
@include "npc/008-2-1/_import.txt"