diff options
-rw-r--r-- | db/constants.conf | 2 | ||||
-rw-r--r-- | npc/003-1/jerican.txt | 19 | ||||
-rw-r--r-- | npc/functions/news.txt | 41 |
3 files changed, 47 insertions, 15 deletions
diff --git a/db/constants.conf b/db/constants.conf index 3319de4da..bedd5e165 100644 --- a/db/constants.conf +++ b/db/constants.conf @@ -3931,6 +3931,8 @@ constants_db: { // Not animated NPCs NPC_CONSTR_WORKER: 180 + NPC_JOURNALMAN: 309 + // Animated NPCs NPC_CONFUSED_TREE: 400 NPC_ALIGE: 401 diff --git a/npc/003-1/jerican.txt b/npc/003-1/jerican.txt index 2fbcc0ebe..e25cab12d 100644 --- a/npc/003-1/jerican.txt +++ b/npc/003-1/jerican.txt @@ -1,23 +1,14 @@ -// TMW-2 Script +// TMW2 scripts. // Author: // Saulc +// Jesusalva // Description: -// An NPC in need of a quest +// Jerican gives the player latest news on the world -003-1,93,125,0 script Jerican NPC_PLAYER,{ - - -hello; +003-1,93,125,0 script Jerican NPC_JOURNALMAN,{ + Journalman(.name$); OnInit: - .@npcId = getnpcid(0, .name$); - setunitdata(.@npcId, UDT_HEADTOP, NPCEyes); - setunitdata(.@npcId, UDT_HEADMIDDLE, ForestArmor); // Maybe Bromenal Chest? ...Who is Jerican anyway? - setunitdata(.@npcId, UDT_HEADBOTTOM, CottonShorts); // Maybe LeatherTrousers? - setunitdata(.@npcId, UDT_WEAPON, DeepBlackBoots); // Boots - setunitdata(.@npcId, UDT_HAIRSTYLE, 3); - setunitdata(.@npcId, UDT_HAIRCOLOR, 9); - .sex = G_MALE; .distance = 5; end; diff --git a/npc/functions/news.txt b/npc/functions/news.txt index e1539ae40..88966d3a4 100644 --- a/npc/functions/news.txt +++ b/npc/functions/news.txt @@ -8,7 +8,7 @@ function script GameNews { .@entry=getarg(0, 0); switch(.@entry) { case 0: - case 20180530: + case 20180531: mes ""; mes col("Release 4.0 - Quest Giver's Handbook", 9); next; @@ -110,3 +110,42 @@ function script GameNews { return; } +function script Journalman { + npctalk3 any( + l("Hurnscald under siege! No ships are capable to give aid!"), + l("Tulimshar mines overrun! Great rewards for a lending hand!"), + l("Monsters are dropping strange stuff! The world is changing!"), + l("All hail @@ and Andrei Sakar, heroes of the world!", $MOST_HEROIC$)); + mesn getarg(0); + mesq l("Bonjour! I am @@, and I am from the Press! Read the latest news with me!", getarg(0)); + + @menu=0; + while (@menu != 1) { + select + l("Thanks for your help!"), + l("2018-05-31 (Latest)"), + l("2018-04-08"), + l("2018-03-23"), + l("2018-03-16"); + mes ""; + switch (@menu) { + case 2: + GameNews(20180531); + break; + case 3: + GameNews(20180408); + break; + case 4: + GameNews(20180323); + break; + case 5: + GameNews(20180316); + break; + } + } + + mesn getarg(0); + mesq l("Good bye!"); + close; + return; +} |