ModernUO/Scripts/Engines/Quests/The Summoning/Conversations.cs
2006-06-15 04:14:30 +00:00

93 lines
No EOL
2.1 KiB
C#

using System;
using Server;
using Server.Items;
using Server.Mobiles;
namespace Server.Engines.Quests.Doom
{
public class AcceptConversation : QuestConversation
{
public override object Message
{
get
{
/* You have accepted Victoria's help. She requires 1000 Daemon
* bones to summon the devourer.<BR><BR>
*
* You may hand Victoria the bones as you collect them and she
* will keep count of how many you have brought her.<BR><BR>
*
* Daemon bones can be collected via various means throughout
* Dungeon Doom.<BR><BR>
*
* Good luck.
*/
return 1050027;
}
}
public AcceptConversation()
{
}
public override void OnRead()
{
System.AddObjective( new CollectBonesObjective() );
}
}
public class VanquishDaemonConversation : QuestConversation
{
public override object Message
{
get
{
/* Well done brave soul. I shall summon the beast to the circle
* of stones just South-East of here. Take great care - the beast
* takes many forms. Now hurry...
*/
return 1050021;
}
}
public VanquishDaemonConversation()
{
}
public override void OnRead()
{
Victoria victoria = ((TheSummoningQuest)System).Victoria;
if ( victoria == null )
{
System.From.SendMessage( "Internal error: unable to find Victoria. Quest unable to continue." );
System.Cancel();
}
else
{
SummoningAltar altar = victoria.Altar;
if ( altar == null )
{
System.From.SendMessage( "Internal error: unable to find summoning altar. Quest unable to continue." );
System.Cancel();
}
else if ( altar.Daemon == null || !altar.Daemon.Alive )
{
BoneDemon daemon = new BoneDemon();
daemon.MoveToWorld( altar.Location, altar.Map );
altar.Daemon = daemon;
System.AddObjective( new VanquishDaemonObjective( daemon ) );
}
else
{
victoria.SayTo( System.From, "The devourer has already been summoned." );
((TheSummoningQuest)System).WaitForSummon = true;
}
}
}
}
}