#W# Source and Scripts added. Added Scripts/Settings.cs to expose some basic tweak able settings.
This commit is contained in:
parent
b51c58f514
commit
3045c83799
3512 changed files with 627673 additions and 0 deletions
153
Scripts/Engines/Quests/Dark Tides/DarkTidesQuest.cs
Normal file
153
Scripts/Engines/Quests/Dark Tides/DarkTidesQuest.cs
Normal file
|
|
@ -0,0 +1,153 @@
|
|||
using System;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
namespace Server.Engines.Quests.Necro
|
||||
{
|
||||
public class DarkTidesQuest : QuestSystem
|
||||
{
|
||||
private static Type[] m_TypeReferenceTable = new Type[]
|
||||
{
|
||||
typeof( Necro.AcceptConversation ),
|
||||
typeof( Necro.AnimateMaabusCorpseObjective ),
|
||||
typeof( Necro.BankerConversation ),
|
||||
typeof( Necro.CashBankCheckObjective ),
|
||||
typeof( Necro.FetchAbraxusScrollObjective ),
|
||||
typeof( Necro.FindBankObjective ),
|
||||
typeof( Necro.FindCallingScrollObjective ),
|
||||
typeof( Necro.FindCityOfLightObjective ),
|
||||
typeof( Necro.FindCrystalCaveObjective ),
|
||||
typeof( Necro.FindMaabusCorpseObjective ),
|
||||
typeof( Necro.FindMaabusTombObjective ),
|
||||
typeof( Necro.FindMardothAboutKronusObjective ),
|
||||
typeof( Necro.FindMardothAboutVaultObjective ),
|
||||
typeof( Necro.FindMardothEndObjective ),
|
||||
typeof( Necro.FindVaultOfSecretsObjective ),
|
||||
typeof( Necro.FindWellOfTearsObjective ),
|
||||
typeof( Necro.HorusConversation ),
|
||||
typeof( Necro.LostCallingScrollConversation ),
|
||||
typeof( Necro.MaabasConversation ),
|
||||
typeof( Necro.MardothEndConversation ),
|
||||
typeof( Necro.MardothKronusConversation ),
|
||||
typeof( Necro.MardothVaultConversation ),
|
||||
typeof( Necro.RadarConversation ),
|
||||
typeof( Necro.ReadAbraxusScrollConversation ),
|
||||
typeof( Necro.ReadAbraxusScrollObjective ),
|
||||
typeof( Necro.ReanimateMaabusConversation ),
|
||||
typeof( Necro.RetrieveAbraxusScrollObjective ),
|
||||
typeof( Necro.ReturnToCrystalCaveObjective ),
|
||||
typeof( Necro.SecondHorusConversation ),
|
||||
typeof( Necro.SpeakCavePasswordObjective ),
|
||||
typeof( Necro.UseCallingScrollObjective ),
|
||||
typeof( Necro.VaultOfSecretsConversation ),
|
||||
typeof( Necro.FindHorusAboutRewardObjective ),
|
||||
typeof( Necro.HealConversation ),
|
||||
typeof( Necro.HorusRewardConversation )
|
||||
};
|
||||
|
||||
public override Type[] TypeReferenceTable{ get{ return m_TypeReferenceTable; } }
|
||||
|
||||
public override object Name
|
||||
{
|
||||
get
|
||||
{
|
||||
// Dark Tides
|
||||
return 1060095;
|
||||
}
|
||||
}
|
||||
|
||||
public override object OfferMessage
|
||||
{
|
||||
get
|
||||
{
|
||||
/* <I>An old man who looks to be 200 years old from the looks
|
||||
* of his translucently pale and heavily wrinkled skin, turns
|
||||
* to you and gives you a half-cocked grin that makes you
|
||||
* feel somewhat uneasy.<BR><BR>
|
||||
*
|
||||
* After a short pause, he begins to speak to you...</I><BR><BR>
|
||||
*
|
||||
* Hmm. What's this? Another budding Necromancer to join the
|
||||
* ranks of Evil? Here... let me take a look at you... Ah
|
||||
* yes... Very Good! I sense the forces of evil are strong
|
||||
* within you, child – but you need training so that you can
|
||||
* learn to focus your skills against those aligned against
|
||||
* our cause. You are destined to become a legendary
|
||||
* Necromancer - with the proper training, that only I can
|
||||
* give you.<BR><BR>
|
||||
*
|
||||
* <I>Mardoth pauses just long enough to give you a wide,
|
||||
* skin-crawling grin.</I><BR><BR>
|
||||
*
|
||||
* Let me introduce myself. I am Mardoth, the guildmaster of
|
||||
* the Necromantic Brotherhood. I have taken it upon myself
|
||||
* to train anyone willing to learn the dark arts of Necromancy.
|
||||
* The path of destruction, decay and obliteration is not an
|
||||
* easy one. Only the most evil and the most dedicated can
|
||||
* hope to master the sinister art of death.<BR><BR>
|
||||
*
|
||||
* I can lend you training and help supply you with equipment –
|
||||
* in exchange for a few services rendered by you, of course.
|
||||
* Nothing major, just a little death and destruction here and
|
||||
* there - the tasks should be easy as a tasty meat pie for one
|
||||
* as treacherous and evil as yourself.<BR><BR>
|
||||
*
|
||||
* What do you say? Do we have a deal?
|
||||
*/
|
||||
return 1060094;
|
||||
}
|
||||
}
|
||||
|
||||
public override TimeSpan RestartDelay{ get{ return TimeSpan.MaxValue; } }
|
||||
public override bool IsTutorial{ get{ return true; } }
|
||||
|
||||
public override int Picture{ get{ return 0x15B5; } }
|
||||
|
||||
public DarkTidesQuest( PlayerMobile from ) : base( from )
|
||||
{
|
||||
}
|
||||
|
||||
// Serialization
|
||||
public DarkTidesQuest()
|
||||
{
|
||||
}
|
||||
|
||||
public override void Accept()
|
||||
{
|
||||
base.Accept();
|
||||
|
||||
AddConversation( new AcceptConversation() );
|
||||
}
|
||||
|
||||
public override bool IgnoreYoungProtection( Mobile from )
|
||||
{
|
||||
if ( from is SummonedPaladin )
|
||||
return true;
|
||||
|
||||
return base.IgnoreYoungProtection( from );
|
||||
}
|
||||
|
||||
public static bool HasLostCallingScroll( Mobile from )
|
||||
{
|
||||
PlayerMobile pm = from as PlayerMobile;
|
||||
|
||||
if ( pm == null )
|
||||
return false;
|
||||
|
||||
QuestSystem qs = pm.Quest;
|
||||
|
||||
if ( qs is DarkTidesQuest )
|
||||
{
|
||||
if ( qs.IsObjectiveInProgress( typeof( FindMardothAboutKronusObjective ) ) || qs.IsObjectiveInProgress( typeof( FindWellOfTearsObjective ) ) || qs.IsObjectiveInProgress( typeof( UseCallingScrollObjective ) ) )
|
||||
{
|
||||
Container pack = from.Backpack;
|
||||
|
||||
return ( pack == null || pack.FindItemByType( typeof( KronusScroll ) ) == null );
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue