Updated NIflheim Town and Quest NPCs

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12472 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
L0ne_W0lf 2008-04-04 04:28:25 +00:00
parent 7900111f5a
commit f59fdd3531
5 changed files with 1160 additions and 435 deletions

View File

@ -1,6 +1,7 @@
Date Added
======
2008/04/04
* Rev. 12472 Updated NIflheim Town and Quest NPCs. [L0ne_W0lf]
* Rev. 12471 Updated Schwaltzvalt guild warp points. [L0ne_W0lf]
* Added the warp points for the Arunafeltz guild maps.
2008/04/03

View File

@ -4,9 +4,10 @@
//= Fyrien, Dizzy, PKGINGO
//= Official NPCs translated and re-edited by Celest
//===== Current Version: =====================================
//= 1.3a
//= 1.4
//===== Compatible With: =====================================
//= Any eAthena Version; Niflheim Required
//= [Aegis Conversion]
//= eAthena SVN; Niflheim Required
//===== Description: =========================================
//= Official NPC's for Niflheim
//= 1.01 Splitted file(guides, shops). Fixed rand() bugs,
@ -22,191 +23,329 @@
//= 1.1 Replaced nif_q_done with MISC_QUEST & 32. nif_t -> @nif_t [Lupus]
//= 1.2 Removed Duplicates [Silent]
//= 1.3 Moved Book of Devil and Piano quest to quests/quests_niflheim.txt [Evera]
//= 1.4 Rescripted to Aegis 10.3 standards. [L0ne_W0lf]
//= Removed Cursed Spirits as they were custom.
//============================================================
niflheim,52,174,3 script Kirz 796,{
mes "[Kirz]";
mes "Humans are not allowed here!";
mes "Living things-! are not";
mes "allowed to pass!";
niflheim,52,147,3 script Keedz#nif 796,{
mes "[Keedz]";
mes "I don't allow any living person";
mes "to come in this place!";
close;
}
niflheim,213,221,0 script Spirit::spirits 802,{
mes "[Spirit]";
mes "Welcome to my world...";
mes "This land we call....";
mes "Niflheim....";
percentheal -85,-85;
close;
}
niflheim,39,146,0 duplicate(spirits) Spirit#2 802
niflheim,95,61,0 duplicate(spirits) Spirit#3 802
niflheim,313,187,0 duplicate(spirits) Spirit#4 802
niflheim,212,264,0 duplicate(spirits) Spirit#5 802
niflheim,247,72,0 duplicate(spirits) Spirit#6 802
niflheim,130,176,0 duplicate(spirits) Spirit#7 802
niflheim,173,110,0 duplicate(spirits) Spirit#8 802
niflheim,182,167,0 duplicate(spirits) Spirit#9 802
niflheim,195,211,5 script Gigantia 796,{
mes "[Gigantia]";
mes "The Lord of Death always sees everything...";
close;
}
niflheim,153,215,3 script Feline 794,{
mes "[Feline]";
mes "Why are you in this dangerous village?";
mes "Better go back fast...";
close;
}
nif_in,16,27,1 script Dead Cock 800,{
mes "[Dead Cock]";
mes "I was eaten by humans when alive,";
mes "now it's my turn to eat you! Gugugugu~";
mes "Aaah, I can't believe there's such a world after death, gugugu";
percentheal -5,0;
close;
}
nif_in,16,30,4 script Vampire Bat 799,{
mes "[Vampire Bat]";
mes "Alive or dead, human blood";
mes "is always the tastiest!";
mes "What? You want your blood";
mes "to be sucked by me? Nice nice-!";
percentheal -5,0;
close;
}
nif_in,156,93,5 script Child 793,{
mes "[Alakina Ann]";
mes "Where, is this place? I just woke up";
mes "and found myself here... mommy...";
mes "have you seen my mommy, hmm? ... sob...";
mes "I want to go home...";
next;
menu "About the witch...",-,"About the curse...",L_Curse,"Stop conversation",L_end;
mes "[Alakina Ann]";
mes "A witch? I don't know any witches...";
mes "although I read about them in storybooks,";
mes "but I don't know if they're real or not,";
mes "must be really scary if she is real...";
next;
mes "[Alakina Ann]";
mes "But why is it so cold?";
if (sex == 1)
mes "Aren't you cold, brother? Wierd... Hu~";
else
mes "Aren't you cold, sister? Wierd... Hu~";
mes "I miss my warm home,";
mes "Can you help me please? Hmmm? Hmmm?";
close;
L_Curse:
mes "[Alakina Ann]";
mes "Curse... My grandma told me";
mes "she has a way to avoid any curse";
mes "unlifteable by holy blessings...";
next;
mes "[Alakina Ann]";
mes "Klaatu...";
mes "Verata.....";
mes "And... something... something... what was it?";
mes "I can't remember the last one.";
next;
mes "[Alakina Ann]";
mes "She said if you can pronounce these magic words";
mes "to escape a cursed fate.";
mes "Now I can't remember what she said was important...";
mes "looks like I forgot them too.";
close;
L_end:
mes "[Alakina Ann]";
mes "So cold... so cold... I wish I could";
mes "go home... if you can please take me with you...";
mes "it's too scary here...";
mes "please.... help me....";
close;
}
niflheim,350,258,5 script Cursed Soul::cursedsoul 802,{
killmonster "niflheim","cursedsoul::OnNFMob";
mes "[Ashe Bruce]";
mes "I feel a strong curse on youaaaahhhhh";
mes "I shall deny your existanceahhhhhhh";
mes "Turn back or you will dieeeaaaahhhh";
mes "Don't touch my boookkssaaaahhhh";
next;
menu "Pick up 1st book",L_book1,"Pick up 2nd book",L_book2,"Pick up 3rd book",L_book3,"Leave silently",L_back;
L_book1:
mes "[Ashe Bruce]";
mes "Don't you touch my bookssssahhh!!";
mes "Ahahaha, I curse you for being bitten, torn and clawed at!!";
mes "Forever binded to this curse!!";
monster "niflheim",350,258,"Rideword",1478,1,"cursedsoul::OnNFMob";
close;
L_book2:
mes "[Ashe Bruce]";
mes "I said don't touch my booksssahhh...";
mes "Get lost....";
mes "Don't disrupt my restingggaaahh!!";
warp "niflheim",34,162;
close;
L_book3:
set @nif_t,0;
mes "[Ashe Bruce]";
mes "Ahahaha.... I see you are brave!!";
mes "Start reading your prayersahahahah!!";
next;
if(select("Clover.:Klaatu.:Kleitos.")==2)
set @nif_t,@nif_t + 10;
if(select("Verit.:Veritas.:Verata.")==3)
set @nif_t,@nif_t + 10;
if(select("Necktie.:Necklace.:Nero.:^FFFFFFNictu.^000000")==4)
set @nif_t,@nif_t + 10;
mes "[Ashe Bruce]";
if(@nif_t == 30){
if(rand(9)){
mes "Your prayers were correctaaahhhh...";
mes "but your curse still remainsaaahhhh!!";
mes "Haahahahaha.....!!!";
close;
}
mes "Hahahaha!! Your curse has been lifted!!";
mes "Gahahahaha.....!!!";
close;
niflheim,195,211,6 script Gigantia#nif 796,3,3,{
if (isequipped(5038) || isequipped(2257) || isequipped(2256)) {
mes "[" + strcharinfo(0) + "]";
mes "What's up?";
next;
mes "[Gigantia]";
mes "Just...";
mes "Come over here.";
mes "I have something";
mes "I must do for you.";
next;
mes "[Gigantia]";
mes "Your horn is crooked.";
mes "Always make sure your horn";
mes "is worn straight and neat.";
mes "The Lord of Death is always";
mes "looking at you.";
close;
}
mes "Hahahaha!! Your prayers were wrong!!";
mes "Time to face deathohohohoho,";
mes "May you be cursed forevahahahaha!!";
monster "niflheim",349,256,"Orc Skeleton",1462,1,"cursedsoul::OnNFMob";
monster "niflheim",347,258,"Orc Skeleton",1462,1,"cursedsoul::OnNFMob";
monster "niflheim",347,254,"Orc Skeleton",1462,1,"cursedsoul::OnNFMob";
monster "niflheim",350,252,"Orc Skeleton",1462,1,"cursedsoul::OnNFMob";
monster "niflheim",344,255,"Orc Skeleton",1462,1,"cursedsoul::OnNFMob";
monster "niflheim",348,252,"Orc Skeleton",1462,1,"cursedsoul::OnNFMob";
monster "niflheim",347,259,"Orc Skeleton",1462,1,"cursedsoul::OnNFMob";
mes "[Gigantia]";
mes "The Lord of Death knows";
mes "and sees all. It's useless";
mes "to hide, and escape from";
mes "Death's sweet embrace.";
close;
L_back:
mes "[Ashe Bruce]";
mes "Ahahahaha! Not bad thinking at alllhhhaahaaa...";
mes "I shall pray that you live to returnahhhh....";
close;
OnNFMob:
OnTouch:
if (isequipped(5038) || isequipped(2257) || isequipped(2256)) {
mes "[Gigantia]";
mes "Hey, wait!";
close;
}
end;
}
nif_in,16,27,1 script Undead Chicken#nif 800,{
percentheal -5,0;
mes "[Undead Chicken]";
mes "I lived a peaceful life as a normal chicken. But then came the day I was tragically killed and eaten by humans. Well... Heh heh~! Now it's my turn! *Cackles*";
next;
mes "["+ strcharinfo(0) +"]";
mes "Ouch...!";
mes "A chicken...";
mes "It bit me!";
next;
mes "[Undead Chicken]";
mes "Ho ho~!";
mes "I can talk AND feast";
mes "on living humans!";
mes "Being a zombie is great!";
mes "*Cackles*";
close;
}
nif_in,16,30,4 script Undead Familiar#nif 799,{
percentheal -5,0;
mes "[Vatoman]";
mes "Oooh, how handy, a living";
mes "human~! Fresh blood is";
mes "always tasty...! I think I'll just";
mes "take a liiittle sip.";
next;
mes "[" + strcharinfo(0) + "]";
mes "Ow! My vein!";
mes "Did you just";
mes "suck my blood?!";
next;
mes "[Vatoman]";
mes "Mwahahaha~";
mes "Foolish mortal!";
mes "Beware my powers!";
close;
}
nif_in,156,93,5 script Child#nifflheim 793,{
mes "[Alakina Ann]";
mes "Where...where am I...?";
mes "I remember I was sleeping";
mes "and when I woke up, I was here...";
mes "Mommy, have you seen my mommy?";
mes "I wanna go home...*Sob*";
next;
switch(select("About the witch:About the curse:Cancel.")) {
case 1:
mes "[Alakina Ann]";
mes "Witch...? I've never seen a witch, but I've read about them in books. I'm not sure if they exist or not, but it would be so horrifying if they did...";
next;
mes "[Alakina Ann]";
mes "Why is it so cold in here...?";
mes "A-aren't you cold, or even scared? I wanna go home... It's warm over there. Could you help me get back... Please...? H-help me...";
close;
case 2:
mes "[Alakina Ann]";
mes "A c-curse...?";
mes "My grandma says that there are lots of curses in the world. Some of them, you can tell it's a curse. But there are other curses that follow you throughout life...";
next;
mes "[Alakina Ann]";
mes "Grandma says curses can take other forms... Like if someone's always mad at you, and won't forgive you, you can see that as a curse too.";
next;
mes "[Alakina Ann]";
mes "My grandma told me there's only one spell that can break a strong curse that you can't lift with Blessings...";
next;
mes "[Alakina Ann]";
mes "Klaatu...";
mes "Verata.....";
mes "Ne...ni...umm...?";
mes "What was the last part?";
mes "I-I can't remember";
mes "the last part of the spell!";
next;
mes "[Alakina Ann]";
mes "If you repeat the spell in that order, it will release you from someone's anger and hate. And if you do it near a bad spirit, they might get the curse instead.";
next;
mes "[Alakina Ann]";
mes "Why are you asking me about these scary kind of things...? I just wanna go home...";
close;
case 3:
mes "[Alakina Ann]";
mes "It's so cold in here...";
mes "I'm freezing...";
mes "And I wanna go home and";
mes "get away from this scary place...";
next;
mes "[Alakina Ann]";
mes "Please... help me.";
mes "Could you take me with you...?";
close;
}
}
niflheim,350,258,1 script Cursed Spirit#nif 802,{
killmonster "niflheim","Cursed Spirit#nif::OnMyMobDead";
mes "[Ashe Bruce]";
mes "I sense you're cursed";
mes "by a powerful spell...";
mes "Hmm... It's clear what";
mes "you must be up to....";
next;
mes "[Ashe Bruce]";
mes "You wish to get";
mes "rid of your curse....";
mes "By giving it to me!!";
next;
mes "[Ashe Bruce]";
mes "Just because I'm a cursed spirit, you adventurers think you can just dump your curses on me?!";
emotion e_an;
next;
mes "[Ashe Bruce]";
mes "I refuse to let";
mes "you remain here.....";
mes "Leave now, or I will";
mes "remove you by force....";
next;
mes "[Ashe Bruce]";
mes "....And...";
mes "....Whatever you do...";
mes "....Do NOT touch my books...";
next;
switch(select("Touch the first book.:Touch the second book.:Touch the third book.:Okay, I am leaving.")) {
case 1:
monster "niflheim",349,259,"Rideword",1478,1,"Cursed Spirit#nif::OnMyMobDead";
mes "[Ashe Bruce]";
mes "...!...";
mes "How dare you touch my books";
mes "when I specifically said";
mes "'Don't touch my books!'";
next;
mes "[Ashe Bruce]";
mes "....!...Grrrrr!";
mes "I shall tear you apart...!";
mes "Be bound by an eternal curse...!";
close;
case 2:
mes "[Ashe Bruce]";
mes "...!...";
mes "You dare touch my books?!";
mes "Right after I said not";
mes "to touch them...?!";
mes "Foolish mortal!";
mes "...BEGONE!";
close2;
warp "niflheim",34,162;
end;
case 3:
mes "[Ashe Bruce]";
mes "Muhahahaha....";
mes "Stubborn mortal~!";
mes "Fine! I will give you";
mes "a fighting chance and let";
mes "you cast a spell.";
next;
mes "[Ashe Bruce]";
mes "But Blessings won't";
mes "work with the curse";
mes "that you have...";
mes "And the spell to lift";
mes "your curse has been";
mes "lost to the ages~!";
emotion e_gg;
next;
if (select("Clover:Klaatu:Klaytos") == 2)
set .@spell,.@spell+1;
if (select("Verit:Veritas:Verata") == 3)
set .@spell,.@spell+1;
if (select("Necktie:Necklace:Nero:^FFFFFFNictu!!!^000000") == 4)
set .@spell,.@spell+1;
if (.@spell == 3) {
switch(rand(1,5)) {
case 1:
if (morison_meat < 15) {
set MISC_QUEST,MISC_QUEST | 1;
mes "[Ashe Bruce]";
mes "You... You broke the curse!";
mes "How did you know that spell?!";
next;
mes "[Ashe Bruce]";
mes "I suppose you expect for me to";
mes "melt in agony about now, don't";
mes "you? Well... Sorry to disappoint";
mes "you, mortal, but I can never die!";
close;
}
mes "[Ashe Bruce]";
mes "...! You cast the correct spell?!";
mes "...!...";
mes "But...You're still cursed...";
mes "Umhaaaaaaaaaaaaaaaaa.....!";
close;
case 2:
if (thai_head == 1) {
set thai_head,2;
mes "[Ashe Bruce]";
mes "What's...";
mes "this feeling?";
next;
mes "[Ashe Bruce]";
mes "No...!";
mes "NOOOOOOOOOOOOOOOO!";
next;
mes "[Ashe Bruce]";
mes "Why did your spell have to work?!";
close;
}
mes "[Ashe Bruce]";
mes "You...";
mes "cast the correct spell?!";
next;
mes "[Ashe Bruce]";
mes "Hoho~";
mes "But you're still cursed...";
close;
case 3:
if (thai_head == 8) {
set thai_head,7;
mes "[Ashe Bruce]";
mes "You... You broke the curse!";
mes "Who taught you that spell?!";
next;
mes "[Ashe Bruce]";
mes "I suppose you expect for me to";
mes "melt in agony about now, don't";
mes "you? Well... Sorry to disappoint";
mes "you, mortal, but I can never die!";
next;
mes "[Ashe Bruce]";
mes "So long as I'm...";
mes "still...";
mes "cursed.";
next;
mes "[Ashe Bruce]";
mes "NOOOOOOOOOO!";
close;
}
mes "[Ashe Bruce]";
mes "...! You cast the correct spell?!";
mes "...!...";
mes "But...You're still cursed...";
mes "Umhaaaaaaaaaaaaaaaaa.....!";
close;
case 4:
mes "[Ashe Bruce]";
mes "...! You cast the correct spell?!";
mes "...!...";
mes "But...You're still cursed...";
mes "Mwahahahaaaa.....!";
close;
}
}
monster "niflheim",345,259,"Orc Skeleton",1462,1,"Cursed Spirit#nif::OnMyMobDead";
monster "niflheim",347,261,"Orc Skeleton",1462,1,"Cursed Spirit#nif::OnMyMobDead";
monster "niflheim",344,253,"Orc Skeleton",1462,1,"Cursed Spirit#nif::OnMyMobDead";
monster "niflheim",346,251,"Orc Skeleton",1462,1,"Cursed Spirit#nif::OnMyMobDead";
monster "niflheim",349,249,"Orc Skeleton",1462,1,"Cursed Spirit#nif::OnMyMobDead";
monster "niflheim",350,260,"Orc Skeleton",1462,1,"Cursed Spirit#nif::OnMyMobDead";
monster "niflheim",353,256,"Orc Skeleton",1462,1,"Cursed Spirit#nif::OnMyMobDead";
mes "[Ashe Bruce]";
mes "Muhahahahahaha!";
mes "That's not the right spell!";
mes "Now, death awaits you!";
mes "You're eternally bound";
mes "to the curse...!";
close;
case 4:
mes "[Ashe Bruce]";
mes "...";
mes ".....";
next;
mes "[Ashe Bruce]";
mes "Well then.";
mes "Try not to trip on";
mes "your feet in your";
mes "rush to leave.";
close;
}
}

View File

@ -0,0 +1,92 @@
//===== eAthena Script =======================================
//= Baphomet Jr. taming item quest.
//===== By: ==================================================
//= eAthena Dev Team
//===== Current Version: =====================================
//= 1.1
//===== Compatible With: =====================================
//= eAthena 1.0
//===== Description: =========================================
//= Book of Devil (MISC_QUEST | 256)
//===== Additional Comments: =================================
//= 1.0 ????
//= 1.1 Optimized Book of Devil quest. used bit-wise var. [Lupus]
//============================================================
//=============================================================
//Quest for Book of Devil
//=============================================================
niflheim,184,199,5 script Little Girl#02 793,{
mes "[Sairin]";
if(MISC_QUEST & 256){
mes "Thanks again!";
close;
}
if(@niflheimlost == 2){
mes "You found him?";
mes "Oh thank you!";
mes "Please, take this as a token of my appreciation.";
getitem 642,1;//Items: Book of Devil,
set MISC_QUEST,MISC_QUEST | 256;
set @niflheimlost,0;
close;
}
if(@niflheimlost == 1){
M_YES:
set @niflheimlost,1;
mes "Please find him and tell him where I am! I saw him last in Niflheim Field, the first one...";
close;
}
mes "Sir, will you please help me?";
if(BaseJob==Job_Novice){
mes "Oh... you are lost, too...";
close;
}
next;
menu "Yes",-, "No",M_NO;
mes "[Sairin]";
mes "My friend and I went for a hike and ended up wandering into a strange field.";
next;
mes "[Sairin]";
mes "Suddenly, I found a doll. I picked it up, and it turned into a ghost!";
next;
mes "[Sairin]";
mes "I screamed and ran as fast as I could. When I stopped running, I ended up in this strange town..";
next;
mes "[Sairin]";
mes "No one here will help me, and there are ghosts everywhere! Could you help me find my friend?";
next;
menu "Sure",M_YES, "No",M_NO;
M_NO:
close;
}
nif_fild01,213,268,5 script Little Boy 797,{
if(MISC_QUEST & 256){
L_DONE:
set @niflheimlost,2;
mes "[Marius]";
mes "Thank you for helping us!";
close;
}
if(@niflheimlost == 2) goto L_PART2;
if(@niflheimlost == 1){
mes "[Marius]";
mes "Who are you?";
mes "...";
mes "You found Sairin?";
mes "She ran to Niflheim?";
next;
L_PART2:
mes "[Marius]";
mes "Could you tell her that I am on my way?";
mes "I am a little slow, and its very important that she knows.";
next;
menu "Yes",L_DONE, "No",-;
close;
}
mes "[Marius]";
mes "Sairin... where are you?";
close;
}

File diff suppressed because it is too large Load Diff

View File

@ -126,6 +126,8 @@
//npc: npc/custom/quests/kiel_quest.txt
// Custom Bongun Accessory/Bongun taming item quest
//npc: npc/custom/quests/bongunsword.txt
// Custom Baphomet Jr. Taming item quest.
//npc: npc/custom/quests/bookofthedevil.txt
//A custom event for 3 holidays: X-Mas, Karachun and New Year
//Should be activated between 8 December and 8 January
//npc: npc/custom/events/xmas_rings_event.txt